Micrium - µC/OS-III Kernel

By: Micrium  09-12-2011
Keywords: Consumer Electronics, industrial controls, Data Communications

The μC/OS-III is Micrium’s newest RTOS, designed to save time on embedded system projects. In addition to the features inherent in μC/OS-II, μC/OS-III also manages an unlimited number of application tasks, and features an interrupt disable time of near zero.

Micrium’s μC/OS-III supports ARM7/9, Cortex-MX, Nios-II, PowerPC, Coldfire, i.MX, Microblaze, RX600, H8, SH, M16C, M32C, Blackfin, and more. Ports are available for download from the Micrium website.

μC/OS-III manages unlimited application tasks, constrained only by a processor’s access to memory. μC/OS-III supports an unlimited number of priority levels. Typically, configuring μC/OS-III for between 32 and 256 different priority levels is adequate for most embedded applications.

μC/OS-III allows for unlimited tasks, semaphores, mutexes, event flags, message queues, timers and memory partitions. The user allocates all kernel objects at run time. μC/OS-III provides features to allow stack growth of tasks to be monitored. While task size is not limited, they need to have a minimum size based on the CPU used.

μC/OS-III allows multiple tasks to run at the same priority level. When equal priority tasks are ready to run, μC/OS-III runs each for a user- specified time. Each task can define its own time quanta and give up its time slice if it does not require the full time quanta.

μC/OS-III has a number of internal data structures and variables that it needs to access atomically. It protects these critical regions by disabling interrupts for almost zero clock cycles, ensuring that it is able to respond to some of the fastest interrupt sources. Interrupt response with μC/OS-III is deterministic.

μC/OS-III ensures that NULL pointers are not passed, task level services from ISRs aren’t called, arguments are within allowable range, and specified options are valid. Each API function provides an error code regarding the outcome of the function call.

μC/OS-III’s footprint can be scaled to only contain the features required for a specific application. The execution time for most services provided by μC/OS-III is both constant and deterministic; execution times do not depend on the number of tasks running in the application.

 µC/OS-III is used in a wide variety of industries:

  • Data Communications Equipment
  • White Goods (Appliances)
  • Mobile Phones, PDAs, MIDs
  • Industrial Controls
  • Consumer Electronics
  • Automotive
  • A Wide-Range of Embedded Applications

 The features of µC/OS-III include:

  • Delivered with complete 100% ANSI C source code and in-depth documentation.
  • Preemptive Multitasking: Runs the most important task that is ready.
  • Unlimited tasks, priorities, kernel objects
  • Round-Robin Scheduling
  • Near Zero Interrupt Disable Time
  • Scalable to contain only required features.

µC/OS-III allows developers to produce multi-threaded applications, vital to the development of safety-critical systems. Thanks to improved integration with IAR Embedded Workbench for ARM, developers can access all the inherent non-reentrant features of C/C++ in a thread-safe manner.

Application developers who write code for use in multi-threaded environments will find the support critical when protecting shared objects using system locks, file-stream locks, and thread-local storage (TLS) in multi-threaded environments.

Micrium and IAR collaborated in providing the first thread-safe support in µC/OS-III for the IAR DLIB run-time library. Protection for such non-reentrant functions as strtok(), rand(), errno() and more are local to each thread. Global and static variables typically used by these functions are protected by the Micrium kernel.

Who should use this RTOS? Developers who want to save time on their current and future embeddedsystem projects, and who require arobust RTOS built on clean,easy-to-implement code.
Supported Processors See complete list in Processor Chartfor μC/OS-III
Maximum ROM Footprint (Unscaled) 24 Kbytes
Minimum ROM Footprint (Scaled) 6 Kbytes
Number of Kernel Services 10 different using 80 API calls
Multitasking Model Preemptive
Code Execution Entities Tasks, ISRs
Dynamic Objects Static and Dynamic
Data Movement Message Queues (unlimited)
Semaphores - Full Counting Yes (unlimited)
Mutexes - With Priority Inheritance Yes (priority ceiling)
Event Flags Yes (unlimited), configurablefor 8, 16, or 32 bits
Memory Partitions - RAM Management Yes (unlimited)
Timers Yes (unlimited)
Number of tasks Unlimited
Interrupt Disable Time Near Zero

Keywords: Communications Equipment, Consumer Electronics, Data Communications, Data Communications Equipment, Embedded System, industrial controls, White Goods,

Other products and services from Micrium


Micrium - µC/TimeSpaceOS

ΜC/TimesSpaceOS addresses such safety-critical market segments as avionics, medical, transportation, and industrial applications, providing such features and benefits as. ΜC/TimeSpaceOS manages both memory and time allocated to diverse applications and enables the cost-effective certification of complex systems.


Micrium - RTOS

However, given the stringent development process for all of Micrium's products, its strict coding standards, code reviews, and clear and concise documentation, hobbyists are not our focus. Whether your embedded project involves fairly simple RTOS requirements or must be compliant with the most rigorous of standards, Micrium has an RTOS to do the job. Micrium listens to its customers and the most recent result of customer input is µC/OS-III.


Micrium - Tools

The kit includes a development board, ISR J-Link JTAG debugger with USB connector, software development tools including IAR visualSTATE and IAR Embedded Workbench, complete with µC/OS-II, a limited editon of µC/Probe, and optionally, µC/TCP-IP source code. In addition to µC/Probe, Micrium's award-winning tool, Micrium is also a worldwide authorized distributor of IAR Systems development tools for embedded systems, including.


Micrium - Micriµm Books

MicroC/OS-II is a highly portable, ROMable, scalable, preemptive real-time, multitasking kernel for microprocessors and microcontrollers with performance comparable to - and in some cases exceeding - commercially-available kernels. Certifiable for use in safety-critical systems, this RTOS has been proven to be robust, reliable, and safe enough for you to use in your own applications.


Micrium - Overview

Micrium offers in-depth design services to its customers, and is in the process of establishing a consultant certification program to deliver the absolute best assistance possible to accompany our award-winning software. At Micrium, 'customer first' is not just a saying, it's a mission.


Micrium - µC/OS-II Kernel

Developers who want to save time on their current and next embedded system project, and who want the cleanest, most popular, and robust RTOS on the market. C/OS-II’s footprint can be scaled (between 5 Kbytes to 24 Kbytes) to only contain the features required for a specific application. A validation suite provides all documentation necessary to support the use of ?C/OS-II in safety-critical systems.