Patent US5897660A successfully refreshed from Google Patents.
US5897660A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method for managing free physical pages that reduces trashing to improve system performance
Assignee: Intel Corp
•
Filing: 1995-04-07
•
Granted: 1999-04-27
•
Expires: 2015-04-07
Abstract
Abstract The present invention overcomes the drawbacks of conventional operating system implementations of virtual to physical memory address mapping by providing a method for free physical page management and translation of virtual addresses to physical addresses that increases the effectiveness of the cache memory by reducing the thrashing caused by unfavorable mapping of virtual to physical addresses.
Inventors
- 👤 James Reinders
- 👤 Joe Bonasera
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-08 20:21
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F9/5005; G06F9/5011; G06F9/5016; G06F12/00; G06F12/02; G06F12/0223; G06F12/023; G06F12/08; G06F12/0802; G06F12/10
Claims Analysis
Total Claims: 14
Claim 1
Independent Claim
104 words
A method of managing pages in an operating system that maps a virtual memory address to a corresponding physical memory address, said method of managing pages comprising the steps of: a) defining a correlation field in the virtual memory address and a correlation field in the physical memory address; b) maintaining at least two free-page lists; c) allocating a free page from a free page list designated by the correlation field of the virtual memory address if the virtual memory address is known; and d) de-allocating a free page to a free page list designated by the correlation field in the physical memory address.
Claim 2
Independent Claim
104 words
A method of managing pages in an operating system that maps a virtual memory address to a corresponding physical memory address, said method of managing pages comprising the steps of: a) defining a correlation field in the virtual memory address and a correlation field in the physical memory address; b) maintaining at least two free-page lists; c) allocating a free page from a free page list designated by the correlation field of the virtual memory address if the virtual memory address is known; and d) de-allocating a free page to a free page list designated by the correlation field in the physical memory address.
Claim 3
Dependent Claim
131 words
The method of claim 1 wherein the step of allocating a free page from a free page list designated by the correlation field of the virtual memory address if the virtual memory address is known includes the steps of: a) determining if all the free page lists are empty; b) if so, returning a null pointer; c) else, determining if a virtual address is known; d) if yes, employing the virtual address to select one of the free page lists from which to allocate a free page; e) else, selecting a next free page list; f) determining if there is a page available on the selected list; g) if yes, removing a free page from the selected free page list and allocating the free page; h) else, returning to step (e).
Claim 4
Dependent Claim
54 words
The method of claim 1 wherein the step of de-allocating a free page to the free page lists comprises the steps of: a) selecting one of the free page lists based on the correlation field of the physical address; and b) adding the free page to the selected list of the free page lists.
Claim 5
Dependent Claim
45 words
The method of claim 3 wherein the step of selecting one of the free age lists based on the correlation field of the physical address includes the step of: employing bits in the physical address that are used in page mapping and cache set selection.
Claim 6
Dependent Claim
33 words
The method of claim 1 wherein the correlation field of the virtual memory address and the correlation field in the physical memory address include N bits, and there are 2 N free-page lists.
Claim 7
Dependent Claim
7 words
The method of claim 5 wherein N=5.
Claim 8
Dependent Claim
24 words
The method of claim 1 wherein the correlation fields of the virtual address and the physical memory address are bits 16 through 12 (16:12).
Claim 9
Dependent Claim
35 words
The method of claim 7, wherein selecting a next free page list includes the step of finding a free page list having a greater number of unallocated free pages than the remaining free page lists.
Claim 10
Dependent Claim
116 words
In an operating system that maintains at least two free page lists, a method of allocating free pages comprising the steps of: a) determining if all the free page lists are empty; b) if so, returning a null pointer; c) else, determining if a virtual address is known; d) if yes, employing a correlation field in the virtual address to select one of the free page lists from which to allocate a free page; e) else, selecting a next free page list; f) determining if there is a page available on the selected list; g) if yes, removing a free page from the selected list and allocating that free page; h) else, returning to step (e).
Claim 11
Dependent Claim
116 words
In an operating system that maintains at least two free page lists, a method of allocating free pages comprising the steps of: a) determining if all the free page lists are empty; b) if so, returning a null pointer; c) else, determining if a virtual address is known; d) if yes, employing a correlation field in the virtual address to select one of the free page lists from which to allocate a free page; e) else, selecting a next free page list; f) determining if there is a page available on the selected list; g) if yes, removing a free page from the selected list and allocating that free page; h) else, returning to step (e).
Claim 12
Dependent Claim
35 words
The method of claim 9, wherein selecting a next free page list includes the step of finding a free page list having a greater number of unallocated free pages than the remaining free page lists.
Claim 13
Dependent Claim
24 words
The method of claim 9, wherein each list is configured as a linked list, with each free page pointing to the next free page.
Claim 14
Dependent Claim
95 words
The method of claim 9, wherein each list is configured as a ring, said ring configuration implemented by the steps of: a) defining a first variable that points to the beginning of the list; b) defining a second variable that points to the end of the list; c) allocating free pages from the beginning of the list using the first variable; wherein a page allocated from the ring is the least recently used of the free pages in that list; and d) adding free pages to the end of the list using the second variable.
References Cited (Backward Citations)
US4737909A
Cited
US5125086A
Cited
US5339411A
Cited
US5561786A
Cited
US5479627A
Cited
US5577243A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-04-26 | 2002-10-26 | 2003-04-27 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-04-26 | 2006-10-26 | 2007-04-27 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-04-26 | 2010-10-26 | 2011-04-27 | $7700.00 | Window Closed / Lapsed |