GEOS SDK TechDocs
|
|
|
1 Design Philosophy
The GEOS memory manager is well suited to dealing with blocks of memory in the 2K-6K range. However, for small amounts of memory, the manager's overhead becomes significant. For this reason, GEOS provides local memory (or LMem ) routines. These routines let an application allocate a block of memory and designate it as a local memory heap . The application can then request small amounts of memory from this heap. The LMem library automatically reorganizes the heap when necessary to make space available.
The local memory routines are also used to manipulate objects. All objects are special LMem chunks which are stored in a special type of LMem heap (called an object block ). Most of the routines which work on chunks can also be used on objects.
1 Design Philosophy
2 Structure of a Local Memory Heap
2.1 The Local Heap
2.2 Chunks and Chunk Handles
2.3 Types of LMem Heaps
3 Using Local Memory Heaps
3.1 Creating a Local Heap
3.2 Using Chunks
3.3 Contracting the LMem Heap
3.4 Example of LMem Usage
4 Special LMem Uses
4.1 Chunk Arrays
4.2 Element Arrays
4.3 Name Arrays
GEOS SDK TechDocs
|
|
|
1 Design Philosophy