DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_SWArchitecture FIG-d4a285d7fb4a108f 860 × 436 px 1 Release(s)

Figure 9.36: Interfaces for file storage

SHA-256 Inhalts-Fingerabdruck: d4a285d7fb4a108f8027358ee4dff65bb357c9740b6382c45545984cd7180428
✦ 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 zur Darstellung der Schnittstellenarchitektur für Dateispeicherung (File Storage) innerhalb der AUTOSAR Adaptive Platform. Das Diagramm spezifiziert die Interaktion zwischen einer Anwendungsentität (Adaptive Application), den angebotenen C++-Schnittstellen und dem Funktionscluster Persistency.

2. Komponenten, Entitäten & Schnittstellen

  • Komponenten:
    • Adaptive Application (Komponente, stereotype-los, konsumierende Rolle)
    • Persistency (Komponente mit Stereotyp «aapFunctionalCluster», implementierende Rolle)
  • Schnittstellen und Klassen:
    • Persistency («aapAPI,aapNativeInterface»): Statische Methoden GetCurrentFileStorageSize(), OpenFileStorage(): FileStorage, RecoverAllFiles(), ResetAllFiles().
    • Persistency::FileStorage («aapAPI,aapPortInterface»): Methoden DeleteFile(), FileExists(), GetAllFileNames(), GetCurrentFileSize(), GetFileInfo(), OpenFileReadOnly(): ReadAccessor, OpenFileReadWrite(): ReadWriteAccessor, OpenFileWriteOnly(): ReadWriteAccessor, RecoverFile(), ResetFile().
    • Persistency::ReadAccessor («aapAPI,aapNativeInterface»): Methoden GetByte(), GetChar(), GetPosition(), GetSize(), IsEof(), MovePosition(), PeekByte(), PeekChar(), ReadBinary(), ReadLine(), ReadText(), SetPosition().
    • Persistency::ReadWriteAccessor («aapAPI,aapNativeInterface»): Methoden operator<<(), SetFileSize(), SyncToFile(), WriteBinary(), WriteText().
  • Beziehungen:
    • Adaptive Application nutzt über gerichtete Abhängigkeiten («use») alle vier Schnittstellen (Persistency, Persistency::FileStorage, Persistency::ReadAccessor, Persistency::ReadWriteAccessor).
    • Persistency::ReadWriteAccessor erbt via Generalisierung von Persistency::ReadAccessor.
    • Der Cluster Persistency implementiert alle vier Schnittstellen über Interface-Realisierungspfeile (gestrichelt mit geschlossener, nicht ausgefüllter Pfeilspitze).

3. Dynamisches Verhalten & Sequenzablauf

Statisches Strukturdiagramm ohne explizite Interaktions- oder Sequenzpfade. Der funktionale Ablauf impliziert:

  1. Zugriff auf globale Persistenz-Funktionen über das native Interface Persistency zur Öffnung eines Speichers (OpenFileStorage()), der ein Persistency::FileStorage-Objekt zurückgibt.
  2. Verwaltung von Dateien und Dateizugriffen über Persistency::FileStorage. Das Öffnen einer Datei liefert typisierte Accessor-Instanzen (ReadAccessor oder ReadWriteAccessor).
  3. Datenübertragung bzw. sequentieller/wahlfreier Lese- und Schreibzugriff über Methoden der Accessoren.
  4. Datei- und Speicherwiederherstellung über entsprechende Recover*- bzw. Reset*-Operationen.

4. Normative Relevanz & Entwickler-Hinweise

  • Persistency::FileStorage fungiert sowohl als C++-API als auch als Port-Interface («aapAPI,aapPortInterface») zur standardisierten Modellierung von Service-Ports und Manifesten.
  • Methoden von Persistency sind unterstrichen dargestellt und damit als statische Methoden der Schnittstelle definiert.
  • Datei-Streams bzw. Puffer werden über spezialisierte Zugriffsobjekte gekapselt (ReadAccessor für Leseoperationen, ReadWriteAccessor für kombinierte Lese-/Schreibzugriffe).
  • Transaktions- bzw. Flush-Garantien für Dateiinhalte werden über SyncToFile() adressiert.

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

R22-11 → R23-11 keine inhaltliche Änderung Vorgänger: FIG-6ed5d85bf42e85bb

Keine inhaltlichen Änderungen erkennbar.

R23-11 → R24-11 redaktionell Nachfolger: FIG-0868ee1bef0be8b2
  • Die Schnittstellennamen Persistency::FileStorage, Persistency::ReadAccessor und Persistency::ReadWriteAccessor wurden durch Entfernung des Namespace-Präfixes zu FileStorage, ReadAccessor und ReadWriteAccessor verkürzt.
  • Der Klassenbezeichner des linken Interfaces entfällt (nur noch Stereotyp «aapAPI,aapNativeInterface» oberhalb der Operationen).

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«aapFunctionalCluster» | Persistency | «aapAPI,aapPortInterface» | Persistency::FileStorage | + DeleteFile() + FileExists() + GetAllFileNames() + GetCurrentFileSize() + GetFileInfo() + OpenFileReadOnly(): ReadAccessor + OpenFileReadWrite(): ReadWriteAccessor + OpenFileWriteOnly(): ReadWriteAccessor + RecoverFile() + ResetFile() | «aapAPI,aapNativeInterface» | Persistency::ReadAccessor | + GetByte() + GetChar() + GetPosition() + GetSize() + IsEof() + MovePosition() + PeekByte() + PeekChar() + ReadBinary() + ReadLine() + ReadText() + SetPosition() | «aapAPI,aapNativeInterface» Persistency::ReadWriteAccessor | + operator<<() + SetFileSize() + SyncToFile() + WriteBinary() + WriteText() | «aapAPI,aapNativeInterface» | Persistency | + GetCurrentFileStorageSize() + OpenFileStorage(): FileStorage + RecoverAllFiles() + ResetAllFiles() | Adaptive Application | «use» «use» «use» «use»

Begleitender Spezifikationstext:

Explanation of Adaptive Platform Software Architecture AUTOSAR AP R23-11 9.4.1 Persistency Name: Persistency Short Name: per Category: Storage Daemon-based: No Responsibilities: Persistency provides functionality to store and retrieve information to/from non-volatile storage of a Machine. Persistent data is always private to one Process and is persisted across boot and ignition cycles. There is no mechanism available to share data between different Processes using Persistency to prevent a second path of data exchange besides Communication Management. However, Persistency supports concurrent access from multiple threads of the same application running in the context of the same Process. Persistency offers integrity of the stored data and provides error detection and correction schemes. Persistency also offers confidentiality of the stored data using encryption. Persistency provides statistics, for example, the used storage space. 9.4.1.1 Defined interfaces The interfaces of Persistency are categorized into interfaces for file access (see Section 9.4.1.1.1), interfaces for a key-value-based data access (see Section 9.4.1.1.2) and interfaces for general management of persistent data (see Section 9.4.1.1.3). 9.4.1.1.1 Interfaces for file storage Persistency provides read and write access to plain files by means of a FileStorage (cf. Figure 9.36). A FileStorage has to be opened using OpenFileStorage(). A FileStorage then provides access to several files using their name. «aapFunct

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R23-11 AUTOSAR_AP_EXP_SWArchitecture S. 71 9.36 Figure 9.36: Interfaces for file storage