Thought Leadership

Multicore Linux, DO-178B and RTOS performance

By Colin Walls

Although I enjoy writing articles and blogs and giving presentations – I am always hoping that I can impart some useful information and help engineers with their projects – the Q&A session after a presentation is often the moist interesting part. If I am doing a Web seminar, for example, I normally have a one hour slot; I try to talk for no more than 20-25 minutes, leaving plenty of time for Q&A. I find that so often it is the questions that trigger ideas for articles, blogs and further presentations. So, please keep them coming – comment here or email are always options.

I attended a recent Web seminar at which there were lots of interesting questions …

As is my common experience, there were far too many questions to cover in the available time, but my colleague made a fine effort to address as many as she could. I obtained a list of outstanding queries [to which she may well have sent replies by email to the appropriate attendees] and found a few that I though worth some discussion here:

If Linux is installed on two cores in an SoC, will processes be allocated to each core as needed/available?

The simple answer is: maybe. It depends on what software configuration you choose. If you use an SMP [Symmetric MultiProcessing] version of Linux, a single instance runs across both cores and processes will be allocated to a core on which to execute. The way this allocation is performed is a configuration issue. On the other hand, if Linux is installed individually on each core [it is now an AMP – Asymmetric MultiProcessing – system], code execution is managed separately and each process “belongs” to a specific OS instance and, hence, on a specific core.


Is the OS qualified to DO-178B?

It is not possible for an OS to be DO-178B qualified. The standard [which is used for mil-aero applications] requires that the complete software package be certified – both operating system and application code. It is not possible to certify just parts of the code [like the OS] individually. If you need DO-178B, the best questions to ask are:

* Do you have other users of your OS who have done this certification and to what level?
* Do you provide source code? [This is a requirement for certification. Some vendors provide it at no extra cost; some make a charge; some do not make it available.]
* Can you provide any assistance/documentation to help with certification of our application incorporating your OS?

Can we compare performances of various RTOSs?

In theory, the performance of one RTOS may be compared with another, but this can only be done in a really meaningful way by performing the measurements yourself. There are two reasons for this. First, the specific aspects of the performance that relate to your application are what count; each RTOS may perform better in different areas. Second, there is no common language or performance measurement standards. Information quoted on data sheets is hard to compare, as each vendor has their own definition for a number of common terms and this is only the start of a trail of confusion. If you would like some detailed guidance on this matter, take a look at this Web seminar recording and/or download this white paper.
You can find a link to the recording of the Web seminar where all these 3 questions were posed here.


0 thoughts about “Multicore Linux, DO-178B and RTOS performance

Leave a Reply

This article first appeared on the Siemens Digital Industries Software blog at