Merge of Wu's GSOC 09 branch (src.20090525.r4372.wu)
Main changes: - COW optimization for safecopy. - safemap, a grant-based interface for sharing memory regions between processes. - Integration with safemap and complete rework of DS, supporting new data types natively (labels, memory ranges, memory mapped ranges). - For further information: http://wiki.minix3.org/en/SummerOfCode2009/MemoryGrants Additional changes not included in the original Wu's branch: - Fixed unhandled case in VM when using COW optimization for safecopy in case of a block that has already been shared as SMAP. - Better interface and naming scheme for sys_saferevmap and ds_retrieve_map calls. - Better input checking in syslib: check for page alignment when creating memory mapping grants. - DS notifies subscribers when an entry is deleted. - Documented the behavior of indirect grants in case of memory mapping. - Test suite in /usr/src/test/safeperf|safecopy|safemap|ds/* reworked and extended. - Minor fixes and general cleanup. - TO-DO: Grant ids should be generated and managed the way endpoints are to make sure grant slots are never misreused.
This commit is contained in:
@@ -44,12 +44,13 @@
|
||||
#define SI_PROC_TAB 2 /* copy of entire process table */
|
||||
#define SI_DMAP_TAB 3 /* get device <-> driver mappings */
|
||||
#define SI_MEM_ALLOC 4 /* get memory allocation data */
|
||||
#define SI_DATA_STORE 5 /* get copy of data store */
|
||||
#define SI_LOADINFO 6 /* get copy of load average structure */
|
||||
#define SI_KPROC_TAB 7 /* copy of kernel process table */
|
||||
#define SI_CALL_STATS 8 /* system call statistics */
|
||||
#define SI_PCI_INFO 9 /* get kernel info via PM */
|
||||
#define SI_PROCPUB_TAB 10 /* copy of public entries of process table */
|
||||
#define SI_DATA_STORE 5 /* get copy of data store mappings */
|
||||
#define SI_SUBSCRIPTION 6 /* get copy of data store subscriptions */
|
||||
#define SI_LOADINFO 7 /* get copy of load average structure */
|
||||
#define SI_KPROC_TAB 8 /* copy of kernel process table */
|
||||
#define SI_CALL_STATS 9 /* system call statistics */
|
||||
#define SI_PCI_INFO 10 /* get kernel info via PM */
|
||||
#define SI_PROCPUB_TAB 11 /* copy of public entries of process table */
|
||||
|
||||
/* NULL must be defined in <unistd.h> according to POSIX Sec. 2.7.1. */
|
||||
#define NULL ((void *)0)
|
||||
|
||||
Reference in New Issue
Block a user