操作系统第一第二节_第1页
操作系统第一第二节_第2页
操作系统第一第二节_第3页
操作系统第一第二节_第4页
操作系统第一第二节_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、u 主要讨论操作系统对运行硬件环境的要求主要讨论操作系统对运行硬件环境的要求u 操作系统运行的硬件环境组成操作系统运行的硬件环境组成u 中断机制中断机制u 双重操作模式(双重操作模式(*)u 存储系统的层次结构存储系统的层次结构u处理器:处理器:控制计算机的操控制计算机的操作,执行数据处理功能。作,执行数据处理功能。u主存储器:主存储器:存储程序和数存储程序和数据。是易失的。据。是易失的。分层的存分层的存储体系结构。储体系结构。u输入输入/输出模块:输出模块:在计算机在计算机和外部设备之间传输数据和外部设备之间传输数据。包括:辅存、通信设备。包括:辅存、通信设备和终端等。和终端等。u系统总线:

2、系统总线:为上述部件之为上述部件之间的通信而提供的一些结间的通信而提供的一些结构和机制。构和机制。u由一个或多个由一个或多个CPU和若干设备控制器,通过公共总线相连和若干设备控制器,通过公共总线相连,总线提供对共享内存的访问。,总线提供对共享内存的访问。uCPU和设备控制器可以并发执行,竞争内存周期和设备控制器可以并发执行,竞争内存周期uI/O设备和设备和CPU可以同时执行。可以同时执行。u每一设备控制器负责一个设备类型。每一设备控制器负责一个设备类型。u每个设备控制器具有本地缓存。每个设备控制器具有本地缓存。uCPU可将数据:主存可将数据:主存 本地缓存本地缓存uI / O是从设备到控制器的

3、本地缓冲区是从设备到控制器的本地缓冲区u设备控制器通过中断通知设备控制器通过中断通知CPU已完成操作已完成操作u中断中断:CPU对系统中或系统外发生的某个事件作出的一种反对系统中或系统外发生的某个事件作出的一种反应。如外部设备完成数据传输,实时设备出现异常等;应。如外部设备完成数据传输,实时设备出现异常等;u当异步事件发生后,打断了对当前程序的执行当异步事件发生后,打断了对当前程序的执行u保留现场后自动而转去执行相应事件的处理程序直到处保留现场后自动而转去执行相应事件的处理程序直到处理完了后,再转回原程序中断点继续执行理完了后,再转回原程序中断点继续执行u引入中断的目的:引入中断的目的:中断机

4、制是操作系统得以正常工作的最中断机制是操作系统得以正常工作的最重要的手段,有人把操作系统称为是由重要的手段,有人把操作系统称为是由“中断驱动中断驱动”或者或者 “(中断)事件驱动(中断)事件驱动”。它可以解决:。它可以解决:u主机与外设的并行工作问题主机与外设的并行工作问题u提高可靠性提高可靠性u实现实时控制实现实时控制u中断是实现多道程序的必要条件中断是实现多道程序的必要条件u中断源:中断源:引起中断发生的事件。引起中断发生的事件。u 中断系统组成中断系统组成:硬件硬件中断装置和中断装置和软件软件中中断处理程序断处理程序u中断系统的中断系统的硬件中断装置硬件中断装置:负责捕获中:负责捕获中断

5、源发出的中断请求,以一定方式响应断源发出的中断请求,以一定方式响应中断源,然后将处理器控制权交给特定中断源,然后将处理器控制权交给特定的中断处理程序的中断处理程序u 软件中断处理程序:软件中断处理程序:中断系统的策略部中断系统的策略部分。负责辨别中断类型并做出相应的操分。负责辨别中断类型并做出相应的操作。作。u程序中断:程序中断: 一般由指令执行的结果产生,一般由指令执行的结果产生,例如算术例如算术溢出、除数为溢出、除数为0,执行非法指令,非法内存访问,执行非法指令,非法内存访问。u时钟中断:时钟中断:由处理器内部的由处理器内部的计时器产生计时器产生,允许操作系,允许操作系统以一定的规律执行统

6、以一定的规律执行uI/O中断:中断:由由I/O控制器产生控制器产生,用于发信号通知一个操,用于发信号通知一个操作的正常完成或各种错误条件作的正常完成或各种错误条件u硬件失效中断:硬件失效中断:掉电、存储器奇偶错掉电、存储器奇偶错等的故障产生等的故障产生u访管中断:访管中断:每当每当CPU执行访管指令或陷入指令时,即执行访管指令或陷入指令时,即引起中断,并调用操作系统相应的功能模块为其服务引起中断,并调用操作系统相应的功能模块为其服务中断中断( (外中断外中断) )异常异常( (内中断内中断) )例外例外I/OI/O中断中断时钟中断时钟中断系统调用系统调用缺页异常缺页异常断点指令断点指令其他程序

7、性异常其他程序性异常( (如算术溢出等如算术溢出等) )广义中断广义中断中断屏蔽:中断屏蔽:指禁止指禁止CPU响应中断。方法是在响应中断。方法是在PSW中设置中断屏蔽码以屏蔽某些指定的中断类型中设置中断屏蔽码以屏蔽某些指定的中断类型u如果其如果其PSW的中断禁止位置位后,则屏蔽中断的中断禁止位置位后,则屏蔽中断 (不包括不可屏蔽的那些中断)(不包括不可屏蔽的那些中断)u如果如果PSW中的中断禁止位未置位:则可以接受中的中断禁止位未置位:则可以接受其中断优先级高于运行程序中断优先级的那些中其中断优先级高于运行程序中断优先级的那些中断断u可屏蔽的中断请求可屏蔽的中断请求:主要是主要是I/O设备的中

8、断设备的中断, 通通过建立在过建立在PSW中的中的中断屏蔽位中断屏蔽位加以屏蔽,加以屏蔽,即即使再有使再有I/O中断,处理器也不响应;中断,处理器也不响应;u不可屏蔽的中断请求不可屏蔽的中断请求:属于机器故障中断,包属于机器故障中断,包括内存奇偶校验错、掉电等中断源括内存奇偶校验错、掉电等中断源处理器如何发现中断信号?处理器如何发现中断信号? 处理器的控制部件中设处理器的控制部件中设一个能检测中断的机构,称为中断扫描机构。一个能检测中断的机构,称为中断扫描机构。为为适应存在中断的情况,在指令周期中要增加一个适应存在中断的情况,在指令周期中要增加一个中断周期中断周期,处理器检查是否有中断发生:处

9、理器检查是否有中断发生:u有:有:处理器挂起当前程序的执行,并执行一处理器挂起当前程序的执行,并执行一个中断处理程序;当中断处理程序完成后,个中断处理程序;当中断处理程序完成后,处理器在中断点恢复对用户程序的执行。处理器在中断点恢复对用户程序的执行。u没有没有:则取下一条执行继续执行。则取下一条执行继续执行。u 中断向量表(中断向量表(IDT):):一个存放中断处理程序入口一个存放中断处理程序入口地址和程序运行所需处理机状态字的内存单元。地址和程序运行所需处理机状态字的内存单元。u 中断向量:中断向量:每个中断都有一个向量号,该值是中断每个中断都有一个向量号,该值是中断在在IDT中的索引。中的

10、索引。u每个中断均有其相应的处理程序,中断在使用前每个中断均有其相应的处理程序,中断在使用前必须在必须在IDT中注册信息,以保证发生中断时能找中注册信息,以保证发生中断时能找到相应的处理程序到相应的处理程序u发出中断请求的设备为了标识自己,向发出中断请求的设备为了标识自己,向CPU发送发送一个该设备在一个该设备在IDT中表目的索引,通过此索引值中表目的索引,通过此索引值找到中断处理程序找到中断处理程序u由于可能有很多中断源请求同时发生,通过中断优由于可能有很多中断源请求同时发生,通过中断优先级加以判定响应哪个中断请求先级加以判定响应哪个中断请求u中断优先级:中断优先级:表示中断的优先程度。表示

11、中断的优先程度。u高、低优先级中断同时到时先响应高级中断。高、低优先级中断同时到时先响应高级中断。u高级中断可以打断低级中断处理程序的运行,同级中高级中断可以打断低级中断处理程序的运行,同级中断同时到时,则按顺序响应。断同时到时,则按顺序响应。u中断优先级设计原则:中断优先级设计原则:一般来说,高速设备的中断一般来说,高速设备的中断优先级高,慢速设备的中断优先级低。因为高速设优先级高,慢速设备的中断优先级低。因为高速设备的中断被备的中断被CPU优先响应时,可以让处理机尽快地优先响应时,可以让处理机尽快地向它发出下一个向它发出下一个I/O请求,提高高速设备的利用率请求,提高高速设备的利用率 机器

12、故障中断机器故障中断 程序中断和访管中断程序中断和访管中断外部中断外部中断I/O中断中断u多级中断系统,可以有多根中断请求线从不同设备连接到多级中断系统,可以有多根中断请求线从不同设备连接到中断处理机构。若中断处理过程中又发生中断,中断处理机构。若中断处理过程中又发生中断,2种策略:种策略:u1)顺序处理:)顺序处理:正在响应一个中断时禁止响应其它中断,对正在响应一个中断时禁止响应其它中断,对任何新中断置之不理任何新中断置之不理u在任何中断处理前使用禁止中断指令;在任何中断处理前使用禁止中断指令;u在处理结束后开放中断指令在处理结束后开放中断指令u所有中断严格按照发生顺序处理所有中断严格按照发

