Systemkonsolidierung eines Industrieroboters mit Hilfe des safety-kritischen Hypervisors Jailhouse

Einführung

Echtzeitsysteme sind aus der heutigen Zeit nicht mehr wegzudenken. Sie werden beispielsweise in der Automobilindustrie, Luft- und Raumfahrttechnik oder auch in der Robotik eingesetzt. Dabei steuern diese Systeme Prozesse, welche strenge Anforderungen an Sicherheit und Zuverlässigkeit stellen. Um diesen gerecht zu werden, wird spezielle Soft- und Hardware eingesetzt, welche sicherstellen soll, dass das System eine korrekte Antwort innerhalb einer möglichst kurz definierten Zeitspanne produziert. Andere Anforderungen an solche Systeme umfassen beispielsweise, das sich die Antwortszeit innerhalb einer begrenzten Zeitspanne befindet, das heißt weder zu früh noch zu spät oder auch periodische Prozesse, die eine vorraussehbare Ausführungszeit besitzen, da sie deterministisch auf einer CPU verschachtelt und ausgeführt werden. Abgesehen von den Echtzeitanforderungen müssen solche Systeme auch Sicherheitsanforderungen, wie die Verifizierbarkeit, genügen. Ein gängiger Ansatz, um Komponenten mit unterschiedlichen Sicherheitsanforderungen zu entwickeln, ist die Separation in unterschiedlicher Hardware [1]. Allerdings bringt diese Trennung Nachteile mit sich – die Wartbarkeit sinkt und die Kosten steigen. Da die meiste Hardware nicht vollständig ausgelastet wird, könnte diese beispielsweise genutzt werden, um neu benötigte Hardwarefunktionen zu virtualsieren, somit lassen sich Kosten einsparen. Um solche verteilten Systeme wieder zu einem zusammenzuführen, werden häufig Echtzeitbetriebssysteme wie FreeRTOS oder PikeOS verwendet [2]. Jedoch können viele Industrieanwendungen nicht auf ein gängiges Betriebssystems mit einem funktionsreichen Ökosystem wie Linux verzichten, was die Konsolidierung eines Echtzeitsystems erheblich erschwert. Der partitionierende Hypervisor Jailhouse verwendet einen anderen Ansatz: es wird von einem bereits laufenden Linux gestartet und kann so die volle Funktionsreiche des Betriebssystems nutzen. In dieser Arbeit soll der Prozess der Systemkonsolidierung eines Industrieroboters unter Verwendung von Jailhouse zu einem safety-kritischen Echtzeitsystem dargestellt werden.

[1] Manfred Broy. “Challenges in Automotive Software Engineering”. In: Proceedings of the 28th International Conference on Software Engineering (ICSE). Shanghai, China: ACM Press, 2006.

[2] Marcello Cinque und Gianmaria De Tommasi. “Real-Time Containers for Large- Scale Mixed-Criticality Systems”. In: Real-Time Systems Symposium (RTSS). Pa- ris, France: IEEE, 2017.