Statisk minnesallokering
Principen att allt minne ett program behöver reserveras när det länkas, så att inget någonsin behöver begäras under körning.
På en mikrokontroller med 32 KB RAM och flera års drifttid är malloc en risk snarare än en bekvämlighet. Heapen fragmenteras gradvis, en allokering kan misslyckas efter tre veckor i fält, och tiden den tar är inte förutsägbar. MISRA C förbjuder därför dynamisk allokering helt, och många säkerhetsstandarder kräver samma sak.
Alternativet är globala buffertar, statiska stackar och poolallokatorer med fast storlek. Länkaren rapporterar då exakt hur mycket RAM som används redan vid bygget — fullt minne blir ett byggfel i stället för en krasch hos kunden. FreeRTOS fick funktioner som xTaskCreateStatic i version 9 just för detta, så att även uppgifternas stackar och kontrollblock kan ligga utanför heapen.