




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 操作系统的运行环境,讨论操作系统的主要运行环境 中央处理器(CPU) 存储系统 中断机制 作业与作业步,2.1 中央处理器(CPU),1.单处理器与多处理器系统 一个计算机系统只有一个处理器,称之为单处理器系统 如果有多个处理器称之为多处理器系统,处理器由运算器、控制器和以及高速缓存构成。,2.1 中央处理器(CPU),2.处理器中的寄存器,两类寄存器: 用户可见寄存器(工作寄存器):由处理器执行的机器语言来引用,通常对所有程序都是可用的,包括系统程序和用户程序。 控制和状态寄存器:用于控制处理器的操作,大部分对用户不可见, 由OS的特权代码使用。,2.1 中央处理器(CPU),(1)
2、用户可见寄存器,机器语言直接引用 包括数据寄存器、地址寄存器以及条件码寄存器 数据寄存器(data register)又称通用寄存器,主要用于各种算术逻辑指令和访存指令 地址寄存器(address register)用于存储数据及指令的物理地址、线性地址或者有效地址,用于某种特定方式的寻址。如索引寄存器(index register)、段寄存器(segment pointer)、栈指针(stack pointer) 条件码寄存器保存CPU操作结果的各种标记位,如算术运算产生的溢出、符号等等,(2)控制和状态寄存器,用于控制处理器的操作 对于用户不可见的 一部分可以在某种特权模式(由OS使用)下
3、访问常见的控制和状态寄存器: 程序计数器(PC:Program Counter),记录将要取出的指令的地址 指令寄存器(IR:Instruction Register),包含最近取出的指令 程序状态字(PSW:Program Status Word),记录处理器的运行模式信息等等,3.特权指令和非特权指令,特权指令:只能由操作系统使用的指令。特权指令的执行一般会引起处理器状态的切换。,使用多道程序设计技术的计算机指令系统必须要区分为特权指令和非特权指令(why?),4.处理器的状态,根据运行程序对资源和机器指令的使用权限将处理器设置为不同状态: 多数系统将处理器工作状态划分为管态和目态: 管态
4、:操作系统管理程序运行的状态,又称为特权态、系统态、管理态或核心态 目态:用户程序运行时的状态,又称为普通态或、用户态 有些系统将处理器状态划分核心状态,管理状态和用户程序状态(目标状态)三种,实例:x86系列处理器-1,386、486、Pentium系列都支持4个处理器特权级别(特权环:R0、R1、R2和R3) 从R0到R3特权能力依次降低 R0相当于双状态系统的管态 R3相当于目态 R1和R2则介于两者之间,它们能够运行的指令集合具有包含关系:,各个级别有保护性检查(地址校验、I/O限制),并分别运行不同级别的程序: R0-运行操作系统核心代码 R1-运行关键设备驱动程序和I/O处理例程
5、R2-运行其它受保护共享代码,如语言系统运行环境 R3-运行各种用户程序 现有基于x86处理器的操作系统,多数UNIX、Linux以及Windows系列大都只用了R0和R3两个特权级别,实例:x86系列处理器-2,管态和目态的比较:,处理器处于管态时 可以执行全部指令(包括特权指令) 可使用所有资源 具有改变处理器状态的能力 处理器处于目态时:只能执行非特权指令 特权级别不同,可运行指令集合也不同 特权级别越高,可以运行指令集合越大 高特权级别对应的可运行指令集合包含低特权级的,2.1 中央处理器(CPU),5.程序状态字PSW,程序状态字(PSW):用来指示处理器条件和状态的寄存器。不同的机
6、器系统,其PSW的格式和信息不尽相同。PSW提供的主要信息: CPU的工作状态码指明管态还是目态,用来说明当前在CPU上执行的是操作系统还是一般用户,从而决定其是否可以使用特权指令或拥有其它的特殊权力 条件码反映指令执行后的结果特征 中断屏蔽码指出是否允许中断,2.1 中央处理器(CPU),目态管态 :其转换的唯一途径是通过中断 管态目态 :可用通过设置PSW(修改程序状态字)对应位的值来实现,例:IBM370的PSW,钥:用于存储保护 EMWP:E表示机器控制方式,M表示机器校验方式,W表示 等待状态位,P表示处理器的工作状态。 ILC:上一次执行指令的长度。 CC:条件值。 系统屏蔽:指出
7、CPU是否接受特定通道的中断。 程序屏蔽:指示CPU是否接受某种程序性中断。,2.2 存储器系统,1.存储器的层次结构,2.存储访问局部性原理,提高存储系统效能关键点:程序存储访问局部性原理。 程序执行时,有很多的循环和子程序调用,一旦进入这样的程序段,就会重复存取相同的指令集合 对数据存取也有局部性,在较短的时间内,稳定地保持在一个存储器的局部区域,2.2 存储器系统,3.存储保护:硬件支持 对主存中的信息加以严格的保护,使操作系统及其它程序不被破坏。,地址寄存器(界限寄存器) 存储键,2.2 存储器系统,(1)界地址寄存器(界限寄存器),界地址寄存器被广泛使用的一种存储保护技术,实现方法:
8、 在CPU中设置一对下限寄存器和上限寄存器存放用户作业在主存中的下限和上限地址 也可将一个寄存器作为基址寄存器,另一寄存器作为限长寄存器(指示存储区长度) 每当CPU要访问主存,硬件自动将被访问的主存地址与界限寄存器的内容进行比较,以判断是否越界,如果未越界,则按此地址访问主存,否则将产生越界中断越界中断(存储保护中断),界地址寄存器 存储保护技术,(2)存储键,每个存储块有一个由二进位组成的存储保护键。 作业被允许进入主存时,OS分为它分配一个唯一的存储键号 分配给该作业各存储块存储键与作业的存储键号相同。 当OS挑选该作业运行时,将作业的存储键号存入程序状态字PSW的存储键(“钥匙”)域中
9、。 每当CPU访问主存时,都将该主存块的存储键与PSW中的“钥匙”进行比较,如果相匹配,则允许访问,否则,拒绝并报警。,2.3 中断技术,中断对于操作系统的重要性就像机器中的驱动齿轮一样,所以有人把操作系统称为是由 “中断驱动”或者 “(中断)事件驱动”。 中断协调系统对各种外部事件的响应和处理 中断是多道程序实现的必要条件,中断 指CPU对系统内或系统外发生异步事件的响应。异步事件是指无一定时序关系随机发生的事件 中断源(中断事件):引起中断发生的事件。 中断处理程序:处理中断的程序代码。,1.概念,中断类型:不同机器对中断类型的划分不完全相同。IBM-PC的中断分为: 可屏蔽中断(I/O中
10、断) 不可屏蔽中断(机器故障中断等) 程序错误中断(溢出、缺页和缺段中断等) 访管中断(Trap 指令和INT指令等, Trap 是在EFLAGES中陷入标志TF=1时每执行一条指令后便发生一次的异常,如断点、INTO溢出等)。,IBM370的中断,机器故障中断:如电源故障,机器电路检验错等 输入输出中断:输入输出设备和通道实现的数据传输 外部中断:时钟中断,操作员控制台中断,多机系统中其它机器的通信要求中断,各种外设或传感器发来的实时中断等 程序中断:程序中问题引起的中断,如错误地使用指令或数据、溢出等问题,存储保护等 访管中断:访管指令或陷阱指令(Trap指令)中的操作数规定了要求服务的类
11、型。每当CPU执行访管指令或陷阱指令时,即引起中断并调用操作系统相应的功能模块为其服务,访管中断是用户程序在运行中请求操作系统为其提供服务而执行一条“访管指令”所引起的中断,又称软件中断。访管中断是进程所期待的,它是自愿性的中断,又称自愿中断。,引入中断的目的: 解决主机与外设的并行工作问题 提高可靠性 实现多机联系 实现实时控制,特点: 中断是随机的 中断是可恢复的 中断是自动处理的,2.中断系统,中断系统=硬件中断装置+中断处理程序,中断系统的硬件中断装置中断系统的机制部分,包括:发现中断,响应中断的硬件。该装置负责捕获中断源发出的中断请求,以一定方式响应中断源,然后将处理器控制权交给特定
12、的中断处理程序。 软件中断处理程序中断系统的策略部分, 负责辨别中断类型并做出相应的操作。,中断装置的基本功能,提供识别中断源的方法 提供查询中断状态的方法,通常使用一个寄存器存储有关中断的状态信息,称为中断字 提供中断现场保护的能力 提供中断处理程序寻址能力,找到恰当的中断处理程序 具有预定义的系统控制栈和中断处理程序入口地址映射表(中断向量表)等数据结构和它们在主存中的位置,以辅助OS定制中断处理策略和中断调度机制,3.中断逻辑与中断寄存器,如何接受和响应中断源的中断请求,因机器而异。如在PC中: 可屏蔽的中断请求INTR:主要指来输入输出设备的I/O中断, 通过建立在PSW中的中断屏蔽位
13、加以屏蔽,即使再有I/O中断,处理器也不响应 不可屏蔽的中断请求:属于机器故障中断,包括内存奇偶校验错以及掉电等中断源 程序中的问题引起的中断(如溢出、除法错都可以引起中断)和软件中断等,当多个中断源请求同时发生时,由中断逻辑按中断优先级来 判定响应哪个中断请求。,中断寄存器 有的计算机中,为了区分和不丢失中断信号,对应每个中断源分别用一固定触发器来寄存中断信号。通常规定:值为1时,表示有中断信号,为0时表示无中断信号。 这些触发器的全体组成中断寄存器,中断寄存器由若干个中断位组成,每个触发器对应一个中断位。,3.中断逻辑与中断寄存器,中断扫描机构 在CPU的控制部件中,用于检测是否有中断发生
14、的机构。 在每条指令执行周期的最后时刻扫描中断寄存器,询问是否有中断信号 若无中断信号,继续执行下一条指令 若有中断,中断硬件将该中断触发器内容按规定编码送入PSW的相应位,称为中断码,3.中断逻辑与中断寄存器,4.多级中断,多级中断 多数微型处理器有多级中断系统,可以有多根中断请求线(级)从不同设备连接到中断逻辑 具有相同特性和优先级的设备可连到同一中断级上,由中断排队器(硬件)决定当前响应哪个中断源。 在多级中断系统中,可能同时有多个中断请求,CPU接受中断优先级为最高的那个中断,忽略其中断优先级较低的那些中断。 高优先级的中断可以打断低优先级的中断。,如果在同一中断级中的多个设备接口中同
15、时都有中断请求时,怎么办? 两种办法: 固定的优先数:每个设备接口给安排一个不同的、固定的优先顺序。 如,以该设备在总线中的位置来定,离CPU近的设备,其优先数高于离CPU远的设备 轮转法:用一个表,依次轮转响应,这是一个较为公平合理的方法,4.多级中断,5.中断响应,CPU如何响应中断, 两个问题: CPU何时响应中断? 通常在CPU执行了一条指令以后,更确切地,在指令周期最后时刻接受中断请求,或此时扫描中断寄存器。 如何知道提出中断请求的设备或中断源? 用软件指令去查询各设备接口,比较费时(非向量中断)。 使用 “中断向量表” (向量中断)。,非向量中断:总是转向中断查询程序的入口地址,执行终端查询程序,以确定被优先批准的中断源,然后分支进入相应的中断服务程序。,每个脉冲使计数器减1,用来装入计数器初值,晶体震荡器脉冲节拍机器周期指令周期,2.4 作业、作业步与进程,作业:是用户要求计算机计算和处理的一个独立的任务,是操作级用户在计算机上完成某项任务所需运行的若干程序的集合。如在命令方式下输入的一个命令行,或启动一个批文件都是一个作业。 作业步:作业中的每个程序运行称做一个作业步。作业中的各个作业步必须按顺序执行。如用户编辑、编译和调试一个程序可以看做是一个作业中三个不同的作业步。 一个作业步在执行过程中可以由多个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年部编版新教材语文小学三年级上册第三单元复习课教案
- 海安中学高二数学试卷
- 湖南文科数学试卷
- 建邺一模数学试卷
- 《网络综合布线》教案 项目2任务2 综合布线的设计原则
- 健康管理中心相关课件
- 上海市第四中学2025年高一物理第二学期期末经典模拟试题含解析
- 2025年中国风电塔架行业市场发展监测及投资战略咨询报告
- 中国加氢石油树脂行业市场调查报告
- 中国双乙烯酮行业市场调查报告
- 广东省江门市普通高中2025届物理高一下期末综合测试试题含解析
- HJ 636-2012 水质 总氮的测定 碱性过硫酸钾消解紫外分光光度法
- 妇科医生进修汇报课件
- 宋龙渊道德经讲义
- 受限空间安全作业票填写模板(2022年更新)
- ATP-MgCl2产品介绍(课堂PPT)
- [计算机]力克工艺单软件kaledo_style案例
- 山东大学生物化学课件绪论
- 李开复:人工智能应用的四波浪潮
- 公安机关警用装备申领登记表模板
- 镇江区国有土地上房屋征收评价技术规范
评论
0/150
提交评论