计算机操作系统ch02

上传人:今*** 文档编号:111727492 上传时间:2019-11-03 格式:PPT 页数:57 大小:846KB
返回 下载 相关 举报
计算机操作系统ch02_第1页
第1页 / 共57页
计算机操作系统ch02_第2页
第2页 / 共57页
计算机操作系统ch02_第3页
第3页 / 共57页
计算机操作系统ch02_第4页
第4页 / 共57页
计算机操作系统ch02_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《计算机操作系统ch02》由会员分享,可在线阅读,更多相关《计算机操作系统ch02(57页珍藏版)》请在金锄头文库上搜索。

1、计算机操作系统,Operating System of Computer,第二章 操作系统的硬件环境,主要内容: 个人计算机的组成 中央处理器(CPU) 存储系统 中断机制 时钟 知识点及要求: 学习本章的目的是了解OS的基础硬件环境。,2.1 概述,任何系统软件都是硬件功能的延伸 操作系统直接依赖于硬件条件 硬件环境以较分散的形式同各种管理相结合,简单的个人计算机中的部件,Monitor,Bus,2.2 中央处理器(CPU),具有特权级别的处理器状态,能在不同特权级运行各种特权指令 硬件机制使得OS可以和普通程序隔离实现保护和控制,CPU的构成与基本工作方式,处理器由运算器、控制器、一系列的

2、寄存器以及高速缓存构成 运算器实现指令中的算术和逻辑运算,是计算机计算的核心 控制器负责控制程序运行的流程,包括取指令、维护CPU状态、CPU与内存的交互等等,寄存器是指令在CPU内部作处理的过程中暂存数据、地址以及指令信息的存储设备; 在计算机的存储系统中它具有最快的访问速度。 高速缓存处于CPU和物理内存之间,一般由控制器中的内存管理单元(MMU:Memory Management Unit)管理,访问速度快于内存,低于寄存器。 利用程序局部性原理使得高速指令处理和低速内存访问得以匹配,从而提高CPU的效率。,处理器中的寄存器,寄存器提供了一定的存储能力 速度比主存快得多 造价高,容量一般

3、都很小 两类寄存器: 用户可见寄存器,高级语言编译器通过算法分配并使用之,以减少程序访问主存次数 控制和状态寄存器,用于控制处理器的操作 由OS的特权代码使用, 以控制其它程序的执行,用户可见寄存器,机器语言(汇编语言)直接引用 包括数据寄存器、地址寄存器等 数据寄存器(data register)又称通用寄存器 地址寄存器(address register)用于存储数据及指令的物理地址。如index register、segment pointer、stack pointer,控制和状态寄存器,用于控制处理器的操作 大部分对于用户是不可见的 一部分可以在某种特权模式(由OS使用)下访问 常见

4、的控制和状态寄存器: 程序计数器(PC:Program Counter),记录将要取出的指令的地址 指令寄存器(IR:Instruction Register),包含最近取出的指令 程序状态字(PSW:Program Status Word),记录处理器的运行模式信息等等,指令执行的基本过程(1),两个步骤: 先从存储器中每次读取一条指令 然后执行这条指令 一个单条指令处理过程称为一个指令周期 程序的执行是由不断取指和执行的指令周期组成,指令执行的基本过程(2),每个指令周期开始时,依据在程序计数器中的指令地址从存储器中取一条指令 在取指完成后根据指令类别自动将程序计数器的值变成下条指令的地址

5、 取到的指令放在指令寄存器(IR)中 处理器解释并执行所要求的动作,5类指令,访问存储器指令: 处理器和存储器间数据传送 I/O指令: 处理器和I/O设备间数据传送和命令发送 算术逻辑指令(数据处理指令): 执行数据算术和逻辑操作 控制转移指令: 指定一个新的指令的执行起点 处理器控制指令: 修改处理器状态,改变处理器工作方式,特权指令和非特权指令,特权指令:只能由操作系统使用的指令 使用多道程序设计技术的计算机指令系统必须要区分为特权指令和非特权指令 CPU如何知道当前运行的是操作系统还是一般应用软件?有赖于处理器状态,处理器的状态,根据运行程序对资源和机器指令的使用权限将处理器设置为不同状

