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.