Gast
#358580
Hallo! Ich kaempfe mich hier muehevoll aber stetig durch das FreeRTOS an einem LPC2148 mit Crossworks durch (danke nochmal an Martin fuer den wertvollen Tipp mit dem SWI!). Diesmal gilt die Frage dem Handling der dynamischen Speicherreservierung. Das FreeRTOS bietet da ja drei mechanismen: -heap_1.c: FreeRTOS-eigen ohne Speicherfreigabe -heap_2.c: FreeRTOS-eigen mit Speicherfreigabe aber ohne Blockzusammenfuehrung -heap_3.c: Ueber GCC (malloc/free) Ich spiele gerade mit der dritten Methode, nachdem die zweite funktioniert hat, jedoch durch die Einschraenkung nicht sehr befriedigend ist. Meine Frage dreht sich um die Definition der Heap-Groesse.. Sehe ich es korrekt, dass die Groesse des Heaps in den ersten zwei Faellen im Header (FreeRTOSConfig.h) und im dritten Fall ueber die Property vom Linker (Eintrag Heap_Size)? Ich bin mir dessen nicht sicher, da ich gaenzlich andere Adressen fuer die allokierten Bloecke erhalte. malloc/free scheint da vom Top des Heaps nach unten zu allokieren, im anderen Fall vom Bottom nach oben.. BTW: Gibts eine "Faustformel" fuer die Bestimmung der Heapgroesse?