Method for optimized representation of page table entries
AssigneeIntel Corporation
InventorsRonny Ronen, Andrew F. Glew, Maury J. Bach, Robert C. Valentine, Richard A. Uhlig, Opher D. Kahn
Life of this patent
Estimating the term…
Loading patent…
AssigneeIntel Corporation
InventorsRonny Ronen, Andrew F. Glew, Maury J. Bach, Robert C. Valentine, Richard A. Uhlig, Opher D. Kahn
Estimating the term…
Method for producing a predetermined length page memory pointer record, according to a selected page size and a selected page address, the method including the procedures of: determining a dynamic location of a separator bit within the page memory pointer record, according to the selected page size and an initial page size, the initial page size being respective of the smallest page size in a given memory system, writing a predetermined value to the dynamic location, writing a sequence of values opposite to the predetermined value to selected page size bits of the page memory pointer record, when the selected page size is different than the initial page size, and writing the selected page address to selected page address bits of the page memory pointer record.
Search is unavailable right now. Please try again in a moment.
Method for producing a predetermined length page memory pointer record, according to a selected page size and a selected page address, the method comprising the procedures of:
Memory page pointer record comprising;
In a multi page size memory system, including an initial page size, said initial page size being respective of the smallest page size in the memory system, a method for retrieving page size and page address from a memory page pointer record, the memory page pointer record having a dynamic length page size sub-string and a dynamic length page address sub-string, separated by a separator bit, the method comprising the procedures of:
Computer system comprising:
The computer system according to claim 13, wherein said memory unit further contains at least one of said memory pages.
Dependencies are inferred from the claim text.
From the US filing history. Foreign family members aren’t listed.
Backward citations are indexed for grants only.
Address translation: using page tables, e.g. page table structures
Details of virtual memory and virtual address translation: page size control
Computing and data processing
Term end not estimated
The present invention relates to methods and system for memory management in general, and to methods and systems for managing memory in pages, in particular.
Intermediate storage elements are known in the art. A conventional computer system includes random access memory (RAM), which is used for uploading software objects, executing them and for storing data objects, used by the software objects.
The RAM size is often limited. When the memory requirements exceed the RAM size, then the system can allocate a storage area on another storage element, such as a hard drive, and define this storage area as virtual memory, serving as an extension of the RAM. Data portions, which are not often used, can be stored in the virtual memory until the system retrieves them for further processing.
The disclosed technique will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which:
FIG. 1A is a representation of a memory page record string, representing a predetermined page size, which is known in the art;
FIG. 1B is a representation of the memory page record string of FIG. 1A, representing a different memory page size;
The present disclosure provides a novel page address and size representation, which dynamically addresses different size pages. According to one embodiment, a fixed length field contains both the address and size field of pages. The assigned length of this field is one bit longer than the length of the largest page address in the system. Applicant found that the address space in a selected page size is counter-proportional to the page size. For example, if the address space of a 2n page size is 2m, then the address space of a 2n+k is 2m−k. Hence, the total length of the page size and page address space remains constant, where the n and m are given.
(n+k)+(m−k)=n+m=const
Accordingly, the disclosed technique assigns a dynamic page address space according to a given page size. The page size is set in a string of sequential bits and is determined according to the smallest page size. For example, a page size sub-string having a length of zero (no bits) denotes the smallest page size in the system and a page size sub-string having a length of six bits denotes the seventh page size in the system. In an example, where the smallest page size is 8KB (213), then the seventh page size in the system is 512KB (219). One embodiment includes a separator sub-string, which in the following examples includes a single bit, of an opposite value than the ones denoting the page size.