Мне нужно сгенерировать файл прошивки для встроенного устройства, и мне интересно, каковы лучшие практики форматирования подобных структур.
В этом файле должно быть несколько элементов: прошивка для MCU, некоторые части данных для записи во флэш-память устройства.
Очевидным способом является реализация этого формата «вручную»: какой-то заголовок в начале файла (заголовок должен содержать версию структуры данных), затем таблицу адресов, а затем данные. Именно так я и использовал в предыдущих проектах, и я очень устал от поддержания этой структуры, когда мне нужно что-то изменить.
Существует ли какой-либо существующий контейнер для хранения коллекций данных в двоичном файле? Было бы неплохо иметь библиотеку для многих платформ (по крайней мере, C ++ и Java), которые могут обрабатывать этот сбор данных. На ум приходит файл базы данных SQLite с одной или несколькими таблицами, но, похоже, он мне не нужен.
Есть ли лучшие практики для достижения того, что мне нужно?
ИМХО, самый распространенный формат — это ZIP или в терминах Java JAR. Это можно просматривать в проводнике Windows и читать на самых разных платформах.
Других решений пока нет …