RTOS

.

RTOS options, such as FreeRTOS or ChibiOS , are intended for small microcontrollers. The processing and memory resources on an STM32F4xx are very limited, and the devices are generally intended for real-time kind of applications, where timing requirements are important and you want to avoid having a large software stack that can get in the way. Lots of applications don’t need to run any form of operating system at all, it  just depend on what do we need.

It’s not impossible to run Linux on an ARM M4 ( see uCLinux , http://www.emcraft.com/) but for the majority of microcontroller applications it probably isn’t advantageous to do so. It would compromise performance, and probably wouldn’t have a lot of benefits over a more light-weight real-time OS.

.

Monolithic kernels
Micro kernel
preemptive kernel
non preemptive kernel

A monolithic OS kernel has all functionality in kernel space. A microkernel-based OS has only what the designer considered to be the minimal mechanisms in the kernel space, and most of the OS functionality in user space. That division is up to the OS designer.

Independent of monolithic/microkernel-based decisions, an OS can be preemptive or non-preemptive. Preemptive means that higher priority tasks preempt the execution of lower priority tasks. Non-preemptive means that once a task starts execution, it runs to completion.

E. Douglas (Doug) Jensen

.

http://www.smxrtos.com

VxWorks

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

 

Leave a comment