R_RTOS
0.1
DistributedRealTimeOperatingSystemfortheARMCortexMArchitecture
|
Contains the full information about the memory block. More...
#include <R_RTOS_memMngr.h>
Data Fields | |
MemFlags | flagsForMemBlock |
Contains the most important flags for handling this block of memory. More... | |
MemFlags | additionalFlags |
Contains flags for handling neighbors of this buddy block. More... | |
MemIndex | nxtMemBlck |
index of the next memory block | |
MemIndex | prvMemBlck |
index of the previous memory block | |
Contains the full information about the memory block.
Used to handle a buddy block of memory. Pointers are used for fast traversal, insertion and deletion of nodes.
memMngrHead::additionalFlags |
Contains flags for handling neighbors of this buddy block.
BIT | Name | Purpose |
---|---|---|
0 | IsBlckBeg | Indicates that the block is at the beginning of a BIGGEST_BLCK buddy |
1 | IsBlckLast | Indicates that the block is the last block in the list |
2 | PRV 4 B | Indicates the size of the adjacent previous block |
3 | PRV 8 B | Indicates the size of the adjacent previous block |
4 | PRV 16 B | Indicates the size of the adjacent previous block |
5 | PRV 32 B | Indicates the size of the adjacent previous block |
6 | PRV 64 B | Indicates the size of the adjacent previous block |
7 | PRV 128 B | Indicates the size of the adjacent previous block |
8 | PRV 256 B | Indicates the size of the adjacent previous block |
9 | PRV 512 B | Indicates the size of the adjacent previous block |
10 | PRV 1024 B | Indicates the size of the adjacent previous block |
11 | PRV 2048 B | Indicates the size of the adjacent previous block |
12 | nxtSplit | Indicates that the adjacent next block is split |
13 | prevSplit | Indicates that the adjacent previous block is split |
14 | bggrMrgd | deprecated |
15 | Cached | Memory Block is in the object cache |
memMngrHead::flagsForMemBlock |
Contains the most important flags for handling this block of memory.
BIT | Name | Purpose |
---|---|---|
0 | IsTaken | Indicates that the block is either still available or already taken |
1 | IsLower | Indicates that the block is the lower buddy |
2 | 4 Byte | Indicates size of the block |
3 | 8 Byte | Indicates size of the block |
4 | 16 Byte | Indicates size of the block |
5 | 32 Byte | Indicates size of the block |
6 | 64 Byte | Indicates size of the block |
7 | 128 Byte | Indicates size of the block |
8 | 256 Byte | Indicates size of the block |
9 | 512 Byte | Indicates size of the block |
10 | 1024 Byte | Indicates size of the block |
11 | 2048 Byte | Indicates size of the block |
12 | SPLIT | Indicates that the block is split into buddies |
13 | MERGED | Indicates that the block is merged into a block bigger than BIGGEST_BLCK |
14 | PrevTaken | Indicates that the adjacent previous block is either still available or already taken |
15 | NxtTaken | Indicates that the adjacent next block is either still available or already taken |