Opened 6 years ago
Last modified 4 years ago
#1102 new enhancement
Enable the kernel to run as a userland process on top of itself
| Reported by: | axeld | Owned by: | nobody |
|---|---|---|---|
| Priority: | normal | Milestone: | Unscheduled |
| Component: | System/Kernel | Version: | |
| Keywords: | Cc: | ||
| Blocked By: | Blocking: | ||
| Has a Patch: | no | Platform: | All |
Description (last modified by axeld)
As a testbed for kernel development, profiling, etc. a virtual kernel running on top of the actual kernel would be beneficial. Also having it run on top of ie. Linux or BeOS would be nice, if possible, especially as long Haiku is not self hosting.
Jonas Sundström was kind enough to collect some more informations, mostly from the DragonFly project:
"Reduces the engineering cycle time for testing new kernel code
from 5 minutes to 5 seconds." -- Matthew Dillon
DragonFlyBSD:
Reasons for wanting to have a working virtual kernel
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00082.html
A few questions and answers
http://leaf.dragonflybsd.org/mailarchive/users/2007-01/msg00237.html
Performance ans system resources
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00107.html
Use of memory
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00157.html
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00039.html
Short-term goals
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00010.html
A few tickets
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00002.html
Function conflicts between kernel and libc
http://leaf.dragonflybsd.org/mailarchive/kernel/2006-12/msg00018.html
http://leaf.dragonflybsd.org/mailarchive/kernel/2006-12/msg00030.html
http://leaf.dragonflybsd.org/mailarchive/kernel/2006-12/msg00039.html
Man page
http://leaf.dragonflybsd.org/cgi/web-man?command=vkernel§ion=ANY
Production uses for virtual kernels
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-01/msg00054.html
"Checkpointing" vkernels
http://leaf.dragonflybsd.org/mailarchive/kernel/2007-02/msg00079.html
Linux:
http://user-mode-linux.sourceforge.net/kernel.html
http://user-mode-linux.sourceforge.net/UserModeLinux-HOWTO.html
http://en.wikipedia.org/wiki/User-mode_Linux
Change History (3)
comment:1 Changed 6 years ago by axeld
- Description modified (diff)
comment:2 Changed 6 years ago by jonas.kirilla
comment:3 Changed 4 years ago by axeld
- Owner changed from axeld to nobody
- Version R1/pre-alpha1 deleted

Some more on DragonFlyBSD's implementation, FWIW.
mmap(.. MAP_VPAGETABLE ..) - with code snippet
http://leaf.dragonflybsd.org/mailarchive/kernel/2006-09/msg00043.html
Commits - Adjustments to low level madvise/mcontrol/mmap support code to accomodate vmspace_*() calls
http://leaf.dragonflybsd.org/mailarchive/commits/2006-09/msg00139.html
What the real kernel does and what the virtual kernel does
http://leaf.dragonflybsd.org/mailarchive/kernel/2006-09/msg00013.html
Devices that might be meaningful in a virtual kernel
http://leaf.dragonflybsd.org/mailarchive/kernel/2006-09/msg00038.html