LINUX.ORG.RU
ФорумMobile

Определение текущих параметров батареи.

 , ,


0

1

Нужна помощь в понимании работы ядра и Андроида. У меня знаний не хватает.
Что я вроде бы понимаю правильно:

  1. Данные о состоянии батареи можно получит из файла /sys/class/power_supply/battery/uevent (это на моем аппарате, на других путь будет отличаться). Мой файл
  2. Например, возьмем два значения – циклы зарядки и остаточная емкость.
davinci:/ # cat /sys/class/power_supply/battery/uevent | grep -E 'CYCLE_COUNT|CHARGE_FULL'                                                           
POWER_SUPPLY_CYCLE_COUNT=119
POWER_SUPPLY_CHARGE_FULL=3741000
  1. Эти файлы (sysfs) создаются при загрузке и изменяются с какой-то периодичностью.
  2. После вайпа и формата всех разделов и перепрошивки в этом файле будут те же самые значения состояния батареи.

Вопрос вот в чем – откуда ядро при загрузке берет эти значения? Где они хранятся?

★★★★★

В контроллере батареи. Более того, эти файлы не существуют и каждое чтение транслируется в соответствующий обмен с контроллером батареи по шине I2C или какая там в данном девайсе на самом деле.

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 1)
Ответ на: комментарий от KivApple

В контроллере батареи.

Спасибо, я тоже так предположил, но «инженеры-ремонтники с 4pda» закидали меня гнилыми помидорами, утверждая, что эти данные не могут храниться в контроллере батареи.

athost ★★★★★ ()
Ответ на: комментарий от KivApple

Вот еще люди пишут, что это не контроллер именно в батарее, а спец.контроллер питания на маме тела считает такие параметры и сохраняет их в спец.разделе, который при обычной установке прошивки не форматируется.

athost ★★★★★ ()