*** Welcome to piglix ***

Micro-Controller Operating Systems

MicroC/OS
Developer Micrium, Inc.,
Silicon Labs
Written in ANSI C
OS family Real-time operating systems
Working state Current
Source model Closed source, source available
Initial release 1991; 26 years ago (1991)
Latest release OS-III / 2016; 1 year ago (2016)
Marketing target Embedded devices
Available in English
Platforms ARM Cortex-M3, Cortex-M4F, ARM7TDMI; Atmel AVR
Kernel type Microkernel
Default user interface μC/GUI
License Commercial, freeware education use
Official website www.micrium.com/products

Micro-Controller Operating Systems (MicroC/OS, stylized as µC/OS) is a real-time operating system (RTOS) designed by embedded software developer, Jean J. Labrosse in 1991. It is a priority-based preemptive real-time kernel for microprocessors, written mostly in the programming language C. It is intended for use in embedded systems.

MicroC/OS allows defining several functions in C, each of which can execute as an independent thread or task. Each task runs at a different priority, and runs as if it owns the central processing unit (CPU). Lower priority tasks can be preempted by higher priority tasks at any time. Higher priority tasks use operating system (OS) services (such as a delay or event) to allow lower priority tasks to execute. OS services are provided for managing tasks and memory, communicating between tasks, and timing.

The MicroC/OS kernel was published originally in a three-part article in Embedded Systems Programming magazine and the book µC/OS The Real-Time Kernel by Jean J. Labrosse (). The author intended at first to simply describe the internals of a portable operating system he had developed for his own use, but later developed the OS as a commercial product in versions II and III.

Tasks running on a multitasking kernel should be written in one of two ways:

Based on the source code written for µC/OS, and introduced as a commercial product in 1998, µC/OS-II is a portable, ROM-able, scalable, preemptive, real-time, deterministic, multitasking kernel for microprocessors, and digital signal processors (DSPs). It manages up to 255 application tasks. Its size can be scaled (between 5 to 24 Kbytes) to only contain the features needed for a given use.

Most of µC/OS-II is written in highly portable ANSI C, with target microprocessor-specific code written in assembly language. Use of the later is minimized to ease porting to other processors.


...
Wikipedia

...