- CPU的工作原理:CPU的基本工作原理是执行存储的指令序列,即程序。程序的执行过程实际上是不断地取出指令、分析指令、执行指令的过程。
L8 CPU管理的直观想法
并发概念的引出
CPU的工作原理:CPU的基本工作原理是执行存储的指令序列,即程序。程序的执行过程实际上是不断地取出指令、分析指令、执行指令的过程。
由计算机组成原理的学习可知,计算机的存储器中存储了一系列的程序,只要设置好程序计数器PC的值,计算机就可以持续不断地执行下去,但如果CPU只是会线性地执行设置好的程序,会引发一个问题:
如下图所示,CPU执行运算指令的速度和执行I/O指令的速度之比约等于1000000:1,也就是说,如果CPU每执行1000000条计算指令就执行一条I/O指令,那么CPU的利用率为50%,但事实上,CPU每执行几十条指令,就有可能要执行一条I/O指令,这会导致CPU的利用率趋近于0,所以要引入多道程序交替执行的概念。
下面就是单道程序执行和多道程序交替执行的对比,可以看到,多道程序执行中CPU以及其余设备的利用率要高于单道程序执行。
★一个CPU上交替地执行多个程序:并发。
进程概念的引出
由上所述,通过多道程序交替执行,即并发,就可以提高CPU的利用率,那么如何实现在CPU中多道程序交替执行呢?答案是通过修改程序计数器PC的值,但仅仅是修改PC的值是不够的,如下所示:
PC值从程序1开始运行的50到52,然后切换到程序2,PC值变为200,此时程序1中寄存器ax=2,bx=1,如果PC变为200,然后程序2运行到PC=202,这时再切回程序1,那么此时ax=20,bx=10,如果在切换之前不先将程序1中的信息记录下来,那么程序1切换之前的ax=2,bx=1会被程序2的ax=20,bx=10覆盖掉,因此,需要有一个东西,能记录程序1切换之前的信息,即PCB(Process Control Block,进程控制块)。
★静态的程序是不需要考虑程序运行到某一时刻的信息的保存的,但运行中的程序却需要考虑保存程序运行到某一时刻的信息,因此运行的程序和静态的程序不一样,将运行的程序称为进程。