系统之家 - 系统光盘下载网站!

当前位置:系统之家 > IT快讯 > 详细页面

微软前工程师揭秘:Windows 任务管理器 CPU 数据并非实时精准

编辑:alear 2026-04-21 13:42:21 来源于:ithome

  系统之家 4 月 21 日最新消息,微软前工程师戴夫 · 普卢默揭秘了任务管理器读取 CPU 使用率的原理。Windows 任务管理器显示的 CPU 使用率并非精准的实时算力数据,而是系统基于特定采样机制、调度逻辑与统计方式计算出的参考值。

微软前工程师揭秘:Windows 任务管理器

  据系统之家了解,普卢默是原版任务管理器的开发者,他在编程和工程层面将这款工具设计得极为简洁,以确保其不会无端占用电脑资源。不过,也有不少用户抱怨,任务管理器显示的数据有时会感觉不太准确。为此,他解释了为何查询 CPU 使用率的过程相当复杂、任务管理器是如何获取 CPU 利用率数值的,以及为何其显示结果可能与你在电脑上的实际观感存在偏差。

  普卢默表示:“测量 CPU 使用率听起来本该是计算机领域最简单的工作之一,我的意思是,CPU 要么处于忙碌状态,要么空闲,不是吗?它是硅基芯片,又不是即兴舞蹈。按理说,你只需要问 Windows 一句‘嘿,你忙到什么程度了?’,它就会告诉你 73%,然后大家就可以早早收工了。可事实完全不是这样。”

  “因为第一个让人头疼的问题就是:‘具体在忙什么?’是单个核心忙碌还是全部核心?是此刻正在忙碌,还是过去一两秒的平均使用率,或是界面恰好刷新时的状态?忙碌是发生在用户模式、内核模式,还是中断时间、延迟过程调用、空闲循环,又或是调度程序为了统计需要而专门设立的某个特殊统计项?一旦你开始思考这些问题,原本看似简单的速度表,就会变得像司法会计核算一样复杂。”

  戴夫介绍,任务管理器由计时器驱动,会每隔一段时间刷新一次,为你提供更新后的数值。这意味着,设备显示的是两次刷新间隔内电脑运行情况的统计结果,而非 CPU 实际使用率的实时视图。最简单的处理方式,本应是用 CPU 使用率除以两次刷新的间隔时长,但普卢默表示,这依赖于图形界面计时器的精准触发。他把这种方式比作“指望节拍器在颠簸土路的皮卡后斗上保持绝对稳定”。

  于是,他为任务管理器编写了这样的逻辑:获取每个进程自启动以来的总运行时间,即内核时间与用户时间之和;再用该数值减去上一次刷新时记录的该进程总时间,得出这段时间内的 CPU 占用量;最后用这个数值,除以两次刷新期间所有进程占用的 CPU 总时间。相比直接用 CPU 总占用量除以刷新间隔时长,这种方法听起来更复杂,却精准得多。

  然而,技术的进步让这一统计方式显得不够精准。由于该统计结果只是一个平均值,无法反映刷新间隔内某一时刻的实际工作状态。

  普卢默解释道:“现代 CPU 使用率更像是衡量高速公路的拥堵程度,而非实际行驶了多少里程。半满的高速公路上跑着法拉利,其通行效率远比挤满老式水泥搅拌车的拥堵高速要高得多。”

  “早年的任务管理器诞生于一个‘运行时间基本能代表完成工作量’的时代。但如今的处理器具备动态调频、睿频、温控降频、深度休眠等特性,运行时间与实际工作量的关联已经变得十分松散。所以当你觉得数值不太贴合实际时,并非工具出了故障,而是硬件不再简单到能用一个百分比就概括全部情况。”

  他还在屏幕上添加了一条备注:“如果我能说了算……CPU 使用率理应衡量实际完成的工作量,与理论上可完成的最大工作量之间的比值。”但由于他已经从微软退休,如今大概率无法再对 Windows 的设计方案施加影响。

  相关阅读

  《微软优化 Windows 11 文件资源管理器!提升运行流畅度

  《微软资深工程师揭秘 Windows 任务管理器极简设计哲学

  《微软 Win11 预览版升级了任务管理器!帮助用户了解 AI 任务对硬件的消耗

  以上是系统之家提供的最新资讯,感谢您的阅读,更多精彩内容请关注系统之家官网

标签 微软

发表评论

0

没有更多评论了

评论就这些咯,让大家也知道你的独特见解

立即评论

以上留言仅代表用户个人观点,不代表系统之家立场

扫码关注
扫码关注

抖音号
抖音号

官方交流群 软件收录