Объединяет временные метки и информацию о состоянии относительно происхождения и изменений файла в адаптивном модуле долговременного хранения.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: c3acbafda95fПроисхождениеОткрытые вопросы (3)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Объединяет временные метки и информацию о состоянии относительно происхождения и изменений файла в адаптивном модуле долговременного хранения.
Структура ara::per::FileInfo служит контейнером метаданных для персистентных файлов и возвращается операцией GetFileInfo. Она предоставляет временные метки на основе UTC в наносекундах для создания [SWS_PER_00441], изменения [SWS_PER_00442] и доступа [SWS_PER_00443], а также сведения о статусе создания [SWS_PER_00444] и последней обработки [SWS_PER_00445]. Как пассивный тип данных, она подчиняется семантике значений приложения и не обеспечивает собственной синхронизации потоков.
Контекст
Структура ara::per::FileInfo служит в модуле per (Persistency) AUTOSAR Adaptive Platform структурированным носителем данных для административных метаданных файлов. При файловых операциях, выполняемых через интерфейсы заголовочного файла ara/per/file_storage.h, модуль Persistency отделяет административную информацию от фактического содержимого файлов. Структура предоставляется как результат операции GetFileInfo и выполняет функцию объекта передачи данных (Data Transfer Object) между уровнем постоянного хранения и вызывающим приложением.
По содержанию FileInfo объединяет две категории атрибутов: точные хронологические данные протоколирования и качественную информацию о состоянии касательно создания и обслуживания файла. К временным данным относятся время создания [SWS_PER_00441], время модификации [SWS_PER_00442] и время последнего доступа [SWS_PER_00443]. Эти метаданные дополняются описательными признаками состояния, которые определяют, как и кем файл был создан [SWS_PER_00444] и изменен в последний раз [SWS_PER_00445].
Жизненный цикл
Будучи пассивной структурой C++ (struct), FileInfo не имеет самостоятельной логики состояний и активного жизненного цикла во время выполнения. Инстанцирование обычно происходит внутри реализации Persistency во время выполнения GetFileInfo. При этом метаданные считываются из базовой файловой системы и переносятся в поля данных структуры. Передача приложению происходит, предположительно, в виде копии значения или в упакованном виде в типе результата, благодаря чему владение и ответственность за жизненный цикл полностью переходят к вызывающему компоненту. Вопрос Q-f5a9cf72c47f805e (открытый)
Время жизни экземпляра FileInfo привязано к области видимости, в которой приложение объявляет переменную; при выходе из области видимости структура автоматически освобождается. Поскольку FileInfo инкапсулирует чистые поля данных и не предоставляет внутренних механизмов синхронизации, структура не является потокобезопасной: при параллельном доступе нескольких потоков к одному и тому же экземпляру, вероятно, потребуется явная синхронизация со стороны приложения, если хотя бы один доступ выполняется на запись. Вопрос Q-139f5e8f58d3fe07 (открытый)
Путь использования
Типичный процесс использования FileInfo включает запрос информации о файле через интерфейс файлового хранилища и последующий анализ атрибутов приложением. Приложение инициирует запрос путем вызова GetFileInfo с указанием целевого файла. После успешного возврата все метаданные становятся доступны напрямую через открытые переменные-члены.
creationTime представляет время создания файла в наносекундах с 01.01.1970 UTC (эпоха Unix) [SWS_PER_00441].
modificationTime указывает время последнего изменения содержимого в том же формате наносекунд [SWS_PER_00442].
accessTime документирует время последнего доступа для чтения или записи в наносекундах с 1970-01-01 UTC [SWS_PER_00443].
В дополнение к временной привязке приложение проверяет атрибуты fileCreationState[SWS_PER_00444] и fileModificationState[SWS_PER_00445]. Эти перечислимые значения указывают, при каких условиях и кем файл был создан или модифицирован. Это позволяет приложению проверить, был ли файл создан штатно в продуктивной эксплуатации, в ходе процесса восстановления или с помощью процедуры обновления, прежде чем выполнять дальнейшие операции чтения или записи содержимого файла.
Данное руководство по классу создано ИИ-ассистентом на основе спецификации AUTOSAR для выпуска R25-11.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал