Title :
Dynamic RAM-based programs and tasks in the freescale MQX operating system
Author :
Manjikian, Naraig
Author_Institution :
Dept. of Electr. & Comput. Eng., Queen´s Univ., Kingston, ON, Canada
Abstract :
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.
Keywords :
flash memories; microcontrollers; operating system kernels; random-access storage; real-time systems; ARM-based microcontroller chips; ColdFire-based microcontroller chips; Freescale MQX real-time operating system; MQX kernel; continuously-executing programs; dynamic RAM-based code; dynamic RAM-based programs; finite-duration programs; flash EEPROM storage; telnet shell; Algorithms; Data structures; EPROM; Microcontrollers; Random access memory; Software; System-on-chip;
Conference_Titel :
Electrical and Computer Engineering (CCECE), 2015 IEEE 28th Canadian Conference on
Conference_Location :
Halifax, NS
Print_ISBN :
978-1-4799-5827-6
DOI :
10.1109/CCECE.2015.7129361