As a partner of FreeRTOS in designing quality open source software for IoT, Datalight is excited for the recent release of FreeRTOS version 9.0.0. FreeRTOS V9 adds several features and improvements to the real-time operating system. Most significantly, FreeRTOS now supports completely statically allocated systems, giving developers precise control over the RAM footprint and even the memory locations of specific RTOS components (such as each individual task’s stack).
Dynamic memory allocation involves risk in IoT projects, especially on devices that lack a memory protection unit, since invalid memory access may corrupt the system without immediately reporting any error. This is one reason why Datalight’s reliable file system for FreeRTOS, Reliance Edge, adheres to the MISRA C:2012 design guidelines, which require compliant software to statically allocate all memory. The improvements in FreeRTOS V9 complement this design, making Reliance Edge the clear file system choice for FreeRTOS users who value software and data reliability. Datalight plans to release a minor update to ensure full compatibility in June.
As an IoT developer, I have encountered strange bugs related to memory allocation on embedded systems, such as stack corruption and variables that change without being touched by the code. Getting to the root of these bugs is often quite daunting, requiring additional time and effort. However, software like FreeRTOS V9 and Reliance Edge give the developer the option of eliminating dynamic memory allocation, making it easier to produce stable, quality products for IoT.
Download a copy of the Reliance Edge source code from GitHub HERE. Get more information about Reliance Edge below.