Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个在嵌入式 x86 微控制器上运行在 Linux 下的应用程序。我想保证我可以从应用程序中重置这个 CPU。
假设此时内核和操作系统可能受到威胁,因此调用“reboot”或“shutdown”将不起作用。
假设我没有看门狗定时器。即使这样,有时看门狗定时器也会被守护进程调用(例如Busybox有一个)
是否有一些我可以编写的内联程序集会调用 x86 上的某个寄存器来重置 CPU?
保证这将在用户空间(即您的应用程序)发生的最简单方法是编写一个系统调用,根据情况的严重性执行 arch/x86/kernel/reboot.c 中的任何一个函数。
但是,如果您最终走这条路,您可能需要确保其他应用程序无法进行该系统调用!