DEENESPTFRRUARHIKOZHNL

Modul ara::phm — Platform Health Management

Spezifikation: AUTOSAR_AP_SWS_PlatformHealthManagement.pdf (R25-11) · 41 API-Records

Modul-GuideKI-GENERIERT

Überwacht die zeitliche und logische Programmausführung und löst bei Fehlern koordinierte Sicherheitsreaktionen aus.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 52f03afd8857 Herkunft Offene Fragen (1)
Kausaler Anker: R25-11 Gültig ab R25-11 Neu synthetisiert für diesen Spezifikationsstand.
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Überwacht die zeitliche und logische Programmausführung und löst bei Fehlern koordinierte Sicherheitsreaktionen aus.

Das Platform Health Management überwacht als zentraler Daemon die funktionale Sicherheit und Laufzeitintegrität von Anwendungen und Plattform-Diensten gemäß AUTOSAR_AP_SWS_PlatformHealthManagement S. 15. Überwachte Entitäten melden ihre Kontrollpunkte zyklisch oder ereignisgesteuert an das System, welches Deadlines, Alive-Zyklen sowie logische Kontrollflüsse auswertet. Bei erkannten Fehlern benachrichtigt das Modul das State Management zur Einleitung gezielter Wiederherstellungsaktionen über [SWS_PHM_01142]. Bleibt eine Erholung aus oder versagen zentrale Instanzen, erzwingt ein Watchdog-Trigger den sicheren Maschinenzustand.

Das Platform Health Management (PHM) bildet den zentralen Hintergrunddienst der AUTOSAR Adaptive Platform zur Absicherung der funktionalen Sicherheit und Software-Integrität nach ISO 26262 AUTOSAR_AP_SWS_PlatformHealthManagement S. 15. Es überwacht sowohl Anwendungs- als auch Plattform-Prozesse über deterministische Kontrollpunktmeldungen und sichert die Hardware über zyklische Watchdog-Trigger ab AUTOSAR_AP_SWS_PlatformHealthManagement S. 46.

PhmKontext App Adaptive Application PHM Platform Health Management (daemon-based) App->PHM SupervisedEntity (ReportCheckpoint) EM Execution Management EM->PHM SupervisedEntity (ReportCheckpoint) SM State Management SM->PHM SupervisedEntity (ReportCheckpoint) SM->PHM RecoveryAction (Offer / StopOffer) PHM->EM ExecutionClient PHM->SM RecoveryAction (RecoveryHandler) Wdg Watchdog / WatchdogInterface PHM->Wdg WatchdogInterface (AliveNotification / FireWatchdogReaction) IdsM Intrusion Detection System Manager PHM->IdsM Security Events Log Log and Trace PHM->Log Logger

Kontextdiagramm: Architektonische Einbettung des PHM-Daemons im Zusammenspiel mit überwachten Applikationen, State Management, Execution Management, Watchdog und IdsM. Quellen: AUTOSAR_AP_SWS_PlatformHealthManagement S. 46, AUTOSAR_AP_SWS_PlatformHealthManagement S. 15, AUTOSAR_AP_EXP_SWArchitecture S. 131.

Die funktionale Überwachung stützt sich auf die Schnittstelle ara::phm::SupervisedEntity, über die Prozesse Kontrollpunkte via ReportCheckpoint() melden ([SWS_PHM_01123], [SWS_PHM_01127]). Das PHM gliedert die Verifikation in drei Überwachungsarten [SWS_PHM_01138]:

Diese elementaren Ergebnisse werden pro Funktionsgruppe zu einem aggregierten Status GlobalSupervisionStatus verdichtet ([SWS_PHM_01137], SWS_PlatformHealthManagement S. 39).

Bei erkannten Verletzungen delegiert das PHM die Fehlerbehebung an das State Management über den RecoveryHandler() der Schnittstelle RecoveryAction, nachdem dieses seine Dienstbereitschaft per Offer() gemeldet hat ([SWS_PHM_01142], [SWS_PHM_01143]). Kann das State Management den Fehler nicht bereinigen oder versagen zentrale Daemons selbst, greift die Sicherheitseskalation: Das PHM triggert über das native WatchdogInterface mit FireWatchdogReaction() einen unmittelbaren Hardware-Reset ([SWS_PHM_01256], AUTOSAR_AP_EXP_SWArchitecture S. 220).

