DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_ExecutionManagement FIG-eb1c2bc8b85deb97 887 × 687 px 1 Release(s)

Figure 7.9: State Change Sequence – Transition to machine state StateXYZ

SHA-256 Inhalts-Fingerabdruck: eb1c2bc8b85deb976d541ef8403f2ef293ffc24dc5c3a3f936e39112760e3388
✦ 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

UML-Sequenzdiagramm zur Spezifikation des dynamischen Verhaltens im AUTOSAR-Adaptive-Platform-Modul Execution Management (EM). Das Diagramm stellt die maschinelle Zustandsänderung (Transition to Machine State <<StateXYZ>>) dar, die durch den State Management (SM) initiiert wird und das geordnete Herunterfahren nicht mehr benötigter Anwendungen sowie das Starten neuer Prozesse umfasst.

2. Komponenten, Entitäten & Schnittstellen

Das Diagramm spezifiziert die Interaktion folgender Instanzen im Rahmen sd Transition to Machine State <<StateXYZ>>:

  • EM: Execution Management.
  • SM: State Management.
  • App1: Bestehende Prozessinstanz, deren Lebenslinie im Shutdown terminiert wird (X).
  • App2: Neu instanziierter Prozess, dessen Lebenslinie durch die Erzeugungsnachricht beginnt und am Ende explizit terminiert wird (X).

Schnittstellen und Nachrichten:

  • SetState("MachineFG", StateXYZ): Funktionsgruppen-Zustandswechselanforderung von SM an EM.
  • Asynchrone Rückkehr der Aktivierung an SM.
  • SIGTERM(allProcesses): Terminierungssignal von EM an alle zu beendenden Prozesse (App1).
  • :EXIT_SUCCESS: Exit-Statusmeldung des Betriebssystems von App1 an EM.
  • CreateProcess(allApps): Prozesskreierungsnachricht von EM direkt auf die Kopfbox von App2.
  • ExecutionClient::ReportExecutionState(kRunning): Laufzeitmeldung von App2 an EM.
  • :Transition completed: Abschlussquittierung von EM an SM.

3. Dynamisches Verhalten & Sequenzablauf

  1. SM fordert über SetState("MachineFG", StateXYZ) den Wechsel der Funktionsgruppe MachineFG an. Der Aufruf kehrt unmittelbar asynchron an SM zurück.
  2. Schleife loop [Shutdown]:
    • EM sendet SIGTERM(allProcesses) an den Prozess App1.
    • App1 beendet sich und liefert :EXIT_SUCCESS an EM; die Lebenslinie von App1 endet mit einem Zerstörungs-Symbol (X).
  3. Schleife loop [Startup]:
    • EM sendet CreateProcess(allApps) und erzeugt damit dynamisch die Instanz App2.
    • App2 meldet nach erfolgreichem Start ExecutionClient::ReportExecutionState(kRunning) an EM.
  4. Nach Abschluss der Schleifen sendet EM die Nachricht :Transition completed an SM. Beide Lebenslinien von EM und SM laufen weiter.

4. Normative Relevanz & Entwickler-Hinweise

Normativ wird der Zustandsübergang auf Funktionsgruppen (MachineFG) bezogen. Die Prozessbeendigung erfordert keine explizite Meldung von kTerminating mehr, sondern wird über das Beenden des Betriebssystem-Prozesses (:EXIT_SUCCESS) detektiert. Neu gestartete Prozesse werden zur Laufzeit instanziiert und müssen sich weiterhin aktiv mit kRunning bei EM registrieren. Der Abschluss des Wechsels wird SM durch :Transition completed signalisiert.

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R19-11 → R20-11 normative Änderung Vorgänger: FIG-cd16e25e5b41a02b
  • Initialer Aufruf: Parameter von SetState("MachineState", StateXYZ) zu SetState("MachineFG", StateXYZ) geändert; unmittelbare asynchrone Rückkehr der Aufruf-Aktivierung an SM.
  • Terminierung: Signalaufruf von SIGTERM(allApps) zu SIGTERM(allProcesses) umbenannt.
  • Terminierung: Selbstaufruf WaitForTermination(App1) und Meldung ExecutionClient::ReportExecutionState(kTerminating) ersetzt durch asynchrone Prozessbeendigung :EXIT_SUCCESS mit Zerstörung der Lebenslinie von App1 (X).
  • Prozessstart: App2 wird erst zur Laufzeit dynamisch erzeugt (Erhalt der CreateProcess(allApps)-Nachricht direkt am Kopf-Kasten) statt statisch ab Beginn vorhanden zu sein; Zerstörungssymbol (X) am Ende der Lebenslinie von App2.
  • Statusübergang: Abschlussmeldung an SM von gestricheltem :kSuccess in synchrone/feste Benachrichtigung :Transition completed geändert.
R20-11 → R21-11 normative Änderung Nachfolger: FIG-01d08d16414aaa8a
  • Initialer Aufruf: Signatur von SetState("MachineFG", StateXYZ) zu C++-API-Signatur SetState(FunctionGroupState &stateXYZ): ara::core::Future<void> geändert; synchrone Rückgabe des Future-Objekts dargestellt.
  • Schleifenbeschriftungen: Schleifennamen von [Shutdown] zu [Terminating] und von [Startup] zu [Starting] umbenannt.
  • Statusmeldung: Qualifizierter Aufruf ExecutionClient::ReportExecutionState(kRunning) verkürzt auf ReportExecutionState(kRunning); nachfolgende gestrichelte Bestätigungsnachricht von EM an App2 ergänzt.
  • Statusübergang: Abschlussmeldung an SM von :Transition completed geändert zu asynchroner Future-Auflösung SetState(): Transition completed <<future invocation>>.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Erkannte Spezifikationsbelege & Anforderungen auf dieser Seite

Vorkommen in AUTOSAR-Releases (2)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R20-11 AUTOSAR_SWS_ExecutionManagement S. 46 7.9 Figure 7.9: State Change Sequence – Transition to machine state StateXYZ
R20-11 AUTOSAR_SWS_ExecutionManagement S. 46 7.9 Figure 7.9: State Change Sequence – Transition to machine state StateXYZ