logo slogan

Comparison of µC/OS µC/OS-II µC/OS-III

Feature

µC/OS

µC/OS-II

µC/OS-III

Release Date

1990–1999

1999–present

2009–present

Preemptive Multitasking

Yes

Yes

Yes

Maximum number of tasks

64

255

Unlimited

Number of tasks at each priority level

1

1

Unlimited

Round robin scheduling

No

No

Yes

Semaphores

Yes

Yes

Yes

Mutual exclusion semaphores

No

Yes

Yes (Nestable)

Event flags

No

Yes

Yes

Message mailboxes

Yes

Yes

No (not needed)

Message queues

Yes

Yes

Yes

Fixed sized memory management

No

Yes

Yes

Signal a task without requiring a semaphore

No

No

Yes

Option to post without scheduling

No

No

Yes

Send messages to a task without requiring a message queue

No

No

Yes

Software timers

No

Yes

Yes

Task suspend/resume

No

Yes

Yes (Nestable)

Deadlock prevention

Yes

Yes

Yes

Scalable

Yes

Yes

Yes

Code footprint

3K to 8K

6K to 26K

6K to 24K

Data footprint

1K+

1K+

1K+

ROMable

Yes

Yes

Yes

Run-time configurable

No

No

Yes

Compile-time configurable

Yes

Yes

Yes

ASCII names for each kernel object

No

Yes

Yes

Pend on multiple objects

No

Yes

Yes

Task registers

No

Yes

Yes

Built-in performance measurements

No

Limited

Extensive

User definable hook functions

No

Yes

Yes

Time stamps on posts

No

No

Yes

Built-in kernel awareness support

No

Yes

Yes

Optimizable scheduler in assembly language

No

No

Yes

Catch a task that returns

No

No

Yes

Tick handling at task level

No

No

Yes

Source code available

Yes

Yes

Yes

Number of services

~20

~90

~70

MISRA-C:1998

No

Yes (except 10 rules)

N/A

MISRA-C:2004

No

No

Yes (except 7 rules)

DO178B Level A and EUROCAE ED-12B

No

Yes

In progress

Medical FDA pre-market notification (510(k)) and pre-market approval (PMA)

No

Yes

In progress

SIL3/SIL4 IEC for transportation and nuclear systems

No

Yes

In progress

IEC-61508

No

Yes

In progress