Fehlerbehandlung und Recovery-EskalationApplikationPHM-DaemonState ManagementWatchdogOffer()Result<void> (Bereit)ReportCheckpoint(wrongCheckpointId)handleFailedSupervision()RecoveryHandler(executionError, supervision)altRecovery erfolgreich durchgeführtFuture::set_value() (kActionHandled)Recovery fehlgeschlagen oder TimeoutFehler kSMCanNotHandleRecoveryFireWatchdogReaction()

Sequenzdiagramm: Fehlereskalation an das State Management über den RecoveryHandler mit Verzweigung zur Watchdog-Auslösung im Fehlerfall. Quellen: [SWS_PHM_01142], [SWS_PHM_01256], AUTOSAR_AP_EXP_SWArchitecture S. 234, AUTOSAR_AP_EXP_SWArchitecture S. 220, AUTOSAR_AP_EXP_SWArchitecture S. 220.

Systemgrenzen und funktionale Einbettung des Health Managements

Das Platform Health Management (PHM) bildet innerhalb der AUTOSAR Adaptive Platform die zentrale funktionale Instanz zur Überwachung der Ausführungsintegrität, Dienstverfügbarkeit und funktionalen Sicherheit nach ISO 26262 AUTOSAR_AP_SWS_PlatformHealthManagement S. 15. Als eigenständiger Hintergrunddienst (daemon-based) implementiert das Modul die deterministische Verifikation von zeitlichen und logischen Kontrollflüssen in sicherheitsrelevanten Prozessen AUTOSAR_AP_EXP_SWArchitecture S. 128. Die Systemgrenzen umfassen drei wesentliche Interaktionsachsen: die Aufnahme von Kontrollpunktmeldungen überwachter Softwareeinheiten, die Fehlereskalation an das State Management sowie das zyklische Auslösen von Lebenszeichenmeldungen an einen hardwarenahen Watchdog AUTOSAR_AP_SWS_PlatformHealthManagement S. 46.

Die Überwachungspflichten beschränken sich nicht ausschließlich auf reguläre Benutzeranwendungen (Adaptive Applications). Vielmehr unterliegen auch fundamentale Plattformdienste wie das Execution Management, das State Management, der Diagnostic Manager sowie die Zeitsynchronisation der Überwachung durch das PHM, indem sie selbst als überwachte Entitäten fungieren und Checkpoints an das Health Management übermitteln AUTOSAR_AP_EXP_SWArchitecture S. 130. Für interne Hilfsfunktionen stützt sich der PHM-Daemon auf Schnittstellen des Execution Managements (ExecutionClient zur Prozessstatusmeldung) und des Logging-Subsystems (Logger aus Log and Trace) AUTOSAR_AP_EXP_SWArchitecture S. 131.

PhmKontext App Adaptive Application PHM Platform Health Management (daemon-based) App->PHM SupervisedEntity (ReportCheckpoint) EM Execution Management EM->PHM SupervisedEntity (ReportCheckpoint) SM State Management SM->PHM SupervisedEntity (ReportCheckpoint) SM->PHM RecoveryAction (Offer / StopOffer) PHM->EM ExecutionClient PHM->SM RecoveryAction (RecoveryHandler) Wdg Watchdog / WatchdogInterface PHM->Wdg WatchdogInterface (AliveNotification / FireWatchdogReaction) IdsM Intrusion Detection System Manager PHM->IdsM Security Events Log Log and Trace PHM->Log Logger

Kontextdiagramm: Architektonische Einbettung des PHM-Daemons im Zusammenspiel mit überwachten Applikationen, State Management, Execution Management, Watchdog und IdsM. Quellen: AUTOSAR_AP_SWS_PlatformHealthManagement S. 46, AUTOSAR_AP_SWS_PlatformHealthManagement S. 15, AUTOSAR_AP_EXP_SWArchitecture S. 131.

