我正在开发一个嵌入式Linux(现在快结束了)。我遇到的问题是系统因为频繁断电而变得不稳定,无法启动。它甚至无法运行fsck
。
该系统只有一个 XFCE,其中自动加载了一个固定的 Qt App 来显示一些图表。
我的问题是商业嵌入式 Linux 发行版(如 Wifi AP 的管理 Linux,...)如何避免这个问题?
你有什么主意吗?
答案1
大多数人会做以下两件事之一:
它们要么以只读方式运行主文件系统,要么拥有一个单独的区域用于存储以读写方式挂载的数据,
或者
它们将主文件系统压缩在一个文件中,该文件在启动时扩展为 ramdisk。
这意味着无论发生什么情况,文件系统始终处于相同的状态。只需要担心较小的配置存储区域,这样就可以拥有一个不必太担心断电的文件系统。
另一个技巧是禁用存储分区上的所有缓存,以便所有更改立即写入磁盘。
答案2
是的,一般来说,他们不会。
说到底,每个人可能都遇到过嵌入式设备故障的情况——无论是网络设备、IP 设备还是其他设备。
简而言之,尽可能好地构建您的应用程序 - 作为开发人员,这就是您所能做的一切。
尽量让您的应用程序尽可能强大 - 将错误检查置于最高/每个级别。例如,如果您有一个需要的配置文件,而您的应用程序没有它就无法运行,那么如果找不到它,请发出蜂鸣声/反馈 - 让用户知道。
下一个级别实际上来自您的硬件制造商 - 冗余或稳健性是关键,再次确保硬件供应商遵循上述想法,例如错误检查/详细反馈,以便如果出现故障,人们知道为什么/发生了什么。
我没有讲得那么详细,但我希望这能有所帮助并为您指明正确的方向。