操作系统学习
第二周任务
上机任务:
1、CPU的基本组成和基本功能是什么?
- CPU由三个方面组成:
- 控制器:主要由程序计数器、指令寄存器、指令译码器、时序部件、操作控制部件和中断机构组成。控制器是微型计算机的指挥和控制中心。
- 运算器:运算器也即累加器和算术/逻辑部件。CPU内部有一个ALU部件,即算术/ 逻辑部件。对数据的实际处理是在 ALU中进行的,ALU以加法器为核心,加上输入/输出 选择逻辑,通过对输入的选择控制实现多种功能,通过输出控制逻辑可控制直接传输和移位。ALU的功能是执行算术运算和逻辑运算。由于大量的数据处理都是数值计算和逻辑判断,所以计算机的性能在很大程度上依赖于ALU的功能。累加器也是一种专用寄存器, 它用于存放供加法器使用的一个操作数或运算结果。
- 寄存器:指令和数据在CPU内的“临时”存储部件称为寄存器,寄存器是可供编程使用的寄存器。它包括:
- 数据寄存器;
- 地址寄存器;
- 计数器。
- CPU基本功能:
- 数据运算
- 中央处理器核心的功能就是数据处理,负责对数据进行各种算法运算和逻辑运算,产生有用的结果。形象的比喻就是CPU的功能就相当于我们大脑的功能,负责控制和处理问题。
- 程序控制
- 电脑程序是由一个个的指令序列构成,而指令的顺序决定了程序运行的结果,所以电脑要严格按程序规定的顺序进行工作,才能得到我们想要的结果,而CPU则需要保证我们电脑按照一定的顺序来执行程序。
- 操作控制
- 电脑的指令通常是由若干个基本操作组成,CPU通过管理和产生这些基本操作的控制信号,并把信号送往相应的部件,从而控制这些部件按指令的要求进行操作。这就好像我们人的大脑要发送各种信号去控制人的感觉、思想等。
- 时间控制
- 在电脑中,各种操纵控制信号需要受到严格的时间控制,才能使电脑有条不紊的自动工作,哪些信号先发出、哪些后发出、信号持续多长时间、何时终止等,这些问题统统需要CPU来进行处理。
- 数据运算
2、描述处理器执行指令的过程
- 取指阶段(IF, Instruction Fetch)
- 在上一个指令周期时,程序计数器PC中记录的是下一条指令的内存地址。因此取指阶段CPU指令寄存器按照PC的地址从主存中取得一条指令,当前指令被取出后,PC更新到下一条指令的地址。
- 指令译码阶段(ID, Instruction Decode)
- 在指令分析阶段,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类别以及各种获取操作数的方法。
- 执行指令阶段(EXE, Execute)
- 通过对指令的译码,CPU已经知晓这条指令要如何执行,因此指令执行阶段就是通过操作控制器OC,按确定的时序向相应的部件发出微操作控制信号以对指令要求的特定操作进行具体实现。EXE阶段CPU的不同部分(如ALU、寄存器组等)被联合起来,以实现指令所需的操作。
- 访存取数阶段(MEM, Memory)
- 根据指令需要可能要访问内存,读取操作数。访存阶段根据指令地址码(如果有要求的话)得到操作数在主存中的地址,并从主存中读取该操作数用于运算。
- 写回阶段(WB, Write Back)
- 写回阶段把执行指令阶段的运行结果数据“写回”到某种存储形式:
1、写入CPU的内部寄存器中,以便被后续的指令快速地存取
2、写入内存
3、改变状态寄存器FR中标志位状态(如果需要改变的话),用来影响接下来程序的动作
写回阶段结束后,若无意外事件(如结果溢出等)或异常中断发生,计算机就接着从程序计数器PC中取得下一条指令地址,开始新一轮的循环。上述五个阶段在具体实现过程中会引入指令流水线来提高效率。
- 写回阶段把执行指令阶段的运行结果数据“写回”到某种存储形式:
3、描述中断处理过程
- 中断过程可以分为四步,分别是中断请求、中断响应、中断服务和中断返回:
- 当中断源要CPU为其服务时,先发出一个中断请求信号(中断请求),CPU不断查询中断请求标志,一旦查询到某个中断请求标志置位,则根据中断响应条件去响应请求(中断响应),从而转去执行中断服务程序。但转去中断程序时,要求先保护现场,将相关的在服务子程序可能改变的存储单元内容压入堆栈保护,然后再去执行中断服务程序主体(中断服务),最后中断返回,再返回前将原先的堆栈内容出栈,即恢复现场(中断返回)。
4、了解微处理器发展,并用文字或图标进行说明
微处理器是由一片或少数几片大规模集成电路组成的中央处理器。这些电路执行控制部件和算术逻辑部件的功能。
微处理器的发展至今可大致分为六代:
第一代:
第1阶段(1971——1973年)是4位和8位低档微处理器时代,通常称为第1代。
典型产品有:
1971年,Intel公司推出的4位微处理器Intel 4004。
1972年,Intel公司推出的8位微处理器Intel 8008。
第二代:
第2阶段(1974——1977年)是8位中高档微处理器时代,通常称为第2代。
典型产品有:
1973年,Intel公司推出的8位微处理器8080/8085。
1974年,Motorola公司推出的8位微处理器M6800。
1976年,Zilog公司推出的8位微处理器Z80。
第三代:
第3阶段(1978——1984年)是16位微处理器时代,通常称为第3代。
典型产品有:
1978年,Intel公司推出的16位微处理器8086。
1979年,Intel公司推出的16位微处理器8088。
1979年,Zilog公司推出的16位微处理器Z8000。
1979年,Motorola公司推出的16位微处理器M68000。
1982年,Intel公司推出的16位微处理器80286。
第四代:
第4阶段(1985——1992年)是32位微处理器时代,通常称为第4代。
典型产品有:
1985年,Intel公司推出的32位微处理器80386。
1989年,Intel公司推出的32位微处理器芯片80386SX。
第五代:
第5阶段(1993——2005年)是奔腾(pentium)系列微处理器时代,通常称为第5代。
典型产品有:
1993年,Intel公司推出的Pentium(奔腾)586处理器。
1995年,Intel公司推出的Pentium Por(高能奔腾)处理器。
1997年,Intel公司推出的Pentium MMX(多能奔腾)处理器。
2000年,Intel公司推出的Pentium 4处理器。
第六代:
第6阶段(2005年——至今)是酷睿(core)系列微处理器时代,通常称为第6代。
典型产品有:
2006年,Intel推出的新一代基于Core微架构的酷睿2(Core 2 Duo)处理器。
2008年,Intel推出的基于Nehalem微架构的酷睿i7(Core i7)45nm原生四核处理器。
2010年,Intel推出的隶属于第二代智能酷睿家族的第二代Core i3/i5/i7处理器。
5、了解多处理器系统和多核系统的发展,并用文字或图表进行说明
- 多处理器系统的目的是获得大量联合计算能力,其实现方式是将多个CPU连成单个系统,并可以根据连接和共享的方式不同,将其分为并行计算机、多计算机或多处理器。实现这样的功能需要专门的操作系统,通常采用搭配通信、连接和一致性等专门功能的服务器操作系统的变体。我认为这就类似于,将多个单核的CPU或计算机通过一个集中的操作系统进行统一的调度与使用,使其之间得以相互配合工作。
- 多核处理器系统的概念主要源于多核处理器的出现,即在一枚处理器中集成两个或多个完整的计算引擎(内核),并且核的数量也在不断地与时俱进,得益于先前对多处理器系统的研究,可以较为轻松地将多处理器系统的知识运用到多核处理器系统中,存在于多核处理器系统的难点在于有能够运行所有这些计算能力的应用。