Patent ID: 8205062

Claim:
A method for managing memory in a system for an application, comprising: assigning a first block of the memory to the application when the application is initiated, the first block having a first size, the first block being assigned to the application until the application is terminated; dividing the first block into second blocks, each second block having a same second size, a second block of the second blocks for containing data for one or more components of a single data structure to be accessed by one thread of the application at a time; dividing the second block into third blocks, each third block having a same third size, a third block of the third blocks for containing data for a single component of the single data structure; and, if the single component is associated with variable length data: assigning a fourth block of the memory to the application when the application is initiated, the fourth block having a fourth size, the fourth block being assigned to the application until the application is terminated; dividing the fourth block into portions, each portion having a variable size, the variable size being indicated at both a start and an end of the portion; and, establishing a pointer from the third block to a portion of the fourth block, the portion for containing the variable length data of the single component, the third block for containing the pointer.