1)CPU时间片
CPU在某个时间点只能处理一个任务,但当前的操作系统基本都支持多任务的,那么计算机在CPU只有一个的情况下是怎么完成多任务处理的呢?想必解决这个问题的西方人到访过古老的东方,见识到了古代中国救济灾民的手段,即赈灾时会给每个灾民分一点点粮食,不至于饿死但又不能吃饱。想必西方人一定是基于此思路,想出了CPU时间片的方法。当然,这只是个玩笑,不过也有这个可能,谁知道呢。
CPU会给每个进程被分配一个时间片,进程得到这个时间片之后才可以运行,使各个程序从表面上看是同时进行的。在时间片结束时即使进程还在运行,CPU的使用权也将会被收回,该进程将会被中断挂起等待下一个时间片。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换,这样就可以避免CPU资源的浪费。
因此可以得知,在我们使用的计算机中启动的多个程序,从宏观上看是同时运行的,从微观上看由于CPU一次只能处理一个进程,所有它们是轮流执行的,只不过切换速度太快,我们感觉不到罢了,因此CPU的核数越多计算机的处理效率越高。
|