有时,某些程序(通常是 Firefox)会开始占用处理器近 100% 的 CPU 时间,从而使处理器升温并缩短笔记本电脑的电池寿命。由于它还没有严重到影响性能,所以我通常不会注意到一段时间,所以我想改变这一点:
有没有一个实用程序可以监控进程 CPU 使用情况并弹出警报如果某个进程长时间(例如超过 30 秒)使用大量 cpu 时间?我可能可以用 ps 或 top、sed 和一堆管道来组装一些东西,但我希望有一种更直接的方法来做到这一点。
编辑:再想一想,我真正追求的是电量使用。因此,任何专门用于估算功耗的仪器都特别令人感兴趣。
我使用的是 OS X 10.8,但也欢迎特定于 Linux 的解决方案。
答案1
用 Zenity 打造您自己的
我不知道有任何现成的工具可以为您执行此操作。我会编写一个脚本来观察情况,然后使用类似的东西zenity
当情况出现时弹出对话框。
$ zenity --info --text="This is an information box."
开始使用它非常容易,并且如果需要的话,将这些对话框嵌入到 crons 和脚本中也非常容易。
康基
我个人使用conky
密切关注我的系统上正在发生的事情。它具有高度可配置性,并且可以与您的背景相结合,以便始终轻松访问。
把它们放在一起?
作为解决问题的一种新颖方法,您可以设置conky
监视特定情况,例如某个进程消耗了所有 CPU 资源,然后弹出一个对话框提醒您注意问题。我发现这个解决方案显示当电池电量低于某个阈值时会显示一个警告对话框。这个解决方案在一篇标题为:使用 conky 进行低电量警告。
BATTERY: ${color}${battery BAT0}
${if_match ${battery_percent BAT0} <= 10}
${if_match "${acpiacadapter}" == "off-line"}
${exec zenity --warning --text "Low Battery"}
${endif}
${endif}