Инкапсулирует значения свежести в виде вектора байтов вместе с их точной битовой длиной для управления Freshness Value Management.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: c7cff93a9b82ПроисхождениеОткрытые вопросы (3)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Инкапсулирует значения свежести в виде вектора байтов вместе с их точной битовой длиной для управления Freshness Value Management.
Структура apext::tsync::FVContainer служит в модуле tsync контейнером данных для передачи и возврата значений свежести между приложениями и управлением Freshness Value Management. Она инкапсулирует само значение свежести в виде вектора байтов в value, содержащего полные или усеченные значения в зависимости от направления [SWS_TS_14196], а также его точную битовую длину в атрибуте length[SWS_TS_14195]. Параллельный доступ требует внешней координации со стороны вызывающего кода.
Контекст
Структура apext::tsync::FVContainer функционирует внутри функционального кластера tsync платформы AUTOSAR Adaptive Platform как выделенный контейнер данных для значений свежести (Freshness Values). Подключаемая через заголовочный файл apext/tsync/fvm.h, она служит стандартизированным интерфейсом при взаимодействии с Freshness Value Management (FVM). Ее основная обязанность заключается в предоставлении самого криптографического значения свежести вместе с его точной длиной. Для этого контейнер инкапсулирует битовую длину в элементе данных length[SWS_TS_14195], а сами полезные данные — в векторе байтов value[SWS_TS_14196]. Таким образом, структура действует как мост между вызывающими приложениями или уровнями протоколов и процедурами вычисления FVM.
Жизненный цикл
Как легковесная структура данных (struct), apext::tsync::FVContainer подчиняется стандартной семантике значений C++. Создание обычно происходит локально в стеке вызывающего объекта или динамически в рамках формирования вышестоящего сообщения. При инстанцировании структура берет на себя ответственность за жизненный цикл содержащегося вектора value типа ara::core::Vector<std::uint8_t>[SWS_TS_14196]. Если структура при передаче в интерфейсы передается по значению или по ссылке, принцип RAII вектора обеспечивает детерминированное освобождение выделенной памяти при уничтожении контейнера. Вопрос Q-416ceca84f9cfdaf (открытый) Поскольку apext::tsync::FVContainer не предоставляет внутренних механизмов синхронизации, потокобезопасная координация при одновременном доступе на чтение и запись полностью возлагается на вызывающий программный компонент.
Путь использования
При практическом использовании apext::tsync::FVContainer проходит через два основных направления в рамках интерфейсного взаимодействия:
Входной параметр: при верификации или обработке входящих сообщений контейнер заполняется приложением и передается методам FVM. В зависимости от контекста поле value принимает либо полные значения свежести, либо усеченные значения (Truncated Values) [SWS_TS_14196]. Параллельно с этим поле length определяет точное количество битов содержащегося значения [SWS_TS_14195]. Это особенно важно в тех случаях, когда валидность значения свежести не заканчивается на целочисленной границе байта.
Возвращаемое значение: при генерации свежих значений с помощью FVM соответствующий метод возвращает экземпляр apext::tsync::FVContainer. Вызывающий контекст затем считывает через length[SWS_TS_14195] определенную FVM эффективную длину в битах и извлекает соответствующие байты из value[SWS_TS_14196] для внедрения их в последующие протоколы безопасности.
Интерпретация: вероятно, указанное в length количество битов всегда соответствует округленному в большую сторону размеру вектора в байтах value, так что не полностью используемые остаточные биты в последнем байте вектора могут быть точно разграничены с помощью указания длины. Вопрос Q-e8feae8a93c14191 (открытый)
Данное руководство было сгенерировано системой ИИ на основе требований спецификации AUTOSAR Release R25-11.
UML-диаграмма классов
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
Vector of bytes containing the freshness value. Depending on whether the container is used as an input or returning value by the method it will contain either the full freshness or truncated values.
Vector of bytes containing the freshness value. Depending on whether the container is used as an input or returning value by the method it will contain either the full freshness or truncated values.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал