Sicherheitskritische Anwendungen sind naturgemäß in der Automobil-, Luft- und Raumfahrt-Industrie zu finden. Aber auch in anderen industriellen Bereichen spielt das Thema Sicherheit oft eine entscheidende Rolle. Damit ergibt sich eine wesentliche Anforderung: Ein deterministisches Verhalten. Die vorhersagbare Reaktionszeit eines Systems, unabhängig von der momentanen Auslastung, ist in sicherheitsrelevanten Anwendungen unabdingbar. Deshalb werden für solche Applikationen typischerweise Multitasking-fähige Echtzeit-Betriebssysteme eingesetzt. Neben kommerziellen Lösungen kommen hier auch Open-Source-Multitasking-Echtzeit-Betriebssysteme zum Einsatz. In diesem Zusammenhang steht auch RTEMS. Die Abkürzung steht für „Real-Time Executive for Multiprocessor Systems“ und wurde ursprünglich von den US-Streitkräften in den 1980-er Jahren entwickelt. Nach ein paar Jahren wurde das OS dann in ein Open-Source-Modell überführt. Die Weiterentwicklung von RTEMS wird durch das amerikanische Unternehmen OAR in Kooperation mit weiteren Entwicklungsunternehmen sowie einzelnen Entwicklern vorangetrieben Embedded Brains ist davon überzeugt, dass RTEMS eine größere Rolle in vielen Branchen verdient. Deshalb unterstützt das Unternehmen mit langjährigem Know-how in den Sparten Automobiltechnik, Luft- und Raumfahrt, Telekommunikation und industrieller Automation nun auch die Open-Source-Software RTEMS.
Warum RTEMS?
RTEMS hat im Vergleich zu anderen Open-Source-Betriebssystemen diverse Vorteile. Zum einen zeichnet sich RTEMS durch seine harte Echtzeit-Fähigkeit aus. Zum anderen ist es sehr gut skalierbar und damit auf die verschiedenen Anwendungen anpassbar. Darüber hinaus weist das Betriebssystem minimale Boot-Zeiten auf und benötigt nur geringe Ressourcen. In der kleinsten Implementierung belegt das RTOS beispielsweise auf einem Sparc-Prozessor nur circa 20kByte Speicher. Für RTEMS stehen auch entsprechende Software-Bibliotheken zur Verfügung, sei es eine TCP/IP- und USB-Stack-Implementierung basierend auf FreeBSD, oder ein Upgrade des Netzwerk-Stacks auf iPv6. Derzeit wird an einer Unterstützung von Multi-Core-Prozessoren mit SMP (symmetrisches Multiprozessorsystem) gearbeitet. Aber es spricht noch ein weiterer Punkt für RTEMS: RTOS-Anbieter werden manchmal aufgekauft oder ändern ihre Strategie. Gerade für die Automotive-Industrie kann dies zum Problem werden, denn hier ist eine Langzeitverfügbarkeit unabdingbar. Mit einem Open-Source-Ansatz wird dieses Problem gelöst, so dass OEMs und Zulieferer in der Automotive-Industrie ihre Abhängigkeit von einzelnen Lieferanten abschwächen können. Dabei muss aber kein Kompromiss in Hinblick auf Zuverlässigkeit eingegangen werden. Wie zuverlässig RTEMS ist, zeigt sich unter anderem daran, dass RTEMS sehr häufig für unbemannte Weltraummissionen eingesetzt wird. Das RTOS spielt beim europäischen Satellitennavigationssystem Galileo mit, ist für die europäisch-russische Marsmission ExoMars vorgesehen und umkreist den Roten Planeten bereits im Mars Reconnaissance Orbiter, wo es Bestandteil des Funksystems ist. Auch die Command and Data Management Unit und der Attitude-Steuerrechner des europäischen Weltraumteleskops „Herschel“, das soeben seine dreijährige Mission erfolgreich beendet hat, wurden unter anderem mittels RTEMS 4.5.0 gesteuert. Auch in sicherheitskritischen Anwendungen, aus der Industrie wie beispielsweise fahrerlosen Transportsystemen, wird RTEMS vermehrt eingesetzt. RTEMS ist nicht nur zuverlässig, sondern auch für die meisten gängigen Hardware-Architekturen verfügbar, angefangen bei Intel x86, MIPS, über PowerPC und Coldfire von Freescale und V850 von Renesas bis hin zu Sparc-Prozessoren von Sun Microsystems/Oracle und verschiedensten ARM- Derivaten.
RTEMS für IEC 61508 in der richtigen Dosierung
Nachdem das RTOS seine Zuverlässigkeit schon mehrfach bewiesen hat, sieht Embedded Brains es auch als Option für Anwendungen mit hohen Sicherheitsanforderungen, die den Vorgaben der IEC-Norm 61508 oder des US-Standards DO-178 B der Luftfahrtbehörde FAA genügen müssen. Embedded Brains geht hier differenziert vor. Viele Kunden entwickeln Anwendungen, die den SIL1- und SIL2-Vorgaben der IEC 61508 entsprechen müssen. Hier ein kommerzielles Betriebssystem, das für SIL3 ausgelegt ist, einzusetzen, wäre unnötig und zu teuer. Günstiger ist es, sich von Embedded Brains einen kleinen, effektiven Scheduler schreiben zu lassen, der genau die Kundenanforderungen erfüllt, und diesen dann zertifizieren zu lassen - auch hier unterstützt das Unternehmen den Entwickler. Aber auch wenn der Entwickler für seine Anwendung das höchste Sicherheitsniveau (SIL3) benötigt, skaliert Embedded Brains die Funktionalität des Systems so herunter, dass nur genau die Teilmenge von RTEMS genutzt wird, die gebraucht wird und somit auch nur das qualifiziert werden muss, was wirklich notwendig ist.
Die Vorteile von Open Source
Für RTEMS wie für andere Open Source Ansätze gilt: Wenn am Kernel und an den Treibern Änderungen vorgenommen werden, müssen diese veröffentlicht werden. Dieses Prinzip hat Vorteile: Wenn Verbesserungen und neue Funktionalitäten ins System eingebaut werden, dann wird dieser Code auch von mehreren Leuten verwendet, geprüft, verbessert und auch in die Code-Basis integriert und gepflegt. Aber was für das RTOS gilt, gilt nicht für die Anwendung: Applikationen, die auf Basis von RTEMS entwickelt wurden, müssen nicht veröffentlicht werden.
Komplettpaket für RTEMS
Embedded Brains ist Mitglied im Steering Committee von RTEMS und unterstützt Kunden bei der Nutzung von RTEMS. Das Unternehmen bietet benutzerspezifische Konzeptentwicklung, Entwicklungsunterstützung, Portierung, und Treiber- und Softwareentwicklung für RTEMS an. Neben einem schnellstmöglichen Einstieg in die Entwicklung unter RTEMS profitiert der Kunde so auch von deutlich reduzierten Entwicklungszeiten und -kosten. Embedded Brains bietet darüber hinaus technische RTEMS Schulungen, Standard-Support für erfahrene Anwender und projektspezifische Unterstützung für R&D-Teams an.