cvs commit: src/sys/machine/vkernel/i386 cpu_regs.c exception.c trap.c src/sys/machine/vkernel/platform console.c init.c pmap.c
dillon at apollo.backplane.com
Mon Jan 8 08:34:14 PST 2007
:I thought about this. For all sorts of operation (e.g. console input or =
:a virtual NIC), we need either some kind of asynchronous operation mode o=
:r poll/select/kqueue monitoring. Maybe some combination? Send a signal =
:when a (previously stored) kevent list was activated?
What I would like to do is have a core select/kqueue loop instead of
the sigpause() I have there now. The only hicup is that it currently
takes a real signal (e.g. SIGARLM for the clock) to break out
of any emulated user process context and return to the virtual kernel
I can already see that there are better ways to do the emulated user
process context. Right now I'm doing frame swapping. But I'm not
going to worry about it until I actually get the thing running
in a stable fashion. I'm not even swapping the FP registers yet!
Just the TLS, segment, integer registers, and VM space.
On the bright side, I have not once crashed the real kernel while
testing a virtual kernel!
<dillon at backplane.com>
More information about the Commits