emWin upgrade     Trade-In program     Web shop

embOS Resource Usage

High performance combined with low resource usage has always been a major design consideration. embOS runs on 8/16/32 bit CPUs. Depending on which features are being used, even single-chip systems with less than 2 Kbytes ROM and 1 Kbyte RAM can be supported by embOS.
The actual resource usage depends on many factors (CPU, compiler, memory model, optimization, configuration, etc.).
Therefore these values are neither precise nor guaranteed, but they give you a good idea of the memory requirements. In the table below, which is for a 32 bit target and X-Release build, you can find minimum RAM size requirements for embOS resources. 


Kernel size (ROM)

1700 Byte

Kernel RAM usage

71 Byte

RAM usage per task control block

32 Byte

RAM usage per resource semaphore

16 Byte

RAM usage counting semaphore

8 Byte

RAM usage per mailbox

24 Byte

RAM usage per software timer

20 Byte

RAM usage task event

0 Byte

Basic time unit (One Tick)

Default 1 msec, can be configured

Maximal number of tasks

Unlimited (by available RAM only)

Maximal number. of mailboxes

Unlimited (by available RAM only)

Maximal number of semaphores

Unlimited (by available RAM only)

Maximal number of software timers

Unlimited (by available RAM only)

Maximal number of priorities


Maximal number of tasks with identical priorities (Round robin scheduling)


For more information about performance data and resource usage, please refer to the CPU and compiler specific sub sections of our embOS Ports page.