µC/OS-III is a highly portable, ROMable, scalable, preemptive, real-time, deterministic, multitasking kernel for microprocessors, microcontrollers and DSPs.
Offering unprecedented ease-of-use, μC/OS-III is delivered with complete 100% ANSI C source code and in-depth documentation. μC/OS-III runs on the largest number of processor architectures, with ports available for download from the Micrium Web site.
µC/OS-III manages an unlimited number of application tasks, constrained only by a processor’s access to memory. µC/OS-III also supports an unlimited number of priority levels (typically configured for between 8 and 256 different priority levels).
µ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 amount of 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 provides extensive range checking which can be disabled at compile time. µC/OS-III thus checks for NULL pointers passed in API calls, 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 contain only the features required for a specific application (typically 6–24 KBytes of code space residing in memory).
Micrium’s user documentation is available online on the Micrium documentation site.