Apparatus and method for lazy segment promotion for pre-translated segments
First Claim
1. A method of virtual to real address translation in a data processing device, comprising:
- determining if a segment of memory is to be promoted to a pre-translated segment state;
moving at least one page of the segment to a contiguous portion of memory if the segment is to be promoted to a pre-translated segment state; and
updating a segment table entry to identify the segment as being a pre-translated segment, wherein virtual-to-real address translation for pre-translated segments is performed based on address information in the segment table entry.
1 Assignment
0 Petitions
Accused Products
Abstract
A mechanism for generating pre-translated segments for use in virtual to real address translation is provided in which segments that are determined to meet a density threshold are promoted to a pre-translated segment class. The pages of these segments are moved to a contiguous portion of memory and the segment table entry corresponding to the segment is updated to indicate the segment to be a pre-translated segment and to include the base real address for the contiguous portion of memory. In one embodiment, as each page is moved, its page table entry is updated to point to the new location of the page so that the page is still accessible during promotion of the segment to a pre-translated segment. In this way, virtual-to-real address translation may be performed by concatenating the segment base real address, the page identifier, and a byte offset into the page.
20 Citations
21 Claims
-
1. A method of virtual to real address translation in a data processing device, comprising:
-
determining if a segment of memory is to be promoted to a pre-translated segment state;
moving at least one page of the segment to a contiguous portion of memory if the segment is to be promoted to a pre-translated segment state; and
updating a segment table entry to identify the segment as being a pre-translated segment, wherein virtual-to-real address translation for pre-translated segments is performed based on address information in the segment table entry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product in a computer readable medium for virtual to real address translation in a data processing device, comprising:
-
first instructions for determining if a segment of memory is to be promoted to a pre-translated segment state;
second instructions for moving at least one page of the segment to a contiguous portion of memory if the segment is to be promoted to a pre-translated segment state; and
third instructions for updating a segment table entry to identify the segment as being a pre-translated segment, wherein virtual-to-real address translation for pre-translated segments is performed based on address information in the segment table entry. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. An apparatus for virtual to real address translation in a data processing device, comprising:
-
means for determining if a segment of memory is to be promoted to a pre-translated segment state;
means for moving at least one page of the segment to a contiguous portion of memory if the segment is to be promoted to a pre-translated segment state; and
means for updating a segment table entry to identify the segment as being a pre-translated segment, wherein virtual-to-real address translation for pre-translated segments is performed based on address information in the segment table entry.
-
Specification