操作系统教程第三版课件.ppt
《操作系统教程第三版课件.ppt》由会员分享,可在线阅读,更多相关《操作系统教程第三版课件.ppt(235页珍藏版)》请在三一办公上搜索。
1、操作系统教程(第3版)第二章 处理器管理,面向21世纪课程教材高等教育出版社出版2003年8月,第二章 处理器管理,2.1 中央处理器 2.2 中断技术2.3 进程及其实现2.4 线程及其实现2.5 处理器调度2.6 批处理作业的管理与调度2.7 低级调度,2.1中央处理器,2.1.1单处理器系统和多处理器系统2.1.2寄存器2.1.3特权指令与非特权指令2.1.4处理器状态2.1.5程序状态字寄存器,2.1.1单处理器和多处理器系统,计算机系统的核心是中央处理器单处理器系统:一个计算机系统只包括一个运算处理器。多处理器系统:一个计算机系统有多个运算处理器。,计算机系统结构分类,单指令流单数据
2、流(SISD):一个处理器在一个存储器中的数据上执行单条指令流单指令流多数据流(SIMD):单条指令流控制多个处理单元同时执行,每个处理单元包括处理器和相关的数据存储,一条指令控制了不同的处理器对不同的数据进行操作。向量机和阵列机是这类计算机系统的代表 多指令流单数据流(MISD):一个数据流被传送给一组处理器,通过处理器上不同指令操作最终得到处理结果多指令流多数据流(MIMD):多个处理器对各自不同的数据集同时执行不同的指令流。可以把MIMD系统划分为共享内存紧密耦合系统和内存分布松散耦合系统两类,2.1.2寄存器(1),计算机系统的处理器包括一组寄存器,其个数根据机型的不同而不同,它们构成
3、了一级存储,比主存容量小,但访问速度快。这组寄存器所存储的信息与程序的执行有很大关系,构成了处理器现场。,寄存器(2),通用寄存器:数据寄存器:基地址寄存器:I/O地址寄存器:I/O缓冲寄存器:控制寄存器:其他寄存器,2.1.3 特权指令与非特权指令(1),机器指令的集合称指令系统(1)数据处理类指令;(2)转移类指令;(3)数据传送类指令;(4)移位与字符串指令;(5)I/O类指令。,特权指令与非特权指令(2),从资源管理和控制程序执行的角度出发,必须把指令系统中的指令分作两部分:特权指令和非特权指令。特权指令是指只能提供给操作系统的核心程序使用的指令,如启动I/O设备、设置时钟、控制中断屏
4、蔽位、清内存、建立存储键,加载PSW等。,2.1.4 处理器状态,中央处理器怎么知道当前是操作系统还是一般用户程序在运行呢?处理器状态标志和设置处理器成不同状态:管理状态(特权状态、系统模式、特态或管态)和用户状态(目标状态、用户模式、常态或目态)处理器处于管理状态时,程序可以执行全部指令,使用所有资源,具有改变处理器状态的能力;处理器处于用户状态时,程序只能执行非特权指令Intel Pentium的处理器状态有四种,支持4个保护级别,0级权限最高,3级权限最低,2.1.5 程序状态字寄存器(1),计算机如何知道当前处于何种工作状态?这时能否执行特权指令?通常操作系统都引入程序状态字PSW(P
5、rogram Status Word)来区别不同的处理器工作状态PSW用来控制指令执行顺序并保留和指示与程序有关的系统状态,主要作用是实现程序状态的保护和恢复每个程序都有一个与其执行相关的PSW,每个处理器都设置一个PSW寄存器。程序占有处理器执行,它的PSW将占有PSW寄存器,程序状态字寄存器(2),PSW寄存器包括以下内容:程序基本状态:(1)程序计数器;(2)条件码;(3)处理器状态位。中断码。保存程序执行时当前发生的中断事件。中断屏蔽位。指明程序执行中发生中断事件时,是否响应出现的中断事件。,IBM360/370系列计算机程序状态字的基本格式,Intel Pentium程序状态字,In
6、tel Pentium中,PSW由标志寄存器EFLAGS和指令指针寄存器EIP组成,均为32位。EFLAGS的低16位称FLAGS,标志可划分为三组:状态标志、控制标志、系统标志。,2.2中断技术,2.2.1中断的概念2.2.2中断源分类2.2.3中断装置2.2.4中断处理程序2.2.5中断事件的具体处理方法2.2.6中断的优先级和多重中断2.2.7实例研究:Windows2000/XP中断处理2.2.8实例研究:Solaris中断处理2.2.9实例研究:Linux中断处理,2.2.1中断的概念,请求系统服务,实现并行工作,处理突发事件,满足实时要求,都需要打断处理器正常的工作,为此,提出了中
7、断概念。,中断的定义,中断是指程序执行过程中,当发生某个事件时,中止CPU上现行程序的运行,引出处理该事件的程序执行的过程。,2.2.2中断源分类(1),从中断事件的性质和激活的手段来说,可以分成两类:强迫性中断事件强迫性中断事件不是正在运行的程序所期待的,而是由于某种事故或外部请求信息所引起的,分为:机器故障中断事件。程序性中断事件。外部中断事件。输入输出中断事件。自愿性中断事件自愿性中断事件是正在运行的程序所期待的事件。,中断源分类(2)两类中断事件,中断源分类(3),按照中断信号的来源,可把中断分为如下两类:外中断(又称中断)指来自处理器和主存之外的中断。内中断(又称异常)指来自处理器和
8、主存内部的中断。,中断源分类(4),外中断包括:电源故障中断、时钟中断、控制台中断、它机中断和I/O中断等。不同的中断具有不同的中断优先级,处理高一级中断时,往往会屏蔽部分或全部低级中断。内中断包括:通路校验错、主存奇偶错、非法操作码、地址越界、页面失效、调试指令、访管中断、算术操作溢出等各种程序性中断。异常是不能被屏蔽的,一旦出现应立即响应并加以处理。,中断和异常的区别,中断是由与现行指令无关的中断信号触发的(异步的),且中断的发生与CPU处在用户模式或内核模式无关,在两条机器指令之间才可响应中断,一般来说,中断处理程序提供的服务不是为当前进程所需的;异常是由处理器正在执行现行指令而引起的,
9、一条指令执行期间允许响应异常,异常处理程序提供的服务是为当前进程所用的。异常包括很多方面,有出错(fault),也有陷入(trap)。,出错和陷入的区别,它们发生时保存的返回指令地址不同,出错保存指向触发异常的那条指令,而陷入保存指向触发异常的那条指令的下一条指令。从异常返回时,出错会重新执行那条指令,而陷入就不会重新执行那条指令。如缺页异常是一种出错,而陷入主要应用在调试中。,硬中断与软中断,中断和异常要通过硬件设施来产生中断请求,可看作硬中断。不必由硬件发信号而能引发的中断称软中断,软中断是利用硬件中断的概念,用软件方式进行模拟,实现宏观上的异步执行效果。,2.2.3 中断装置,发现中断源
10、并产生中断的硬件称中断装置所有计算机系统都采用硬件和软件结合的方法实现中断处理中断装置主要做以下三件事:发现中断源保护现场启动处理中断事件的程序,2.2.4 中断处理程序,处理中断事件的程序称为中断处理程序。它的主要任务是处理中断事件和恢复正常操作 不同中断源对应不同中断处理程序,故快速找到中断处理程序的入口地址是一个关键问题中断处理程序主要做四项工作:保护未被硬件保护的一些必需的处理状态识别各个中断源,分析产生中断的原因处理发生的中断事件恢复正常操作,IBM中大型机中断响应过程,IBM PC机中断的响应过程,2.2.5 中断事件具体处理方法,1、机器故障中断事件的处理 事件是由硬件故障产生的
11、,排除故障须进行人工干预。中断处理能做的工作是:保护现场,防止故障蔓延,报告给操作员并提供故障信息以便维修和校正,及对程序中所造成的破坏进行估价和恢复。,2、程序性中断事件的处理,终止程序执行警告用户交给用户处理,3、外部中断事件的处理,时钟是操作系统进行调度工作的重要工具,如让分时进程作时间片轮转、让实时进程定时发出或接收控制信号、系统定时唤醒或阻塞一个进程、对用户进程进行记账时钟可分成绝对时钟和间隔时钟两种控制台中断事件的处理,4、I/O中断的处理(1),I/O中断种类较多,处理方法各异1)I/O操作正常结束后的处理2)I/O操作发生故障后的处理3)I/O操作发生异常后的处理4)设备报到或
12、设备结束的处理,5、自愿中断事件的处理(1),系统程序或用户程序执行访管指令而引起的中断,它表示运行程序对操作系统功能的调用,所以,也称系统调用,可以看作是机器指令的一种扩充。,自愿中断事件的处理(2),系统调用机制通过特殊硬指令和中断系统来实现。共性处理流程:用户程序执行n号系统调用通过中断系统进入访管中断处理,保护现场通过系统调用入口表,按功能号跳转找到相应功能入口地址执行相应例行程序,结束后正常情况返回系统调用的下一条指令执行,2.2.6 中断优先级和多重中断,1、中断的优先级2、中断的屏蔽3、多重中断事件的处理,1 中断优先级,计算机执行的每一瞬间,可能有几个中断事件同时发生,中断装置
13、如何来响应同时发生的中断呢?它按照预定顺序来响应,这个预定顺序称中断的优先级,首先响应优先级高的中断事件。,2 中断的屏蔽,主机可允许或禁止某类中断的响应,如允许或禁止所有的I/O中断、外部中断、及某些程序性中断。有些中断是不能被禁止的,例如,计算机中的自愿性访管中断就不能被禁止。,3多重中断事件的处理,中断正在进行处理期间,这时 CPU又响应了新的中断事件,于 是暂时停止正在运行的中断处理 程序,转去执行新的中断处理程 序,这就叫多重中断(又称中断 嵌套)。,2.2.7实例研究:Windows 2000/XP中断处理,Windows 2000/XP中断类型 中断有I/O设备、处理器时钟或定时
14、器等,可以启用或禁用。中断是异步事件,可能随时发生,与处理器正在执行的内容无关。异常是同步事件,它是某一个特定指令执行的结果。异常的例子是内存访问错误、调试指令及被零除。内核也将系统服务调用视作异常。硬件和软件都可以产生中断和异常,如总线出错异常由硬件造成,而被零除异常是由软件引起的;同样,I/O设备可产生中断,而内核自身也可以发出中断。,Windows2000/XP陷阱调度,Windows2000/XP中断请求级,Windows 2000/XP中断屏蔽,Windows 2000/XP硬件中断处理,Windows 2000/XP软件中断处理,多数中断由硬件产生,但内核也为多种任务产生软件中断,
15、包括:启动线程调度、处理计时器到时、在特定线程的描述表中异步执行一个过程及支持异步I/O等。延迟过程调用DPC软件中断,延迟过程调用-提交DPC,异步过程调用,异步过程调用APC为用户程序和系统代码提供了一种在特殊用户线程的描述表(特殊的地址空间)中执行代码的方法。,异常调度,异常是由运行程序的执行产生的情况。异常处理工具,允许应用程序在异常发生时可以得到控制。应用程序可以固定这个状态并返回到异常发生的地方展开堆栈,也可以向系统声明不能识别异常,并继续搜寻能处理异常的异常处理程序。除陷阱处理程序解决的异常外,所有异常均由异常调度程序提供服务,它的任务是找到能处理该异常的异常处理程序。如果异常产
16、生于核心态,异常调度程序将调用一个例程来定位处理该异常的异常处理程序。没有被处理的核心态异常是一种致命的系统错误。,系统服务调度(1),系统服务调度(2),2.2.9实例研究:Linux中断处理,1 Linux中断处理过程 2 快中断与慢中断 3 底半处理 4 任务队列 5 底半处理数据结构 6 底半处理的执行过程7 Linux软中断机制,快中断与慢中断,Linux中,可以区分快中断和慢中断两类中断事件。处理慢中断前需保存所有寄存器的内容,而快中断处理仅要保存被常规C函数修改的寄存器;慢中断处理时,不屏蔽其他中断信号,而快中断处理时会屏蔽所有其他中断;慢中断处理完毕后,通常不立即返回被中断的进
17、程,而是进入调度程序重新调度,调度结果未必是被中断的进程运行(是抢先式调度)。而快中断处理完毕后,通常恢复现场返回被中断的进程继续执行(是非抢先式调度)。,底半处理,为了尽快缩短快中断处理时间,以便及时响应处理期间到达的其他中断信号,引入了底半处理的概念。(1)什么是底半处理?(2)为什么需要有底半处理?bottom half handling是一种任务延迟处理机制“硬中断”是外部设备对CPU的中断,top half是硬中断;同时,“软中断”通常是硬中断服务程序对内核的中断,bottom half是软中断;而“信号”也是一种软中断,“信号”是由内核或进程对其他进程的中断。,任务队列,Linux
18、内核中设立任务队列,这是核心对任务进行延迟处理的方法,提供对任务队列中任务排队及处理的通用机制。任务队列和底半处理过程bottom half的关系?核心建立和维护三个一般性任务队列:(1)定时器队列(TQ-TIMER)(2)即时队列(TQ-IMMEDIATE)(3)进程调度队列(TQ-SCHEDULER,底半处理数据结构,底半处理的执行过程,三种情况下执行bottom half处理过程:当调度程序欲选择下一个运行进程之前(Schedule()。当从系统调用返回之前(ret_from_syscall)。当每个中断处理和异常处理返回前(ret_from_intr和ret_from_exceptio
19、n)。定时器中断(IRQ0)中断服务例程的top half与bottom half处理过程间的联系。定时器中断服务例程(函数)叫timer-interrupt,执行它的top half函数为do-timer。执行它的bottom half函数为timer-bh。,Linux软中断机制,Linux的 bottom half Linux的 taskletLinux的 softirq,2.3 进程及其实现,2.3.1 进程的定义和属性2.3.2 进程的状态和转换2.3.3 进程的描述2.3.4 进程切换与模式切换2.3.5 进程的控制2.3.6 实例研究:UNIX SVR4进程管理2.3.7 实例研
20、究:Linux进程管理,2.3.1 进程的定义和性质,进程是一个可并发执行的具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和保护的基本单位。进程是一个既能用来共享资源,又能描述程序并发执行过程的一个基本单位。操作系统引入进程的概念 从理论角度看,是对正在运行的程序过程的抽象;从实现角度看,是一种数据结构,目的在于清晰地刻划动态系统的内在规律,有效管理和调度进入计算机系统主存储器运行的程序。,操作系统为什么要引入进程概念?,原因1-刻画系统的动态性,发挥系统的并发性,提高资源利用率。原因2-它能解决系统的“共享性”,正确描述程序的执行状态。“可再用”程序“可再入”程序
21、“可再入”程序具有的性质,进程的属性,结构性:共享性:动态性:独立性:制约性:并发性:,“可再入”程序举例,2.3.2 进程的状态和转换进程三态模型及其状态转换,进程五态模型及其转换,进程的挂起,为什么要有“挂起”状态?由于进程的不断创建,系统资源已不能满足进程运行的要求,就必须把某些进程挂起(suspend),对换到磁盘镜像区中,暂时不参与进程调度,起到平滑系统操作负荷的目的。,进程的挂起原因(1),(1)系统中的进程均处于等待状态,需要把一些阻塞进程对换出去,腾出足够内存装入就绪进程运行。(2)进程竞争资源,导致系统资源不足,负荷过重,需要挂起部分进程以调整系统负荷,保证系统的实时性或让系
22、统正常运行。(3)定期执行的进程(如审计、监控、记账程序)对换出去,以减轻系统负荷。,进程的挂起原因(2),(4)用户要求挂起自己的进程,以便进行某些调试、检查和改正。(5)父进程要求挂起后代进程,以进行某些检查和改正。(6)操作系统需要挂起某些进程,检查运行中资源使用情况,以改善系统性能;或当系统出现故障或某些功能受到破坏时,需要挂起某些进程以排除故障。,具有挂起功能的进程状态及其转换,具有挂起进程功能的进程状态,进程增加了两个新状态:挂起就绪态(ready suspend)表明进程具备运行条件但目前在二级存储器中,当它被对换到主存才能被调度执行。挂起等待态(blocked suspend)
23、表明进程正在等待某一个事件且在二级存储器中。,挂起进程具有如下特征,该进程不能立即被执行。挂起进程可能会等待事件,但所等待事件是独立于挂起条件的,事件结束并不能导致进程具备执行条件。进程进入挂起状态是由于操作系统、父进程或进程本身阻止它的运行。结束进程挂起状态的命令只能通过操作系统或父进程发出。,2.3.3 进程的描述,操作系统核心控制结构是进程结构,资源管理的数据结构将围绕进程结构展开。操作系统的控制表分为四类,进程控制表,存储控制表,I/O控制表和文件控制表。,操作系统控制表的通用结构,进程映像,操作系统中把进程物理实体和支持进程运行的环境合称为进程上下文(context)。当系统调度新进
24、程占有处理器时,新老进程随之发生上下文切换。进程的运行被认为是在上下文中执行。,进程上下文组成,用户级上下文:由用户程序块、用户数据块和用户堆栈组成的进程地址空间。系统级上下文:包括进程的标识信息、现场信息和控制信息,进程环境块,及系统堆栈等组成的进程地址空间。寄存器上下文:由PSW寄存器和各类控制寄存器、地址寄存器、通用寄存器组成。,进程有四个要素组成,进程程序块进程数据块系统堆栈用户堆栈,用户进程在虚拟内存中的组织,进程控制块,进程控制块P C B,是操作系统用于记录和刻划进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一资料结构,它包括了进程执行时的情况,以及进程让出处理器后所处的
25、状态、断点等信息。进程控制块包含三类信息 标识信息 现场信息 控制信息,进程管理,处于同一状态的所有PCB链接在一起的数据结构称为进程队列(Process Queues)。同一状态进程的PCB既可按先来先到的原则排成队列;也可按优先数或其它原则排成队列。单向链接与双向链接,队列标志,系统为每个队列设置一个队列标志:单向链接时,队列标志指引元指向队列中第一个进程的队列指引元的位置;双向链接时,队列标志的后向指引元指向队列中第一个进程的后向队列指引元的位置;队列标志的前向指引元指向队列中最后一个进程的前向队列指引元的位置,进程控制块的链接,队列管理和状态转换示意图,表格法组织PCB,表格法组织PC
![操作系统教程第三版课件.ppt_第1页](https://www.31ppt.com/fileroot1/2023-3/2/afd0953b-d0e8-4dbf-a294-eb97a6ec54d0/afd0953b-d0e8-4dbf-a294-eb97a6ec54d01.gif)
![操作系统教程第三版课件.ppt_第2页](https://www.31ppt.com/fileroot1/2023-3/2/afd0953b-d0e8-4dbf-a294-eb97a6ec54d0/afd0953b-d0e8-4dbf-a294-eb97a6ec54d02.gif)
![操作系统教程第三版课件.ppt_第3页](https://www.31ppt.com/fileroot1/2023-3/2/afd0953b-d0e8-4dbf-a294-eb97a6ec54d0/afd0953b-d0e8-4dbf-a294-eb97a6ec54d03.gif)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 教程 第三 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-3766698.html