6、态 多数系统将处理器工作状态划分为管态和目态 管态:操作系统管理程序运行的状态,较高的特权级别,又称为特权态(特态)、系统态 、核心态 目态:用户程序运行时的状态,较低的特权级别,又称为普通态(普态)、用户态 有些系统将处理器状态划分核心状态,管理状态和用户程序状态(目标状态)三种,实例:x86系列处理器,386、486、Pentium系列都支持4个处理器特权级别(特权环:R0、R1、R2和R3) 从R0到R3特权能力依次降低 R0相当于双状态系统的管态 R3相当于目态 R1和R2则介于两者之间,它们能够运行的指令集合具有包含关系:,四个级别运行不同类别的程序,R0-运行操作系统核心代码 R1

7、-运行关键设备驱动程序和I/O处理例程 R2-运行其它受保护共享代码,如语言系统运行环境 R3-运行各种用户程序 现有基于x86处理器的操作系统,如UNIX、Linux以及Windows系列大都只用了R0和R3两个特权级别,管态和目态的差别,处理器处于管态时: 全部指令(包括特权指令)可以执行 可使用所有资源 并具有改变处理器状态的能力 处理器处于目态时: 只有非特权指令能执行,程序状态字PSW,PSW (Program Status Word ): CPU的状态指明管态还是目态,用来说明当前在CPU上执行的是操作系统还是一般用户程序,从而决定其是否可以使用特权指令或拥有其它的特殊权力 条件码

8、反映指令执行后的结果特征 中断屏蔽码指出是否允许中断,例1:微处理器M68000的程序状态字,条件位: C: 进位标志位 V: 溢出标志位 Z: 结果为零标志位 N: 结果为负标志位 I0 I2:三位中断屏蔽位 S:CPU状态标志位,为1处于管态,为0处于目态 T:陷阱(Trap)中断指示位为1, 在下一条指令执行后引起自陷中断,CPU状态的转换,目态-管态 其转换的唯一途径是通过中断 管态-目态 可用设置PSW(修改程序状态字)可实现,2.3 存储系统,支持OS运行硬件环境的一个重要方面: 作业必须把它的程序和数据存放在内存中才能运行 多道程系统中,若干个程序和相关的数据要放入主存储器 操作

9、系统要管理、保护程序和数据,使它们不至于受到破坏 操作系统本身也要存放在主存储器中并运行,存储器的类型,两类存储器:读写型的存储器 只读型的存储器 读写型的存储器 可把数据存入其中任一地址单元,并可在以后的任何时候把数据读出,或者重新存入新的数据的一种存储器 常被称为随机访问存储器(RAM:Random Access Memory) RAM主要用作存放随机存取的程序的数据,只读型的存储器: 只能从其中读取数据,但不能随意用普通方法写入数据(写入数据只能用特殊方法) 称为只读存储器(ROM:Read-Only Memory) 变型:PROM和EPROM PROM:一种可编程只读存储器,使用特殊P

10、ROM写入器写入数据 EPROM:用特殊的紫外线光照射此芯片,以“擦去”信息,恢复原来状态,然后使用特殊EPROM写入器写入数据 在微机中,一些常驻内存的模块以微程序形式固化在ROM中 如:PC BIOS和CBASIC解释程序被固化于ROM中,存储器的层次结构,存储系统设计三个问题: 容量、速度和成本 容量:需求无止境 速度:能匹配处理器的速度 成本问题:成本和其它部件相比应在合适范围之内,容量、速度和成本 三个目标不可能同时达到最优,要作权衡 存取速度快,每比特价格高 容量大,每比特价格越低,同时存取速度也越慢 解决方案:采用层次化的存储体系结构 当沿着层次下降时 每比特的价格将下降,容量将

11、增大 速度将变慢,处理器的访问频率也将下降,层次化的存储体系结构,存储访问局部性原理,提高存储系统效能关键点:程序存储访问局部性原理 程序执行时,有很多的循环和子程序调用,一旦进入这样的程序段,就会重复存取相同的指令集合 对数据存取也有局部性,在较短的时间内,稳定地保持在一个存储器的局部区域 处理器主要和存储器的局部打交道 在经过一段时间以后,使用的代码和数据集合会改变,2.4 中断技术,中断对于操作系统的重要性 就像机器中的驱动齿轮一样 所以有人把操作系统称为是由 “中断驱动”或者 “(中断)事件驱动”,中断机制,中断机制是操作系统得以正常工作的最重要的手段 它使得OS可以捕获普通程序发出的

