Memory Management
Concepts
Provides an introduction to memory management, especially chunks
and heaps.
 
- Address Space and Process
Programs in Symbian platform consist of a number of processes, each of which contains one or more conceptually concurrent threads of execution. Each thread has at least one chunk of memory. 
- Chunks
Chunks map RAM or memory-mapped I/O devices into contiguous virtual addresses. 
- Heaps
The main thread of a process has a memory chunk that contains the thread's heap. A program's request for memory is allocated from this heap. 
- Structure of a heap
A heap consists of two lists of cells; the list of allocated cells and the list of free cells. 
- Virtual machine model
The Kernel provides a 'virtual machine' environment to user processes where each process accesses its data in the same virtual address range. 
- Shared Memory between Threads
This document describes the shared memory between threads and how to avoid race conditions.