AUTOSAR_AP_EXP_SWArchitecture
FIG-ac540a7cc173e49f
584 × 445 px
2 Release(s)
Figure 10.1: Use cases for Execution Management
SHA-256 Inhalts-Fingerabdruck:
ac540a7cc173e49f25691023834235c73a895ff0cef41c1bfe654bedca755f48
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Diagrammtyp: UML-Use-Case-Diagramm (Anwendungsfalldiagramm) mit AUTOSAR-Adaptive-Platform-Profilstereotypen (
«aapUseCase»,«aapFunctionalCluster»,«aapTriggers»,«aapParticipates»). - Architektur-Kontext: AUTOSAR Adaptive Platform (Release R22-11),
AUTOSAR_EXP_SWArchitecture, Kapitel 10 (Execution Management). - Technischer Zweck: Spezifikation der funktionalen Kern-Use-Cases des Functional Clusters Execution Management (EM) zur Lebenszyklus- und Prozessverwaltung. Es definiert die Interaktionsgrenzen zwischen dem EM-Dienst, externen Systemaktoren (Betriebssystem, Applikationen) und koordinierenden Plattform-Clustern (State Management, Platform Health Management).
2. Komponenten, Entitäten & Schnittstellen
Systemgrenzen & Use Cases
- Systemgrenze
Execution Management(innerhalb derAdaptive Platform):«aapUseCase» Start Adaptive Platform: Initiales Bootstrapping der Adaptive Platform nach OS-Start.«aapUseCase» Change Function Group State: Dynamisches Umschalten von Funktionsgruppen-Zuständen (Starten/Stoppen von Prozessen, Resource-Allocation, Zustandsüberwachung).«aapUseCase» Shutdown Adaptive Platform: Kontrolliertes Herunterfahren aller Plattform- und Anwendungsinstanzen vor dem System-Poweroff/Reboot.
Akteure ((from Actors))
Operating System: POSIX-konformes Betriebssystem (z. B. Linux, QNX). Dient als Execution-Host, Prozess-Scheduler und Resource-Provider.Adaptive Application: POSIX-Nutzerprozesse, die auf der Plattform laufen und deren Lebenszyklus durch EM geregelt wird.
Funktionscluster («aapFunctionalCluster», Eigenschaft: daemon-based)
State Management(SM): Plattform-Dienst zur Deklaration und Anforderung von Zielzuständen der Maschine und Funktionsgruppen.Platform Health Management(PHM): Plattform-Dienst zur Überwachung des System- und Prozessgesundheitsstatus (Alive-, Deadline-, Logical-Supervision).
Beziehungen, Stereotypen & Abhängigkeiten
- Include-Beziehungen (
«include»):Start Adaptive Platform$\xrightarrow{\text{«include»}}$Change Function Group State: Der Hochlauf erzwingt zwingend den Übergang der FunktionsgruppeMachineStatein einen definierten Initialzustand (z. B.Startupbzw.Running).Shutdown Adaptive Platform$\xrightarrow{\text{«include»}}$Change Function Group State: Der Shutdown erzwingt die Transition der Funktionsgruppen in den ZustandOff/Terminating.
- Triggers-Beziehungen (
«aapTriggers»):Operating System→Start Adaptive Platform: Der OS-Init-Prozess (z. B.systemdoder SysV-Init) instanziiert EM als ersten Plattform-Daemon.State Management→Change Function Group State: SM fordert Zustandswechsel über die EM-Steuerschnittstelle an.State Management→Shutdown Adaptive Platform: SM leitet bei Abschaltbedingungen (z. B. Klemme 15 aus, Unterspannung) den Plattform-Shutdown ein.Adaptive Application→Change Function Group State: Spezifische Interaktionen bzw. Zustandsmeldungen der Applikationen triggern Folgeaktionen im EM.
- Partizipations-Beziehungen (
«aapParticipates»):Operating System↔Change Function Group State: OS stellt Primitiven bereit (fork,exec, POSIX-Signale, cgroups, Core-Affinities).Operating System↔Shutdown Adaptive Platform: OS nimmt letzte Prozessbereinigungen vor und vollzieht den Systemhalt/Reboot.Platform Health Management↔Change Function Group State: PHM überwacht die Prozesszustände während Transitionen und nimmt an Wiederherstellungs-/Reaktions-Mechanismen teil.Adaptive Application↔Change Function Group State: Applikationen nehmen aktiv am Zustandswechsel teil (Signalisierung von Bereitschaft oder Terminierung).
3. Dynamisches Verhalten & Sequenzablauf
A. Initialer Systemstart (Start Adaptive Platform)
- OS-Init (
«aapTriggers»): OS startet den EM-Daemon als Root-/Privileged-Prozess. - Manifest-Parsing: EM liest das Execution Manifest und Machine Manifest ein.
- Inkludierter State Change (
«include»): EM überführt die initiale Funktionsgruppe (z. B.MachineState) in den Startzustand. - Daemon-Spawning: EM erzeugt notwendige Basis-Dienste (u. a.
State Management,Platform Health Management,Communication Management).
B. Funktionsgruppen-Zustandswechsel (Change Function Group State)
- Zustandsanforderung:
State Managementsendet überara::exec::StateClient::SetState()einen asynchronen Umschaltbefehl an EM. - Prozessverwaltung via OS (
«aapParticipates»):- Starten: EM instanziiert Prozesse über POSIX
posix_spawn()/fork()+execve()mit konfigurierten UID/GID, cgroups, Scheduler-Policies (SCHED_FIFO/SCHED_RR/SCHED_OTHER) und Resource-Limits. - Stoppen: EM sendet
SIGTERMan nicht mehr im Zielzustand aktive Prozesse; nach Ablauf eines Grace-Timeouts (terminationTimeout) folgtSIGKILL.
- Starten: EM instanziiert Prozesse über POSIX
- Execution State Reporting (
«aapParticipates»): Neu gestartete Applikationen melden ihren internen Zustand via IPC an EM (ara::exec::ExecutionClient::ReportExecutionState(kRunning)). - Health Check (
«aapParticipates»):PHMvalidiert Deadlines und Checkpoints während des Hochlaufs der Prozesse. - Abschluss: EM komplettiert das an SM zurückgegebene
ara::core::Future<void>.
C. Plattform-Herunterfahren (Shutdown Adaptive Platform)
- Shutdown-Initiierung:
State Managementdetektiert die Shutdown-Bedingung und triggert den Shutdown-Use-Case bei EM. - Inkludierter State Change (
«include»): EM fährt kaskadierend alle Funktionsgruppen herunter, bis alle nicht-essentiellen Prozesse beendet sind. - Ressourcenfreigabe & OS-Übergabe (
«aapParticipates»): Nach Exit aller Plattformprozesse signalisiert EM dem Betriebssystem die Beendigung; das OS trennt Dateisysteme und schaltet die Hardware ab oder führt einen Warmstart durch.
4. Normative Relevanz & Entwickler-Hinweise
- API-Vertrag (
ExecutionClient):- Jede Adaptive Application muss nach Initialisierung zwingend
ara::exec::ExecutionClient::ReportExecutionState(ara::exec::ExecutionState::kRunning)aufrufen. - Bleibt diese Meldung innerhalb des im Execution Manifest definierten Start-Timeouts aus, klassifiziert EM den Prozess als fehlerhaft (
Startup Failed) und initiiert die konfigurierte Failure-Action (z. B. Restart oder Eskalation an PHM).
- Jede Adaptive Application muss nach Initialisierung zwingend
- Signal-Handling & Shutdown-Verhalten:
- Applikationsentwickler müssen sicherstellen, dass
SIGTERMunverzüglich verarbeitet wird (Ressourcenfreigabe, Persistierung flüchtiger Zustände viaara::per). - Dauert das Beenden länger als der konfigurierte
terminationTimeout, erzwingt EM den Prozessabbruch viaSIGKILL(Gefahr von Datenkorruption ohne synchrone Persistierung).
- Applikationsentwickler müssen sicherstellen, dass
- Berechtigungskonzept & Rollentrennung:
- Normale Applikationen besitzen keinen Zugriff auf
ara::exec::StateClient(Zustandswechsel sind exklusiv fürState Managementautorisiert). - Applikationen dürfen Zustände nur über anwendungsspezifische Schnittstellen bei SM anfordern, niemals direkt bei EM manipulieren.
- Normale Applikationen besitzen keinen Zugriff auf
- Manifest-Konfiguration:
- Pflicht zur exakten Deklaration der Prozess-Zuordnung zu
FunctionGroupundFunctionGroupStateim ARXML-Manifest (StartupConfig,ProcessExecutionConfig). - Parameter wie CPU-Affinitäten, Prioritäten, Watchdog-Cycle-Times und Alive-Check-Intervalle (für PHM) müssen statisch aufeinander abgestimmt sein, um State-Change-Timeouts im EM zu verhindern.
- Pflicht zur exakten Deklaration der Prozess-Zuordnung zu
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.