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.