13、生顺序处理u不考虑中断紧急程度,无法达到较严格时间要求不考虑中断紧急程度,无法达到较严格时间要求u2)嵌套中断处理:嵌套中断处理:允许嵌套处理,即允许高优先级的中断引允许嵌套处理,即允许高优先级的中断引发低优先级的中断处理程序自身的中断。发低优先级的中断处理程序自身的中断。 只要合适地定义只要合适地定义中断的优先级别,方法中断的优先级别,方法1的弊端大都可以克服的弊端大都可以克服用户程序低级中断高级中断顺序处理顺序处理嵌套处理嵌套处理保存现场保存现场 转中断处理程序转中断处理程序 恢复现场恢复现场简单的中断处理简单的中断处理 - 典型的处理过程:典型的处理过程:(1)设备给)设备给CPU发一个

14、中断信号发一个中断信号(2)CPU处理完当前指令后响应中断(要求处理完当前指令后响应中断(要求CPU未关中断)未关中断)(3)CPU处理完当前指令后检测到中断,判断出中断来源并处理完当前指令后检测到中断,判断出中断来源并向发送中断的设备发送了确认中断信号,确认信号使得该向发送中断的设备发送了确认中断信号,确认信号使得该设备将中断信号恢复到一般状态设备将中断信号恢复到一般状态(4)CPU开始为软件处理中断做准备:开始为软件处理中断做准备:u 保存上下文,包括程序状态字保存上下文,包括程序状态字PSW、程序计数器程序计数器PC中中 的下一条指令位置,一些寄存器的值;的下一条指令位置,一些寄存器的值

