Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The table below shows the evolution of µC/OS over the years, comparing the features available in each version.

FeatureµC/OSµC/OS-IIµC>µC/OS-III
Year introduced199219982009
BookYesYesYes
Source code availableYesYesYes
Preemptive MultitaskingYesYesYes
Maximum number of tasks64255Unlimited
Number of tasks at each priority level11Unlimited
Round Robin SchedulingNoNoYes
SemaphoresYesYesYes
Mutual Exclusion SemaphoresNoYesYes (Nestable)
Event FlagsNoYesYes
Message MailboxesYesYesNo (not needed)
Message QueuesYesYesYes
Fixed Sized Memory ManagementNoYesYes
Signal a task without requiring a semaphoreNoNoYes
Option to Post without schedulingNoNoYes
Send messages to a task without requiring a message queueNoNoYes
Software TimersNoYesYes
Task suspend/resumeNoYesYes (Nestable)
Deadlock preventionYesYesYes
ScalableYesYesYes
Code Footprint3K to 8K6K to 26K6K to 24K
Data Footprint1K+1K+1K+
ROMableYesYesYes
Run-time configurableNoNoYes
Compile-time configurableYesYesYes
ASCII names for each kernel objectNoYesYes
Pend on multiple objectsNoYesYes
Task registersNoYesYes
Built-in performance measurementsNoLimitedExtensive
User definable hook functionsNoYesYes
Time stamps on postsNoNoYes
Built-in Kernel Awareness supportNoYesYes
Optimizable Scheduler in assembly languageNoNoYes
Catch a task that returnsNoNoYes
Tick handling at task levelNoNoYes
Source code availableYesYesYes
Number of services~20~90~70
MISRA-C:1998NoYes (except 10 rules)N/A
MISRA-C:2004NoNoYes (except 7 rules)
DO178B Level A and EUROCAE ED-12BNoYesIn progress
Medical FDA pre-market notification (510(k)) and pre-market approval (PMA)NoYesIn progress
SIL3/SIL4 IEC for transportation and nuclear systemsNoYesIn progress
IEC-61508NoYesIn progress

Table 1-1 µC/OS, µC/OS-II and µC/OS-III Features Comparison Chart