MicroC/OS-II
MicroC/OS-II, auch bekannt unter der Bezeichnung µC/OS II oder uC/OSII, ist ein Echtzeitbetriebssystem für eingebettete Systeme.
Das Betriebssystem wird im Buch „MicroC / OS-II“ des Entwicklers (Jean J. Labrosse) beschrieben und liegt auch als Quelltext bei. Für nichtkommerzielle Projekte ist das Betriebssystem kostenlos. Durch den einfachen und verständlichen Aufbau ist es möglich, dieses Betriebssystem in sicherheitsrelevanten Systemen einzusetzen.
µC/OS-II ist vielfach bewährt in Anwendungen in sicherheitskritischen Bereichen und mehrfach zertifiziert nach den jeweiligen Normen aus Luftfahrt (DO-178B), Medizin (ISO62304) und Industrie (IEC61508).
Erweiterungen
Es existieren Erweiterungen für den kommerziellen Bereich:
µC/OS-MPU
Die Erweiterung µC/OS-MPU dient dazu Speicherbereiche von Tasks zu schützen. Ergänzend zu den bereits existierenden Services wird mit dieser Erweiterung gemeinsamer Speicher (Shared Memory) für mehrere Prozesse möglich. μC/OS-MPU bietet einem oder mehreren Tasks einen hardwaretechnisch unterstützten Speicherschutz. Die Ansammlung von einem oder mehreren μC/OS-II-Tasks wird als Prozess bezeichnet. Ein Prozess bildet einen geschützten Speicherbereich ab. Die darin laufenden Tasks werden Threads genannt, um zu verdeutlichen, dass diese nur eingeschränkten Zugriff im Speicher haben. Die Erweiterung unterstützt den integrierten Speicherschutzmechanismus moderner Controller. Dies kann eine Memory Management Unit (MMU) oder Memory Protection Unit (MPU) sein.
µC/OS-MMU
μC/OS-MMU dient der Abgrenzung von Anwendungen in embedded Systemen. Es ist auch bekannt unter μC/TimeSpaceOS oder uC/OS-MMU. Mit dieser Erweiterung wird aus dem Kernel ein komplettes System welches, ähnlich wie ARINC 653, die Virtualisierung eines Mikrocontrollers für mehrere sicherheitskritischen Anwendungen mit unterschiedlichen Zertifizierungsanforderungen bietet. Voraussetzung ist auch hier eine hardwareseitig vorhandene Speicherschutz-Einheit (MPU oder MMU).
Zertifizierung und Sicherheitsstandards
µC/OS-II und µC/OS-MPU sind nach folgenden Standards zertifiziert:[4]
IEC61508, IEC62304, EN 50128,
µC/OS-TimeSpaceOS wird hauptsächlich in der Luftfahrt verwendet. Zertifizierungen hier sind nach den Standards:
DO-178B DAL-B und DO-178C DAL B