Instrumentierung und Lebenszyklus überwachter Entitäten

Eine logische Überwachungseinheit innerhalb eines Prozesses wird durch die Schnittstelle ara::phm::SupervisedEntity abgebildet [SWS_PHM_01123]. Die Instanziierung erfolgt explizit unter Angabe eines typisierten Bezeichners vom Typ ara::core::InstanceSpecifier, welcher den konfigurierten Port-Pfad im Systemmanifest referenziert AUTOSAR_TPS_ManifestSpecification S. 141. Zum Schutz der Instanzintegrität ist der Copy-Konstruktor sowie der Copy-Zuweisungsoperator gelöscht ([SWS_PHM_01212], [SWS_PHM_01213]); Instanzen dürfen jedoch verschoben werden ([SWS_PHM_01214], [SWS_PHM_01215]). Beim Abbau räumt der Destruktor die Entität auf [SWS_PHM_01211].

Die instrumentierte Software meldet das Erreichen festgelegter Programmpunkte über den synchronen Aufruf ReportCheckpoint() [SWS_PHM_01127]. Als Parameter dient eine typisierte Checkpoint-Enumeration, die aus dem Schnittstellen-Header generiert wird ([SWS_PHM_00424], [SWS_PHM_00425]). Der PHM-Daemon verifiziert bei jeder Meldung die Prozessberechtigung; ruft ein nicht im Manifest modellierter Prozess die Methode auf, wird eine Zugriffsverletzung erkannt [SWS_PHM_01127]. Bei sicherheitskritischen Anomalien kann das PHM den Zugriffsfehler an den Intrusion Detection System Manager (IdsM) weiterleiten AUTOSAR_AP_EXP_SWArchitecture S. 236.

Die Überwachung einer Entität kann zur Laufzeit zustandsabhängig gesteuert werden: Über Enable() wird die Überwachung aktiviert, sofern der aktuelle Zustand der zugehörigen Funktionsgruppe dies gestattet [SWS_PHM_01130]. Mit Disable() kann die Überwachung wieder ausgesetzt werden [SWS_PHM_01380]. Beide Methoden liefern ein ara::core::Future<void> zurück und signalisieren asynchrone Bereitstellungsfehler, beispielsweise PhmErrc::kServiceNotReady [SWS_PHM_01130].

Meldung eines Kontrollpunkts und ValidierungApplikationPHM-DaemonIdsMReportCheckpoint(checkpointId)checkAccess()altZugriff autorisierthandleReportedCheckpoint()Zugriff verweigert (Rechteverletzung)ReportEvent(SecurityViolation)

Sequenzdiagramm: Ablauf der Kontrollpunktmeldung über SupervisedEntity mit Rechteprüfung und Sicherheitsüberwachung durch das IdsM. Quellen: [SWS_PHM_01127], AUTOSAR_AP_EXP_SWArchitecture S. 236.

Überwachungsarten und mehrstufige Statusaggregation

Das Platform Health Management unterscheidet drei primäre elementare Überwachungsarten ([SWS_PHM_01138], AUTOSAR_AP_EXP_SWArchitecture S. 128):

  • Alive Supervision (kAliveSupervision): Prüft, ob zyklische Programmteile innerhalb definierter Zeitfenster eine konfigurierte Mindest- und Höchstanzahl an Checkpoint-Meldungen absetzen AUTOSAR_FO_ASWS_HealthMonitoring S. 22.
  • Deadline Supervision (kDeadlineSupervision): Überwacht die Ausführungsdauer zwischen zwei Kontrollpunkten auf Einhaltung konfigurierter Minimal- und Maximalfristen AUTOSAR_AP_SWS_PlatformHealthManagement S. 15.
  • Logical Supervision (kLogicalSupervision): Validiert die Ausführungsreihenfolge anhand eines modellierten Übergangsgraphen, um unzulässige Sprünge oder Kontrollflussverzweigungen zu identifizieren AUTOSAR_AP_SWS_PlatformHealthManagement S. 15.

