DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_SWArchitecture FIG-46de3c6444ce485c 849 × 564 px 1 Release(s)

Figure 12.2: Exemplary deployment of Software Packages on a Machine

SHA-256 Inhalts-Fingerabdruck: 46de3c6444ce485cfdb6a5d8241f3a825d8547a5a01bb6f703c5195cab8f3375
✦ 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-Verteilungsdiagramm (Deployment Diagram) / Software-Packaging- und Schichtenstrukturmodell der AUTOSAR Adaptive Platform (AP).
  • Architektur-Kontext & Zweck:
    • Formalisierung der Auslieferungs- und Installationsgranularität von Softwarekomponenten auf einer «device» Machine mittels des Update and Configuration Management (UCM).
    • Strukturierung der Software in logische SoftwareCluster via Manifest-Artefakte mit Festlegung der Verantwortlichkeiten (machineVendor, platformVendor, user/OEM) und Abhängigkeitshierarchien für Deployment, Versionierung und OTA-Updates.

2. Komponenten, Entitäten & Schnittstellen

Entitäten & Stereotypen
  • «device» Machine: Physische oder virtualisierte Recheneinheit (ECU / SoC / VM).
    • Bootloader / Hypervisor (Rolle: machineVendor): Hardware-nahe Initialisierungsinstanz unterhalb der Platform-Grenze.
  • «software package» (Deployment-Container):
    • Platform Core Package (Rolle: platformVendor):
      • Tag: Multiplicity = 1 (exakt eine Instanz pro Machine; nicht entfernbar).
      • Tag: SoftwareCluster.category = PLATFORM_CORE.
    • Platform Package (Rolle: platformVendor):
      • Tag: Multiplicity = * (0..n optionale/erweiternde Plattform-Pakete).
      • Tag: SoftwareCluster.category = PLATFORM.
    • Application Package (Rolle: user):
      • Tag: Multiplicity = * (beliebig viele Applikations-Pakete).
      • Tag: SoftwareCluster.category = APPLICATION_LAYER.
  • Funktionale Cluster («aapFunctionalCluster», daemon-based) & Systemkomponenten:
    • Zugeordnet zu Platform Core Package (über «manifest»-Assoziation):
      • Execution Management (EM): Prozessstart, Lifecycle, Deterministic Client.
      • State Management (SM): Funktions-/Zustandssteuerung der Machine.
      • Update and Configuration Management (UCM): Paketverwaltung, A/B-Partitioning, Update-Orchestrierung.
      • Platform Health Management (PHM): Alive-/Deadline-/Logical-Supervision.
      • Operating System (Rolle: machineVendor): POSIX-kompatibles OS (PSE51/PSE52).
      • Watchdog (Rolle: machineVendor): Hardware-Watchdog-Treiber/Anbindung.
    • Zugeordnet zu Platform Package (über «manifest»-Assoziation):
      • Diagnostic Management (DM): UDS-/DoIP-Server-Daemon.
      • Cryptography (Crypto): Crypto-Treiber/Daemon, Key Storage.
Relationen & Abhängigkeiten
  • Paket-Abhängigkeiten (Dashed Arrows):
    • Application Package → Platform Core Package (zwingend) und optional Application Package → Platform Package.
    • Platform Package → Platform Core Package (Plattform-Erweiterungen basieren stets auf dem unteilbaren Kern).
  • Manifest-Mapping («manifest»):
    • Verknüpft die kompilierte Binär- und Konfigurationsrepräsentanz der Dämonen/Bibliotheken deklarativ mit dem jeweiligen SoftwareCluster.

3. Dynamisches Verhalten & Sequenzablauf

Obgleich ein statisches Deployment-Diagramm dargestellt ist, bedingt die Struktur deterministische dynamische Abläufe:

  • Bootstrapping & Anlaufsequenz:
    1. Bootloader / Hypervisor initialisiert Hardware und startet das Operating System.
    2. OS startet den Init-Prozess des Platform Core Package: Execution Management übernimmt die PID-1-nahe Kontrolle.
    3. EM instanziiert State Management, PHM und UCM basierend auf dem Machine Manifest und Execution Manifest.
    4. Nach Erreichen des entsprechenden Machine/Function Groups State startet EM nachgelagerte Dämonen (Platform Package) und Application Packages.
  • Update- & Konfigurations-Workflow (UCM):
    • Updates erfolgen clusterweise. Ein Platform Core Package kann im laufenden Betrieb nicht deinstalliert (TransferExit → ProcessSwPackage), sondern nur atomar im Ganzen aktualisiert werden (z. B. Dual-Bank/A-B-Swapping via Bootloader/UCM).
    • Application Packages können unabhängig hinzugefügt, aktualisiert oder deinstalliert werden, sofern ihre semantischen Abhängigkeiten (Version Constraint auf SoftwareCluster.category = PLATFORM / PLATFORM_CORE) erfüllt sind.
  • Fehlerbehandlung:
    • Watchdog-Fehler triggern Recovery-Eskalation über PHM → SM → EM (bis hin zum Machine Reset / Rollback auf die vorherige Core-Partition).

