D
Тесты стабильности есть, проблем с дефрагментацией или недостатком памяти не возникало. Что мы сделали чтобы добиться такого результата:
* Привязали всю аллокацию к фриртос аллокатору, см make/freertos-heap.mk и core/furi/memmgr.c.
* Написали профайлер памяти сравнивающий память до старта приложения и после его выхода.
* Ограничились ОДНИМ запущенным приложением на систему. Приложением так же считается команда полученная по RPC.
Так же heap4 из фриртос - достаточно хороший аллокатор (first fit), есть лучше, но кода там на порядок-два больше будет, мы в приоритет поставили понятность аллокатора. См https://www.cs.tufts.edu/~nr/cs257/archive/paul-wilson/fragmentation.pdf.
https://github.com/flipperdevices/flipperzero-firmware