Proporciona metadatos e información de integridad para datos masivos de diagnóstico en la comunicación SOVD.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 7c22095f2f08ProcedenciaPreguntas abiertas (3)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
Proporciona metadatos e información de integridad para datos masivos de diagnóstico en la comunicación SOVD.
La estructura ara::diag::SovdBulkData::BulkDataMetaDataDescriptor sirve como objeto de transferencia de datos para la descripción de datos masivos para la comunicación de diagnóstico SOVD en AUTOSAR Adaptive ([SWS_DM_01830]). Agrupa información de identificación, localización y tipo como id, file_name y mimetype, así como sumas de comprobación e indicaciones opcionales de tamaño (SWS Diagnostics §8.53.2 «Struct: BulkDataMetaDataDescriptor»). La instancia es rellenada con metadatos por la aplicación de diagnóstico proveedora y se entrega al subsistema SOVD. Al ser una estructura de C++ pasiva sin sincronización propia, los accesos de escritura simultáneos deben asegurarse externamente por la aplicación que realiza la llamada.
Contexto
La estructura de datos ara::diag::SovdBulkData::BulkDataMetaDataDescriptor forma parte del módulo diag de la AUTOSAR Adaptive Platform y se proporciona a través de la cabecera #include "ara/diag/sovd_bulk_data.h" ([SWS_DM_01830]). Define el descriptor de metadatos para datos masivos de diagnóstico (Bulk Data) que se transmiten en el marco de SOVD (Service-Oriented Vehicle Diagnostics) (SWS Diagnostics §8.53.2 «Struct: BulkDataMetaDataDescriptor»). En escenarios de diagnóstico como la lectura de archivos de registro extensos, búferes de traza o paquetes de actualización, los clientes de diagnóstico requieren información complementaria estructurada además del flujo de datos binario. La estructura agrupa estos metadatos para su identificación inequívoca, interpretación y verificación de integridad.
En la interacción entre la aplicación de diagnóstico, el sistema de tiempo de ejecución ara::diag y los comprobadores de diagnóstico externos, la estructura actúa como un objeto de transferencia de datos (DTO) pasivo. El campo id establece el identificador unívoco de los datos masivos ([SWS_DM_01831]). Para la denominación se dispone de file_name para el nombre de archivo ([SWS_DM_01836]), name para la designación lógica ([SWS_DM_01833]) y translation_id para fines de localización ([SWS_DM_01834]). El tipo de medio se declara mediante mimetype ([SWS_DM_01832]). De garantizar la integridad se encargan hash ([SWS_DM_01839]) y hash_algorithm ([SWS_DM_01840]), mientras que creation_date ([SWS_DM_01837]) y last_modified ([SWS_DM_01838]) definen la clasificación temporal (SWS Diagnostics §8.53.2.1 «Public Member Variables»).
Ciclo de vida
Como estructura de C++, BulkDataMetaDataDescriptor cuenta con atributos puramente públicos sin constructores de lógica de negocio propios ([SWS_DM_01830]). Interpretación: la estructura probablemente sea instanciada y rellenada principalmente por la aplicación de diagnóstico que proporciona los datos como un objeto de valor en la pila o el montón, para ser entregada posteriormente al subsistema SOVD. Pregunta Q-4a0434afda63d047 (abierta) La vida útil sigue las reglas habituales para objetos C++; los miembros contenidos de tipo ara::core::String así como el campo de tamaño opcional ara::core::Optional<std::uint64_t> se liberan de forma determinista al destruirse la instancia ([SWS_DM_01835]).
La estructura en sí no posee estados internos ni transiciones de estado. En entornos multihilo, la lectura concurrente de una instancia no es crítica; sin embargo, los accesos de escritura a las variables públicas deben sincronizarse externamente mediante la aplicación que realiza la llamada, ya que no existen mecanismos de protección integrados.
Ruta de uso
El orden de invocación típico para el uso del descriptor de metadatos en el marco de una transferencia masiva SOVD se divide en los siguientes pasos:
Instanciación: la aplicación de diagnóstico crea una instancia de BulkDataMetaDataDescriptor ([SWS_DM_01830]).
Rellenar tipo MIME y marcas de tiempo: el formato se establece mediante mimetype ([SWS_DM_01832]). Las indicaciones de fecha creation_date ([SWS_DM_01837]) y last_modified ([SWS_DM_01838]) probablemente se formateen en la práctica como cadenas de marcas de tiempo conformes con ISO-8601. Pregunta Q-fa352dc221e9452a (abierta)
Registrar valores de comprobación y tamaño en bytes: tras la generación de los datos útiles, la suma de comprobación se introduce en hash ([SWS_DM_01839]) y el algoritmo en hash_algorithm ([SWS_DM_01840]). Siempre que el número de bytes se conozca de antemano, se rellena size ([SWS_DM_01835]); si el campo opcional permanece vacío, esto probablemente señala un tamaño de archivo todavía variable en el momento de la provisión. Pregunta Q-03f717e53701c9c0 (abierta)
Entrega al subsistema SOVD: el descriptor inicializado se entrega a ara::diag para que los clientes SOVD externos puedan consultar los metadatos.
Dado que BulkDataMetaDataDescriptor es una estructura de datos pasiva, la estructura no devuelve códigos de error directamente. Los errores se manifiestan en el procesamiento posterior por parte de ara::diag o del cliente:
Discrepancia en la suma de comprobación: si el hash indicado en hash ([SWS_DM_01839]) no coincide con el contenido real o si hash_algorithm ([SWS_DM_01840]) es desconocido, la verificación en el cliente falla.
Tamaño en bytes discrepante: si el campo opcional size ([SWS_DM_01835]) está establecido y difiere del número de bytes realmente recibido, el receptor notifica un error de transferencia.
Tipo de medio no válido: un mimetype ([SWS_DM_01832]) erróneo o vacío da lugar a errores de interpretación en la herramienta cliente.
Falta de identificación obligatoria: si id ([SWS_DM_01831]) o file_name ([SWS_DM_01836]) no están asignados, el registro de datos no puede direccionarse de manera unívoca dentro del framework SOVD.
Esta guía se basa en la especificación AUTOSAR Adaptive Platform Release R25-11 y ha sido generada automáticamente.
gemini-3.8-flash-low· 2026-10-13 · Original en alemán