DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_SWArchitecture FIG-bfee550e1c70d778 450 × 167 px 1 Release(s)

Figure 11.15: Scenario: Get KeyValueStorage Size

SHA-256 Inhalts-Fingerabdruck: bfee550e1c70d778359639c23a662aa0599463814e1c6138fb9d0108f967acec
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07

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.
    • 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).

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 Nachfolger: FIG-3fc295ad4ef2e7c2
  • Stereotyp «aapInformative»: An der Nachricht getSize() vom Functional Cluster :Persistency an das :Operating System wurde der Stereotyp «aapInformative» ergänzt.

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()

Begleitender Spezifikationstext:

Explanation of Adaptive Platform Software Architecture AUTOSAR AP R23-11 Figure 11.14 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() Figure 11.15: Scenario: Get KeyValueStorage Size Figure 11.15 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 :Adaptive Application «aapFunctionalCluster» :Firewall :Operating System loop [foreach FirewallRule] SwitchFirewallState() applyRule() Figure 11.16: Scenario: Switch Firewall State Figure 11.16 shows the default scenario for Switch Firewall State. The Adaptive Application triggers the state switch by calling SwitchFirewallState(). The Firewall will then apply the FirewallRules configured for the request state in an 176 of 198 Document ID 982: AUTOSAR_AP_EXP_SWArchitecture

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R23-11 AUTOSAR_AP_EXP_SWArchitecture S. 176 11.15 Figure 11.15: Scenario: Get KeyValueStorage Size