Jede einzelne Überwachung besitzt eine eigene Zustandsmaschine für ihren elementaren Status (ElementarySupervisionStatus) [SWS_PHM_01358]. Beim Start des PHM werden sämtliche elementaren Zustandsmaschinen im Zustand kDEACTIVATED initialisiert und Fehlerzähler auf null gesetzt SWS_PlatformHealthManagement S. 31. Nach der Aktivierung wechselt die Überwachung in kOK, solange alle Prüfkriterien erfüllt sind. Tritt eine Verletzung auf, wechselt der Status in kFailed [SWS_PHM_01358].

ElementarySupervisionStatus Init kDEACTIVATED kDEACTIVATED (Initialisiert) Init->kDEACTIVATED Start PHM kOK kOK (Fehlerfrei) kDEACTIVATED->kOK Enable / Erste Meldung kOK->kDEACTIVATED Disable kOK->kOK Fehlerfreie Meldungen kFailed kFailed (Fehler erkannt) kOK->kFailed Verletzung von Alive, Deadline oder Logical kFailed->kDEACTIVATED Disable kFailed->kOK Erfolgreiche Erholung & Zähler zurückgesetzt kFailed->kFailed Weitere Fehler im Limit

Zustandsdiagramm: Zustandsübergänge der elementaren Überwachung (ElementarySupervisionStatus) von kDEACTIVATED über kOK bis kFailed. Quellen: [SWS_PHM_01358], SWS_PlatformHealthManagement S. 31.

Mehrere elementare Überwachungen werden zu einer übergeordneten globalen Überwachung zusammengefasst SWS_PlatformHealthManagement S. 24. Gemäß Spezifikation existiert pro konfigurierter Global Supervision genau ein GlobalSupervisionStatus, der strikt an eine einzelne Funktionsgruppe (Function Group) gebunden ist und sich nicht über mehrere Funktionsgruppen erstrecken darf ([SWS_PHM_01137], SWS_PlatformHealthManagement S. 39). Der globale Status aggregiert die Ergebnisse über die Zustände kDEACTIVATED, kOK, kFAILED, kEXPIRED und kSTOPPED AUTOSAR_AP_SWS_PlatformHealthManagement S. 39. Der Zustand kOK setzt voraus, dass mindestens eine zugehörige Überwachung fehlerfrei arbeitet und keine einzige im Fehlerzustand verweilt [SWS_PHM_01137].

GlobalSupervisionStatus Init kDEACTIVATED kDEACTIVATED Init->kDEACTIVATED Systemstart kOK kOK (Alle Überwachungen fehlerfrei) kDEACTIVATED->kOK Aktivierung ohne Fehler kFAILED kFAILED (Mindestens ein Fehler aktiv) kDEACTIVATED->kFAILED Aktivierung mit Fehler kSTOPPED kSTOPPED (Endzustand) kDEACTIVATED->kSTOPPED Abschaltung kOK->kFAILED Elementare Überwachung meldet Fehler kOK->kSTOPPED Stopp der Funktionsgruppe kFAILED->kOK Alle Überwachungen wieder fehlerfrei kEXPIRED kEXPIRED (Toleranzlimit überschritten) kFAILED->kEXPIRED Fehlertoleranz erschöpft kEXPIRED->kSTOPPED Abschaltung / Eskalation

Zustandsdiagramm: Zustandsmodell des globalen Überwachungsstatus (GlobalSupervisionStatus) mit kDEACTIVATED, kOK, kFAILED, kEXPIRED und kSTOPPED. Quellen: [SWS_PHM_01137], AUTOSAR_AP_SWS_PlatformHealthManagement S. 39, SWS_PlatformHealthManagement S. 39.

Zyklische Watchdog-Bedienung und Hardware-Absicherung

