摘要 |
A method is disclosed for managing pages of a designated memory object according to selected memory management policies. A user of the computer stores a table of selections in a memory of the computer, each selection indicating a memory object and one of at least two memory management policies for the memory object. The selections may select from one or more choices: e.g., whether pages of the memory object are to be reserved, or faulted on demand; whether pages of the memory object are to be locked into the memory of the computer, or to be demand paged from a fluid page pool; whether pages allocated for the memory object are to be zeroed; whether the memory object is to be mapped using shared page tables; or specifying the number of levels of translation pages of a designated memory object to be shared or whether memory for the memory object is to be allocated contiguous pages of memory. A symbolic name is assigned to each of the memory objects. A non-privileged process issues a request designating one of the memory objects by symbolic name, and allocating memory from a reserved pool of memory for use in the object. The pages of the memory objects are managed, each according to the corresponding stored selection. The managed page may be a translation page describing a virtual-to-physical address mapping for memory references to a program accessible page. The policy selection and an allocation size may be stored in the memory and may refer to management of the program-accessible page. The size of an allocation including the translation page may be computed from the stored size for the program-accessible allocation.
|