Pre-Grant Publication Number: 20080104353
Please help the USPTO examine the application by evaluating the relevance of the publicly submitted prior art to the patent application.
Peer-to-Patent forwards the Top 10 most relevant prior art submissions and their annotations to the United States Patent and Trademark Office.
Review this prior art and click on the thumbs up (or down) to indicate whether this submission should be forwarded to the USPTO.
If you login then you can add an annotation by typing in the box at the bottom of the screen to comment on the relevance of the prior art to the claims of the patent application.
Review this prior art and click on the thumbs up (or down) to indicate whether this submission should be forwarded to the USPTO.
If you login then you can add an annotation by typing in the box at the bottom of the screen to comment on the relevance of the prior art to the claims of the patent application.

Prior Art Detail
Summary / Description
| Summary / Description | 1984 paper describing two variants of the buddy system for memory allocation. |
Basic Information
| Type of Prior Art | Print Publication |
| Publication Title * | ACM Transactions on Programming Languages and Systems (TOPLAS) Vol 6 Issue 1, Jan 1984 |
| Author | Arie Kaufman |
| ISBN | 0164-0925 |
| Page Range | 118-125 |
| Medium | Journal article |
| Publication Date * | January 1, 1984 |
| URL | http://portal.acm.org/toc.cfm?i... |
Notes / To Do
| Notes | Prior art file now added to this report. reports 226 adn 227 now redundant. |
Excerpt
Excerpt When a request for a k-block is received, the allocation procedure attempts to allocate a k-block fromt he k-list. If the k-list is empty, a k-block can be supplied either by splitting recursively larger available blocks (i.e. "going up")as in the traditional buddy algorithm, or by coalescing smaller available buddies ("going down"). the going down process first determines whether a buddy coalescing process can actuall form a k-block from the set of smaller available blocks, in which case a selective recombination of buddies occurs and a k-block is assembled. |
Relevance
Claims
1
An apparatus, comprising:
a modified buddy system memory allocator that receives a request for a size of memory;
wherein the modified buddy system memory allocator identifies a plurality of contiguous, differently-sized memory blocks that are each smaller than the size of memory from the request;
wherein the modified buddy system memory allocator allocates the plurality of contiguous, differently-sized memory blocks to satisfy the request for the size of memory.
Relevance
Cited art describes this process exactly without the unnecessary restriction that the plurality of smaller blocks be different sizes. The general methodology is well-known to one skilled in the art. See, for example, ftp://ftp.cs.utexas.edu/pub/garbage/allocsrv.ps
Note particularly, the fact that a buddy system is a special case of a segregated free list and that deferred coalescing is also a well-known technique.
Cited art describes this process exactly without the unnecessary restriction that the plurality of smaller blocks be different sizes. The general methodology is well-known to one skilled in the art. See, for example, ftp://ftp.cs.utexas.edu/pub/garbage/allocsrv.ps
Note particularly, the fact that a buddy system is a special case of a segregated free list and that deferred coalescing is also a well-known technique.
Claim Chart
All
13
A method, comprising the steps of:
receiving a request for allocation of a size of memory;
identifying a plurality of contiguous, differently-sized memory blocks that are each smaller than the size of memory from the request, wherein the plurality of contiguous, differently-sized memory blocks is organized in a plurality of different buddy system memory allocation free block lists; and
allocating the plurality of contiguous, differently-sized memory blocks to satisfy the request for the size of memory.
Relevance
See comments under claim 1.
See comments under claim 1.
Claim Chart
All
19
A method, comprising the steps of:
receiving a request for allocation of a size of memory;
identifying a first memory block in a first modified buddy system memory allocation free block list of a first modified buddy system memory allocator, wherein a size of the first memory block is smaller than the size of memory from the request;
searching a second modified buddy system memory allocation free block list of a second modified buddy system memory allocator for a second memory block that is contiguous with the first memory block;
identifying the second memory block in the second modified buddy system memory allocation free block list, wherein a size of the second memory block is different from the size of the first memory block and is smaller than the size of memory from the request; and
allocating the first memory block and the second memory block to a client application to satisfy the request for the size of memory.
Relevance
See comments under claim 1.
See comments under claim 1.
Claim Chart
All
0 days left






