Dynamic RAM-based programs and tasks in the freescale MQX operating system

Naraig Manjikian · 2015

This paper describes a solution for supporting dynamic RAM-base code with the Freescale MQX real-time operating system that would normally have all of its code in Flash EEPROM storage found in ColdFire- and ARM-based microcontroller chips. Dynamic RAM-based code can expedite development and refinement of embedded application code by reducing the need to repeatedly build a full code image and reprogram Flash EEPROM. The solution consists of two primary components: a compact addition to MQX on the target platform, and a standalone tool on a host computer to prepare application code in a form suitable for RAM-based use. The addition to MQX exploits the convenience of an existing telnet shell, but also involves custom code for managing data structures for a collection of dynamic programs in RAM. In addition to supporting the execution of finite-duration programs, continuously-executing programs can be dynamically initiated as background tasks in MQX. For a ColdFire microcontroller, the addition to MQX represents a modest increase of approximately 9 kbytes, which is less than 9% of total image size for the MQX kernel with shell and networking code.

Read the paper · More papers on PaperTik