Method and system for determining memory chunk location using chunk header information
AssigneePalm, Inc.
InventorAlexandre Roux
Life of this patent
Estimating the term…
Abstract
A computer system memory is structured as contiguous memory chunks, each chunk having a header. A chunk header includes a first offset value, a sign bit associated with the first offset value, and a number of bits having values that are added to a second offset value that is determined from the first offset value. In particular, the actual offset value can be determined by adding the values of the bits to the second offset value and by multiplying the result by the binary equivalent of four. The second offset value is then used for determining an actual offset value that is applied to a base address to provide a memory location of the memory chunk.
Claims21
A computer system comprising:
- a processor;
- and
- a memory coupled to said processor, said memory comprising a plurality of contiguous memory chunks, wherein a memory chunk comprises a chunk header comprising:
- a first offset value;
- a sign bit associated with said first offset value;
- and
- a number of bit values, wherein a second offset value comprising said sign bit and said first offset value and further comprising said bit values as its lowest order bits is used for determining an actual offset value that is applied to a base address to provide a memory location of said memory chunk, wherein said actual offset value is determined by adding said values of said bits to said second offset value and by multiplying the result of said adding by the binary equivalent of four.
A method for managing a computer system memory comprising chunks, said method comprising:
- receiving a first offset value having a sign bit;
- accessing a first number of bits in addition to said first offset value;
- determining a second offset value from said first offset value, said second offset value comprising said sign bit and said first offset value and further comprising said first number of bits as its lowest order bits, wherein said second offset value is determined by multiplying said first offset value by the binary equivalent of four and adding bit values for said first number of bits to the result of said multiplying;
- and
- determining an actual offset value from said second offset value, said actual offset value comprising said second offset value and a second number of additional bits as its lowest order bits, said second number of bits each having a value of zero.
A method for managing a computer system memory comprising chunks, said method comprising:
- receiving a reference to a chunk, said reference comprising an actual offset value between a memory location of said chunk and a base address;
- generating a first offset value from said actual offset value, said first offset value having fewer bits than said actual offset value;
- storing in a header of said chunk, values of a number of bits selected from said first offset value;
- generating a second offset value from said first offset value, said second offset value having fewer bits than said first offset value, wherein the difference in size between said first and second offset values is said number of bits, wherein said second offset value is generated by subtracting said values of said number of bits from said first offset value, and dividing the result of said subtracting by the binary equivalent of four;
- and
- storing in said header, said second offset value.
Dependencies are inferred from the claim text.