操作系统教程(第三版) - 西祠胡同_第1页
操作系统教程(第三版) - 西祠胡同_第2页
操作系统教程(第三版) - 西祠胡同_第3页
操作系统教程(第三版) - 西祠胡同_第4页
操作系统教程(第三版) - 西祠胡同_第5页
已阅读5页,还剩41页未读, 继续免费阅读

下载本文档

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

文档简介

1、2020/6/30,1,CH2 处理器管理,2.1 中央处理器 2.2 中断技术 2.3 进程的描述与控制,2020/6/30,2,2.1 中央处理器,2.1.1 中央处理器的含义 2.1.2 单处理器系统和多处理器系统 2.1.3 处理器的组成 2.1.4 特权指令与非特权指令 2.1.5 处理器状态 2.1.6 程序状态字寄存器,2020/6/30,3,2.1.1 中央处理器,中央处理器是电子计算机内部完成指令读出、解释和执行的重要部件,简称CPU。由运算器和控制器组成,有时还包含了高速缓冲存储器。它是现代电子计算机的心脏。,2020/6/30,4,2.1.2 单处理器和多处理器系统,单处

2、理器系统:一个计算机系统只包括一个中央处理器; 多处理器系统:一个计算机系统有多个中央处理器;,2020/6/30,5,从串行到并行,早期计算机系统是基于单个处理器的顺序处理机器,程序员编写串行执行的代码,让其在处理器上串行执行。 为了提高计算机处理速度,想到将多处理器引入计算机,并行处理指令的方法。,2020/6/30,6,2.1.3 处理器的组成(1),1.运算器 CPU中的运算器包括算术逻辑单元(ALU),标志寄存器,累加器,寄存器组等,算术逻辑单元:是运算器的主要部件,完成指令系统所规定的各种运算;,2020/6/30,7,处理器的组成(2),寄存器组:包括通用寄存器组和专用寄存器组;

3、,通用寄存器组:CPU内部的高速数据暂存器; 专用寄存器组:包括程序计数器,堆栈指示器,变址寄存器等;,标志寄存器:也称程序状态字寄存器,存放反映运算结果的各种特征,如有无进位,是否溢出等;,累加器ACC:参与运算、存放运算结果,2020/6/30,8,处理器的组成(3),处理器现场:计算机系统的寄存器个数根据机型的不同而不同,比主存容量小,但访问速度快,称一级存储。这组寄存器所存储的信息与程序的执行有很大关系,构成了处理器现场。,2020/6/30,9,处理器的组成(4),2.控制器 CPU中的控制器主要包括指令寄存器,指令译码器和控制信号发生器,主要完成指令的翻译,并产生各种控制信号,执行

4、相应的指令;,2020/6/30,10,2.1.4 特权指令与非特权指令, 从资源管理和控制程序执行的角度出发,必须把指令寄存器中的指令分作两部分:特权指令、非特权指令,特权指令:只允许操作系统使用,不允许一般用户使用的指令。如启动I/O设备、设置时钟、加载PSW等;,非特权指令:除特权指令之外的指令称为非特权指令;,2020/6/30,11,2.1.5 处理器的状态(1),中央处理器怎么知道当前是操作系统还是一般用户程序在运行呢?,处理器状态标志属于程序状态字PSW的一位,可设置处理器成不同状态。大多数计算机系统将CPU执行状态分为管态和目态。,2020/6/30,12,管态:又叫特权态,系

5、统态或核心态。CPU在管态下可以执行指令系统的全集,使用全部资源。通常,操作系统程序在管态下运行 目态:又叫常态或用户态。CPU处于目态时,只能执行非特权指令。用户程序只能在目态下运行,处理器的状态(2),如果用户程序在目态下执行特权指令,将发生执行中断,这样可以防止用户程序有意或无意地破坏系统;,2020/6/30,13,处理器的状态(3),从管态到目态可以通过修改PSW来实现,这将伴随由操作系统程序到用户程序的转换,从目态转换为管态的唯一途径是 中断,2020/6/30,14,2.1.6 程序状态字寄存器(1),PSW寄存器包括以下内容: 程序基本状态:(1)下一条指令的地址;(2)条件码

