如何检测我的系统在内核崩溃后是否自动重新启动?

如何检测我的系统在内核崩溃后是否自动重新启动?

我在嵌入式系统中使用 Linux,并希望将系统配置为内核崩溃后自动重新启动。然而,当系统恢复时,对我来说重要的是检测并记录内核崩溃的事实(而不是用户切换电源开关)。

我可以在恐慌时配置内核核心转储,并在重新启动时检查转储,但是如果文件系统不正常,这似乎可能会导致麻烦(另外我一直在尝试设置内核核心转储并且尚未成功)。

有什么建议么?

答案1

如果您为嵌入式硬件运行自定义内核并且有一些可用的硬件寄存器/位,您可以自定义内核崩溃代码以在该硬件位置设置一个标志,您将在重新启动后检查该标志。

如果不是的话,你唯一的机会就是配置你的内核核心转储工具。事实上,写入“实时”文件系统是有风险的,但您可以使用交换分区或小型专用分区。

相关内容