|
Doubly Indexed Memory Allocator
|
|
Description
|
Keywords:
|
Real-Time, Dynamic Memory, DIDMA, malloc, free
|
Description:
|
RTLinux does not provide any kind of memory management support, neither virtual memory (by mean of the processor MMU page table or memory segments) nor simple memory allocation, as the one provided by the standard "C" library. RTLinux applications has to preallocate all the required memory in the init_module() function before the threads are created. Once the RTLinux threads are created, the only memory that can be used is the stack of each thread. The main reason behind the lack of memory management support in RTLinux is the idea that both virtual memory and dynamic storage allocator (DSA) algorithms introduce a unbounded overhead, making the system response unpredictable and non-realtime. This component provides dynamic memory allocation with real time characteristics. The allocator implemented in this component is a new DSA algorithm specially designed with the aim of obtaining bounded response time. The new algorithm is called DIDMA (Doubly Indexed Dynamic Memory Allocator). It is based on the use of a pure segregated strategy. See [Paul 95] for an exhaustive taxonomy and review of existing DSA algorithms.
|
|
General information
|
|
Download
|
|
Status codes:
Analysis
>>
Design
>>
Alpha
>>
Beta
>>
Testing
>>
Stable
|