Есть ли способ получить информацию о батарее (статус, подключен и т. Д.), Не читая файл proc / sys на linux?

Я хочу получить информацию о батарее в C on linux. Я не хочу читать или разбирать любые файлы! Есть ли какой-либо низкоуровневый интерфейс для acpi / kernel ​​или любой другой модуль для получения информации, которую я хочу иметь?

Я уже искал в Интернете, но каждый вопрос приводит к ответу «parse / proc / foo / bar». Я действительно не хочу этого делать, потому что я думаю, что интерфейсы низкого уровня не будут меняться так же быстро, как файлы.

с уважением.

Возможно, вы ищете UPower: http://upower.freedesktop.org/

Это обычная потребность как для настольных компьютеров, так и для мобильных устройств, поэтому со временем было много решений. Например, один из самых старых был очень acpid , и теперь он довольно устарел.

Хотя я бы рекомендовал использовать легкую абстракцию, такую ​​как UPower для соображений прозрачности кода, файлы в /proc и (в некоторой степени) /sys считаются частью ядра Linux ABI, а это значит, что их изменение обычно не одобряется.

Файловая система / proc не существует на диске. Вместо этого kernel ​​создает его в памяти. Они генерируются по требованию kernelм при доступе. Таким образом, ваши проблемы недействительны – файлы /proc будут меняться так же быстро, как kernel ​​узнает об изменениях.

Проверьте это для получения дополнительной информации о файловой системе /proc .

В любом случае, я не верю, что есть альтернативный интерфейс.