← Back to Patent Explorer
US4660130A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for managing virtual memory to separate active and stable memory blocks

Assignee: Texas Instruments Inc
•
Filing: 1984-07-24
•
Granted: 1987-04-21
•
Expires: 2004-07-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for compacting blocks of memory in a demand paged virtual address space which includes a plurality of virtual address pages includes identifying active and stable blocks to be compacted by defining a pointer to indicate a page of the virtual memory space, and advancing the pointer to continually indicate the page of the beginning of the available virtual memory space. As new blocks are allocated, they are located in the virtual address space beginning at the next available location of the advancing pointer. As blocks are referenced by the user, they are moved to the current location of the advancing pointer, so that, stable blocks may be collected together on stable pages and active blocks are collected together on active pages. A disk memory is provided, and periodically the pages containing collected stable blocks are "paged-out" to it. The method improves the overall throughput of data in the memory by reducing the time waiting for disk, the time in which the CPU is delayed during frequent garbage collections, and the allocation response time. Also, the method insures efficient use of the backing store by insuring that sparsely allocated pages are not written out to disk.

Inventors

  • 👤 David H. Bartley
  • 👤 Timothy J. McEntee
  • 👤 Donald W. Oxley
  • 👤 Satish M. Thatte

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 18:02
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/122; G06F12/0223; G06F12/023; G06F12/0253

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 107 words
A method for compacting blocks of memory in a demand paged virtual address space including a plurality of virtual address pages, comprising the steps of: (a) defining at least one pointer to indicate a page of said virtual memory space; (b) advancing said pointer to continually indicate the page at the beginning of available virtual memory space; (c) locating newly allocated blocks in the virtual address space beginning at a next available location on the page indicated by said advancing pointer; (d) moving previously allocated blocks to which a new reference is later made by the user to a next available location indicated by said advancing pointer.
Claim 2
Independent Claim 107 words
A method for compacting blocks of memory in a demand paged virtual address space including a plurality of virtual address pages, comprising the steps of: (a) defining at least one pointer to indicate a page of said virtual memory space; (b) advancing said pointer to continually indicate the page at the beginning of available virtual memory space; (c) locating newly allocated blocks in the virtual address space beginning at a next available location on the page indicated by said advancing pointer; (d) moving previously allocated blocks to which a new reference is later made by the user to a next available location indicated by said advancing pointer.
Claim 3
Dependent Claim 38 words
The method of claim 1 further comprising the step of: (e) keeping track of the proportion of allocated space to deallocated space on each page, and executing step (d) only if such proportion falls below a predetermined level.
Claim 4
Dependent Claim 29 words
The method of claim 1 further comprising providing a disk memory, and paging out to said disk memory pages containing blocks which have not recently been allocated or reallocated.
Claim 5
Dependent Claim 33 words
The method of claim 2 further comprising providing means for making available for allocation pages from which all blocks have been moved and the proportion of allocated space to deallocated space is zero.
Claim 6
Dependent Claim 33 words
The method of claim 1 further comprising writing forward pointers into the location from which the blocks are moved in step (d), wherein the forward pointers reference the new locations of the blocks.
Claim 7
Dependent Claim 43 words
The method of claim 2 further comprising providing a page for receiving blocks from pages having a low proportion of allocated space to deallocated space, moving blocks from such pages onto said provided page, and moving said provided page onto a disk memory.
Claim 8
Dependent Claim 26 words
The method of claim 1 further comprising providing an associative look-up table, and writing into said table the current location of the blocks which are moved.
Claim 9
Dependent Claim 23 words
The method of claim 7 further providing means in said associative look-up table for maintaining a reference count for each block identified therein.
Claim 10
Dependent Claim 21 words
The method of claim 8 further comprising periodically updating the associative look-up table to update references to the blocks identified therein.
Claim 11
Dependent Claim 22 words
The method of claim 1 further comprising determining blocks with only self-referencing structures contained within a virtual address page and deallocating them.
Claim 12
Independent Claim 65 words
A method for managing blocks of memory in a demand paged virtual address space including a plurality of virtual address pages, comprising: creating at least one pointer to advancingly indicate a next available virtual address page; and moving blocks of memory to which reference is made by the user to a current location of the pointer, whereby active blocks are collected together on active pages.
Claim 13
Independent Claim 65 words
A method for managing blocks of memory in a demand paged virtual address space including a plurality of virtual address pages, comprising: creating at least one pointer to advancingly indicate a next available virtual address page; and moving blocks of memory to which reference is made by the user to a current location of the pointer, whereby active blocks are collected together on active pages.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1990-04-20 1990-10-20 1991-04-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1994-04-20 1994-10-20 1995-04-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1998-04-20 1998-10-20 1999-04-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag