DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_PlatformDesign FIG-e6b8981575852030 799 × 1163 px 1 Release(s)

Figure 13.10: State Management during an update process

SHA-256 Inhalts-Fingerabdruck: e6b8981575852030ef75de7baa9c863f95ffb3ecdf4338fda7c0976d2bd71a52
✦ 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 Orchestrierung des State Management (SM) während eines Update-Prozesses in der AUTOSAR Adaptive Platform (AP). Das Diagramm stellt das Zusammenspiel zwischen Update and Config Management (UCM Master / UCM Sub), State Management, Execution Management (EM), einer Benutzeranwendung (Application) und dem Functional Cluster Persistency über verschiedene Aktualisierungsphasen (Ready, Activating, Verifying, Activated, Cleaning-up) dar.

2. Komponenten, Entitäten & Schnittstellen

  • Lebenslinien / Akteure:
    • V-UCM (from V-UCM sequences): Vehicle Update and Config Management Master-Instanz.
    • UCM 1 (from V-UCM sequences): Untergeordnete UCM-Instanz auf der Maschine / Partition.
    • SM: State Management.
    • EM: Execution Management.
    • Application: Ausführende Benutzerapplikation.
    • Persistency: Functional Cluster für Datenspeicherung und Datenmigration.
  • Schnittstellen / Aufrufe:
    • Activate(), :Activate success: Aktivierungskommunikation zwischen V-UCM und UCM 1.
    • DependencyCheck(): Lokale Abhängigkeitsprüfung.
    • RequestUpdateSession(), :ReadyForUpdate, StopUpdateSession(): Update-Session-Verwaltung zwischen UCM 1 und SM.
    • PrepareUpdate(vector<FunctionGroup>), :Prepared: Vorbereitung der Funktionsgruppenaktualisierung.
    • SetState(Off), SetState(Verify), SetState(): Zustandswechselaufrufe von SM an EM.
    • SIGTERM(), :exitstatus: Prozessbeendigung durch EM.
    • ara::core::Deinitialize(), Close storages & Free resources(): Herunterfahren und Ressourcenfreigabe der Applikation.
    • ResetMachine(), ResetMachineNotifier(): kSucessful: Schnittstelle für Maschinen-Reset und Erfolgsquittierung.
    • Machine restarts(): Durch SM ausgelöster Neustart der Maschine / Ausführungsebene.
    • Symlinks or A/B switch(): Umschalten auf die neuen Software-Stände.
    • Reparse Manifests(): Lokales Parsen der aktualisierten Manifeste.
    • VerifyUpdate(vector<FunctionGroup>), :Verified: Anforderung der Funktionsgruppenverifikation.
    • FG = Verify(): EM-Zustandsübergang der Funktionsgruppe in den Verifikationszustand.
    • UpdatePersistency(), Data backup(), Install and/or update persistent data(): Persistenzaktualisierung und Migration.
    • Finish(): Abschlussaufruf durch V-UCM.
    • Normal(), OpenXXX(), CleanUp backup data(): Normalbetrieb und Bereinigung von Backup-Daten.

3. Dynamisches Verhalten & Sequenzablauf

  1. Activating: V-UCM sendet Activate() an UCM 1. UCM 1 führt DependencyCheck() durch und sendet RequestUpdateSession() an SM, welches mit :ReadyForUpdate antwortet.
  2. loop for each SoftwareCluster (Prepare): UCM 1 sendet PrepareUpdate(vector<FunctionGroup>) an SM. SM schaltet über EM mittels SetState(Off) die Funktionsgruppe ab. EM sendet SIGTERM() an Application. Application ruft ara::core::Deinitialize() auf, schließt Speicher via Persistency (Close storages & Free resources()) und meldet :exitstatus an EM. SM antwortet mit :Prepared an UCM 1. UCM 1 signalisiert :Activate success an V-UCM.
  3. Verifying: UCM 1 führt Symlinks or A/B switch() aus.
    • alt ReparseManifest:
      • Zweig [Reset]: UCM 1 ruft ResetMachine() an SM auf. SM veranlasst Machine restarts() und benachrichtigt UCM 1 über ResetMachineNotifier(): kSucessful.
      • Zweig [No Reset]: UCM 1 führt intern Reparse Manifests() aus.
  4. loop for each SoftwareCluster (Verify): UCM 1 sendet VerifyUpdate(vector<FunctionGroup>) an SM. SM weist EM via SetState(Verify) an. EM aktiviert die Verifikation mit FG = Verify(), woraufhin Application UpdatePersistency() bei Persistency auslöst (Data backup(), Install and/or update persistent data()). Nach erfolgreicher Verifikation meldet SM :Verified an UCM 1.
  5. Activated & Cleaning-up: V-UCM ruft Finish() an UCM 1 auf. UCM 1 beendet die Update-Sitzung mit StopUpdateSession() an SM. SM signalisiert EM SetState(), woraufhin EM die Application über Normal() in den Regelbetrieb überführt. Application greift über OpenXXX() auf Persistency zu, welche CleanUp backup data() ausführt.

4. Normative Relevanz & Entwickler-Hinweise

  • Das Persistency-Manifest wird zusammen mit der Applikation installiert oder aktualisiert.
  • ara::core::Deinitialize() muss als letzter Aufruf erfolgen, um persistente Speicher geordnet zu schließen.
  • Der Maschinen-Reset ist optional und im SWP-Manifest festgelegt; nach dem Reset setzt UCM den Ablauf an der Stelle des Resets fort.
  • Das Neu-Parsen der Manifeste ist implementationsabhängig; bei fehlender Bestätigung abhängiger Functional Cluster muss UCM einen Rollback einleiten.
  • V-UCM koordiniert das Warten auf die Aktivierung weiterer UCM-Sub-Instanzen über Finish().

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

R24-11 → R25-11 keine inhaltliche Änderung Vorgänger: FIG-9ba085fdb2e9d37f

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

Activating | Verifying | Activated | Ready | Cleaning-up | EM V-UCM | (from V-UCM | sequences) | UCM 1 | (from V-UCM | sequences) | SM | loop for each SoftwareCluster | loop for each SoftwareCluster | alt ReparseManifest | [Reset] | [No Reset] | Persistency Application |                     |  |      |  |   |  |  |  |         |  |      |  |                  |     |  |  |  |  |  |    |        |  |   |  |   |  |    |  |        |  |  |  |        |  |    |  |     |   |  |         |  |      |  |            |  |       |  |  |    |  |     |  |  |  |        |    |      |   |        |  |     |     |  |    |  |   |   |  |  |    |  |     |  |   |          |     |    |  |   |  |     |  !" |  ##     # #$       %   |  |  |  |    |  |  |       |  |  |  |                          & ' ( |  |    |  | ) |    |  |   |   |      |  |     |   |    |  |       |  |       |  | Data backup () | Close storages & Free resources() | FG = Verify () | ara::core:: Deinitialize() | UpdatePersistency () | SetState (Off) | Symlinks or A/B switch() | RequestUpdateSession () | Reparse Manifests() | PrepareUpdate (vector<FunctionGroup>) | VerifyUpdate (vector<FunctionGroup>) | SIGTERM () | ResetMachineNotifier(): | kSucessful | : ReadyForUpdate | Machine restarts | () | Activate () | DependencyCheck () | : Prepared | ResetMachine () | Normal () | : exitstatus | OpenXXX () | SetState () | CleanUp backup data() | StopUpdateSession () | Finish () | :Activate success | : Verified | Install and/or update persistent data() | SetState (Verify)

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_AP_EXP_PlatformDesign S. 77 13.10 Figure 13.10: State Management during an update process