4. Normative Relevanz & Entwickler-Hinweise

  • Multiplizitäts-Invariante: Es darf pro Machine exakt ein SoftwareCluster mit category = PLATFORM_CORE existieren (Multiplicity = 1). Ein System ohne PLATFORM_CORE ist ungültig.
  • Mindestumfang PLATFORM_CORE:
    • Muss zwingend Execution Management, State Management und UCM beinhalten. Grund: Ohne diese drei Cluster ist weder Prozess-Supervision noch das Einspielen/Entpacken weiterer Software Packages möglich.
  • Manifest-Modellierung (ARXML):
    • Entwickler müssen sicherstellen, dass jedes SoftwarePackage exakt einem SoftwareCluster zugeordnet ist.
    • In SoftwareCluster ist category typkonform auf PLATFORM_CORE, PLATFORM oder APPLICATION_LAYER (bzw. APPLICATION) zu setzen.
  • Lieferanten- & Integrationsschnittstelle (Role Segregation):
    • machineVendor liefert OS, BSP, Watchdog-Treiber und Bootloader.
    • platformVendor liefert die standardisierten AUTOSAR AP Functional Cluster und muss POSIX-OS-Calls kapseln.
    • user (Applikationsentwickler) darf ausschließlich gegen APPLICATION_LAYER-Pakete entwickeln und über standardisierte ARA-APIs (ara::com, ara::exec, ara::phm etc.) mit den Dämonen kommunizieren – direkter Zugriff auf OS- oder Plattform-Treiber ist normativ untersagt.

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

R24-11 → R25-11 keine inhaltliche Änderung Vorgänger: FIG-0cd16ff1d4927a7c

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«device» | Machine | Platform | «software package» Platform Core Package | tags Multiplicity = 1 SoftwareCluster.category = PLATFORM_CORE | «software package» Platform Package | tags Multiplicity = * SoftwareCluster.category = PLATFORM | Operating System | «aapFunctionalClust... | Platform Health | Management daemon-based | «aapFunctionalCl... | State Management daemon-based | «aapFunctionalCl... Execution Management | daemon-based | Bootloader / Hypervisor | user | platformVendor | machineVendor | Legend | Watchdog | «software package» Application Package | tags Multiplicity = * SoftwareCluster.category = APPLICATION_LAYER | «aapFunctionalCluster» Diagnostic Management daemon-based | «aapFunctionalClust... | Cryptography daemon-based |                                        |         |  |  |  |    |  |    | «aapFunctionalCluster» Update and Configuration | Management daemon-based | «manifest» | «manifest» «manifest» | «manifest» | «manifest» | «manifest» | «manifest» | «manifest»

Begleitender Spezifikationstext:

     «aapFunctionalCluster» Update and Configuration Management daemon-based «manifest» «manifest» «manifest» «manifest» «manifest» «manifest» «manifest» «manifest» Figure 12.2: Exemplary deployment of Software Packages on a Machine Update and Configuration Management manages the software installed on a Machine using one or more Software Packages. The configuration of the contents of a Software Package is done in the Manifest by means of a Software Cluster. Software Cluster defines the enumeration attribute category with the values APPLICATION_LAYER, PLATFORM, and PLATFORM_CORE. Some rules apply on the use of the Software Cluster category and corresponding Software Packages which are outlined in the following. For a Machine there shall exist exactly one Software Cluster with category PLATFORM_CORE. The corresponding Platform Core Package needs to include all required core components provided by the Platform Vendor and Machine Vendor, for example the operating system, device drivers, and the required Functional Clusters of the Adaptive Platform (see Figure 12.2). It is assumed that at least the Functional Clusters Execution Management, State Management, and Update and Configuration Management are part of the Platform Core Package since they are required to install any additional Software Packages. However, the concrete extend of a Platform Core Package is vendor and/or project specific. A Platform Core Package cannot be removed. The Software Cluster with category PLATFOR

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_AP_EXP_SWArchitecture S. 238 12.2 Figure 12.2: Exemplary deployment of Software Packages on a Machine