Przejdź do głównej zawartości

GET /api/debug/heap/

Stan stert FreeRTOS i lwIP.

Uwierzytelnianie: Bearer (powerUser).


{
"rtos": {
"totalBytes": 30720,
"freeBytes": 18240,
"minEverFreeBytes": 12800,
"largestFreeBlockBytes": 14336,
"smallestFreeBlockBytes": 16,
"freeBlockCount": 7,
"allocCount": 1234,
"freeCount": 1200
},
"lwip": {
"totalBytes": 51200,
"freeBytes": 38400,
"minEverFreeBytes": 28000
}
}
PoleTypOpis
rtos.totalBytesliczbaCałkowity rozmiar sterty FreeRTOS (configTOTAL_HEAP_SIZE)
rtos.freeBytesliczbaBieżąca ilość wolnego miejsca (suma wszystkich wolnych bloków)
rtos.minEverFreeBytesliczbaNajmniejsza ilość wolnego miejsca od uruchomienia (dolny limit)
rtos.largestFreeBlockBytesliczbaRozmiar największego wolnego bloku (wskaźnik fragmentacji)
rtos.smallestFreeBlockBytesliczbaRozmiar najmniejszego wolnego bloku
rtos.freeBlockCountliczbaLiczba wolnych bloków
rtos.allocCountliczbaLiczba pomyślnych wywołań pvPortMalloc od uruchomienia
rtos.freeCountliczbaLiczba pomyślnych wywołań vPortFree od uruchomienia
lwip.totalBytesliczbaCałkowity rozmiar sterty lwIP
lwip.freeBytesliczbaBieżąca ilość wolnego miejsca na stercie lwIP
lwip.minEverFreeBytesliczbaNajmniejsza ilość wolnego miejsca na stercie lwIP od uruchomienia

Gdy freeBytes > 0, wskaźnik fragmentacji sterty FreeRTOS wynosi 1 - largestFreeBlockBytes / freeBytes. Jeśli wartość largestFreeBlockBytes jest znacznie mniejsza niż freeBytes, przydzielenie dużego bloku może się nie powieść pomimo wystarczającej łącznej ilości wolnej pamięci. Gdy freeBytes == 0, interfejs WWW wyświetla 0% bez obliczania tego wzoru.