大概从什么时候起,电脑卡死后,世超第一时间想到的已经不是调出任务管理器了。

那个 Ctrl + Alt + Del 的组合早已吃灰,现在卡了还不如直接重启电脑呢。

没别的,就是这玩意儿要么是卡的时候死活调不出来,要么是调出来反而更卡了。。。


而且要是接触电脑晚一些的差友们,可能也压根儿没这种靠任务管理器解决卡顿的习惯。

因为现在的它早已不是当初的模样,复杂的界面,繁琐的操作,加了太多让大伙儿望而却步的门槛儿了。

这也不光是咱用户的看法,连 Windows 早期任务管理器的开发者也出来专门吐槽过。

他说现在任务管理器体积约 4MB,而他最初编写的版本仅有 80KB。那种精益求精的美感好像慢慢远去了。。。


那这东西到底是怎么膨胀 50 倍,还变得如此陌生的呢?

回到当初开发初代任务管理器的时候,作者为了省资源和提速,找了各种办法。

C 语言的运行库太臃肿,那就直接抛弃从头手搓;硬件性能太拉,性能图表的画面闪烁,那就只渲染屏幕上改变的像素;每次获取进程信息太麻烦,那就建个缓冲区,一次申请整个数据表。

除此之外,还有在资源枯竭时救急的低内存模式等等,可以说是“字节必争”。也正因如此,软件体积才被压缩到 80 KB 的大小,运行起来没啥压力。


但慢慢地,随着 Windows 系统一代代升级,功能需求也逐渐膨胀。

Windows NT 开始加资源监视,Win7 是经典的大合集,到了 Win8 的大改版,又加了开机启动项,应用历史,进程热力图等等。

至于后面的 Win10 和 Win11,也是继续加码 GPU,能效之类的新功能。


就这么一路加加加,这玩意儿也就膨胀了 50 多倍,从任务管理器长成了系统资源驾驶舱。

这种感觉就像是一个小而美的手机 APP,你用它本来就图个顺手轻便,但它啥都想要,就长成了这副大而全的样子。

这么一来,别说新用户点进来一脸懵逼,老用户要用以前的功能都不一定找得明白。。。



而且话说回来,就算你是老司机,现在的进程也不是你相关就能关掉的。

就比如在去年十月份,根据科技媒体 Windows Latest 的报道,在一次系统更新后,任务管理器会出现“幽灵进程”的 BUG。


具体就是你打开任务管理器,点右上角的“X”关闭后,虽然窗口消失了,但任务管理器还搁后台运行着呢。

你可能觉得也没啥,但只要再调出任务管理器就能发现,嘿,它新开了一个,细胞分裂了。就这么重复多次后,后台能堆积几十几百个相同的进程,占用内存和 CPU,给你人都卡麻了。


此时要想关闭进程,你得搁任务管理器里专门搜“Task Manager”结束,或者跑到命令行里,老老实实敲代码。直到 11 月的更新,这 BUG 才被正式修复。。。

从这儿也不难看出,给它加功能不是和拼积木一样简单的往上叠就行,功能越复杂,消耗的资源越多,出现 BUG 的几率就越大。


对于现在的任务管理器,需要实时监视的数据非常多,要想绘制精确的图表,就得调用 Windows 里各种不同的数据源和私有 API 接口。

你想啊,本来调出任务管理器的时候,系统已经水深火热没啥资源了,结果调出来还要再吃一部分,直接就是一个死循环,还怎么去关进程呢?


当然,除了任务管理器本身的设计有些太大了,现在的软件也确实不好管理。

差友们如果有印象的话,应该记得以前的软件很多都是一个应用一个进程,关掉就没了。但这也有个缺点,就是应用的一堆功能都跑在一起,一个页面或者模块崩了,那整个应用就挂了。

所以谷歌拿着“Chromium”就登场了,这东西本来是 Chrome 浏览器的内核,但它那多进程的方式太好用了,一个进程挂了,应用的其他部分还能正常运行,于是大伙儿纷纷转投到它的阵营。


但成也 Chromium,败也 Chromium。好用是好用,耐不住这玩意儿太臃肿了,启动慢就算了,还非常吃资源,你随便来几个并行就能干掉几个 G 的内存。

前些年还有个整活儿小软件挺火的,就是测一测你的电脑里到底有多少个本质浏览器,有的网友甚至测到了足足上百个,浏览器之家了属于是。。。

这样的后果就是只要你打开任务管理器,里面每个应用的进程下面都绑定着一堆认不出来的子进程。

此时要是电脑上哪个应用崩了,你说到底该选中哪个进程,又该干掉哪个子进程?


除此之外,还得提一下咱耳朵已经听出茧子的内存,这次倒不是聊涨价,而是它已经逐渐取代了 CPU,成为软件崩溃的最主要原因。

虽然导致应用卡死,系统阻滞的原因有很多,但其实表现症状都不太一样,就拿 CPU 来说,哪怕 100% 占用,用起来也就是慢得厉害,未必就真的卡死了。

而且此时鼠标还能动,Ctrl+Alt+Del 还能起效,再加上任务管理器优先级比较高,所以调出来临时处理一下不是问题。


但现在的 CPU 性能都挺够用的,崩溃往往出在内存上。

就像上面提到的浏览器内核一样,大伙儿有时候过于依赖现有的框架,啥都往里装,就会导致内存占用非常紧张。

而内存一旦被填满,它就会去硬盘那儿借空间,俗称虚拟内存。但硬盘的读写速度哪能和内存比啊,慢个几十倍也正常,所以大量的数据读写直接就给硬盘也卡住了。

这么一连串下来,可能 Ctrl+Alt+Del 还能召出那个蓝色界面,但任务管理器是别想动弹了。。。


所以总的来说,也不能光怪任务管理器太臃肿,它也是被迫跟着操作系统一起复杂化的。

咱也不是怀念以前那个硬件性能处处受限的时代,毕竟现在起码开发者不用紧巴着过日子了。

但硬件的进步本应该带来更快的响应和更好的体验,而不是现在这样滋生出一些不该有的懒惰,尤其是不该太过依赖现有的框架,把对系统资源的浪费当成一种理所当然。

更何况现在摩尔定律逐渐失效,硬件价格又节节攀升,咋滴也得给这群臃肿的软件来个瘦身,压榨点性能出来了。。。

撰文:风华

编辑:江江 & 面线

美编:焕妍

图片、资料来源

YouTube作者Dave's Garage,Windows Latest,微软官网,Bilibili作者天国の式神,PCWorld,部分图源网络