6、;(3)处理器状态; 中断码:保存程序执行时当前发生的中断事件; 中断屏蔽位:指明程序执行中发生中断事件时,是否响应出现的中断事件;,2020/6/30,15,2.1.6 程序状态字寄存器(2),PSW用来控制指令执行顺序、并保留和指示与程序有关的系统状态,主要作用是实现程序状态的保护和恢复;,每个程序都有一个与其执行相关的PSW,每个处理器都设置一个PSW寄存器。程序占有处理器执行时,它的PSW将占有PSW寄存器;,2020/6/30,16,2.2中断技术(1),2.2.1 中断的概念 2.2.2 中断源分类 2.2.3 中断处理程序 2.2.4 中断响应 2.2.5 中断事件的具体处理方法

7、 2.2.6 中断的优先级和多重中断,2020/6/30,17,2.2.1中断的概念(1),中断是指程序执行过程中,当发生某个事件时,中止CPU上现行程序的运行,引出处理该事件的程序执行的过程。,2020/6/30,18,中断的概念(2), 请求系统服务 实现并行工作 处理突发事件,都需要打断处理器正常的工作,为此,才提出了“中断”的概念,2020/6/30,19,中断的概念(3),中断源:引起中断的事件称为中断源; 中断请求:中断源向CPU提出处理的请求; 断点:发生中断时被打断程序的暂停点; 中断响应:CPU暂停现行程序而转为响应中断请求的过程; 中断处理程序:处理中断源的程序; 中断处理

8、:CPU执行有关的中断处理程序; 中断返回:返回断点的过程;,2020/6/30,20,中断系统:中断的实现实行软件和硬件综合完成,硬件部分叫做中断装置,软件部分即中断处理程序。中断装置和中断处理程序统称为中断系统。,中断的概念(4),2020/6/30,21,中断的概念(5),中断装置:是发现中断源并产生中断的硬件,由中断逻辑线路和中断寄存器组成;其职能主要有两点:,检查是否有中断事件发生;,若有中断发生,启动操作系统的中断处理程序,保护好被中断程序的断点及现场信息,以便程序在适当时候能恢复运行;,2020/6/30,22,当中断事件发生后,它能改变处理器内操作执行的顺序,是现代操作系统实现

9、并发性的基础之一,中断的概念(6),2020/6/30,23,2.2.2中断源分类(1),按照中断源的自愿程度可以将中断源分成两类: 强迫性中断事件 自愿性中断事件,2020/6/30,24,中断源分类(2),强迫性中断事件 不是正在运行的程序所期待的,而是由于某种事故或外部请求所引起的,它们是否发生,何时发生事先无法预料,因而运行程序可以在任意位置处被打断。分为:,2020/6/30,25,硬件故障中断事件:例如电源故障等;,程序性中断事件:溢出、地址越界等;,外部中断事件:时钟的定时中断、用户在控制台输入了一条命令等;,输入输出中断事件:设备出错、传输结束等,2020/6/30,26,中断

10、源分类(3), 自愿性中断事件是正在运行的程序所期待的事件,正在运行的程序对操作系统有某种需求,一旦机器执行到一条指令(称“访管指令”)时,便自愿停止现行程序的执行而转入访管中断处理程序处理。,2020/6/30,27,中断源分类(4) 两类中断事件,2020/6/30,28,中断源分类(5),按照中断信号的来源,可把中断分为外中断和内中断两类: 外中断(又称中断)指来自处理器和主存之外的中断; 内中断(又称异常)指来自处理器和主存内部的中断;,2020/6/30,29,中断源分类(6), 外中断包括:电源故障中断、时钟中断、控制台中断、关机中断和I/O中断等 不同的外中断具有不同的中断优先级