15、;u 处理器状态被切换到管态处理器状态被切换到管态简单的中断处理简单的中断处理 -典型的处理过程典型的处理过程(续):续):(5)CPU根据中断源查询中断向量表,获得与该中断相联系根据中断源查询中断向量表,获得与该中断相联系的处理程序入口地址,并将的处理程序入口地址,并将PC置成该地址,置成该地址,CPU开始一个开始一个新的指令周期,控制转移到中断处理程序新的指令周期,控制转移到中断处理程序(6)中断处理程序开始工作,包括检查)中断处理程序开始工作,包括检查I/O相关的状态信息,相关的状态信息,操纵操纵I/O设备或者在设备和主存之间传送数据等等设备或者在设备和主存之间传送数据等等(7)中断处理

16、结束时,)中断处理结束时,CPU检测到中断返回指令,恢复上下检测到中断返回指令,恢复上下文。文。(8)PSW和和PC被恢复成中断前的值,处理器开始一个新的指被恢复成中断前的值,处理器开始一个新的指令周期,中断处理结束令周期,中断处理结束简单的中断处理过程简单的中断处理过程u特权指令:特权指令:只能由操作系统程序使用的指令,如只能由操作系统程序使用的指令,如启启动动I/O设备、设置时钟、控制中断屏蔽位、清内存、设备、设置时钟、控制中断屏蔽位、清内存、加载加载PSW等(能引起损害的机器指令)。等(能引起损害的机器指令)。u非特权指令非特权指令:用户程序系统所使用的指令。用户程序系统所使用的指令。u

