2017-07-18 SH
近日,因为Bug多而被人戏称为Bug 10的Win10操作系统又爆出了新的问题。
近日一位谷歌工程师Bruce Dawson的电脑在Win 10系统下进行编译工作时出现了严重的卡顿现象。这位程序员的电脑配备了Inter 24核心48线程、64GB内存以及高速SSD等超强配置,却在进行程序编译时卡得连鼠标都动不了。
程序员出身的他立即调出系统管理器查看,却发现无论 CPU 还是内存都并没有占满,很少有超过 50% 的。
通过查看 Windows 系统事件追踪工具 ETW,结果发现 Windows 10 在进程销毁方面的确存在一个严重的问题。即当程序/进程需要关闭时,Windows 10 会通过某一单独的线程进行处理。也就是说即便你有几十个处理器核心,Windows 10 在关闭进程时也只会调用其中的一个,即这时的 Windows 10 其实是单线程运行的。
一般情况下这也没什么,但对于程序员来说,频繁启动、关闭大量进程是最常见的操作,于是悲剧就发生了。而且更糟糕的是,CPU 核心数越多,关闭开启的动作越频繁,卡顿就越严重。该工程师的遭遇就是,CPU 高达 48 线程,但销毁进程时只有 1 个线程在拼命工作,另外 47 个都在围观。不知道隔壁的联发科看到此情此景,究竟是作何感想。
经过验证,这一Bug只在Windows 10上存在,老版本的Windows 7反而没有问题。
那么广大的Win 7用户,你们还打算升级系统吗?