DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_SWArchitecture FIG-3fc295ad4ef2e7c2 450 × 171 px 1 Release(s)

Figure 11.20: Scenario: Get KeyValueStorage Size

SHA-256 Inhalts-Fingerabdruck: 3fc295ad4ef2e7c2c9cb172c1fdf71f77127b2504aa9dc1c89feebce5c1e29c3
✦ 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-Sequenzdiagramm (Interaktionsszenario).
  • Architektur-Kontext: AUTOSAR Adaptive Platform (Release R23-11), funktionale Domäne Persistency (ara::per), spezifiziert im Dokument AUTOSAR_AP_EXP_SWArchitecture (Kapitel 11.3.1.5.2).
  • Technischer Zweck: Veranschaulichung des Interaktionsflusses zur dynamischen Ermittlung des aktuell durch einen Key-Value-Speicher belegten Speicherplatzes auf dem persistenten Datenträger durch eine Adaptive Application.

2. Komponenten, Entitäten & Schnittstellen

  • :Adaptive Application (Akteur / Lifeline):
    • Nutzerprozess im User Space der Adaptive Platform, der persistente Schlüssel-Wert-Paare verwaltet.
  • «aapFunctionalCluster» :Persistency (Plattform-Entität / Lifeline):
    • AUTOSAR Adaptive Platform Functional Cluster (ara::per).
    • Trägt das platformspezifische Stereotyp «aapFunctionalCluster».
    • Kapselt Dateisystem- und Datenbankzugriffe, Redundanz-/Integritätsmechanismen sowie Verschlüsselung.
  • :Operating System (Akteur / Lifeline):
    • POSIX-konformes Betriebssystem (Kernel- / VFS-Schicht). Stellt grundlegende Systemaufrufe für Dateisystem-, Partitions- und I/O-Metadaten bereit.
  • Schnittstellen & Methoden:
    • GetCurrentKeyValueStorageSize(): Public API-Methode der Klasse/Instanz von ara::per::KeyValueStorage an der C++-Sprachbindung.
    • «aapInformative» getSize(): Plattforminterne bzw. betriebssystemnahe Operation / Abstraktion von Systemcalls (z. B. stat(), fstat() oder VFS-Abfragen zur Berechnung der aggregierten Block-/Dateigrößen der internen Speicherstrukturen), durch das Stereotyp «aapInformative» explizit als informativer Aufruf gekennzeichnet.

3. Dynamisches Verhalten & Sequenzablauf

  1. Trigger / Aufruf durch Applikation:
    • Die :Adaptive Application initiiert den synchronen Funktionsaufruf GetCurrentKeyValueStorageSize() an der geöffneten KeyValueStorage-Instanz des Functional Clusters :Persistency.
  2. Interne Größenermittlung via OS:
    • :Persistency aktiviert seinen Ausführungsbalken und delegiert die Ermittlung der physischen Speicherbelegung an das :Operating System via getSize().
    • Das Betriebssystem ermittelt Metadaten der zugrunde liegenden Speicherstrukturen (Dateien, SQLite-DBs, Blockallokationen).
  3. Ergebnisrückgabe (implizit):
    • Das :Operating System meldet die Bytegröße an :Persistency zurück.
    • :Persistency aggregiert ggf. Overhead/Metadaten und liefert das Ergebnis typsicher (als ara::core::Result<std::uint64_t>) an die aufrufende :Adaptive Application zurück.

4. Normative Relevanz & Entwickler-Hinweise

  • API-Semantik & Fehlerbehandlung (ara::per):
    • Der Aufruf liefert den tatsächlichen physischen bzw. logischen Platzbedarf des spezifischen KeyValue-Speichers in Bytes.
    • Entwickler müssen den Rückgabewert als ara::core::Result behandeln (Prüfung auf Fehler wie PerErrc::kStorageIntegrityCorrupted oder Zugriffsprobleme bei beschädigten I/O-Kanälen).
  • Laufzeit- & Echtzeitverhalten:
    • GetCurrentKeyValueStorageSize() ist ein I/O- und OS-gebundener Call. Abhängig von der internen Persistenz-Engine (JSON-/BSON-Flatfiles, relationale SQLite-Dateien, Key-Value-Stores) kann der Aufruf Dateisystemtraverse- und Disk-Leseoperationen auslösen.
    • Echtzeitrestriktion: Der Aufruf ist potenziell blockierend und darf nicht in harten, zeitkritischen Ausführungspfaden (Determinismus/Control-Loops) ausgeführt werden.
  • Konfigurationsaspekte:
    • Das Kontingent (quota) für einen KeyValueStorage wird im Manifest (PersistencyPortPrototype, PersistencyKeyValueStorageInterface) definiert. Die Methode dient primär zur Laufzeitüberwachung gegen ein konfiguriertes maximumAllowedSize-Limit, um ein Volllaufen des Speichers präventiv abzufangen.

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

R23-11 → R24-11 redaktionell Vorgänger: FIG-bfee550e1c70d778
  • Stereotyp «aapInformative»: An der Nachricht getSize() vom Functional Cluster :Persistency an das :Operating System wurde der Stereotyp «aapInformative» ergänzt.
R24-11 → R25-11 keine inhaltliche Änderung Nachfolger: FIG-8753ba87cac0c47f

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

:Adaptive Application | «aapFunctionalCluster» | :Persistency | :Operating System | GetCurrentKeyValueStorageSize() | getSize() | «aapInformative»

Begleitender Spezifikationstext:

Explanation of Adaptive Platform Software Architecture AUTOSAR AP R24-11 :Adaptive Application «aapFunctionalCluster» :Persistency :Operating System GetCurrentFileStorageSize() getSize() «aapInformative» Figure 11.19: Scenario: Get FileStorage Size Figure 11.19 shows the scenario of the use case Get Storage Size in case of a FileStorage. The Adaptive Application needs to call GetCurrentFileStorageSize() to determine the current size. 11.3.1.5.2 Scenario: Get KeyValueStorage Size :Adaptive Application «aapFunctionalCluster» :Persistency :Operating System GetCurrentKeyValueStorageSize() getSize() «aapInformative» Figure 11.20: Scenario: Get KeyValueStorage Size Figure 11.20 shows the scenario of the use case Get Storage Size in case of a KeyValueStorage. The Adaptive Application needs to call GetCurrentKeyValueStorageSize() to determine the current size. 11.4 Security 11.4.1 Firewall 11.4.1.1 Switch Firewall State 11.4.1.1.1 Scenario: Switch Firewall State 211 of 250 Document ID 982: AUTOSAR_AP_EXP_SWArchitecture

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R24-11 AUTOSAR_AP_EXP_SWArchitecture S. 211 11.20 Figure 11.20: Scenario: Get KeyValueStorage Size