Stellt Metadaten und Integritätsangaben für Diagnose-Massendaten bei der SOVD-Kommunikation bereit.
KI-GENERIERTungeprüftModell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 7c22095f2f08HerkunftOffene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13
Stellt Metadaten und Integritätsangaben für Diagnose-Massendaten bei der SOVD-Kommunikation bereit.
Die Struktur ara::diag::SovdBulkData::BulkDataMetaDataDescriptor dient als Datentransferobjekt zur Beschreibung von Massendaten für die SOVD-Diagnosekommunikation in AUTOSAR Adaptive ([SWS_DM_01830]). Sie bündelt Identifikations-, Lokalisierungs- und Typinformationen wie id, file_name und mimetype sowie Prüfsummen und optionale Größenangaben (SWS Diagnostics §8.53.2 „Struct: BulkDataMetaDataDescriptor“). Die Instanz wird von der bereitstellenden Diagnoseanwendung mit Metadaten befüllt und an das SOVD-Subsystem übergeben. Als passive C++-Struktur ohne eigene Synchronisation müssen gleichzeitige Schreibzugriffe von der aufrufenden Anwendung extern abgesichert werden.
Kontext
Die Datenstruktur ara::diag::SovdBulkData::BulkDataMetaDataDescriptor ist Bestandteil des Moduls diag der AUTOSAR Adaptive Platform und wird über den Header #include "ara/diag/sovd_bulk_data.h" bereitgestellt ([SWS_DM_01830]). Sie definiert den Metadaten-Deskriptor für Diagnose-Massendaten (Bulk Data), die im Rahmen von SOVD (Service-Oriented Vehicle Diagnostics) übertragen werden (SWS Diagnostics §8.53.2 „Struct: BulkDataMetaDataDescriptor“). Bei Diagnoseszenarien wie dem Auslesen umfangreicher Protokolldateien, Trace-Puffer oder Update-Pakete benötigen Diagnose-Clients neben dem binären Datenstrom strukturierte Begleitinformationen. Die Struktur bündelt diese Metadaten zur eindeutigen Identifikation, Interpretation und Integritätsprüfung.
Im Zusammenspiel zwischen diagnostischer Anwendung, dem Laufzeitsystem ara::diag und externen Diagnosetestern fungiert die Struktur als passives Datentransferobjekt (DTO). Das Feld id legt die eindeutige Kennung der Massendaten fest ([SWS_DM_01831]). Zur Benennung stehen file_name für den Dateinamen ([SWS_DM_01836]), name für die logische Bezeichnung ([SWS_DM_01833]) sowie translation_id für Lokalisierungszwecke bereit ([SWS_DM_01834]). Der Medientyp wird durch mimetype deklariert ([SWS_DM_01832]). Für die Integritätssicherung sorgen hash ([SWS_DM_01839]) und hash_algorithm ([SWS_DM_01840]), während creation_date ([SWS_DM_01837]) und last_modified ([SWS_DM_01838]) die zeitliche Einordnung definieren (SWS Diagnostics §8.53.2.1 „Public Member Variables“).
Lebenszyklus
Als C++-Struktur verfügt BulkDataMetaDataDescriptor über rein öffentliche Attribute ohne eigene geschäftslogische Konstruktoren ([SWS_DM_01830]). Interpretation: Die Struktur dürfte primär von der datenbereitstellenden Diagnoseanwendung als Wertobjekt auf dem Stack oder Heap instanziiert und befüllt werden, um anschließend an das SOVD-Subsystem übergeben zu werden. Frage Q-4a0434afda63d047 (offen) Die Lebensdauer folgt den regulären Regeln für C++-Objekte; enthaltene Mitglieder vom Typ ara::core::String sowie das optionale Größenfeld ara::core::Optional<std::uint64_t> werden bei Zerstörung der Instanz deterministisch freigegeben ([SWS_DM_01835]).
Die Struktur selbst besitzt keine internen Zustände oder Zustandsübergänge. In Multithreading-Umgebungen ist das nebenläufige Lesen einer Instanz unkritisch; schreibende Zugriffe auf die öffentlichen Variablen müssen jedoch durch die aufrufende Anwendung extern synchronisiert werden, da keine integrierten Schutzmechanismen existieren.
Nutzungspfad
Die typische Aufrufreihenfolge zur Nutzung des Metadaten-Deskriptors im Rahmen einer SOVD-Massenübertragung gliedert sich in folgende Schritte:
Instanziierung: Die Diagnoseanwendung erzeugt eine Instanz von BulkDataMetaDataDescriptor ([SWS_DM_01830]).
MIME-Typ und Zeitstempel befüllen: Das Format wird mittels mimetype festgelegt ([SWS_DM_01832]). Die Datumsangaben creation_date ([SWS_DM_01837]) und last_modified ([SWS_DM_01838]) dürften in der Praxis als ISO-8601-konforme Zeitstempel-Strings formatiert werden. Frage Q-fa352dc221e9452a (offen)
Prüfwerte und Bytegröße erfassen: Nach der Generierung der Nutzdaten werden Prüfsumme in hash ([SWS_DM_01839]) und der Algorithmus in hash_algorithm ([SWS_DM_01840]) eingetragen. Sofern die Bytezahl vorab bekannt ist, wird size befüllt ([SWS_DM_01835]); bleibt das optionale Feld leer, signalisiert dies vermutlich eine zum Bereitstellungszeitpunkt noch variable Dateigröße. Frage Q-03f717e53701c9c0 (offen)
Übergabe an das SOVD-Subsystem: Der initialisierte Deskriptor wird an ara::diag übergeben, damit externe SOVD-Clients die Metadaten abrufen können.
Da BulkDataMetaDataDescriptor eine passive Datenstruktur ist, werden keine Fehlercodes direkt durch die Struktur zurückgegeben. Fehler zeigen sich bei der anschließenden Verarbeitung durch ara::diag oder den Client:
Prüfsummen-Diskrepanz: Stimmt der in hash ([SWS_DM_01839]) angegebene Hash nicht mit dem tatsächlichen Inhalt überein oder ist hash_algorithm ([SWS_DM_01840]) unbekannt, schlägt die Verifikation beim Client fehl.
Abweichende Bytegröße: Ist das optionale Feld size ([SWS_DM_01835]) gesetzt und weicht von der real empfangenen Bytezahl ab, meldet der Empfänger einen Übertragungsfehler.
Ungültiger Medientyp: Ein fehlerhafter oder leerer mimetype ([SWS_DM_01832]) führt zu Interpretationsfehlern im Clientwerkzeug.
Fehlende Pflichtidentifikation: Werden id ([SWS_DM_01831]) oder file_name ([SWS_DM_01836]) nicht belegt, kann der Datensatz innerhalb des SOVD-Frameworks nicht eindeutig adressiert werden.
Dieser Leitfaden basiert auf der Spezifikation AUTOSAR Adaptive Platform Release R25-11 und wurde automatisch generiert.
gemini-3.8-flash-medium· 2026-10-13