Safe RTOS, ein präventives, sicherheitskritisches Echtzeitbetriebssystem von Wittenstein High Integrity Systems, ist vom TÜV Süd nach ISO 26262 ASIL D und IEC 61508 SIL 3 vorzertifiziert. Ein Vorteil für Kunden liegt im Upgrade-Pfad von Free RTOS auf Safe RTOS. Entwickler können in der frühen Evaluierungsphase eines Projektes mit dem frei verfügbaren Free RTOS arbeiten und zu Beginn der eigentlichen, den hohen Sicherheitsanforderungen genügenden Entwicklung einfach auf Safe RTOS wechseln.

Safe RTOS, ein präventives, sicherheitskritisches Echtzeitbetriebssystem von Wittenstein High Integrity Systems

Safe RTOS, ein präventives, sicherheitskritisches Echtzeitbetriebssystem von Wittenstein High Integrity Systems. PLS

Das Safe RTOS Add-On von PLS stellt ein zusätzliches Fenster innerhalb des UDE-Frameworks bereit, das eine detaillierte Sicht auf die Interna des Betriebssystems bietet. So kann der Entwickler auf alle für die Entwicklung seiner Applikation relevanten Informationen zu den Betriebssystemressourcen und -Objekten zurückgreifen. Die angezeigten Informationen sind nach Funktionsgruppen unterteilt und einfach über separate Registerkarten auswählbar. Prinzipiell sind dabei folgende Gruppen verfügbar: Task-Informationen, Warteschlangen, Semaphoren und Mutexe, Zeitgeber sowie Informationen über die aktuelle Konfiguration. Die tatsächlich verfügbaren Informationen hängen von der jeweiligen Safe-RTOS-Konfiguration ab. Diese wird durch den Entwickler zur Kompilierungszeit festgelegt und bleibt während der Laufzeit unverändert. Die UDE greift zur Darstellung der Informationen über die Debug-Schnittstelle direkt auf die Zielsystemhardware zurück. Der große Vorteil daran ist, dass keine separate Beschreibungsdatei benötigt wird. Etwaige Inkonsistenzen zwischen dargestellten und tatsächlich verfügbaren RTOS-Zuständen, die sich unter Umständen aus einem fehlerhaften Build-Prozess ergeben, können so nicht auftreten.

Mit Hilfe des Safe RTOS Add-Ons kann der Entwickler jetzt beispielsweise beim Debuggen einer bestimmten Funktion nachverfolgen, welche Betriebssystem-Task aktuell aktiv ist. Zudem wird über die Anzeige von blockierten und blockierenden Tasks die Fehlersuche vereinfacht, wenn es innerhalb der Applikation zu Deadlocks kommt. Nicht zuletzt unterstützen die dargestellten Betriebssysteminformationen, wie zum Beispiel die Stack-Auslastung, Anwender auch bei der Lastverteilung innerhalb der Software und damit bei deren Optimierung.