сериализация и синхронизация данных на встроенном устройстве - PullRequest
0 голосов
/ 23 июня 2009

В моем встроенном проекте мне нужно перемещать (синхронизировать) данные между двумя системами. Структура данных сложна и, следовательно, нужна некоторая быстрая утилита. Думаю, мне следует преобразовать мои данные в формат XML и синхронизировать их с помощью rsync?

Boost не будет на нашей встроенной платформе.

Может ли кто-нибудь предложить легкую, но эффективную библиотеку для преобразования моих данных в XML?

какой-то поиск подсказывает

libs11n , Sweet Persist , Буферы протокола Google

но не знаю, что подойдет для моих нужд.

Ответы [ 2 ]

4 голосов
/ 23 июня 2009

Вам также следует рассмотреть возможность использования чего-то более легкого, например YAML .

3 голосов
/ 23 июня 2009

Я использовал буферы протокола на встроенных платформах как способ передачи данных. Прекрасно работает и был выбран из-за низких накладных расходов, особенно по сравнению с XML.

Вы явно не указываете свое аппаратное / программное обеспечение, но я предполагаю, что вы используете что-то, что может запускать ядро ​​Linux, и что оно синхронизируется через соединение Ethernet. Теоретически, rsync может работать, но вы будете платить больше за накладные расходы (запуск демона rsync, запись в файл и т. д.), и задержка сильно пострадает. Когда вы говорите «синхронизировать структуру данных», я предполагаю, что это должно быть сделано относительно быстро, и что вам, вероятно, нужно внедрить систему сердечных сокращений, чтобы быть в курсе последних событий. Эти факторы снова исключают возможность записи в файл и rsync.

...