由于大多数笔记本电脑的电池寿命自然限制在几个小时内,有没有什么方法可以知道某个进程(例如 Microsoft Word 或 GNS.exe)使用了多少电池?例如进程 A 使用了这么多的电池……据我所知,Win32 API 中的 GDI32.dll 负责在屏幕上提供显示(图标、菜单等)。请帮助我,因为我想把这个主题作为我的案例研究。
答案1
没有直接process <-> battery life
关系,消耗电池寿命的事情(可能与进程有关)是进程运行的副作用。以下是我能想到的一些事情的列表。
- 中央处理器- CPU 会持续消耗系统中的电量。许多笔记本电脑会降低/关闭部分 CPU 以节省电池寿命,但如果某个程序的 CPU 百分比很高,处理器将永远无法进入低功耗状态
- 图形处理器- GPU 比 CPU 消耗更多,但大多数时候都不使用。如果程序有任何类型的 3D,它可能会增加电池消耗
- 硬盘访问- 如果您使用的是旋转磁盘 HDD,则需要能量才能使磁盘从空闲状态启动。如果某个程序对磁盘进行大量 I/O 操作或导致大量读取交换文件,则可能会耗尽您的电池。
- DVD 驱动器访问- DVD 驱动器与 HDD 一样有电机,消耗的能量也一样。它还配有一个需要运行的低功率激光器,这也会消耗少量的电能。
- 网卡- 网卡也需要一点电量才能运行,如果你不断下载,它也不能进入低功耗状态。(谢谢托马斯)
该列表可能缺少一些可能有帮助的内容,但正如我所说,它来自我的头脑。
对于测量方面,您可以使用Windows 事件跟踪以每个流程为基础监控我列表中的所有上述项目,并生成报告以了解每个资源的使用情况