如何获取Linux内核模块中的电池电量?
我试图在Linux内核模块中获取电池电量(模块通过modprobe插入)。理想情况下,我希望使用内核API调用来获取电池信息。我在网上搜索了解决方案,我还探索了Linux内核源代码和Michael Meskes的程序源代码“acpi”的想法。
这些是我认为我可以使用的一些技术:
读取并解析
/proc/acpi/battery/BAT0/state
和/proc/acpi/battery/BAT0/info
从/sys/class/power_supply/BAT0/charge_now
和charge_full
读取,不涉及解析。
如果我能弄清楚如何公开接口,我可以尝试使用来自Linux内核源驱动程序/ acpi / battery.c的调用。我可能需要方法acpi_battery_get_status
和acpi_battery_get_info
我也注意到在drivers / acpi / sbs.c里面有一个方法acpi_battery_read
,就在它上面有一条评论说“Driver Interface”。如果有人知道如何使用它,这可能是另一种方式。
我认为在内核模块中读取文件可能是一个坏主意,但我不确定这些文件如何映射到内核函数调用,所以它可能没问题。
那么,你们能给我一些建议/建议吗?
编辑:我在下面的答案中包含了我的解决方案。
没有找到相关结果
已邀请:
3 个回复
氮顺
期差骇蓟
茶鬼失形