在linux上,有没有一种不用读取proc/sys文件就可以获取电池信息(状态、已插电等)的方法?
我想获得关于linux上C语言电池的信息。我不想读取或解析任何文件!是否有任何到acpi/内核或任何其他模块的低级接口来获取我想要的信息 我已经在网上搜索过了,但每个问题的答案都是“parse/proc/foo/bar”。我真的不想这样做,因为我认为,低级接口的变化不会像文件那样快在linux上,有没有一种不用读取proc/sys文件就可以获取电池信息(状态、已插电等)的方法?,c,linux,kernel,battery,acpi,C,Linux,Kernel,Battery,Acpi,我想获得关于linux上C语言电池的信息。我不想读取或解析任何文件!是否有任何到acpi/内核或任何其他模块的低级接口来获取我想要的信息 我已经在网上搜索过了,但每个问题的答案都是“parse/proc/foo/bar”。我真的不想这样做,因为我认为,低级接口的变化不会像文件那样快 致以最诚挚的问候。您可能正在寻找UPower: 这是桌面环境和移动设备的共同需求,因此随着时间的推移,出现了许多解决方案。例如,其中一个最古老的是acpid,它现在已经非常过时了 虽然出于代码清晰的原因,我建议使用像
致以最诚挚的问候。您可能正在寻找UPower: 这是桌面环境和移动设备的共同需求,因此随着时间的推移,出现了许多解决方案。例如,其中一个最古老的是
acpid
,它现在已经非常过时了
虽然出于代码清晰的原因,我建议使用像UPower这样的轻量级抽象,但是
/proc
和(在某种程度上)/sys
中的文件被认为是Linux内核ABI的一部分,这意味着通常不赞成更改它们。磁盘上不存在/proc文件系统。相反,内核在内存中创建它。它们在被访问时由内核按需生成。因此,您的担心是无效的,/proc
文件将随着内核意识到更改而快速更改
查看有关/proc
文件系统的更多信息
在任何情况下,我都不相信有任何替代接口。如果你仔细想想,/proc是Unix上Userland的内核接口,特别是在Linux上,文件(或伪文件)是获取信息的正常方式。我不认为你应该搜索其他东西。也许最好在这里问一下:这对我来说很不错。另外,因为我不想在我的代码中包含其他C代码(例如您的upower解决方案)。所以,对我来说,这似乎是唯一简单的方法。谢谢!