Um die Lauffähigkeit der gesamten Recheneinheit gegen Hänger oder fatale Systemabstürze abzusichern, bindet das PHM das hardwarenahe Watchdog-Subsystem über die Schnittstelle apext::phm::WatchdogInterface an [SWS_PHM_01255]. Diese native Plattform-Erweiterung (Platform Extension) wird nicht über Service-Middleware realisiert, sondern als deterministischer nativer Treiberaufruf ausgeführt AUTOSAR_AP_EXP_SWArchitecture S. 130.

In einem konfigurierbaren Zyklus prüft das PHM intern alle aktiven Überwachungsmetriken und setzt bei positivem Gesamtstatus über AliveNotification() eine Lebenszeichenmeldung an den Watchdog ab ([SWS_PHM_01255], AUTOSAR_AP_EXP_SWArchitecture S. 233). Bleibt diese Meldung innerhalb des konfigurierten Zeitfensters aus — beispielsweise weil der PHM-Daemon blockiert ist oder eine kritische Überwachung scheitert —, leitet das Watchdog-Interface eigenständig eine Hardware-Sicherheitsreaktion ein [SWS_PHM_01255].

Zyklisches Watchdog-ManagementPHM-DaemonWatchdogInterfaceloopKonfiguriertes ZyklusintervallcheckSupervisions()optÜberwachungsstatus kOKAliveNotification()

Sequenzdiagramm: Periodische Auswertung der Überwachungsergebnisse und Alive-Signalisierung an das Watchdog-Interface. Quellen: [SWS_PHM_01255], AUTOSAR_AP_EXP_SWArchitecture S. 233, AUTOSAR_AP_EXP_SWArchitecture S. 130.

Koordination von Recovery-Aktionen mit dem State Management

Erkennt das PHM eine Verletzung von Überwachungsbedingungen, leitet es die Fehlerbehebung nicht eigenmächtig ein, sondern delegiert die Maßnahme an das State Management als zentrale Regulierungsinstanz (AUTOSAR_AP_EXP_SWArchitecture S. 129, AUTOSAR_AP_EXP_SWArchitecture S. 220). Diese Entkopplung wahrt das Architekturprinzip, dass Entscheidungen über funktionale Systemzustände und Prozess-Neustarts beim State Management verbleiben AUTOSAR_AP_SWS_StateManagement S. 28.

Das State Management registriert seine Bereitschaft zur Fehlerübernahme über die Port-Schnittstelle ara::phm::RecoveryAction [SWS_PHM_01141]. Durch den Aufruf von Offer() wird die Entgegennahme von Fehlermeldungen scharfgeschaltet [SWS_PHM_01143]; mit StopOffer() kann das State Management die Dienstbereitschaft wieder deaktivieren [SWS_PHM_01144]. Um fatale Rennbedingungen und undefiniertes Verhalten durch vorzeitigen Callback-Aufruf vor vollständiger Konstruktion abgeleiteter Klassen auszuschließen, sind Copy- und Move-Operationen für RecoveryAction explizit unterbunden ([SWS_PHM_01149], [SWS_PHM_01150], [SWS_PHM_01151], [SWS_PHM_01152]).

Im Fehlerfall ruft das PHM die rein virtuelle Rückruffunktion RecoveryHandler() des State Managements auf und übergibt dabei das Fehlerereignis ara::exec::ExecutionErrorEvent sowie die Art der verletzten Überwachung TypeOfSupervision [SWS_PHM_01142]. Das State Management ermittelt daraufhin den Folgezustand der Funktionsgruppe und veranlasst das Execution Management zur Zustandsänderung oder zum Neustart betroffener Prozesse (AUTOSAR_AP_EXP_SWArchitecture S. 169, AUTOSAR_AP_EXP_SWArchitecture S. 220).

Fehlerbehandlung und Recovery-EskalationApplikationPHM-DaemonState ManagementWatchdogOffer()Result<void> (Bereit)ReportCheckpoint(wrongCheckpointId)handleFailedSupervision()RecoveryHandler(executionError, supervision)altRecovery erfolgreich durchgeführtFuture::set_value() (kActionHandled)Recovery fehlgeschlagen oder TimeoutFehler kSMCanNotHandleRecoveryFireWatchdogReaction()

