minix/servers/vm/arch/i386
Tomas Hruby f51eea4b32 Changed pagefault delivery to VM
this patch changes the way pagefaults are delivered to VM. It adopts
the same model as the out-of-quantum messages sent by kernel to a
scheduler.

- everytime a userspace pagefault occurs, kernel creates a message
  which is sent to VM on behalf of the faulting process

- the process is blocked on delivery to VM in the standard IPC code
  instead of waiting in a spacial in-kernel queue (stack) and is not
  runnable until VM tell kernel that the pagefault is resolved and is
  free to clear the RTS_PAGEFAULT flag.

- VM does not need call kernel and poll the pagefault information
  which saves many (1/2?) calls and kernel calls that return "no more
  data"

- VM notification by kernel does not need to use signals

- each entry in proc table is by 12 bytes smaller (~3k save)
2010-04-26 23:21:26 +00:00
..
arch_vmproc.h Convert drivers/ and servers/ over to bsdmake 2010-03-22 21:25:22 +00:00
Makefile.inc Changed pagefault delivery to VM 2010-04-26 23:21:26 +00:00
memory.h Convert drivers/ and servers/ over to bsdmake 2010-03-22 21:25:22 +00:00
pagefaults.h Convert drivers/ and servers/ over to bsdmake 2010-03-22 21:25:22 +00:00
pagetable.c vm: include no-caching bits in PTF_ALLFLAGS for flags sanity check. 2010-04-13 11:08:08 +00:00
pagetable.h vm: include no-caching bits in PTF_ALLFLAGS for flags sanity check. 2010-04-13 11:08:08 +00:00
util.S Convert drivers/ and servers/ over to bsdmake 2010-03-22 21:25:22 +00:00
vm.c vm: use assert() instead of vm_assert(); remove vm_assert(). 2010-04-12 12:37:28 +00:00