linux - systemd如何接收poweroff信号?
问题描述
Systemd logind 可以处理电源按钮以进行关机或睡眠。
https://superuser.com/questions/699905/change-behavior-of-linux-power-button/699925 (见 Sam Hanes 的回答)
短按电源键时,systemd会触发关机。
这是我的问题,我找不到触发关机的源代码。
这是systemd github:
https://github.com/systemd/systemd
我觉得BIOS应该首先知道用户按下了电源键,但是什么信号呢?systemd 也知道按下电源按钮的是什么样的转换?
我看到内核 acpi 驱动程序也有 button.c,谁实际处理按钮?acpi 按钮.c? systemd 还是 acpid?
https://github.com/torvalds/linux/tree/defb53a7c790f9e37a765de8a5d830ed15e2055b/drivers/acpi
解决方案
我觉得BIOS应该首先知道用户按下了电源键,但是什么信号呢?systemd 也知道按下电源按钮的是什么样的转换?<< 这取决于电源按钮的设计,它可以是超级 IO/EC 或 PCH 连接。