AUTOSAR_AP_SWS_ExecutionManagement
FIG-e4f340069869fc8c
887 × 794 px
3 Release(s)
Figure 7.1: Start-up Sequence – from Startup to initial running state Driving
SHA-256 Inhalts-Fingerabdruck:
e4f340069869fc8cb7e0eaa8b3271956c522c48ba1700e7ca4ea2c462abe4b31
✦
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
- Klassifikation: UML-Sequenzdiagramm (Interaktionsdiagramm) mit formalem Sequenzrahmen
sd Startup to Initial StateXYZ. - Funktionaler Kontext: AUTOSAR Adaptive Platform (AP), Release 21-11 bis 23-11, Functional Cluster Execution Management (
ara::exec) in Interaktion mit dem Betriebssystem (OS) und dem Functional Cluster State Management (ara::sm). - Technischer Zweck: Spezifikation des Startablaufs vom OS-Boot über die Prozessinitialisierung von SM bis zur asynchronen Synchronisation auf den initialen Maschinenzustand und der anschließenden Anforderung eines Zielzustands (
StateXYZ) einer Funktionsgruppe viaara::core::Future.
2. Komponenten, Entitäten & Schnittstellen
- Akteure / Lifelines:
OS: Unterlagerndes POSIX-konformes Betriebssystem.EM(Execution Management,ara::exec): Zentraler Plattform-Dienst für Prozessverwaltung und Funktionsgruppen-Zustandswechsel.SM(State Management,ara::sm): Plattform-Applikation zur systemweiten Zustandssteuerung.
- Schnittstellen & Interaktionskanäle:
OS -> EM: main(): Programmeinstiegspunkt vonEMnach Abschluss des OS-Boots.EM -> SM: CreateProcess(SM): Betriebssystemnahe Erzeugung des SM-Prozesses durch das Execution Management.SM -> EM: ReportExecutionState(kRunning): Statusmeldung des Prozesses an EM über die Ausführungsschnittstelle (ara::exec::ExecutionClient).SM -> EM: GetInitialMachineStateTransitionResult(): ara::core::Future<void>: Nicht-blockierende Abfrage des Ergebnisses des initialen Startup-Zustandsübergangs.EM -> SM: GetInitialMachineStateTransitionResult() «future invocation»: Asynchrone Benachrichtigung bei Fertigstellung des initialen Maschinenzustands.SM -> EM: SetState(FunctionGroupState &stateXYZ): ara::core::Future<void>: Steuerungsaufruf zum Wechsel einer Funktionsgruppe in den ZustandstateXYZmit Rückgabe einesara::core::Future.EM -> SM: SetState(): Transition completed «future invocation»: Asynchrone Signalisierung des abgeschlossenen Zustandswechsels nach Erfüllung des Futures.
3. Dynamisches Verhalten & Sequenzablauf
- Bootstrap Phase:
- Nach dem Kernel-Boot ruft das
OSdiemain()-Funktion vonEMauf, das als Init-Prozess im User-Space startet.
- Nach dem Kernel-Boot ruft das
- State Management Instanziierung & Bereitschaft:
EMerzeugt direkt den Prozess des State Managements (CreateProcess(SM)).- Nach interner Initialisierung meldet
SMseine Einsatzbereitschaft mittelsReportExecutionState(kRunning)anEM.
- Synchronisation auf den Initialzustand:
SMfordert überGetInitialMachineStateTransitionResult()das Ergebnis des initialen Maschinenzustandsübergangs an und erhält sofort einara::core::Future<void>.EMführt die initiale Zustandstransition aus und löst das Future asynchron auf (GetInitialMachineStateTransitionResult() «future invocation»).
- Funktionsgruppen-Zustandswechsel (StateXYZ):
- Nach Erreichen des Initialzustands fordert
SMüberSetState(FunctionGroupState &stateXYZ)den Wechsel in den Zielzustand an und erhält einara::core::Future<void>. EMaktiviert die fürstateXYZkonfigurierten Prozesse und signalisiert den erfolgreichen Abschluss asynchron anSM(SetState(): Transition completed «future invocation»).
- Nach Erreichen des Initialzustands fordert
4. Normative Relevanz & Entwickler-Hinweise
- API-Evolution (
ReportExecutionState): Die Meldung der Betriebsbereitschaft erfolgt überReportExecutionState(kRunning)(gemäßara::exec::ExecutionClient), wobei auf synchrone Bestätigungen wiekSuccessverzichtet wird. - Asynchrones Future-Paradigma: Übergang von synchron blockierenden Aufrufen zu non-blocking APIs mit Rückgabe von
ara::core::Future<void>sowohl bei der Abfrage der Startup-Transition als auch beiSetState. - Typsichere Funktionsgruppen (
FunctionGroupState): Ablösung generischer State-Strings durch typisierte Objektreferenzen (FunctionGroupState &stateXYZ), was das modulare Funktionsgruppen-Konzept der Adaptive Platform widerspiegelt. - Obligatorische Startup-Synchronisation: Das State Management muss über
GetInitialMachineStateTransitionResultdas Ende des Maschinenzustands-Bootstrappings abwarten, bevor weitere Funktionsgruppen-Zustandsübergänge getriggert werden dürfen.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.