Sequenzdiagramm: Fehlereskalation an das State Management über den RecoveryHandler mit Verzweigung zur Watchdog-Auslösung im Fehlerfall. Quellen: [SWS_PHM_01142], [SWS_PHM_01256], AUTOSAR_AP_EXP_SWArchitecture S. 234, AUTOSAR_AP_EXP_SWArchitecture S. 220, AUTOSAR_AP_EXP_SWArchitecture S. 220.

Verhalten im Fehlerfall und mehrstufige Eskalationspfade

Das Platform Health Management implementiert eine abgestufte Eskalationsstrategie zur Beherrschung von Laufzeitfehlern AUTOSAR_AP_EXP_SWArchitecture S. 200. Tritt ein Überwachungsfehler auf, wird zunächst der primäre Pfad beschritten: Die Überwachung meldet den Fehler an das State Management, welches über RecoveryHandler() eine kontrollierte Rekonfiguration durchführt [SWS_PHM_01142].

Kann das State Management die Erholung nicht ausführen (beispielsweise quittiert mit dem Fehlercode PhmErrc::kSMCanNotHandleRecovery) oder läuft die Beantwortung in einen Timeout, greift der sekundäre Eskalationspfad ([SWS_PHM_01240], AUTOSAR_AP_EXP_SWArchitecture S. 220). In diesem Fall umgeht das PHM die Software-Ebene und erzwingt über FireWatchdogReaction() eine sofortige hardwarenahe Notfallreaktion (System-Reset oder Übergang in den Safe State) ([SWS_PHM_01256], AUTOSAR_AP_EXP_SWArchitecture S. 201).

Besonders kritisch ist der Ausfall der zentralen Plattform-Daemons selbst: Versagt das Execution Management oder das State Management, ist eine koordinierte Wiederherstellung auf Betriebssystemebene nicht mehr möglich (AUTOSAR_AP_EXP_SWArchitecture S. 235, AUTOSAR_AP_EXP_SWArchitecture S. 235). Das PHM erkennt diesen Zustand über fehlerhafte oder ausbleibende Checkpoints dieser Daemons und feuert ohne Verzögerung die Watchdog-Reaktion [SWS_PHM_01256].

Alle Fehlersituationen im C++-API werden über die Fehlerdomäne ara::phm::PhmErrorDomain typisiert ([SWS_PHM_01247], [SWS_PHM_01251]). Die Fehlercodes sind im Enum PhmErrc zusammengefasst ([SWS_PHM_01240], [SWS_PHM_01245]). Für synchrone Schnittstellen und Ausnahmen stehen Hilfsfunktionen wie MakeErrorCode() [SWS_PHM_01244] sowie der Ausnahmetyp PhmException zur Verfügung ([SWS_PHM_01243], [SWS_PHM_01250]).

Manifest-Modellierung, ID-Synchronisation und Instanziierung

Die korrekte Verknüpfung zwischen Applikationscode und PHM-Daemon basiert auf einer strengen ID-Synchronisation im AUTOSAR-Manifest AUTOSAR_AP_TPS_ManifestSpecification S. 566. Im Anwendungsdesign wird die Entität als PhmSupervisedEntityInterface mit aggregierten PhmCheckpoint-Elementen modelliert AUTOSAR_AP_TPS_ManifestSpecification S. 208. Für das Deployment auf Maschinenebene wird pro Prozessinstanz ein SupervisionCheckpoint erzeugt, der die Instanzreferenz auf den Port und den Ausführungskontext (Process) auflöst TPS_ManifestSpecification S. 568.

Wird derselbe Softwarekomponententyp mehrfach instanziiert — sei es innerhalb desselben Prozesses oder über mehrere Prozesse hinweg —, erzeugt die Manifest-Konfiguration für jeden Port einen eindeutigen InstanceSpecifier AUTOSAR_AP_SWS_PlatformHealthManagement S. 51. Dadurch kann der PHM-Daemon identische Kontrollpunkt-IDs aus dem Quellcode eindeutig der jeweiligen Komponenteninstanz und Prozessidentität zuordnen AUTOSAR_AP_TPS_ManifestSpecification S. 566. Interpretation: Die Interprozesskommunikation zwischen Anwendungs-User-Space und PHM-Daemon dürfte betriebssystemspezifisch optimiert sein (etwa über Shared Memory oder POSIX-Domain-Sockets), da die C++-Klasse SupervisedEntity die Transportdetails transparent kapselt [SWS_PHM_01123]. Frage Q-f6147469f30f4299 (offen)

