secondary cache feature in vm.
commitf78d8e74fd273b066dab92bf755f3acafc9bfbc3
authorBen Gras <ben@minix3.org>
Wed, 5 May 2010 11:35:04 +0000 (5 11:35 +0000)
committerBen Gras <ben@minix3.org>
Wed, 5 May 2010 11:35:04 +0000 (5 11:35 +0000)
tree5608d5d734828eb7839633af70c7df2c815b1f98
parent51d46f8e4690456942e014c8313f89de2fb1260f
secondary cache feature in vm.

A new call to vm lets processes yield a part of their memory to vm,
together with an id, getting newly allocated memory in return. vm is
allowed to forget about it if it runs out of memory. processes can ask
for it back using the same id. (These two operations are normally
combined in a single call.)

It can be used as a as-big-as-memory-will-allow block cache for
filesystems, which is how mfs now uses it.
37 files changed:
include/minix/com.h
include/minix/vm.h
lib/libsys/Makefile
lib/libsys/vm_yield_get_block.c [new file with mode: 0644]
servers/mfs/Makefile
servers/mfs/buf.h
servers/mfs/cache.c
servers/mfs/glo.h
servers/mfs/main.c
servers/mfs/misc.c
servers/mfs/proto.h
servers/mfs/read.c
servers/vm/Makefile
servers/vm/addravl.c
servers/vm/addravl.h
servers/vm/addravl_defs.h [copied from servers/vm/addravl.h with 92% similarity]
servers/vm/alloc.c
servers/vm/exec.c
servers/vm/exit.c
servers/vm/fork.c
servers/vm/glo.h
servers/vm/main.c
servers/vm/phys_region.h [new file with mode: 0644]
servers/vm/physravl.c
servers/vm/physravl.h
servers/vm/physravl_defs.h [copied from servers/vm/physravl.h with 80% similarity]
servers/vm/proto.h
servers/vm/region.c
servers/vm/region.h
servers/vm/sanitycheck.h
servers/vm/slaballoc.c
servers/vm/unavl.h [new file with mode: 0644]
servers/vm/vmproc.h
servers/vm/yielded.h [new file with mode: 0644]
servers/vm/yieldedavl.c [new file with mode: 0644]
servers/vm/yieldedavl.h [new file with mode: 0644]
servers/vm/yieldedavl_defs.h [copied from servers/vm/addravl.h with 64% similarity]