11、,处理高一级中断时,往往会屏蔽低级中断,2020/6/30,30,中断源分类(7),内中断包括:通路校验错、主存奇偶错、非法操作码、地址越界、页面失效、调试指令、访管中断、算术操作溢出等各种程序性中断;,2020/6/30,31,中断源分类(8),按产生中断的设施来划分中断类型: 中断和异常要通过硬件设施来产生中断请求,可看作硬中断 不必由硬件发信号而能引发的中断称软中断 软中断是利用硬件中断的概念,用软件方式进行模拟,实现宏观上的异步执行效果,2020/6/30,32,中断源分类(9),软中断是由内核或进程对某个进程发出的中断信号,可看作内核与进程或进程与进程之间用来模拟硬中断的一种信号通信

12、方式。,2020/6/30,33,2.2.3 中断处理程序,中断处理程序主要工作: 保护CPU现场; 处理发生的中断事件; 恢复正常操作;,不同中断源对应不同的中断处理程序;,2020/6/30,34,2.2.4 中断响应(1),处理器总是按程序状态字寄存器中的PSW字的内容来控制程序的执行,所以,哪个程序的PSW在程序状态字寄存器中,处理器就一定执行哪个程序的指令。,为了说明中断响应过程,区分三种PSW: 1)当前PSW 2)旧PSW 3)新PSW,2020/6/30,35,中断响应过程: 1)中断装置发现中断事件,将中断事件存入程序状态字寄存器中当前PSW的中断码位置上; 2)根据发生的事

13、件找出对应的旧PSW的存放位置,把当前的PSW保存到该位置上; 3)找出对应的新PSW,将它送入程序状态字寄存器;,中断响应(2),2020/6/30,36,4)保护被中断程序的现场信息 把中断时的通用寄存器内容、控制寄存器内容以及已被中断装置保护的旧PSW保存到被中断程序的进程控制块中; 5)分析中断原因 通过分析PSW中的中断码,可知中断的具体原因; 6)处理发生的中断事件 针对不同事件,进行不同的中断处理;,中断响应(3),2020/6/30,37,2.2.5 自愿中断事件的处理方法,自愿中断事件的处理 用户程序执行访管指令而引起的中断,它表示运行程序对操作系统功能的调用,所以,也称“系

14、统调用”,可以看作是机器指令的一种扩充。,2020/6/30,38,自愿中断事件的处理方法,系统调用机制通过特殊指令和中断系统来实现。处理流程为: 用户程序执行n号系统调用; 通过中断系统进入访管中断处理; 保护现场; 通过系统调用入口表,按功能号跳转找到相应功能入口地址; 执行相应例行程序,结束后正常情况返回原程序的下一条指令继续执行;,2020/6/30,39,2.2.6 中断优先级和多重中断,1、中断的优先级 2、如何确定中断的优先级? 3、中断的屏蔽 4、多重中断事件的处理 5、定义中断优先级,2020/6/30,40,中断优先级和多重中断,1、中断的优先级 计算机执行的每一瞬间,可能

15、有几个中断事件同时发生,中断装置如何来响应同时发生的中断呢?,按照预定顺序来响应,这个预定顺序称中断的优先级,2020/6/30,41,中断优先级和多重中断,2、如何确定中断的优先级? 计算机系统中,各中断源的优先顺序是根据某个中断源或中断级若得不到及时响应,造成计算机出错的严重性程度来定。,2020/6/30,42,中断优先级和多重中断,一般来讲,中断优先级由高到低的顺序是: 硬件故障中断自愿性中断程序性中断外部中断输入输出中断,2020/6/30,43,中断优先级和多重中断,3、中断的屏蔽 指程序提出中断请求后,CPU不予响应的状态。常常用来在处理某一中断请求时防止同级中断的干扰或在处理一段不可分割,必须连续执行的程序时防止任何中断事件的干扰。,如允许或禁止所有的I/O中断、一些外部中断等,通过设程序状态字中的状态屏蔽位标志,2020/6/30,44,中断优先级和多重中断,通常,中断处理程序只屏蔽比自

温馨提示

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

评论

0/150

提交评论