Auf Seiten der Fehlerbehandlung modelliert das Manifest RecoveryNotification-Elemente, die einem PPortPrototype des State Managements zugeordnet sind AUTOSAR_AP_TPS_ManifestSpecification S. 587. Hierbei wird auch ein Timeout-Wert (recoveryNotificationTimeout) definiert, nach dessen Ablauf die Fehlerbehandlung als gescheitert eingestuft wird AUTOSAR_AP_TPS_ManifestSpecification S. 587.

Weiterführende Detailbelege

Die verbindliche normative Ausgestaltung des Platform Health Managements im Release R25-11 stützt sich insbesondere auf folgende Spezifikationsanker:

Dieser Modul-Leitfaden basiert auf den normativen Spezifikationen und Systemarchitekturvorgaben des AUTOSAR-Adaptive-Releases R25-11.

function: 27 class: 5 enumeration: 5 type alias: 2 header file: 1 variable: 1

apext::phm

class for interface to hardware watchdog Note: class WatchdogInterface although identifiable in code as an interface, it is a PlatformExtens

ara::phm

Defines the error domain for Platform Health Management.

erbt von ara::core::ErrorDomain

Exception type thrown by Platform Health Management.

erbt von ara::core::Exception

RecoveryAction abstract class.

SupervisedEntity Class.

GetPhmDomain function

Returns the global PhmErrorDomain object.

constexpr const ara::core::ErrorDomain & GetPhmDomain () noexcept;
MakeErrorCode function

Creates an error code.

constexpr ara::core::ErrorCode MakeErrorCode (PhmErrc code, ara::core::ErrorDomain::SupportDataType data) noexcept;

Enumeration of elementary supervision status. Scoped Enumeration of uint32_t.

enum class ElementarySupervisionStatus : std::uint32_t {...};

Enumeration of global supervision status. Scoped Enumeration of uint32_t.

enum class GlobalSupervisionStatus : std::uint32_t {...};
PhmErrc enumeration

Defines an enumeration class for the Platform Health Management error codes.

enum class PhmErrc : ara::core::ErrorDomain::CodeType {...};
TypeOfSupervision enumeration

Enumeration of type of supervision. Scoped Enumeration of uint32_t.

enum class TypeOfSupervision : std::uint32_t {...};

ara::phm::supervised_entities::{ <hierarchical-namespace-list-lower-skeleton>}

<SE> enumeration

Defines the checkpoints for the ara::phm::PhmSupervisedEntityInterface

enum class {<phmssi-sn>} : std::uint32_t {...};
<Checkpoint> variable

For each enumeration in {<phm-checkpoint-list>} in [SWS_PHM_00424] there shall exist a C++ enumerator declaration.

{<symbol-phm-checkpoint>} = {<phm-checkpoint-value>};

Namespaces

UML-Klassendiagramm des Moduls

Abgerundete Rahmen = Namespaces; hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); graue Boxen = modulfremde bzw. externe Basisklassen. Klicken öffnet die Klassenseite.

G cluster_1 apext::phm cluster_2 ara::phm napext__phm__WatchdogInterface47 WatchdogInterface nara__phm__PhmErrorDomain808 PhmErrorDomain nara__core__ErrorDomain335 ara::core::ErrorDomain nara__phm__PhmErrorDomain808->nara__core__ErrorDomain335 nara__phm__PhmException101 PhmException nara__core__Exception792 ara::core::Exception nara__phm__PhmException101->nara__core__Exception792 nara__phm__RecoveryAction85 RecoveryAction nara__phm__SupervisedEntity345 SupervisedEntity