Contiguous physical memory allocation
AssigneeInternational Business Machines Corporation
InventorManoj C. Patil
Life of this patent
Estimating the term…
Abstract
Providing physically contiguous memory from memory that is allocated without any guarantee of whether the underlying contiguous physical memory is contiguous involves identifying contiguous pages of physical memory in the allocated virtual memory. Such pages are contributed to a pool of contiguous physical memory for use as required. Any pages that are not contributed to the pool of contiguous physical memory, are not allocated with other pages that are contributed to the pool of contiguous physical memory, can be freed from allocation for alternative uses.
Claims12
A method for providing memory addresses that are physically contiguous, the method comprising the steps of:
- allocating at least one portion of virtual memory address space that comprises one or more discrete virtual pages;
- obtaining physical memory addresses for each of said pages of said at least one portion;
- determining which of said pages have physical memory addresses that are contiguous;
- and
- assigning said determined virtual memory addresses to a pool of contiguous physical memory for subsequent use.
Computer software for providing memory addresses that are physically contiguous, the computer software recorded on a medium and able to be executed by a computer system capable of interpreting the computer software, the computer software comprising:
- code means for allocating at least one portion of virtual memory address space that comprises one or more discrete virtual pages;
- code means for obtaining physical memory addresses for each of said pages of said at least one portion;
- code means for determining which of said pages have physical memory addresses that are contiguous;
- and
- code means for assigning said determined virtual memory addresses to a pool of contiguous physical memory for subsequent use.
A computer system for providing memory addresses that are physically contiguous, the computer system executing computer software comprising:
- means for allocating at least one portion of virtual memory address space that comprises one or more discrete virtual pages;
- means for obtaining physical memory addresses for each of said pages of said at least one portion;
- means for determining which of said pages have physical memory addresses that are contiguous;
- and
- means for assigning said determined virtual memory addresses to a pool of contiguous physical memory for subsequent use.
Dependencies are inferred from the claim text.