Identification and consolidation of page table entries
First Claim
1. A computer program product for managing page table entries in a processing system, the computer program product comprising:
- a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising;
translating, by a processor, a virtual address to locate a first page table entry (PTE) in a page table, the first PTE comprising a marker and an address of a page of main storage, wherein the first PTE points to a first page;
determining, with the processor, whether the marker is set in the first PTE;
identifying a large page size of a large page associated with the first PTE based on determining that the marker is set in the first PTE, wherein the large page consists of contiguous pages of main storage and the identifying includes determining the large page size based on content of a configuration register;
determining a second PTE that is distinct from the first PTE, that points to a second page that is contiguous to the first page, and that comprises a start location of the large page based on determining that the marker is set in the first PTE, wherein the large page comprises the first page and the second page;
obtaining the start location from the second PTE; and
using the virtual address to index into the page table at the start location to access the large page in main storage.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for accessing memory locations includes translating, by a processor, a virtual address to locate a first page table entry (PTE) in a page table. The first PTE includes a marker and an address of a page of main storage. It is determined whether a marker is set in the first PTE. The system identifies a large page size of a large page associated with the first PTE based on determining that the marker is set in the first PTE. The large page consists of contiguous pages of main storage. An origin address of the large page is determined based on determining that the marker is set in the first PTE. The virtual address is used to index into the large page at the origin address to access main storage.
-
Citations
18 Claims
-
1. A computer program product for managing page table entries in a processing system, the computer program product comprising:
a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; translating, by a processor, a virtual address to locate a first page table entry (PTE) in a page table, the first PTE comprising a marker and an address of a page of main storage, wherein the first PTE points to a first page; determining, with the processor, whether the marker is set in the first PTE; identifying a large page size of a large page associated with the first PTE based on determining that the marker is set in the first PTE, wherein the large page consists of contiguous pages of main storage and the identifying includes determining the large page size based on content of a configuration register; determining a second PTE that is distinct from the first PTE, that points to a second page that is contiguous to the first page, and that comprises a start location of the large page based on determining that the marker is set in the first PTE, wherein the large page comprises the first page and the second page; obtaining the start location from the second PTE; and using the virtual address to index into the page table at the start location to access the large page in main storage. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A computer system for accessing a memory location, the system comprising:
-
a memory; and a processor coupled to the memory, the computer system configured to perform a method comprising; translating, by the processor, a virtual address to locate a first page table entry (PTE) in a page table, the first PTE comprising a marker and an address of a page of main storage, wherein the first PTE points to a first page; determining whether the marker is set in the first PTE; identifying, by the processor, a large page size of a large page associated with the first PTE based on determining that the marker is set in the first PTE, wherein the large page consists of contiguous pages of main storage and the identifying includes determining the large page size based on content of a configuration register; determining a second PTE that is distinct from the first PTE, that points to a second page that is contiguous to the first page, and that comprises a start location of the large page based on determining that the marker is set in the first PTE, wherein the large page comprises the first page and the second page; obtaining the start location from the second PTE; and using the virtual address to index into the page table at the start location to access the large page in main storage. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification