Stack Size !

sachindbhujbal wrote on Friday, January 09, 2009:

Dear All,

    I am working on STR9-Angilia-FreeRTOs Project.
    I am creating 9 Tasks having same priority( 5 ). configMAX_PRIORITY is 8.
    Stack size are
    1) Stack sizes of 4 Tasks are 100.
    2) Stack sizes of other 5 Tasks are 400. ( 4 of these Tasks are multiple instances of one Task )

    But one of the above Task which having 100 Stack Size is not getting created due to stack size.

    As per site documentation higher the value of configMAX_PRIORITY more RAM will
    be required by Kernel. Therefore I kept priorities of All Tasks to 1 and configMAX_PRIORITY set to 2. But found same result.

    I don’t know why stack size is creating problem if STR9 is having 96K RAM ?
    How should I calculate Stack sizes ?
    I know that we have to add sizes all variables used in Task & in related functions.
    Am I right or tell me how to calculate it exactly ?

    Please help me in this issue.
   
Thanks,

Sachin D. Bhujbal   
    

davedoors wrote on Friday, January 09, 2009:

If you are using heap_1.c or heap_2.c then increase the value of configTOTAL_HEAP_SPACE in FreeRTOSConfig.h.

sachindbhujbal wrote on Friday, January 09, 2009:

Thanks Dave,
     Problem is solved after increasing Heap Size.,
I read it in document that it is ram size available to Kernel.
But can You explain me in detail about Heap & its use ?

Please answer !

davedoors wrote on Friday, January 09, 2009:

Did you read this
http://www.freertos.org/a00111.html ?