Я разрабатываю встроенный Linux (это почти закончено теперь). То, с чем я борюсь, является системой, идет нестабильный путем вырезания источника питания часто, и это больше не загружается. Это даже не работает fsck
.
Система просто имеет XFCE с фиксированным спокойным Приложением, автоматически загруженным для отображения некоторых диаграмм.
Мой вопрос - это, как коммерческие встроенные дистрибутивы Linux (как управление AP Wi-Fi Linux...) избегают этой проблемы?
У Вас есть какая-либо идея?
Большинство делает одну из двух вещей:
Они любое выполнение, основная файловая система, только для чтения и, имеет отдельную область для устройства хранения данных данных, которые являются смонтированным чтением-записью,
или
Им сжали основную файловую систему в файле, который расширен в электронный диск во время начальной загрузки.
Это означает, что файловая система всегда находится в том же состоянии что бы ни случилось. Существует только маленькая область хранения конфигурации для волнения о, и это может иметь файловую систему, которая не волнуется слишком много о потерях мощности.
Другая подсказка должна отключить все кэширование на разделе устройства хранения данных, таким образом, все изменения сразу записаны в диск.
Да, вообще говоря, они не делают.
Когда это сводится к нему, все, вероятно, привели встроенные устройства к сбою - является ли это сетевым механизмом, IP устройствами или другим.
Проще говоря, создайте свое приложение настолько лучше всего, как Вы можете - как разработчик, который является всем, что можно сделать.
Попытайтесь подать свою заявку, максимально устойчивую - помещенная проверка ошибок на самом высоком/каждом уровне. Так, например, если у Вас есть конфигурационный файл, который необходим, и Ваше приложение не может работать без, поместить звуковой сигнал/обратную связь, если это не найдено - сообщает пользователю.
Следующий уровень действительно прибывает из Вашего производителя оборудования - дублирование или устойчивость являются ключевыми, и снова, удостоверьтесь, что поставщик оборудования следует за вышеупомянутыми идеями, такими как проверка ошибок / подробная обратная связь так, чтобы, если что-то перестало работать, люди знали, почему/какой сделал это.
Я не вошел к так большому количеству детали, но я надеюсь, что это помогает и указывает на Вас в правильном направлении.