我试图在我的自制操作系统中添加一个关机功能,但我还没有真正拥有这样的API。 我想知道操作系统如何终止电源?
答案 0 :(得分:6)
关闭硬件的低级代码将取决于架构。对于使用BIOS关闭i386设备,INT 15h是最终由OS监视器使用的向量。
您应该考虑采用APM和ACPI方案进行电源管理,通过电源管理正常关闭外设,以及多处理器系统中的断电注意事项。
我希望其他人会给出答案,让您检查Linux APM和ACPI代码。在i386内核中,arch / x86 / kernel / apm_32.c中有一个非常简单的apm_power_off()函数,可以关闭INT 15。