查看: 186|回复: 1
收起左侧

[系统相关] 原作者摊牌:Windows任务管理器CPU占用全是假的 压根没做实时统计

[复制链接]
anyangmo
发表于 6 小时前 | 显示全部楼层 |阅读模式
原作者摊牌:Windows任务管理器CPU占用全是假的 压根没做实时统计

快科技4月21日消息,前微软工程师、Windows原版任务管理器开发者Dave Plummer在网上揭秘:Windows任务管理器显示的CPU占用率并非实时数据,而是定时刷新的周期平均值。

Plummer曾参与Windows ZIP文件支持和Windows NT开始菜单等标志性项目,他亲自打造了初版任务管理器。

为确保工具不浪费系统资源,他从编程和工程角度将这款工具设计得极为简洁,使其能在90年代的电脑上流畅运行。但正是这种极简设计,埋下了数值不准的伏笔。

Plummer表示,任务管理器的刷新由计时器驱动,每隔一段时间抓取一次数据,它展示的是两次刷新间隔内CPU的统计情况,并非真实时刻的负载。

如果单纯用CPU占用时间除以刷新间隔,结果会非常依赖图形用户界面计时器的精度。

他打了个比方:这就像把节拍器放在皮卡车后斗里,在坑洼土路上行驶,想让它保持绝对稳定基本不可能。

因此,他采用了更严谨的算法:让任务管理器记录每个进程自启动以来的总运行时间(内核时间+用户时间),用当前值减去上一次刷新时的总值,得到该进程在间隔期内的CPU消耗,再除以所有进程在该期间的总CPU耗时。

这套方法看起来十分复杂,但比直接做除法精准得多。

然而技术的演进让这套算法显得力不从心。现代CPU支持动态调频、睿频加速、温控降频和深度休眠,让CPU时间占用与实际完成工作量脱钩,单一百分比无法完整反映处理器工作状态。

Plummer指出,过去的CPU使用时间能很好反映工作量,但现在两者关联已非常松散。他认为理想的CPU使用率应该衡量实际完成工作量与理论最大可完成工作量的比值,但自己已从微软退休,无法推动改变。






评分

参与人数 1经验 +11 收起 理由
留得残荷听雨声 + 11 版区有你更精彩: )

查看全部评分

xndd
发表于 4 小时前 | 显示全部楼层
哈哈哈,那其他软件比如TaskExplore、procexp呢?
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2026-4-21 20:01 , Processed in 3.354334 second(s), 6 queries , Redis On.

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表