当您单击笔记本电脑顶部面板中的电池图标时,将运行 Gnome-power-statistics。它显示电池历史,如充电和速率,以及统计数据,如放电曲线和放电精度。

您使用笔记本电脑的次数越多,它显示的数据就越多,电池电量耗尽时间的预测就越准确。
那么,gnome-power-statistics 从哪里获得原始历史数据?并且,如果它还保存任何数据,它会将其保存到哪里?
ade*_*lff 14
我刚刚在这里回答了一个类似的问题,但这里是摘要:
UPower 的历史信息存储在四个文件中/var/lib/upower/,你的会有所不同,但我的命名为:
./var/lib/upower/history-time-empty-DELL_KP4377-57-22096.dat
./var/lib/upower/history-time-full-DELL_KP4377-57-22096.dat
./var/lib/upower/history-charge-DELL_KP4377-57-22096.dat
./var/lib/upower/history-rate-DELL_KP4377-57-22096.dat
Run Code Online (Sandbox Code Playgroud)
它似乎是从/sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0我猜测的信息中编译这些数据的,而这些信息又是直接从 acpi 的当前电池状态信息中获取的/proc/acpi/battery/BAT0/info。
希望这可以帮助。
Ubuntu 使用upower(版本 10.4+)。使用的旧版本DeviceKit-power(9.10) 或HAL(<9.10)。
关于upower:
UPower 是用于枚举电源设备、侦听设备事件以及查询历史和统计信息的抽象。系统上的任何应用程序或服务都可以通过系统消息总线访问 org.freedesktop.UPower 服务。使用PolicyKit限制某些操作(例如挂起系统)。
UPower曾经被称为 DeviceKit-power。UPower 旨在使大量 HAL 变得多余,因为 HAL 已被正式弃用。
从最后一个链接:org.freedesktop.UPowerAPI 有一个org.freedesktop.UPower.Device,那个有一个......
GetStatistics ()
GetStatistics (in 's' type, out 'a(dd)' data)
Gets statistics for the power device that may be interesting to show
on a graph in the session.
type: The mode for the statistics. Valid types are charging or discharging.
data: The statistics data for the power device.
Each element contains the following members:
value: The value of the percentage point, usually in seconds
accuracy: The accuracy of the prediction in percent.
Run Code Online (Sandbox Code Playgroud)
提供图表中使用的数据。我认为当您重新启动/关闭时数据会被清除,因此它可能是实时的并且没有历史记录。