AUTOSAR_AP_EXP_SWArchitecture
FIG-ee58851fa2e67447
855 × 1036 px
1 Release(s)
Figure 11.1: Scenario: Start Adaptive Platform with Supervision of Adaptive Applications
SHA-256 Inhalts-Fingerabdruck:
ee58851fa2e674478e3d474033e2f7ce798b0005f3ad589ca35542c263d3f82c
✦
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 2.x Sequenzdiagramm (Interaktionsdiagramm) mit kombinierten Fragmenten (
opt,loop,ref). - Architektur-Kontext: AUTOSAR Adaptive Platform (AP), Release R23-11; Spezifikationsdokument
AUTOSAR_AP_EXP_SWArchitecture(Doc ID 982), Kapitel 11 (Start Adaptive Platform with Supervision of Adaptive Applications). - Technischer Zweck: Spezifikation der standardisierten Boot- und Initialisierungssequenz der Adaptive Platform. Das Diagramm modelliert die kausale Kette vom Kernel-Start des POSIX-Betriebssystems über den Hochlauf der zentralen Functional Cluster (Execution Management, State Management, Platform Health Management) und hardwarenaher Watchdog-Pfade bis hin zur Prozessinstanziierung und Überwachung einer Adaptive Application im Machine Function Group State
Startup.
2. Komponenten, Entitäten & Schnittstellen
Akteure & Lifelines
:Operating System(OS): POSIX-konformes Betriebssystem/Kernel; steuert Low-Level-Treiber, Prozessinstanziierung (fork/execbzw.posix_spawn) und Thread-Scheduling.«aapFunctionalCluster» :Execution Management(EM): Zuständig für Deployment- und Lifecycle-Management von Prozessen, Startreihenfolgen und Zustandsüberwachung der Function Groups.:WatchdogInterface: Treiber- bzw. Hardwareabstraktion des System-Watchdogs zur Plattformüberwachung.«aapFunctionalCluster» :State Management(SM): Regelbasierte Kontrollinstanz für System-, Machine- und Function-Group-Zustände; initiiert Transitionen bei EM.«aapFunctionalCluster» :Platform Health Management(PHM): Instanz für Alive-, Deadline- und Logical-Supervision von Applikationen sowie Auslöser von Recovery-Aktionen.:Adaptive Application(AA): Betriebssystemprozess einer konkreten Adaptive Application, zugeordnet zum Function Group StateStartup.«aapFunctionalCluster» :Core: Basiscluster (ara::core), stellt fundamentale Datentypen, Fehlerbehandlungsmechanismen (ara::core::Result,ara::core::ErrorCode) und Initialisierungsroutinen bereit.
Schnittstellen & Interaktionssignaturen
- OS-Level (mit Stereotyp
«aapInformative»):enable(): Scharfschalten des Hardware-Watchdogs durch das Betriebssystem (ohne Stereotyp).«aapInformative» exec(): POSIX-Aufruf zur Instanziierung von Cluster-/Applikations-Binaries.«aapInformative» main(): Eintrittspunkt der C++-Laufzeitumgebung des jeweiligen Prozesses.
- Execution Management Interface (
ara::exec):SetState(Startup): Interne Zustandsaktivierung der Machine Function Group auf den StateStartup.ReportExecutionState(kRunning): Zustandsmeldung des Prozesses an denara::exec::ExecutionClientzur Bestätigung der abgeschlossenen Initialisierung (ohne Rückgabetyp-Annotation: Result).GetInitialMachineStateTransitionResult(): Abfrage von SM an EM zur Evaluierung des Transitionsstatus der Machine Function Group in den Zielzustand.
- Platform Health Management Interface (
ara::phm):AliveNotification(): Zyklisches Triggern des Watchdogs durch PHM zur Quittierung der Plattformgesundheit.Offer(): Service-Offering der PHM-Schnittstellen (via ARA-Kommunikationsinfrastruktur).«aapInformative» performSupervision(): Interne Berechnungs- und Evaluierungsroutine der Überwachungsregeln in PHM (als informativ gekennzeichnet).ReportCheckpoint(): Übermittlung definierter Checkpoint-IDs durch die Adaptive Application (ara::phm::SupervisedEntity::ReportCheckpoint()).
- Core API:
Initialize(): Aufruf vonara::core::Initialize()zum Bootstrapping der internen AP-Ressourcen des Prozesses.
- Referenz:
ref Change Function Group State (Running): Folgesequenz für den Übergang der Function Group vom ZustandStartupinRunning.
3. Dynamisches Verhalten & Sequenzablauf
- Bootstrap & Watchdog-Aktivierung:
- Das
:Operating Systemschließt seine herstellerspezifische Initialisierung ab und aktiviert viaenable()das:WatchdogInterface. - Das OS erzeugt die Prozessinstanz von
Execution Managementund übergibt die Kontrolle anmain().
- Das
- Transition Machine State
Startup& Hochlauf State Management:- EM führt den internen Methodenaufruf
SetState(Startup)aus. - EM fordert das OS via
exec()an, den Functional ClusterState Managementzu spawnen. - Das OS ruft
main()von SM auf. - Nach interner Initialisierung quittiert SM seine Betriebsbereitschaft deterministisch an EM via
ReportExecutionState(kRunning): Result.
- EM führt den internen Methodenaufruf
- Optionales Fragment
opt– Plattform-Überwachung (PHM):- EM veranlasst das OS via
exec()zum Start vonPlatform Health Management. - OS ruft
main()von PHM auf. - PHM setzt unmittelbar eine erste
AliveNotification()an:WatchdogInterfaceab, um einen Watchdog-Reset während der Hochlaufphase zu verhindern. - PHM meldet
ReportExecutionState(kRunning): Resultan EM. - PHM deklariert seine Dienstbereitschaft über
Offer()gegenüber SM bzw. dem Gesamtsystem. - Sub-Fragment
loop Supervision Loop: PHM tritt in eine endlose Überwachungsschleife ein:- Zyklische Ausführung von
performSupervision(). - Zyklische Aktualisierung des Watchdogs via
AliveNotification().
- Zyklische Ausführung von
- EM veranlasst das OS via
- Optionales Fragment
opt– Adaptive Application Lifecycle & Supervision:- EM veranlasst das OS via
exec(), die im Startup-Manifest deklarierte:Adaptive Applicationzu starten. - OS ruft
main()der AA auf. - AA führt vor allen weiteren Operationen
Initialize()gegen«aapFunctionalCluster» :Coreaus (ara::core::Initialize()). - AA meldet nach erfolgreicher Initialisierung
ReportExecutionState(kRunning): Resultan EM. - AA sendet Checkpoint-Ereignisse via
ReportCheckpoint()an PHM zur Laufzeitüberwachung.
- EM veranlasst das OS via
- Konsolidierung & Transition nach
Running:State Managementsynchronisiert sich mit EM überGetInitialMachineStateTransitionResult(), um zu verifizieren, dass alle für den StateStartupkonfigurierten Prozesse erfolgreichkRunninggemeldet haben.- Ist das Resultat positiv, initiiert SM die Sequenz
Change Function Group State (Running)zur Aktivierung der regulären Betriebsfunktionen.
4. Normative Relevanz & Entwickler-Hinweise
- API-Vertrag
ara::core::Initialize(): Jeder Prozess (FC und AA) muss zwingendara::core::Initialize()zu Beginn vonmain()aufrufen, bevor eine andere ARA-API instanziiert oder genutzt wird. - Execution State Reporting (
kRunning):- Der Aufruf
ara::exec::ExecutionClient::ReportExecutionState(ExecutionState::kRunning)ist strikt normativ. - Unterbleibt dieser Aufruf oder überschreitet die Ausführungszeit das im Execution Manifest konfigurierte Startup-Timeout (
startupConfig.startupTimeout), deklariert EM die State-Transition als fehlgeschlagen und löst die konfigurierte Recovery Action aus.
- Der Aufruf
- Watchdog-Timing-Kette: Das Zeitfenster zwischen
enable()durch das OS und der erstenAliveNotification()durch PHM definiert die maximale Boot-Latenz. Treiber- und Stack-Entwickler müssen sicherstellen, dass die Hardware-Watchdog-Periode lang genug dimensioniert ist, um die Prozessstarts von EM und PHM ohne Auslösung zu überbrücken. - Reihenfolge PHM-Offer vs. AA-Reporting: Applikationen dürfen
ReportCheckpoint()erst aufrufen, wenn die IPC-/Service-Bindung zu PHM aktiv ist. Andernfalls schlägt der Checkpoint-Aufruf fehl oder wird verworfen. - Restriktionen im Function Group State
Startup: Applikationen, die im Startup-State laufen, müssen auf ein Minimum an Abhängigkeiten beschränkt sein (z. B. keine externen Netzwerkschnittstellen viaara::com, solange der Communication Cluster noch nicht im StateRunningaktiv ist).
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.