RTOS Comparison

Chris Johns chrisj at rtems.org
Wed Sep 21 22:02:01 UTC 2016


On 22/09/2016 05:35, warm38 at juno.com wrote:
> Round 2:
>
> Our company is looking into using an RTOS very soon.  The ones examined
> (by a company in India who does our protocol stacks) are:
> FreeRTOS,  Segger Emb-OS,  Micrium,  Threadx.
>
> Can anyone (Joel?) fill in the following for RTEMS so I can add in my 2
> cents in for RTEMS?  We are working with Cortex M4 and M7 (STM32L4 and
> Atmel SAM4 & SAM7).
>
> Kernel size (ROM)

Depends on services used.

> Kernel RAM usage

Depends on the configuration of services used.

> Kernel Type

Real-time

> Scheduling

https://docs.rtems.org/doc-current/share/rtems/html/c_user/Scheduling-Concepts-Scheduling-Algorithms.html#Scheduling-Concepts-Scheduling-Algorithms
https://docs.rtems.org/doxygen/cpukit/html/group__ScoreScheduler.html

Look at under the Modules heading.

> Scalability

Yes.

> Min. stack-size per task (RAM)

Depends on the task and what is does and what it calls. Usually 4K but 
this is for apps that need to run on a wide range of architectures like 
tests in the test suite.

> Max. no. of tasks

User defined.

Please take a look at 
https://docs.rtems.org/doc-current/share/rtems/html/c_user/Configuring-a-System.html#Configuring-a-System

> Max. no. of mailboxes

User defined.

> Max. no. of semaphores

User defined.

> Max. no. of software timers

User defined.

> Max. no. of priorities

256

> Nested interrupts

Yes

> Task switches from within ISR

Context switching happens after the interrupt context finishes.

> Context switch time

Depends on what is happening and how the app is put together. The times 
compare well with the best available. Times are typically fixed and 
invariant under load.

> Interrupt latency time

Very good. Again it compares with the best.

> Atmel studio 7/ASF - Tool compatibility

No idea. We use a fully open source suite of tools.

> Royalty Fee

Yes, and this is for all parts we offer under the project. If you add 
packages like YAFFS you may have a cost there.

> License Cost

No cost and a low if any at all compliance cost.

> Networking

Yes, there are 3 options depending on your needs from a full recent 
FreeBSD stack to lwIP.

> POSIX compliant

Yes.

> any tools to avoid priority inversion

Any 3rd party tools that statically analyses code to do this should 
work. A capture engine exists to record context switches you can use to 
see what your code is doing.

Source Code

Open source and all is available including all the tools, libraries and 
support tools to build.

Development Hosts

A wide range of common host operating systems.

Support

A number of support services are available on top of the open community 
support on public mailing lists. Please ask if you need more information.

Chris



More information about the users mailing list