17、注意:注意:u使用多道程序设计技术的计算机指令系统必须要使用多道程序设计技术的计算机指令系统必须要区分为特权指令和非特权指令区分为特权指令和非特权指令u特权指令一般引起处理器状态的切换特权指令一般引起处理器状态的切换u处理器通过特殊的机制将处理器状态切换到操作系处理器通过特殊的机制将处理器状态切换到操作系统运行的特权状态(管态)统运行的特权状态(管态)u然后将处理权移交给操作系统中的一段特殊代码,然后将处理权移交给操作系统中的一段特殊代码,这一个过程称为陷入这一个过程称为陷入u背景:背景:多道程序系统中,由于采用共享,一个程多道程序系统中,由于采用共享,一个程序中的错误有可能恶意地影响多个程序

18、,甚至序中的错误有可能恶意地影响多个程序,甚至OS程序本身。程序本身。u 根据运行程序对资源和机器指令的使用权限将根据运行程序对资源和机器指令的使用权限将处理器设置为不同状态处理器设置为不同状态程序状态字程序状态字PSWu 一般将处理器工作状态划分为管态和目态一般将处理器工作状态划分为管态和目态u 具体处理器将具体处理器将CPU状态划分为两种、三种或四种状态划分为两种、三种或四种u双重操作模式:双重操作模式:为了确保为了确保OS和所有其它程序和数据不受任和所有其它程序和数据不受任何故障程序影响,何故障程序影响,CPU至少需要两重独立的操作模式:至少需要两重独立的操作模式:u系统模式(特权状态、

19、系统态、系统模式(特权状态、系统态、管态管态):操作系统管理:操作系统管理程序运行时的状态,较高的特权级别。当程序运行时的状态,较高的特权级别。当CPU处于系统处于系统模式时,程序可以执行特权指令,访问所有资源,并可模式时,程序可以执行特权指令,访问所有资源,并可以改变处理器状态。以改变处理器状态。u用户模式(用户态、用户模式(用户态、目态目态、常态)、常态):用户程序运行时的用户程序运行时的状态,较低的特权级别。当状态,较低的特权级别。当CPU处于用户状态时,程序处于用户状态时,程序只能执行非特权指令只能执行非特权指令。u如如MSDOS没有双重模式,因而错误用户程序可以会没有双重模式,因而错

20、误用户程序可以会清除整个操作系统,造成灾难性后果。清除整个操作系统,造成灾难性后果。u386、486、Pentium系列都支持系列都支持4个处理器特权个处理器特权级别(特权环:级别(特权环:R0、R1、R2和和R3)u从从R0到到R3特权能力依次降低特权能力依次降低uR0相当于双状态系统的管态相当于双状态系统的管态uR3相当于目态相当于目态uR1和和R2则介于两者之间,它们能够运行的指则介于两者之间,它们能够运行的指令集合具有包含关系:令集合具有包含关系:3210RRRRIIII各个级别有保护性检查(地址校验、各个级别有保护性检查(地址校验、I/O限制)限制)特权级别之间的转换方式相似特权级别

21、之间的转换方式相似四个级别运行不同类别的程序:四个级别运行不同类别的程序:uR0-运行操作系统核心代码运行操作系统核心代码uR1-运行关键设备驱动程序和运行关键设备驱动程序和I/O处理例程处理例程uR2-运行其他受保护共享代码,如语言系统运行环运行其他受保护共享代码,如语言系统运行环境境uR3-运行各种用户程序运行各种用户程序 现有基于现有基于x86处理器的操作系统,处理器的操作系统,多数多数UNIX、Linux以及以及Windows系列系列大都只用了大都只用了R0和和R3两个两个特权级别特权级别u问题:问题: CPU如何知道当前运行的是操作系统还是如何知道当前运行的是操作系统还是一般应用软件

22、?根据一般应用软件?根据PSW中的标识进行判断中的标识进行判断。u在在PSW中专门设置一位,根据运行程序使用指令的权中专门设置一位,根据运行程序使用指令的权限而设置限而设置CPU状态状态uPSW:寄存寄存CPU运行状态的寄存器。运行状态的寄存器。u在在PSW中专门设置一位,根据运行程序使用指令的权中专门设置一位,根据运行程序使用指令的权限而设置限而设置,用来说明当前在用来说明当前在CPU上执行的是操作系统上执行的是操作系统还是一般用户,从而决定其是否可以使用特权指令或还是一般用户,从而决定其是否可以使用特权指令或拥有其它的特殊权力拥有其它的特殊权力1514131211109876543210T

23、SI2I1I0XNZVC条件位:条件位:C: 进位标志位进位标志位 V: 溢出标志位溢出标志位Z: 结果为零标志位结果为零标志位N: 结果为负标志位结果为负标志位I0 I2:三位中断屏蔽位三位中断屏蔽位S:CPU状态标志位,为状态标志位,为1处于管态,为处于管态,为0处于目态处于目态T:陷阱陷阱(Trap)中断指示位为中断指示位为1, 在下一条指令执行后引起自陷中断在下一条指令执行后引起自陷中断CF: 进位标志位进位标志位 ZF: 结果为零标志位结果为零标志位 SF: 符号标志位符号标志位OF: 溢出标志位溢出标志位标准条件位:标准条件位: TF:陷阱标志位:陷阱标志位IF:中断允许(中断屏蔽

24、)标志位:中断允许(中断屏蔽)标志位VIF:虚拟中断标志位:虚拟中断标志位VIP:虚拟中断待决标志位:虚拟中断待决标志位IOPL:IO特权级别特权级别 目态目态 管态(用户态系统态)管态(用户态系统态)唯一途径唯一途径 : 通过中断(系统调用、中断事件)通过中断(系统调用、中断事件)管态管态目态(系统态用户态)目态(系统态用户态)设置设置PSW(PSW(修改程序状态字修改程序状态字) )一条特殊的指令:访管指令一条特殊的指令:访管指令 供用户调用操作系统的功能(服务)供用户调用操作系统的功能(服务)INT,TRAP,SYSCALL处理器处于系统模式(管态)时:处理器处于系统模式(管态)时:u全

25、部指令(包括特权指令)可以执行全部指令(包括特权指令)可以执行u可使用所有资源可使用所有资源u并具有改变处理器状态的能力并具有改变处理器状态的能力处理器处于用户模式(目态)时:处理器处于用户模式(目态)时:u只有非特权指令能执行只有非特权指令能执行特权级别越高,可以运行指令集合越大特权级别越高,可以运行指令集合越大高特权级别对应的可运行指令集合包含低特权级的高特权级别对应的可运行指令集合包含低特权级的u存储系统是支持存储系统是支持OS运行硬件环境的一个重要运行硬件环境的一个重要方面:方面:u多道程系统中,若干个程序和相关的数据要放入主多道程系统中,若干个程序和相关的数据要放入主存储器存储器u操

26、作系统要管理、保护程序和数据,使它们不至于操作系统要管理、保护程序和数据,使它们不至于受到破坏受到破坏u操作系统本身也要存放在主存储器中并运行操作系统本身也要存放在主存储器中并运行u存储系统设计三个问题:存储系统设计三个问题:容量、速度和成本容量、速度和成本u 容量:需求无止境容量:需求无止境u 速度:能匹配处理器的速度速度:能匹配处理器的速度u 成本问题:成本和其它部件相比应在合适范围之内成本问题:成本和其它部件相比应在合适范围之内容量、速度和成本容量、速度和成本u三个目标不可能同时达到最优,要作权衡三个目标不可能同时达到最优,要作权衡u存取速度快,每比特价格高存取速度快,每比特价格高u容量

27、大,每比特价格越低,同时存取速度也越慢容量大,每比特价格越低,同时存取速度也越慢解决方案:采用层次化的存储体系结构解决方案:采用层次化的存储体系结构u当沿着层次下降时当沿着层次下降时u每比特的价格将下降,容量将增大每比特的价格将下降,容量将增大u速度将变慢,处理器的访问频率也将下降速度将变慢,处理器的访问频率也将下降层次化的存储体系结构层次化的存储体系结构提高存储系统性能的关键:提高存储系统性能的关键: 程序存储访问局部性原理程序存储访问局部性原理u程序执行时,有很多循环和子程序调用,一旦进入这样程序执行时,有很多循环和子程序调用,一旦进入这样的程序段,就会重复存取相同的指令集合的程序段,就会

28、重复存取相同的指令集合u对数据存取也有局部性,在较短的时间内,稳定地保持对数据存取也有局部性,在较短的时间内,稳定地保持在一个存储器的局部区域在一个存储器的局部区域处理器主要和存储器的局部打交道处理器主要和存储器的局部打交道经过一段时间以后,使用的代码和数据集合会改变经过一段时间以后,使用的代码和数据集合会改变u存储最小单位存储最小单位:“二进位二进位”,包含信息为,包含信息为0或或1u最小编址单位最小编址单位:字节,一个字节包含八个二进位字节,一个字节包含八个二进位主流个人电脑主流个人电脑u主存主存:1G4G之间之间u辅助存储器辅助存储器:在在160GB500GB工作站、服务器工作站、服务器

29、u主存主存:512MB 8GB之间之间u硬盘容量硬盘容量:数百数百GB为简化分配和管理,存储器分成块为简化分配和管理,存储器分成块,称一个物理页(称一个物理页(Page)u块的大小:块的大小:512B、1KB、4KB、8KB、16KB、64KB、256KB、1MB、4MB、16MBu问题:问题:多用户多用户,多任务操作系统,多任务操作系统,OS给每个运行进给每个运行进程分配一个存储区域。多个程序同时在同一台机程分配一个存储区域。多个程序同时在同一台机器上运行,器上运行, 怎样才能互不侵犯?怎样才能互不侵犯?u存储保护:存储保护:对主存中的信息加以严格的保护,使对主存中的信息加以严格的保护,使操作系统及其它程序不被破坏,是其正确运行的操作系统及其它程序不被破坏,是其正确运行的基本条件之一基本条件之一u 保护的硬件支持保护的硬件支持:u界地址寄存器(界限寄存器)界地址寄存器(界限寄存器)u存储键存储键u地址转换地址转换界地址寄存器界地址寄存器存储保护技术存储保护技术u界地址寄存器:一种存储保护技术界地址寄存器:一种存储保护技术u机制比较简单,易于实现机制比较简单,易于实现实现方法:实现方法:u在在CPU中设置一对下限寄存器和上限寄存器中设置一对下限寄存器和上限寄存器 存放用户作业在内存中的下限和上限地址存放用户作业在内存中的下限和上限地址

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论