12、系统功能调用 及时处理设备的中断请求 防止用户程序中破坏性的活动等等,2.4.1 中断的概念,什么是中断? 指CPU对系统中或系统外发生异步事件的响应 异步事件是指无一定时序关系的随机发生事件 如外部设备完成数据传输,实时设备出现异常等 “中断”名称源于: 当异步事件发生后,打断了对当前程序的执行 而转去处理该异步事件 直到处理完了后,再转回原程序中断点继续执行,从用户角度看中断,引入中断的目的,解决主机与外设的并行工作问题 提高可靠性 实现多机联系 实现实时控制 特点: 1) 中断是随机的 2) 中断是可恢复的 3) 中断是自动处理的,几个概念,中断源:引起中断发生的事件 中断寄存器:记录中

13、断 中断字:中断寄存器的内容 系统堆栈: 在内存开辟的一块区域,用于临时保存现场,中断类型,强迫性中断 正在运行的程序所不期望的,由于某种硬件故障或外部请求引起的 自愿性中断 用户在程序中有意识安排的中断,是由于用户在编制程序时因为要求操作系统提供服务,有意使用“访管”指令或系统调用,使中断发生,强迫性中断,输入/输出(I/O)中断:主要来自外部设备通道 程序性中断:运行程序中本身的中断 (如溢出,缺页中断,缺段中断,地址越界) 时钟中断 控制台中断 硬件故障,自愿性中断,执行I/O,创建进程,分配内存 信号量操作,发送/接收消息,微机中的中断,1.可屏蔽中断(I/O中断) 2.不可屏蔽中断(

14、机器内部故障、掉电中断) 3.程序错误中断(溢出、除法错等中断) 4.软件中断(Trap指令或中断指令INT),2.4.2 中断系统,中断系统的两大组成部分:硬件中断装置和软件中断处理程序 中断系统的硬件中断装置-中断系统的机制部分 负责捕获中断源发出的中断请求,以一定方式响应中断源,然后将处理器控制权交给特定的中断处理程序 软件中断处理程序-中断系统的策略部分 负责辨别中断类型并做出相应的操作,2.4.3 中断装置的基本功能,提供识别中断源的方法 提供查询中断状态的方法,通常使用一个寄存器存储有关中断的状态信息,称为中断字 提供中断现场保护的能力 提供中断处理程序寻址能力,找到恰当的中断处理

15、程序 具有预定义的系统控制栈和中断处理程序入口地址映射表(中断向量表)等数据结构和它们在主存中的位置,以辅助OS定制中断处理策略和中断调度机制,中断寄存器,中断寄存器: 有的计算机中,为了区分和不丢失中断信号 对应每个中断源分别用一固定触发器寄存中断信号 规定值为1时,表示有中断信号,为0时表示无 这些触发器的全体称为中断寄存器 每个触发器称为一个中断位 所以中断寄存器是由若干个中断位组成,发现中断,处理器如何发现中断信号? 处理器的控制部件中设一个能检测中断的机构 称为中断扫描机构 在每条指令执行周期的最后时刻扫描中断寄存器,询问是否有中断信号 若无中断信号,继续执行下一条指令 若有中断,中

16、断硬件就进行中断响应,2.4.4 中断响应,CPU如何响应中断, 两个问题: CPU何时响应中断? 通常在CPU执行了一条指令以后,更确切地,在指令周期最后时刻接受中断请求,或此时扫描中断寄存器 如何知道提出中断请求的设备或中断源? 因为只有知道中断源或中断设备,才能调用相应的中断处理程序,两种解决方法,用软件指令去查询各设备接口 这种方法比较费时 多数微型机对此问题的解决方法: 使用一种“向量中断”的硬件设施 “向量中断”: 当CPU接受某中断请求时,该设备接口给处理器发送具有唯一性的“中断向量”,以标识该设备 “中断向量”在各计算机上实现方法差别比较大,中断向量表,在有的机器中: 将主存最低位128个字保留作为中断向量表,每个中断向量占两个字 中断请求的设备接口为了标识自己,向处理器发送一个该设备在中断向量表中表目的编号,中断优先级,在一些机器中,中断优先级按中断类型划分: 以机器故障中断的优先级最高 程序中断和访问管理程序中断次之 外部中断更次之 输入输出的优先级最低,中断屏蔽,在CPU上运行的程序,有时由于种种原因,不希望其在执行过程中

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号