计算机系统组织结构,第4章 操作系统计算机组织结构.ppt

第4章 操作系统计算机组织结构

第4章 计算机组织结构 前言 操作系统提供了抽象以简化对硬件的使用,单线程是冯?诺依曼计算机的操作抽象,如果理解了一个冯?诺依曼计算机是如何执行程序的,就能理解进程背后的知识,对操作系统的深入理解,依赖于计算机硬件是如何组织的等基础知识,尤其是控制部件和设备操作方面。 4.1 冯?诺依曼体系结构 计算机体系结构是指:用来组成计算机的子部件(处理器、内存、设备)的种类和这些子部件相互连接的方式。 计算机不仅要能存储给定计算机需要的数字信息,而且也要存储数据计算程序执行的指令。 存储程序计算机使用了19世纪提花织布机的存储图案的思想,意味着可以使用一个织布机“自动的”产生具有许多不同图案的织物。 冯?诺依曼计算机基于的思想:机器有一组固定的电子部件,但可以由可变的程序来决定它的行为。 冯?诺依曼计算机包括的硬件部件: 中央处理单元CPU(包括算术逻辑运算单元ALU和控制单元构成) 主(或可执行的)存储单元 T/O设备 连接各部位的总线 控制单元对指令进行译码,ALU负责执行,主存储器存储可被CPU使用的程序和数据。设备是用来进行输入、输出、通信和存储的。总线连接CPU、主存储器和设备。 4.2 中央处理单元 中央处理器CPU是计算机的大脑:它决定执行哪一条指令,然后将指令译码后并执行它。 CPU由一个ALU和一个控制单元组成,ALU完成计算的功能,而控制单元决定指令的执行次序,译码存储的程序指令,并让ALU执行。 算术逻辑单元 ALU执行了大量的二进制算术和逻辑操作。如加、减和逻辑与等。功能单元执行操作,寄存器保存操作数和结果。寄存器的内容可以从主存储器中加载,也可将寄存器的内容保存到主存储器中。 一般的算术逻辑运算单元 计算可通过一下方式进行:通过将二进制值加载到通用寄存器,并使用功能单元对寄存器上的操作数进行运算,最后将结果存入主存储器。 例如:如果一个C源程序包含如下代码: a=b+c; d=a-100; 为了完成这两个语句,CPU会执行下面的汇编语言指令: //Assembly language code for a=b+c; Load R3,b // copy the value of b from memory to R3 Load R4,c // copy the value of c from memory to R4 Add R3,R4 //sum placed in R3 Store R3,a // store the sum into memory cell a // Assembly language code for d=a-100 Load R4,=100 // load the value 100 into R4 Subtract R3, R4 //Difference place in R3 Store R3,d //store the difference in memory cell d 控制单元 控制单元可从可执行存储单元中取得一系列指令,并对它们进行译码. 控制单元包含了一个从主存中取指令的部件,一个译码指令的部件,以及可用来向ALU发信号的部件. 程序计数器(PC)寄存器中包含了控制部件将要加载的下条指令的地址. 指令寄存器(IR)包含当前指令的拷贝. 程序计数器,指令计数器和主存 硬件取址---执行周期(取址—执行算法在控制单元硬件中执行) pc=; IR=memory[pc]; haltFlag=CLEAR; while (haltFlag not SET during execution) { pc=pc+1; ececute(IR); IR=memory[pc]; }; 当机器启动时,PC会装入第一条要执行的指令的地址.这通常是由硬件引导过程完成的.即机器执行的第一条指令的地址是固定的;控制单元从主存中取出并装入第一条指令,然后开始正常的操作过程.在算法的描述中, haltFlag被用来做循环测试,以决定什么时间控制单元结束. 4.3 主存储器 主存接口由三个相应的寄存器组成:存储寄存器(MAR),存储数据寄存器(MDR),以及命令寄存器(Cmd).当有信息要写入主存时,数据放在MDR中,相关的主存地址放在MAR中,并将一个write命令放在Cmd中. 存储器组织结构 读操作: 1)将一个地址载入MAR内 2)将一个读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值