#include <stdlib.h>
#include "FreeRTOS.h"
#include "task.h"
Data Structures | |
struct | A_BLOCK_LINK |
Macros | |
#define | heapADJUSTED_HEAP_SIZE ( configTOTAL_HEAP_SIZE - portBYTE_ALIGNMENT ) |
#define | heapBITS_PER_BYTE ( ( size_t ) 8 ) |
#define | heapMINIMUM_BLOCK_SIZE ( ( size_t ) ( heapSTRUCT_SIZE * 2 ) ) |
#define | MPU_WRAPPERS_INCLUDED_FROM_API_FILE |
Typedefs | |
typedef struct A_BLOCK_LINK | xBlockLink |
Functions | |
static void | prvHeapInit (void) |
static void | prvInsertBlockIntoFreeList (xBlockLink *pxBlockToInsert) |
void * | pvPortMalloc (size_t xWantedSize) |
void | vPortFree (void *pv) |
void | vPortInitialiseBlocks (void) |
size_t | xPortGetFreeHeapSize (void) |
Variables | |
static const unsigned short | heapSTRUCT_SIZE = ( ( sizeof ( xBlockLink ) + ( portBYTE_ALIGNMENT - 1 ) ) & ~portBYTE_ALIGNMENT_MASK ) |
static xBlockLink * | pxEnd = NULL |
static unsigned char | ucHeap [configTOTAL_HEAP_SIZE] |
static size_t | xBlockAllocatedBit = 0 |
static size_t | xFreeBytesRemaining = ( ( size_t ) heapADJUSTED_HEAP_SIZE ) & ( ( size_t ) ~portBYTE_ALIGNMENT_MASK ) |
static xBlockLink | xStart |
static const size_t | xTotalHeapSize = ( ( size_t ) heapADJUSTED_HEAP_SIZE ) & ( ( size_t ) ~portBYTE_ALIGNMENT_MASK ) |
#define heapADJUSTED_HEAP_SIZE ( configTOTAL_HEAP_SIZE - portBYTE_ALIGNMENT ) |
#define heapBITS_PER_BYTE ( ( size_t ) 8 ) |
Referenced by prvHeapInit().
#define heapMINIMUM_BLOCK_SIZE ( ( size_t ) ( heapSTRUCT_SIZE * 2 ) ) |
Referenced by pvPortMalloc().
#define MPU_WRAPPERS_INCLUDED_FROM_API_FILE |
typedef struct A_BLOCK_LINK xBlockLink |
|
static |
References configASSERT, heapBITS_PER_BYTE, heapSTRUCT_SIZE, NULL, portPOINTER_SIZE_TYPE, pxEnd, A_BLOCK_LINK::pxNextFreeBlock, ucHeap, A_BLOCK_LINK::xBlockSize, and xTotalHeapSize.
Referenced by pvPortMalloc().
|
static |
References pxEnd, A_BLOCK_LINK::pxNextFreeBlock, and A_BLOCK_LINK::xBlockSize.
Referenced by pvPortMalloc(), and vPortFree().
void* pvPortMalloc | ( | size_t | xWantedSize | ) |
void vPortFree | ( | void * | pv | ) |
void vPortInitialiseBlocks | ( | void | ) |
size_t xPortGetFreeHeapSize | ( | void | ) |
References xFreeBytesRemaining.
|
static |
Referenced by prvHeapInit(), pvPortMalloc(), and vPortFree().
|
static |
Referenced by prvHeapInit(), and prvInsertBlockIntoFreeList().
|
static |
Referenced by prvHeapInit().
|
static |
Referenced by pvPortMalloc().
|
static |
Referenced by pvPortMalloc(), and xPortGetFreeHeapSize().
|
static |
Referenced by pvPortMalloc().
|
static |
Referenced by prvHeapInit().