我有一个运行linux的自定义嵌入式主板,在驱动程序中监控它的24V电源。如果电源电压下降,电池电量会接管并且IRQ会关闭。我希望在电池运行30秒后重新启动,从而优雅地为电路板供电。
目前
emergency_sync();
kernel_restart(NULL);
是否正常工作,但只是在调用kernel_restart后大约半分钟后突然关闭系统。没有重新启动的通知,系统似乎正常运行,直到它发生。我可以发起一个" init 6"或者以一种公告方式重新启动,该公告以一种不错的方式从内核空间有序地关闭所有内容(比如在命令行上运行重启)?
答案 0 :(得分:1)
我认为函数ctrl_alt_del()
可以满足您的需求。它向init
发送信号以启动正常的重启序列。