为什么CPU占用率不是一直百分之百?

按理说CPU运行什么东西应该全员出动,处理完后处于待命状态才对啊,但是为什么我发现CPU也跟内存一样貌似有它的运算空间一样,还有着百分点的显示 要是能看明白我问题的人请回答我,见笑了!

楼上几位已经比较形象的描述了,简而言之就是一般情况下这些软件都不足以让CPU百分百工作。
我就稍微进一步说的深一点,来告诉你为什么CPU大部分时候不是全员出动的。你估计是以为CPU的占用率要么在工作的时候是100%,要么在空闲的时候是0%,不应该在1~99%波动对吧?呵呵,在最早的单任务批处理系统上的确是差不多这样的。
但是如今的操作系统,比如Windows,已经是多任务分时操作系统了。什么意思呢?这种系统会把CPU的工作时间分成很多个小片段,比如每0.0001秒一片,然后把这些片段分给多个程序来使用,让这些程序轮换使用CPU,因为片段非常短,轮换的时间非常快,所以你感觉起来就是CPU在同时进行多个任务。这就是Windows这种多任务分时系统的原理。
然后再看在Windows上运行的各种程序,这些程序大部分并不是时刻在运行的,而是有很多“暂停”的休眠或者阻塞的状态。什么意思,举个例子,假如一个程序需要等待你的输入,那么在你输入的这几秒钟之内,这个程序是被阻塞的,暂时停止了运行,也不会耗费CPU,Window会把原本分给这个程序的时间片段回收了给其它的程序用,直到这个程序获得了它想要的输入,才会继续得到CPU的时间片段继续运行。另外还有比如一些定时程序,每隔一段时间运行一下,做完了事情自己会休眠了等待下一个时间点到来再重新运行,当它门休眠了之后Windows也会把它没用完的时间片段回收。而我们平常系统中有大量的程序都会遇到这种阻塞的情况(在你看来他们都是运行着的,但是实际上它们会经常短暂的运行然后阻塞),于是Windows回收到了大量的时间片段,这些空闲的CPU时间片段,就是你的CPU可用资源,而你的CPU占用率就等于
100%-空闲的CPU片段占总的CPU片段的百分比。因此就会有1~99%内的各种波动了。
说了这么多不知道你理解了没有,如果想进一步深钻研的话可以考虑找本操作系统原理的书来看看。
答案完全原创,写了这么多不给分说不过去啊,呵呵。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-09-10
如果CPU占用率一直百分之百,那就百分之百可以肯定你的电脑中病毒了
打个比方,你小侄子问你一道题,你瞟一眼就做出来了,而不用铺上草纸全力演算,电脑也一样,平时我们要它做的事它瞟一眼就做出来了
相似回答
大家正在搜