Patent US5897660A successfully refreshed from Google Patents.
← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag