DEENESPTFRRUARHIKOZHNL
AUTOSAR_EXP_SWArchitecture FIG-ef55605bc8ffc3ca 470 × 424 px 1 Release(s)

Figure 9.37: Interfaces for key-value-based data storage

SHA-256 Inhalts-Fingerabdruck: ef55605bc8ffc3ca98b949a6498235f6040448c567490d2c95cb5d09039f8ced
✦ 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

UML-Klassendiagramm / Komponentendiagramm im Kontext der AUTOSAR Adaptive Platform Architecture (Cluster Persistency, Sub-Bereich Key-Value-Storage). Das Diagramm spezifiziert die Schnittstellenbeziehungen zwischen einer Anwendungskomponente (Adaptive Application), den angebotenen C++-APIs des Functional Clusters und der Realisierung durch das funktionale Cluster Persistency.

2. Komponenten, Entitäten & Schnittstellen

  • Adaptive Application («component»): Anwendungskomponente, die persistente Schlüssel-Wert-Speicherung nutzt; besitzt ausgehende gerichtete Abhängigkeiten («use») auf beide Persistency-Schnittstellen.
  • «aapFunctionalCluster» Persistency («component»): Realisierende Plattformkomponente des Clusters Persistency; implementiert (--▷, Interface Realization) sowohl das native Interface als auch das Port Interface.
  • «aapAPI,aapNativeInterface» Persistency (Interface/Klasse): Statische bzw. freie native C++-API-Funktionen zur Speicherverwaltung:
    • + GetCurrentKeyValueStorageSize()
    • + OpenKeyValueStorage(): KeyValueStorage
    • + RecoverKeyValueStorage()
    • + ResetKeyValueStorage() (alle Operationen unterstrichen, d. h. statische Elementfunktionen / globale Funktionen).
  • «aapAPI,aapPortInterface» Persistency::KeyValueStorage (Interface/Klasse): Instanzspezifisches Objektinterface für den Zugriff auf Schlüssel-Wert-Paare:
    • + DiscardPendingChanges()
    • + GetAllKeys()
    • + GetValue()
    • + KeyExists()
    • + RecoverKey()
    • + RemoveAllKeys()
    • + RemoveKey()
    • + ResetKey()
    • + SetValue()
    • + SyncToStorage()

3. Dynamisches Verhalten & Sequenzablauf

  1. Eine Adaptive Application ruft zunächst die statische Fabrikmethode OpenKeyValueStorage() des nativen Interface Persistency auf und erhält eine Instanz bzw. Referenz/Handle vom Typ KeyValueStorage.
  2. Über administrative Funktionen von Persistency können Integrität und Gesamtzustand des Speichers geprüft oder modifiziert werden (GetCurrentKeyValueStorageSize(), RecoverKeyValueStorage(), ResetKeyValueStorage()).
  3. Auf der erhaltenen Instanz Persistency::KeyValueStorage liest und schreibt die Anwendung Werte (GetValue(), SetValue()), prüft Schlüssel (KeyExists()), fragt vorhandene Schlüssel ab (GetAllKeys()) oder entfernt bzw. setzt sie zurück (RemoveKey(), RemoveAllKeys(), ResetKey(), RecoverKey()).
  4. Änderungen werden über SyncToStorage() persistent auf das physische Speichermedium synchronisiert oder über DiscardPendingChanges() verworfen.

4. Normative Relevanz & Entwickler-Hinweise

  • Klare Trennung zwischen Plattform-Einstiegs-API (Persistency, Native Interface mit Factory OpenKeyValueStorage()) und Datenzugriffs-Objekt (KeyValueStorage, Port Interface).
  • Die Unterstreichung der Operationen im Native Interface Persistency kennzeichnet statische Methoden bzw. freie Funktionen im C++-Mapping.
  • Persistenzoperationen sind transaktionsartig aufgebaut: Schreib- und Löschoperationen können im Speicher gepuffert sein und erfordern zur persistenten Festschreibung den expliziten Aufruf von SyncToStorage(), andernfalls können sie via DiscardPendingChanges() verworfen werden.
  • Fehlerbehandlung und Recovery sind zweistufig ausgelegt: auf Granularitätsebene des gesamten Speichers (RecoverKeyValueStorage(), ResetKeyValueStorage()) und auf Granularitätsebene einzelner Schlüssel (RecoverKey(), ResetKey()).

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

R21-11 → R22-11 keine inhaltliche Änderung Vorgänger: FIG-b045d30e3c97fa76

Keine inhaltlichen Änderungen erkennbar.

R22-11 → R23-11 keine inhaltliche Änderung Nachfolger: FIG-1163424c1507a5ad

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«aapFunctionalCluster» | Persistency | «aapAPI,aapPortInterface» Persistency::KeyValueStorage | + DiscardPendingChanges() + GetAllKeys() + GetValue() + KeyExists() + RecoverKey() + RemoveAllKeys() + RemoveKey() + ResetKey() + SetValue() + SyncToStorage() | «aapAPI,aapNativeInterface» | Persistency | + GetCurrentKeyValueStorageSize() + OpenKeyValueStorage(): KeyValueStorage + RecoverKeyValueStorage() + ResetKeyValueStorage() | Adaptive Application | «use» «use»

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R22-11 AUTOSAR_EXP_SWArchitecture S. 66 9.37 Figure 9.37: Interfaces for key-value-based data storage