如何执行x86机器的硬件重置?

时间:2012-09-14 15:58:17

标签: linux assembly embedded x86 embedded-linux

我在Linux下在嵌入式x86微控制器上运行了一个应用程序。我希望能保证我可以从应用程序重置此CPU。

假设此时内核和操作系统可能已被泄露,因此调用“rebo​​ot”或“shutdown”将不起作用。

假设我没有看门狗定时器。即便如此,有时看守方定时器也会被守护进程调用(例如Busybox有一个)

是否有一些我可以编写的内联汇编会在x86上调用一些会重置CPU的寄存器?

1 个答案:

答案 0 :(得分:0)

保证从用户空间(即您的应用程序)发生这种情况的最简单方法是编写一个系统调用,执行arch / x86 / kernel / reboot.c中的任何一个函数,具体取决于情况。

但是,如果您最终走的是这条路线,您可能需要确保其他应用程序无法进行该系统调用!