版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第2章章 操作系统的运行环境操作系统的运行环境讨论操作系统的主要运行环境讨论操作系统的主要运行环境中央处理器(中央处理器(CPUCPU)存储系统存储系统中断机制中断机制作业与作业步作业与作业步2.1 中央处理器(中央处理器(CPU)1.单处理器与多处理器系统单处理器与多处理器系统一个计算机系统只有一个处理器,称之为单处一个计算机系统只有一个处理器,称之为单处理器系统理器系统如果有多个处理器称之为多处理器系统如果有多个处理器称之为多处理器系统处理器由运算器、控制器和以及高速缓存构成。处理器由运算器、控制器和以及高速缓存构成。程序计数器程序计数器 PC指令寄存器指令寄存器 IR处理器状态字处理器
2、状态字PSW堆栈指示器堆栈指示器 SP指令译码器指令译码器 IDI/O控制逻辑控制逻辑工作寄存器工作寄存器地址寄存器地址寄存器数据寄存器数据寄存器 ALU 控制器控制器2.1 中央处理器(中央处理器(CPU)2.处理器中的寄存器处理器中的寄存器两类寄存器:两类寄存器:用户可见寄存器(工作寄存器):用户可见寄存器(工作寄存器):由处理器执行由处理器执行的机器语言来引用,通常对所有程序都是可用的,的机器语言来引用,通常对所有程序都是可用的,包括系统程序和用户程序。包括系统程序和用户程序。控制和状态寄存器控制和状态寄存器:用于控制处理器的操作,大:用于控制处理器的操作,大部分对用户不可见,部分对用户
3、不可见, 由由OS的的特权代码使用。特权代码使用。2.1 中央处理器(中央处理器(CPU)(1)用户可见寄存器)用户可见寄存器 机器语言直接引用机器语言直接引用 包括数据寄存器、地址寄存器以及条件码寄存器包括数据寄存器、地址寄存器以及条件码寄存器 数据寄存器数据寄存器(data register)又称通用寄存器,主要用于各种又称通用寄存器,主要用于各种算术逻辑指令和访存指令算术逻辑指令和访存指令 地址寄存器地址寄存器(address register)用于存储数据及指令的物理用于存储数据及指令的物理地址、线性地址或者有效地址,用于某种特定方式的寻址。如地址、线性地址或者有效地址,用于某种特定方
4、式的寻址。如索引寄存器(索引寄存器(index register)、段寄存器()、段寄存器(segment pointer)、栈指针()、栈指针(stack pointer) 条件码寄存器条件码寄存器保存保存CPU操作结果的各种标记位,如算术运算产操作结果的各种标记位,如算术运算产生的溢出、符号等等生的溢出、符号等等(2)控制和状态寄存器)控制和状态寄存器 用于控制处理器的操作用于控制处理器的操作 对于用户不可见的对于用户不可见的 一部分可以在某种特权模式(由一部分可以在某种特权模式(由OS使用)下访问常见使用)下访问常见的控制和状态寄存器的控制和状态寄存器: : 程序计数器程序计数器(PC:
5、Program Counter),记录将要取出的,记录将要取出的指令的地址指令的地址 指令寄存器指令寄存器(IR:Instruction Register),包含最近取出,包含最近取出的指令的指令 程序状态字程序状态字(PSW:Program Status Word),记录处理,记录处理器的运行模式信息等等器的运行模式信息等等3.特权指令和非特权指令特权指令和非特权指令特权指令特权指令:只能由操作系统使用的指令。特权指令的执行一般:只能由操作系统使用的指令。特权指令的执行一般会引起处理器状态的切换。会引起处理器状态的切换。使用多道程序设计技术的计算机指令系统必须要区分为特权使用多道程序设计技术
6、的计算机指令系统必须要区分为特权指令和非特权指令(指令和非特权指令(why?why?)4.处理器的状态处理器的状态根据运行程序对资源和机器指令的使用权限将处理器设置为不根据运行程序对资源和机器指令的使用权限将处理器设置为不同状态:同状态:多数系统将处理器工作状态划分为多数系统将处理器工作状态划分为管态管态和和目态目态:管态管态:操作系统管理程序运行的状态,又称为:操作系统管理程序运行的状态,又称为特权特权态、态、系系统统态、态、管理管理态或态或核心核心态态目态目态:用户程序运行时的状态,又称为:用户程序运行时的状态,又称为普通普通态或、态或、用户用户态态有些系统将处理器状态划分有些系统将处理器
7、状态划分核心状态核心状态,管理状态管理状态和和用户程序状态用户程序状态(目标状态)三种(目标状态)三种实例:实例:x86系列处理器系列处理器-1386、486、Pentium系列都支持系列都支持4个处理器特个处理器特权级别(特权环:权级别(特权环:R0、R1、R2和和R3)从从R0到到R3特权能力依次降低特权能力依次降低R0相当于双状态系统的管态相当于双状态系统的管态R3相当于目态相当于目态R1和和R2则介于两者之间,它们能够运行的指令则介于两者之间,它们能够运行的指令集合具有包含关系:集合具有包含关系:3210RRRRIIII各个级别有保护性检查(地址校验、各个级别有保护性检查(地址校验、I
8、/O限制),并分限制),并分别运行不同级别的程序:别运行不同级别的程序:R0- -运行操作系统核心代码运行操作系统核心代码R1- -运行关键设备驱动程序和运行关键设备驱动程序和I/O处理例程处理例程R2- -运行其它受保护共享代码,如语言系统运行环境运行其它受保护共享代码,如语言系统运行环境R3- -运行各种用户程序运行各种用户程序现有基于现有基于x86处理器的操作系统,多数处理器的操作系统,多数UNIX、Linux以及以及Windows系列大都只用了系列大都只用了R0和和R3两个特权级两个特权级别别实例:实例:x86系列处理器系列处理器-2管态和目态的比较:管态和目态的比较:处理器处于管态时
9、处理器处于管态时可以执行全部指令(包括特权指令)可以执行全部指令(包括特权指令)可使用所有资源可使用所有资源具有改变处理器状态的能力具有改变处理器状态的能力处理器处于目态时处理器处于目态时:只能执行非特权指令:只能执行非特权指令特权级别不同,可运行指令集合也不同特权级别不同,可运行指令集合也不同特权级别越高,可以运行指令集合越大特权级别越高,可以运行指令集合越大高特权级别对应的可运行指令集合包含低特权级的高特权级别对应的可运行指令集合包含低特权级的2.1 中央处理器(中央处理器(CPU)5.程序状态字程序状态字PSW程序状态字(程序状态字(PSW):用来指示处理器条件和状态的寄存:用来指示处理
10、器条件和状态的寄存器。不同的机器系统,其器。不同的机器系统,其PSW的格式和信息不尽相同。的格式和信息不尽相同。PSW提供的主要信息:提供的主要信息:CPU的工作状态码的工作状态码指明管态还是目态,用来说明当指明管态还是目态,用来说明当前在前在CPU上执行的是操作系统还是一般用户,从而决定上执行的是操作系统还是一般用户,从而决定其是否可以使用特权指令或拥有其它的特殊权力其是否可以使用特权指令或拥有其它的特殊权力条件码条件码反映指令执行后的结果特征反映指令执行后的结果特征中断屏蔽码中断屏蔽码指出是否允许中断指出是否允许中断2.1 中央处理器(中央处理器(CPU)目态目态管态管态 :其转换的唯一途
11、径是通过中断:其转换的唯一途径是通过中断管态管态目态目态 :可用通过设置:可用通过设置PSW(PSW(修改程序状修改程序状态字态字) )对应位的值来实现对应位的值来实现系统屏蔽系统屏蔽钥钥EMWP中断码中断码ILCCC程序屏蔽程序屏蔽指令地址指令地址0711153133353963例:例:IBM370的的PSW钥:用于存储保护钥:用于存储保护EMWP:E表示机器控制方式,表示机器控制方式,M表示机器校验方式,表示机器校验方式,W表示表示 等待状态位,等待状态位,P表示处理器的工作状态。表示处理器的工作状态。ILC:上一次执行指令的长度。:上一次执行指令的长度。CC:条件值。:条件值。系统屏蔽:
12、指出系统屏蔽:指出CPU是否接受特定通道的中断。是否接受特定通道的中断。程序屏蔽:指示程序屏蔽:指示CPU是否接受某种程序性中断。是否接受某种程序性中断。2.2 存储器系统存储器系统1.存储器的层次结构存储器的层次结构2.存储访问局部性原理存储访问局部性原理提高存储系统效能关键点:程序存储访问提高存储系统效能关键点:程序存储访问局部性局部性原理。原理。程序执行时,有很多的循环和子程序调用,一旦进入这样程序执行时,有很多的循环和子程序调用,一旦进入这样的程序段,就会重复存取相同的指令集合的程序段,就会重复存取相同的指令集合对数据存取也有局部性,在较短的时间内,稳定地保持在对数据存取也有局部性,在
13、较短的时间内,稳定地保持在一个存储器的局部区域一个存储器的局部区域2.2 存储器系统存储器系统3.3.存储保护:硬件支持存储保护:硬件支持对主存中的信息加以严格的保护,使操作系统及其对主存中的信息加以严格的保护,使操作系统及其它程序不被破坏。它程序不被破坏。地址寄存器(界限寄存器)地址寄存器(界限寄存器)存储键存储键2.2 存储器系统存储器系统(1)界地址寄存器(界限寄存器)界地址寄存器(界限寄存器)界地址寄存器界地址寄存器被广泛使用的一种存储保护技术,实现方法:被广泛使用的一种存储保护技术,实现方法:在在CPUCPU中设置一对中设置一对下限寄存器下限寄存器和和上限寄存器上限寄存器存放用户作业
14、存放用户作业在主存中的下限和上限地址在主存中的下限和上限地址也可将一个寄存器作为基址寄存器,另一寄存器作为限长也可将一个寄存器作为基址寄存器,另一寄存器作为限长寄存器(指示存储区长度)寄存器(指示存储区长度)每当每当CPUCPU要访问主存,硬件自动将被访问的主存地址与界要访问主存,硬件自动将被访问的主存地址与界限寄存器的内容进行比较,以判断是否越界,如果未越界,限寄存器的内容进行比较,以判断是否越界,如果未越界,则按此地址访问主存,否则将产生越界中断则按此地址访问主存,否则将产生越界中断越界中断越界中断(存储保护中断)(存储保护中断)界地址寄存器界地址寄存器存储保护技术存储保护技术(2)存储键
15、)存储键每个存储块有一个由二进位组成的每个存储块有一个由二进位组成的存储保护键。存储保护键。作业被允许进入主存时,作业被允许进入主存时,OSOS分为它分配一个唯一的存储键分为它分配一个唯一的存储键号号分配给该作业各存储块存储键与作业的存储键号相同。分配给该作业各存储块存储键与作业的存储键号相同。当当OSOS挑选该作业运行时,将作业的存储键号存入程序状态挑选该作业运行时,将作业的存储键号存入程序状态字字PSWPSW的存储键(的存储键(“钥匙钥匙”)域中。)域中。每当每当CPUCPU访问主存时,都将该主存块的存储键与访问主存时,都将该主存块的存储键与PSWPSW中的中的“钥匙钥匙”进行比较,如果相
16、匹配,则允许访问,否则,拒进行比较,如果相匹配,则允许访问,否则,拒绝并报警。绝并报警。2.3 中断技术中断技术中断中断对于操作系统的重要性就像机器中的对于操作系统的重要性就像机器中的驱动齿轮一样,所以有人把操作系统称为驱动齿轮一样,所以有人把操作系统称为是由是由 “中断驱动中断驱动”或者或者 “(中断)事件(中断)事件驱动驱动”。中断中断协调系统对各种外部事件的响应和处协调系统对各种外部事件的响应和处理理中断中断是多道程序实现的是多道程序实现的必要条件必要条件中断中断指指CPUCPU对系统内或系统外发生异步事件的响应。对系统内或系统外发生异步事件的响应。异步事件是指无一定时序关系随机发生的事
17、异步事件是指无一定时序关系随机发生的事件件中断源中断源(中断事件):引起中断发生的事件。(中断事件):引起中断发生的事件。中断处理程序中断处理程序:处理中断的程序代码。:处理中断的程序代码。1.概念概念中断类型中断类型:不同机器对中断类型的划分不完:不同机器对中断类型的划分不完全相同。全相同。IBM-PC的中断分为:的中断分为:可屏蔽中断(可屏蔽中断(I/O中断)中断)不可屏蔽中断(机器故障中断等)不可屏蔽中断(机器故障中断等)程序错误中断(溢出、缺页和缺段中断等)程序错误中断(溢出、缺页和缺段中断等)访管中断(访管中断(Trap 指令和指令和INT指令等,指令等, Trap 是在是在EFLA
18、GES中陷入标志中陷入标志TF=1时每执行一条指令后时每执行一条指令后便发生一次的异常,如断点、便发生一次的异常,如断点、INTO溢出等)。溢出等)。IBM370的中断的中断机器故障中断机器故障中断:如电源故障,机器电路检验错等:如电源故障,机器电路检验错等输入输出中断输入输出中断:输入输出设备和通道实现的数据传输:输入输出设备和通道实现的数据传输外部中断外部中断:时钟中断,操作员控制台中断,多机系统:时钟中断,操作员控制台中断,多机系统中其它机器的通信要求中断,各种外设或传感器发来中其它机器的通信要求中断,各种外设或传感器发来的实时中断等的实时中断等 程序中断程序中断:程序中问题引起的中断,
19、如错误地使用指:程序中问题引起的中断,如错误地使用指令或数据、溢出等问题,存储保护等令或数据、溢出等问题,存储保护等访管中断访管中断:访管指令或陷阱指令(:访管指令或陷阱指令(TrapTrap指令)中的操指令)中的操作数规定了要求服务的类型。每当作数规定了要求服务的类型。每当CPUCPU执行访管指令或执行访管指令或陷阱指令时,即引起中断并调用操作系统相应的功能陷阱指令时,即引起中断并调用操作系统相应的功能模块为其服务模块为其服务访管中断是用户程序在运行中请求操作系统为其提供服务而访管中断是用户程序在运行中请求操作系统为其提供服务而执行一条执行一条“访管指令访管指令”所引起的中断所引起的中断,又
20、称软件中断。访管又称软件中断。访管中断是进程所期待的中断是进程所期待的,它是自愿性的中断它是自愿性的中断,又称自愿中断。又称自愿中断。 引入中断的目的:引入中断的目的:解决主机与外设的并行工作问题解决主机与外设的并行工作问题提高可靠性提高可靠性实现多机联系实现多机联系实现实时控制实现实时控制特点:特点: 中断是随机的中断是随机的 中断是可恢复的中断是可恢复的 中断是自动处理的中断是自动处理的2.中断系统中断系统中断系统中断系统= =硬件中断装置硬件中断装置+ +中断处理程序中断处理程序中断系统的中断系统的硬件中断装置硬件中断装置中断系统的机制部分,包中断系统的机制部分,包括:发现中断,响应中断
21、的硬件。该装置负责捕获中断源括:发现中断,响应中断的硬件。该装置负责捕获中断源发出的中断请求,以一定方式响应中断源,然后将处理器发出的中断请求,以一定方式响应中断源,然后将处理器控制权交给特定的中断处理程序。控制权交给特定的中断处理程序。软件中断处理程序软件中断处理程序中断系统的策略部分,中断系统的策略部分, 负责辨负责辨别中断类型并做出相应的操作。别中断类型并做出相应的操作。中断装置的基本功能中断装置的基本功能 提供识别中断源的方法提供识别中断源的方法 提供查询中断状态的方法,通常使用一个寄存器存储有关提供查询中断状态的方法,通常使用一个寄存器存储有关中断的状态信息,称为中断字中断的状态信息
22、,称为中断字 提供中断现场保护的能力提供中断现场保护的能力 提供中断处理程序寻址能力,找到恰当的中断处理程序提供中断处理程序寻址能力,找到恰当的中断处理程序 具有预定义的系统控制栈和中断处理程序入口地址映射表具有预定义的系统控制栈和中断处理程序入口地址映射表(中断向量表)等数据结构和它们在主存中的位置,以辅(中断向量表)等数据结构和它们在主存中的位置,以辅助助OS定制中断处理策略和中断调度机制定制中断处理策略和中断调度机制3.中断逻辑与中断寄存器中断逻辑与中断寄存器如何接受和响应中断源的中断请求,因机器而异。如在如何接受和响应中断源的中断请求,因机器而异。如在PCPC中:中:可屏蔽的中断请求可
23、屏蔽的中断请求INTRINTR: :主要指来自输入输出设备的主要指来自输入输出设备的I/OI/O中中断断, , 通过建立在通过建立在PSWPSW中的中断屏蔽位加以屏蔽,即使再有中的中断屏蔽位加以屏蔽,即使再有I/OI/O中断,处理器也不响应中断,处理器也不响应不可屏蔽的中断请求不可屏蔽的中断请求: :属于机器故障中断,包括内存奇偶校属于机器故障中断,包括内存奇偶校验错以及掉电等中断源验错以及掉电等中断源程序中的问题引起的中断程序中的问题引起的中断(如溢出、除法错都可以引起中(如溢出、除法错都可以引起中断)和软件中断等断)和软件中断等当多个中断源请求同时发生时,由当多个中断源请求同时发生时,由中
24、断逻辑中断逻辑按中断优先级来按中断优先级来判定响应哪个中断请求。判定响应哪个中断请求。非屏蔽中断请求非屏蔽中断请求中断逻辑中断逻辑中断指令中断指令INTn溢出中断溢出中断INT0除法错除法错中断中断单步中断单步中断TF=1中断控中断控制器制器8259A可屏蔽性中断请求可屏蔽性中断请求INTRNMIIBM-PC中断逻辑和中断源示意图中断逻辑和中断源示意图中断寄存器中断寄存器有的计算机中,为了区分和不丢失中断信号,有的计算机中,为了区分和不丢失中断信号,对应每个对应每个中断源中断源分别用一固定分别用一固定触发器触发器来寄存中来寄存中断信号。通常规定:值为断信号。通常规定:值为1 1时,表示有中断信
25、时,表示有中断信号,为号,为0 0时表示无中断信号。时表示无中断信号。这些触发器的全体组成中断寄存器,中断寄存这些触发器的全体组成中断寄存器,中断寄存器由若干个中断位组成,每个触发器对应一个器由若干个中断位组成,每个触发器对应一个中断位。中断位。 3.中断逻辑与中断寄存器中断逻辑与中断寄存器中断扫描机构中断扫描机构 在在CPU的控制部件中,用于检测是否有中断发生的的控制部件中,用于检测是否有中断发生的机构。机构。在每条指令执行周期的在每条指令执行周期的最后时刻最后时刻扫描中断寄存器,扫描中断寄存器,询问是否有中断信号询问是否有中断信号若无中断信号,继续执行下一条指令若无中断信号,继续执行下一条
26、指令若有中断,中断硬件将该中断触发器内容按规定编若有中断,中断硬件将该中断触发器内容按规定编码送入码送入PSWPSW的相应位,称为中断码的相应位,称为中断码 3.中断逻辑与中断寄存器中断逻辑与中断寄存器4.多级中断多级中断多级中断多级中断多数微型处理器有多级中断系统,可以有多根中断请求线多数微型处理器有多级中断系统,可以有多根中断请求线(级)从不同设备连接到中断逻辑(级)从不同设备连接到中断逻辑具有相同特性和优先级的设备可连到同一中断级上,由中断具有相同特性和优先级的设备可连到同一中断级上,由中断排队器(硬件)决定当前响应哪个中断源。排队器(硬件)决定当前响应哪个中断源。在多级中断系统中,可能
27、同时有多个中断请求,在多级中断系统中,可能同时有多个中断请求,CPUCPU接受中断接受中断优先级为最高的那个中断,忽略其中断优先级较低的那些中优先级为最高的那个中断,忽略其中断优先级较低的那些中断。断。高优先级的中断可以打断低优先级的中断。高优先级的中断可以打断低优先级的中断。如果在如果在同一中断级同一中断级中的多个设备接口中同时都有中的多个设备接口中同时都有中断请求时,怎么办?中断请求时,怎么办?两种办法:两种办法:固定的优先数固定的优先数:每个设备接口给安排一个不同:每个设备接口给安排一个不同的、固定的优先顺序。的、固定的优先顺序。 如,以该设备在总线如,以该设备在总线中的位置来定,离中的
28、位置来定,离CPUCPU近的设备,其优先数高近的设备,其优先数高于离于离CPUCPU远的设备远的设备轮转法轮转法:用一个表,依次轮转响应,这是一个:用一个表,依次轮转响应,这是一个较为公平合理的方法较为公平合理的方法4.多级中断多级中断5.中断响应中断响应CPUCPU如何响应中断如何响应中断, , 两个问题:两个问题: CPUCPU何时响应中断?何时响应中断? 通常在通常在CPUCPU执行了一条指令以后,更确切地,在执行了一条指令以后,更确切地,在指令周期指令周期最后时刻最后时刻接受中断请求,或此时扫描中断寄存器。接受中断请求,或此时扫描中断寄存器。 如何知道提出中断请求的设备或中断源?如何知道提出中断请求的设备或中断源?用用软件指令软件指令去查询各设备接口,比较费时(非向量中去查询各设备接口,比较费时(非向量中断)。断)。使用使用 “中断向量表中断向量表” (向量中断)。(向量中断)。非向量中断非向量中断:总是转向中断查询程序的入口地址,执行终端:总是转向中断查询程序的入口地址,执行终端查询程序,以确定被优先批准的中断源,然后分支进入相应查询程序,以确定被优先批准的中断源,然后分支进入相应的中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024高考地理一轮复习第十章区域可持续发展第35讲矿产资源合理开发和区域可持续发展-以德国鲁尔区为例教案湘教版
- 2024高考历史一轮复习方案专题十世界资本主义经济政策的调整和苏联社会主义建设专题整合备考提能教学案+练习人民版
- DB42-T 2338-2024 地质调查阶段海相页岩气选区评价技术要求
- 泰州市专业技术人员公修科目“沟通与协调能力”测试题及答案
- (3篇)2024年幼儿园读书节活动总结
- 物资的管理和控制措施
- 二零二五版「鸿诚担保招聘」人才测评与评估服务合同2篇
- 发起人与设立中公司
- 2024年海南工商职业学院高职单招职业适应性测试历年参考题库含答案解析
- 二零二五年度环保PPP项目合同风险防控与应对策略
- 实际控制人与法人协议模板
- 医疗器械质量安全风险会商管理制度
- 110kV变电站及110kV输电线路运维投标技术方案(第一部分)
- 绿色制造与可持续发展技术
- 污水处理厂单位、分部、分项工程划分
- 舌咽神经痛演示课件
- 子宫内膜癌业务查房课件
- 社会学概论课件
- 华为经营管理-华为的研发管理(6版)
- C及C++程序设计课件
- 公路路基路面现场测试随机选点记录
评论
0/150
提交评论