while creating a task, 4 times the ram is malloc’d than requested @ prvAllocateTCBAndStack()

When createing a task with 4kB of stack, prvAllocateTCBAndStack() executes the following line: pxNewTCB->pxStack = ( StackType_t * ) pvPortMallocAligned( ( ( ( size_t ) usStackDepth ) * sizeof( StackType_t ) ), puxStackBuffer ); This does a mallco of 4kB * sizeof( StackType_t ).. which means it mallocs 16kB… why is that? I am running FreeRTOS v8 and Heap4 Thanks

while creating a task, 4 times the ram is malloc’d than requested @ prvAllocateTCBAndStack()

Please see the documentation for the xTaskCreate() API function: http://www.freertos.org/a00125.html

while creating a task, 4 times the ram is malloc’d than requested @ prvAllocateTCBAndStack()

Requested stack size is define to be in units of StackTypeT, not bytes. Due to alignment reasons, it MUST be a multiple of StackTypeT, so it is given in units of StackType_T.

while creating a task, 4 times the ram is malloc’d than requested @ prvAllocateTCBAndStack()

understood.. thanks