Patent ID: 8352705

Claim:
In a virtual memory system having page tables, a method for mapping a virtual memory address to a physical memory address, comprising: accessing a page table entry of a page table using a first pointer to a physical memory location and a first portion of the virtual memory address; incrementing a multi-bit counter associated with said page table entry in response to said accessing so as to track an access frequency of said page table entry using the multi-bit counter; and allocating a large page when the multi-bit counter reaches a predetermined threshold, wherein the page tables are arranged in a hierarchical manner and said page table entry further includes a stop bit that indicates whether the page table entry is pointing to an address of another page table in the page table hierarchy, and wherein said page table entry is not at the lowest level of the page table hierarchy and: the large page is allocated in physical memory; data from a collection of small pages previously accessed through lower level page table entries associated with said page table entry is copied to the large page in the physical memory; a stop bit of said page table entry is set to 1; and a page number of the large page in physical memory is stored as a pointer in said page table entry.