Welcome to the world of multi-tasking. SOS (Small Operating System) is the real-time operating system for TI MSP430 microcontrollers. SOS is a high performance real time OS that has been optimized for minimum memory consumption (aspecially RAM).
It is very small and simple. But usually you will not need more for most projects.
SOS provides the necessary function calls and operating system kernel to write efficient C code to create a well designed, multi-tasking application. The ability of a single processor to run many tasks by swapping different tasks in and out creates the feeling that many tasks are operating simultaneously. This is what multi-tasking is all about. SOS is a real-time multi-tasking operating system giving you function calls and an operating system kernel that will:
SOS uses msp-gcc a gcc compiler port for MSP430 microcontrollers family.
As I said before SOS was optimized for minimum RAM consumption (MSP430 microcontrollers does not have a plenty of RAM(<2K)). The RAM and ROM (Flash) memory requirements for the different modules of SOS are shown in the next table:
|Kernel||3+4*MAX_TASKS bytes||444 bytes|
|Events||8 bytes||552 bytes|
|Timers||2+2*TIMERS_COUNT bytes||394 bytes|
|Critical Sections||--||226 bytes|
|Total||13+ bytes||1650 bytes|
For now SOS is stable. I use it to control the home made HF DSP transceiver. It was tested with MSP430F147 and MSP430F149. Currently it runs 9 tasks (the control program is approx. 12000 lines C code) actively interacting with variety of peripherial (ADC, UART, SPI and etc.) without any problems.
Distribution or publishing SOS in either modified or original form for profit is prohibited, but if you choose to link SOS with other files to produce an executable, your use of the executable is in no way restricted on account of linking the SOS code with it. (details can be found here).
If you will find it useful, please drop me a note.
Designed by Oleg Skydan