OSEK-OS
OSEK-OS ist eine vom OSEK-Konsortium (siehe dort fĂŒr weitere Informationen) verabschiedete Spezifikation fĂŒr in der elektronischen Datenverarbeitung angewendete Echtzeitbetriebssysteme fĂŒr eingebettete Systeme.[1][2][3] HauptsĂ€chlich findet es Verwendung auf Echtzeitsystemen im Bereich der Automobilelektronik.
OSEK-OS war erdacht als offener Standard und ist seit 2005 in die ISO-Norm 17356-3 ĂŒberfĂŒhrt worden.[4]
OSEK-OS Eigenschaften
[Bearbeiten | Quelltext bearbeiten]Schnittstellen
[Bearbeiten | Quelltext bearbeiten]Der OSEK-OS-Standard spezifiziert Schnittstellen zu Multitasking-Funktionen und ist damit Architektur-abhÀngig.
Sicherheit (Protection)
[Bearbeiten | Quelltext bearbeiten]Der OSEK-OS-Standard ist fĂŒr Controller entworfen, die ĂŒber keine Memory Protection verfĂŒgen.
Tasking
[Bearbeiten | Quelltext bearbeiten]Der OSEK-OS-Standard ist statisch. Alle Betriebsmittel und Tasks werden vor dem Kompilieren fĂŒr genau die gewollte Anwendung definiert und konfiguriert: die Anzahl, Typen und Eigenschaften der Tasks, Stacks, Mutex-Verfahren etc. Es ist nicht möglich, zur Laufzeit neue Tasks zu definieren. Der OSEK-OS-Standard kennt zwei verschiedene Klassen von Tasks: einfache Tasks und komplexe Tasks. Die einfachen Tasks können vergleichbar mit Interrupts nur durch einfache Tasks höherer PrioritĂ€t unterbrochen werden und enden erst, wenn sie vollstĂ€ndig abgearbeitet sind. Komplexe Tasks warten wĂ€hrend der Abarbeitung auf die Freigabe von Ressourcen und können so blockiert werden.
Scheduling
[Bearbeiten | Quelltext bearbeiten]Das Scheduling kann auf zwei verschiedene Arten konfiguriert werden: Bei verdrĂ€ngendem Scheduling kann ein Task jederzeit durch einen Task höherer PrioritĂ€t unterbrochen werden (prĂ€emptives Scheduling), bei nicht verdrĂ€ngendem Scheduling kann ein Task nur an bestimmten, zur Ăbersetzungszeit im Code fest konfigurierten Punkten unterbrochen werden (kooperatives Scheduling). Auch ein gemischter Betrieb ist möglich.
Timing
[Bearbeiten | Quelltext bearbeiten]WĂ€hrend der OSEK-OS-Standard ein ereignisgesteuertes Betriebssystem spezifiziert, ist die OSEK-TIME Spezifikation (auch geschrieben: OSEKtime) eine ErgĂ€nzung fĂŒr zeitgesteuerte Betriebssysteme.[5] Wenn konfiguriert, werden OSEK-TIME-Callback-Funktionen mit höherer PrioritĂ€t bearbeitet als die in OSEK-OS konfigurierten Tasks.
Zielplattformen (Targets)
[Bearbeiten | Quelltext bearbeiten]Ăbliche Zielplattformen sind 16- und 32-Bit-Mikrocontroller fĂŒr die Automobilindustrie, das System ist jedoch skalierbar und ist auf 8- bis 32-Bit-Mikroprozessoren praktisch nutzbar.
Implementierungen
[Bearbeiten | Quelltext bearbeiten]OSEK-OS Implementierungen sind aktuell verfĂŒgbar, sind meist kommerziell aber auch Open Source (siehe Liste von Betriebssystemen) und werden seit ca. 1997 primĂ€r fĂŒr die Automobilindustrie und dort fĂŒr Embedded-SteuergerĂ€te (ECUs) angeboten. Der Begriff "OSEK" wird auch als Synonym fĂŒr ein OSEK-OS-konformes Betriebssystem verwendet.
Es wird heutzutage jedoch in den meisten FĂ€llen vom Nachfolger, der AUTOSAR Architektur, gesprochen oder diese angeboten.
Stand der Technik
[Bearbeiten | Quelltext bearbeiten]Das AUTOSAR-Konsortium ĂŒbernahm die OSEK-Spezifikationen:[6] OSEK-OS bildet heute die Basis des AUTOSAR OS der CLASSIC PLATFORM Architektur.[7]
Das AUTOSAR OS Betriebssystem ist rĂŒckwĂ€rtskompatibel zu OSEK-OS und beinhaltet auch OSEK-TIME, siehe die AUTOSAR Spezifikation "Requirements on Timing Extensions".[8]
AUTOSAR OS Implementierung CLASSIC PLATFORM (CP)
[Bearbeiten | Quelltext bearbeiten]Zusammenfassung der Eigenschaften der CP Spezifikation, welche OSEK-OS sehr Àhnlich sind:[7]
- Wird statisch konfiguriert und ist skaliert
- Ist anpassbar und ausgelegt fĂŒr Echtzeitapplikationen und -leistungsbereiche
- Bietet prioritÀtsbasiertes Scheduling
- Bietet Schutzfunktionen (Speicher, Timing etc.) zur Laufzeit
- Ist applizierbar auf Low-End-Controllern (SteuergerÀten) und ohne externe Ressourcen einsetzbar
Weitere Inhalte wie RTE (Run-Time-Environment, Laufzeitumgebung), Operating System Abstraction Layer (OSAL), Multi-core, Firmware Over-the-air (OTA) etc. sind in der Spezifikation beschrieben bzw. mit weiteren AUTOSAR Spezifikationen verlinkt.
Ebenfalls existieren Arbeitsgruppen ("Working groups") zu den einzelnen Spezialbereichen des RTOS.[9]
AUTOSAR ADAPTIVE (AP) PLATFORM
[Bearbeiten | Quelltext bearbeiten]Als Anmerkung sei erwĂ€hnt, dass die ADAPTIVE PLATFORM Architektur nicht unbedingt auf OSEK aufsetzt bzw. spezifiziert, sondern ein Operating System Interface (OSI) beschreibt. AP spezifiziert POSIX und dort speziell PSE51 fĂŒr SteuergerĂ€te,[10] d. h. ein POSIX-konformes OS kann integriert werden.[11]
Literatur
[Bearbeiten | Quelltext bearbeiten]- Peter Gliwa: Embedded Software Timing: Methodik, Analyse und Praxistipps am Beispiel Automotive. Springer Fachmedien Wiesbaden, Wiesbaden 2021, ISBN 978-3-658-26479-6, doi:10.1007/978-3-658-26480-2.
- Joseph Lemieux: Programming in the Osek/VDX Environment. Mcgraw-Hill Professional, 2001, ISBN 1-57820-081-4 (englisch).
- Matthias Homann: OSEK â Betriebssystem-Standard fĂŒr Automotive und Embedded Systems. 2. Auflage. mitp-Verlag, Bonn 2005, ISBN 3-8266-1552-2.
- Werner Zimmermann und Ralf Schmidgall: Bussysteme in der Fahrzeugtechnik â Protokolle, Standards und Softwarearchitektur. 4. Auflage. Vieweg+Teubner, 2010, ISBN 978-3-8348-0907-0.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- AUTOSAR Homepage
- Original OSEK-VDX
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- â Marcel ConsĂ©e: Entwicklung von Kfz-Software: Wechsel von OSEK zu AUTOSAR. Abgerufen am 17. September 2021.
- â Matthias Homann: OSEKÂ : Betriebssystem-Standard fĂŒr Automotive und Embedded Systems. 2., ĂŒberarb. Auflage. Mitp-Verl, Bonn 2005, ISBN 3-8266-1552-2.
- â Joseph Lemieux: Programming in the OSEK/VDX environment. CMP Books, Lawrence, Kan. 2001, ISBN 0-08-052218-1.
- â ISO: ISO 17356-3:2005 Road vehicles â Open interface for embedded automotive applications â Part 3: OSEK/VDX Operating System (OS). Abgerufen am 17. September 2021 (englisch).
- â Stefan Poledna, Martin GlĂŒck, Christian Tanzer, Samuel Boutin, Elmar Dilger: OSEKtime: A Dependable Real-Time Fault-Tolerant Operating System and Communication Layer as an Enabling Technology for By-Wire Applications. In: SAE Technical Paper Series. SAE International, 400 Commonwealth Drive, Warrendale, PA, United States 6. MĂ€rz 2000, doi:10.4271/2000-01-1051.
- â Winner, Hermann 1955 - Herausgeber Hakuli, Stephan Herausgeber Lotz, Felix Herausgeber Singer, Christina Herausgeber: Handbuch Fahrerassistenzsysteme Grundlagen, Komponenten und Systeme fĂŒr aktive Sicherheit und Komfort. ISBN 978-3-658-05734-3, S. 115 ff.
- 1 2 AUTOSAR development cooperation: Classic Platform. Abgerufen am 17. September 2021 (englisch).
- â AUTOSAR: Requirements on Timing Extensions. Hrsg.: AUTOSAR. Nr. 410, S. 42 (autosar.org [PDF]).
- â AUTOSAR development cooperation: CLASSIC PLATFORM WORKING GROUPS (CP). Abgerufen am 17. September 2021 (englisch).
- â Vector Informatik: The Adaptive Platform for Future Use Cases. Hrsg.: Vector Informatik. 2006 (englisch, vector.com [PDF]).
- â Comparison of AUTOSAR Classic and Adaptive Platforms - MATLAB & Simulink. Abgerufen am 17. September 2021.