Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
106 words
A method of defragmenting memory, comprising: identifying a chunk of physical address space, the chunk having a plurality of pages, each page of the plurality of pages being identified by a page frame number; creating a relocatable kernel page free list; adding the page frame numbers of each of the plurality of pages from the chunk to the relocatable kernel page free list; and assigning page frame numbers from the relocatable kernel page free list to each request for relocatable kernel pages, such that relocatable kernel pages are assigned to the chunk of physical address space that is to be contiguously populated with relocatable kernel pages.
Claim 2
Independent Claim
106 words
A method of defragmenting memory, comprising: identifying a chunk of physical address space, the chunk having a plurality of pages, each page of the plurality of pages being identified by a page frame number; creating a relocatable kernel page free list; adding the page frame numbers of each of the plurality of pages from the chunk to the relocatable kernel page free list; and assigning page frame numbers from the relocatable kernel page free list to each request for relocatable kernel pages, such that relocatable kernel pages are assigned to the chunk of physical address space that is to be contiguously populated with relocatable kernel pages.
Claim 3
Dependent Claim
33 words
The method of claim 1 , wherein adding the page frame numbers further includes setting an identifier that identifies each of the plurality pages for addition to the relocatable kernel page free list.
Claim 4
Dependent Claim
27 words
The method of claim 1 , wherein adding the page frame numbers further includes relocating data of each of the plurality of pages that are not free.
Claim 5
Dependent Claim
17 words
The method of claim 3 , wherein pages that are not free have mappings to the pages.
Claim 6
Dependent Claim
34 words
The method of claim 1 , wherein adding the page frame numbers further includes obtaining an exclusive lock for each of the plurality pages to be added to the relocatable kernel page free list.
Claim 7
Dependent Claim
28 words
The method of claim 5 , wherein obtaining the exclusive lock further includes dropping the exclusive lock after adding a page to the relocatable kernel page free list.
Claim 8
Dependent Claim
33 words
The method of claim 1 , wherein adding the page frame numbers further includes setting the identifier after obtaining a shared lock to add a page to the relocatable kernel page free list.
Claim 9
Dependent Claim
29 words
The method of claim 1 , wherein adding the page frame numbers further includes creating a page gap in the chunk, the page gap being filled by a process.
Claim 10
Dependent Claim
26 words
The method of claim 8 , wherein creating the page gap in the chunk further includes processing the chunk to identify the page gap for filling.
Claim 11
Dependent Claim
42 words
The method of claim 1 , further comprising: processing additional chunks of physical address space, the processing being configured to add page frame numbers of each page corresponding to particular ones of the additional chunks to the relocatable kernel page free list.
Claim 12
Dependent Claim
33 words
The method of claim 10 , further comprising: continuing to assign page frame numbers from the additional chunks identified in the relocatable kernel page free list to additional requests for relocatable kernel pages.
Claim 13
Dependent Claim
25 words
The method of claim 1 , wherein identifying the chunk of physical space further includes selecting a first page of a user page free list.
Claim 14
Dependent Claim
34 words
The method of claim 12 , wherein selecting the first page of the user page free list further includes designating the first page for the relocatable kernel page free list by setting a bit.
Claim 15
Dependent Claim
29 words
The method of claim 1 , wherein creating the relocatable kernel page free list further includes populating the relocatable kernel page free list from the user page free list.
Claim 16
Independent Claim
108 words
An apparatus for defragmenting memory, comprising: means for identifying a chunk of physical address space, the chunk having a plurality of pages, each page of the plurality of pages capable of being identified; means for creating a relocatable kernel page free list; means for adding the page of each of the plurality of pages from the chunk to the relocatable kernel page free list; and means for assigning a page from the relocatable kernel page free list to each request for relocatable kernel pages, such that relocatable kernel pages are assigned to the chunk of physical address space that is to be contiguously populated with relocatable kernel pages.
Claim 17
Independent Claim
108 words
An apparatus for defragmenting memory, comprising: means for identifying a chunk of physical address space, the chunk having a plurality of pages, each page of the plurality of pages capable of being identified; means for creating a relocatable kernel page free list; means for adding the page of each of the plurality of pages from the chunk to the relocatable kernel page free list; and means for assigning a page from the relocatable kernel page free list to each request for relocatable kernel pages, such that relocatable kernel pages are assigned to the chunk of physical address space that is to be contiguously populated with relocatable kernel pages.
Claim 18
Dependent Claim
39 words
The apparatus of claim 15 , further comprising: means for processing additional chunks of physical address space, the processing being configured to each page corresponding to particular ones of the additional chunks to the relocatable kernel page free list.
Claim 19
Dependent Claim
33 words
The apparatus of claim 16 , further comprising: means for continuing to assign pages from the additional chunks identified in the relocatable kernel page free list to additional requests for relocatable kernel pages.
Claim 20
Independent Claim
169 words
An apparatus for defragmenting memory, comprising: a physical memory logically represented as a physical address space, the physical address space having chunks, wherein each chunk includes a plurality of pages, each page of the plurality of pages being identified by a page frame number; a processor coupled to the physical memory, the processor being in communication with the physical address space, the physical address space further being in communication with a relocatable kernel page free list, wherein the relocatable kernel page free list is populated by adding the page frame numbers of each of the plurality of pages from the chunk to the relocatable kernel page free list; and a communication bus coupled to the processor and the physical memory, wherein the physical memory permits the assignment of page frame numbers from the relocatable kernel page free list to each request for relocatable kernel pages, such that relocatable kernel pages are assigned to the chunk of physical address space that is to be contiguously populated with relocatable kernel pages.
Claim 21
Independent Claim
169 words
An apparatus for defragmenting memory, comprising: a physical memory logically represented as a physical address space, the physical address space having chunks, wherein each chunk includes a plurality of pages, each page of the plurality of pages being identified by a page frame number; a processor coupled to the physical memory, the processor being in communication with the physical address space, the physical address space further being in communication with a relocatable kernel page free list, wherein the relocatable kernel page free list is populated by adding the page frame numbers of each of the plurality of pages from the chunk to the relocatable kernel page free list; and a communication bus coupled to the processor and the physical memory, wherein the physical memory permits the assignment of page frame numbers from the relocatable kernel page free list to each request for relocatable kernel pages, such that relocatable kernel pages are assigned to the chunk of physical address space that is to be contiguously populated with relocatable kernel pages.
Claim 22
Dependent Claim
39 words
The apparatus of claim 18 , wherein each page of the relocatable kernel page free list includes a relocatable kernel page free list identifier configured to permit the addition of each page to the relocatable kernel page free list.
Claim 23
Dependent Claim
20 words
The apparatus of claim 17 , wherein the chunks are located within a relocatable partition of the physical address space.