操作系统处理器管理整理ppt.ppt
《操作系统处理器管理整理ppt.ppt》由会员分享,可在线阅读,更多相关《操作系统处理器管理整理ppt.ppt(100页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统处理器管理整理ppt Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望主要内容什么是处理器管理?处理器的相关知识中断技术进程与线程处理器调度作业管理与调度低级调度什么是处理器管理?处理器管理是操作系统的重要组成部分,负责管理、调度和分派计算机系统的重要资源处理器,并控制程序执行。涉及两方面内容处理器处理器运行的程序(进程)运行的程序(进程)处理器的相关知识处理器寄存器机器指令处理器状态程序状态字(PSW,Program Status Word)处理器内部组成
2、:控制器控制器运算器运算器寄存器寄存器中断装置中断装置输入输入/输出电路输出电路高速缓存高速缓存(Cache)(Cache)寄存器通用寄存器通用寄存器数据寄存器数据寄存器地址寄存器地址寄存器I/OI/O地址寄存器地址寄存器I/OI/O缓冲寄存器缓冲寄存器控制寄存器控制寄存器 程序计数器程序计数器 指令寄存器指令寄存器 中断寄存器中断寄存器 内存和内存和I/OI/O控制寄存器控制寄存器机器指令指令是指示计算机执行某些操作的命令,一台计算机的所指令是指示计算机执行某些操作的命令,一台计算机的所有指令的集合,称为指令系统,反映机器的功能和能力有指令的集合,称为指令系统,反映机器的功能和能力指令系统可
3、分为:指令系统可分为:复杂指令系统复杂指令系统(CISC)(CISC)、精简指令系统、精简指令系统(RISC)(RISC)指令分类指令分类 按功能分:按功能分:运算(算术运算、逻辑运算、移位运算)运算(算术运算、逻辑运算、移位运算)程序控制(转移、子程序调用、返回)程序控制(转移、子程序调用、返回)数据传送(一般传送、堆栈操作、数据交换)数据传送(一般传送、堆栈操作、数据交换)输入输入/输出指令输出指令 按使用者分:按使用者分:特权指令,仅供操作系统内核调用特权指令,仅供操作系统内核调用非特权指令非特权指令处理器状态特权指令的执行限制,使处理器必须能区分当前特权指令的执行限制,使处理器必须能区
4、分当前运行的程序是操作系统还是普通应用程序运行的程序是操作系统还是普通应用程序处理器状态:处理器状态:管理状态(特权状态、系统状态、特态、管态),能管理状态(特权状态、系统状态、特态、管态),能执行所有机器指令执行所有机器指令 用户状态(目标状态、用户模式、常态、目态),只用户状态(目标状态、用户模式、常态、目态),只能执行非特权指令能执行非特权指令中断导致状态转换中断导致状态转换 程序请求操作系统服务程序请求操作系统服务 产生中断事件产生中断事件程序状态字(PSW)用于区别不同的处理器工作状态每个程序都有一个与其执行相关的PSW,而每个处理器均设置一组相关寄存器用于存储PSW信息PSW的主要
5、内容程序基本状态(程序计数器、条件码、状态位)程序基本状态(程序计数器、条件码、状态位)中断码中断码中断屏蔽位中断屏蔽位中断技术什么是中断?中断源分类中断装置中断处理程序中断的优先级和多重中断什么是中断?中断是用来向CPU报告某设备已完成某项操作的手段,是并发程序的基础。中断是指程序执行过程中,当发生某个事件时,?终止CPU上现行程序的运行,引出处理该事件的服务程序执行的过程。中断事件处理需要硬件(中断装置)和软件(中断处理程序)配合完成。中断源分类中断源:引起中断的事件引起中断的事件按中断事件的性质和激活的手段分:强迫性中断事件强迫性中断事件机器故障、程序性错误(异常)、外部中断、输入机器故
6、障、程序性错误(异常)、外部中断、输入输出中断事件、输出中断事件、自愿性中断事件自愿性中断事件调用访管指令调用访管指令中断源分类内外的划分标准:处理器和主存为内,其他硬件为外处理器和主存为内,其他硬件为外按中断信号的来源分:外中断(中断)外中断(中断)电源故障中断、电源故障中断、时钟中断(外部)时钟中断(外部)、控制台中断、控制台中断、输入输出中断、输入输出中断、内中断(异常)内中断(异常)通路校验错、主存奇偶校验错、非法操作码、地址通路校验错、主存奇偶校验错、非法操作码、地址越界、页面失效、调试指令、访管中断、算术操作越界、页面失效、调试指令、访管中断、算术操作溢出、溢出、中断与异常的区别中
7、断特点:中断特点:与现行指令无关与现行指令无关 发生时间与发生时间与CPUCPU所处状态无关所处状态无关 两条指令之间才能响应中断两条指令之间才能响应中断 可被屏蔽可被屏蔽 可嵌套可嵌套异常特点:异常特点:由现行指令执行而引起由现行指令执行而引起 在目态发生在目态发生 可在一个指令周期内处理可在一个指令周期内处理 不可屏蔽、不可嵌套不可屏蔽、不可嵌套 可细分为:可细分为:出错,处理完后回到当前出错指令出错,处理完后回到当前出错指令陷入,处理完后执行下一条指令(常用于系统功能调用)陷入,处理完后执行下一条指令(常用于系统功能调用)中断装置定义:发现中断源并产生中断的硬件,通常包括逻辑发现中断源并
8、产生中断的硬件,通常包括逻辑电路和中断寄存器电路和中断寄存器具体功能:捕获中断源,响应中断请求捕获中断源,响应中断请求保护现场保护现场启动处理中断事件的中断处理程序,启动处理中断事件的中断处理程序,CPUCPU从目从目态切换为管态态切换为管态32位处理器的PC机通常的中断硬件结构系统数据总线CPUINTINTA主中断控制器主中断控制器IRQ0 时钟键盘tty2tty1IRQ8实时时钟中断装置工作过程演示0000中断寄存器中断寄存器中断装置中断装置中断源中断源1写写中断控制部件中断控制部件读读内存内存PSW寄存器寄存器控制控制1#中断向量中断向量现行现行PSW中断处理程序处理中断事件的程序具体功
9、能:保护一些未被硬件保护的现场信息保护一些未被硬件保护的现场信息识别中断源,分析中断产生的原因识别中断源,分析中断产生的原因处理发生的中断事件处理发生的中断事件恢复正常操作恢复正常操作实现方法:向量地址是中断服务程序的入口向量地址是中断服务程序的入口中断向量表中断向量表0130#入口地址1#入口地址3#入口地址处理程序段中断事件处理中断和异常的一般处理过程中断和异常的一般处理过程硬件故障中断硬件故障中断程序性中断(程序性中断(浮点溢出、非法指令浮点溢出、非法指令)输入输出中断输入输出中断 I/OI/O操作正常结束操作正常结束 I/OI/O操作发生故障操作发生故障 I/OI/O操作发生异常操作发
10、生异常 设备报道或设备结束设备报道或设备结束访管中断访管中断时钟中断时钟中断中断的优先级优先级同时有多个中断事件发生时,中断装置按一定同时有多个中断事件发生时,中断装置按一定顺序对其作出响应,其先后顺序即优先级顺序对其作出响应,其先后顺序即优先级优先级设定的原则优先级设定的原则按造成计算机系统出错的严重程度划分按造成计算机系统出错的严重程度划分例,机器校验中断例,机器校验中断 自愿性中断自愿性中断 程序性中断程序性中断 外部中断外部中断 输入输出中断输入输出中断 重启动中断重启动中断 中断的优先级和多重中断中断优先级的设计导致:中断屏蔽中断屏蔽高优先级的中断响应过程中,应屏蔽低优先级的中高优先
11、级的中断响应过程中,应屏蔽低优先级的中断断有些中断是不能被屏蔽的,如自愿访管中断有些中断是不能被屏蔽的,如自愿访管中断多重中断事件的处理 中断处理过程中,又产生了新的中断事件串行处理串行处理中断处理过程中关中断中断处理过程中关中断嵌套处理嵌套处理开中断,暂停当前执行的中断处理程序,转而执行开中断,暂停当前执行的中断处理程序,转而执行更高优先级的中断处理程序更高优先级的中断处理程序即时处理即时处理主要针对中断处理程序执行过程中发生的程序性中主要针对中断处理程序执行过程中发生的程序性中断断Linux中断处理中断 自陷慢中断快中断 进程正在运行 用户态 核心态 上半部分处理 返回原进 程运行 排队下
12、半部分 快中断处理 系统调用处理 从系统调用返回 ret_from_sys_call 调用schedule()调度新进程运行运行 用户态 调度下半部分do_bottom_half()/do_softirq()处理积累的信号 do_signal()restore_all中断快中断与慢中断区别慢中断处理前需要保存所有寄存器的值,而快中断仅需保存会被内核使用的寄存器的值慢中断处理时,不关中断,快中断处理时,关中断慢中断处理完成后,通常不立即返回被中断进程,而是转而执行调度程序。快中断处理完成后,通常返回被中断进程继续执行Minix中断处理类似于linux的低半处理方式目的目的:为了缩短屏蔽中断的时间
13、为了缩短屏蔽中断的时间,提高系统并发工提高系统并发工作的能力作的能力一种任务延迟处理机制一种任务延迟处理机制,核心代码在关中断的核核心代码在关中断的核心态完成与中断事件有关的基本处理心态完成与中断事件有关的基本处理,另外一部另外一部分耗时的工作留在中断处理例程之外分耗时的工作留在中断处理例程之外,在开中断在开中断的非核心态完成。的非核心态完成。这些非核心态运行的代码,在这些非核心态运行的代码,在MinixMinix中被组织成中被组织成与设备基本相对应的任务(驱动程序)进程,如与设备基本相对应的任务(驱动程序)进程,如磁盘任务、终端任务、时钟任务等等磁盘任务、终端任务、时钟任务等等,其中中断其中
14、中断任务需要对应如键盘任务需要对应如键盘,RS232,RS232串口等硬件串口等硬件.信号机制一种模拟硬件中断的简单通信机制(软件中断)内核向进程(进程发生异常,向其通知)内核向进程(进程发生异常,向其通知)进程向进程(进程间通信,发送某个事件)进程向进程(进程间通信,发送某个事件)signal,killPOSIX定义的信号类型(终端,Ctrl+C,2)Ctrl+ZCtrl+Z,SIGSTOP SIGSTOP 信号的检测与处理流程系统空间中断或异常服务当前进程因中断/异常而进入核心态在返回用户态之前,调用do_signal(),handle_signal()转向用户空间执行信号处理程序陷入内核
15、后执行善后工作从内核返回用户空间用户空间应用程序信号处理程序应用程序继续执行发送信号执行信号处理程序断点断点返回信号处理程序执行结束,执行sigreturn()进程进程是现代操作系统中最基本、最重要的概念进程是现代操作系统中最基本、最重要的概念两个角度看进程概念:两个角度看进程概念:从理论角度看,进程是对正在运行的程序活动规律的从理论角度看,进程是对正在运行的程序活动规律的抽象抽象 从实现角度看,进程是一种数据结构从实现角度看,进程是一种数据结构为什么引入进程?为什么引入进程?刻画系统的动态性、发挥系统的并发性,提高资源利刻画系统的动态性、发挥系统的并发性,提高资源利用率(并发程序设计的工具)
16、用率(并发程序设计的工具)解决共享性,正确描述程序的执行状态(标识程序的解决共享性,正确描述程序的执行状态(标识程序的多次运行)多次运行)程序共享性可再入,可再用可再入程序,只有代码部分,调用方提供工作区,可同时被多个程序调用可再用程序,调用过程中可修改自身数据,一次只能被一个程序调用,串行对于可再入程序的多次运行,难以用程序本身来标识,需引入新的概念进程进程的定义与性质定义定义 进程进程(process)(process)是一个是一个可并发执行可并发执行的具有独立功能的的具有独立功能的程程序序关于某个关于某个数据集合数据集合的一次的一次执行过程执行过程,也是操作系统,也是操作系统进行进行资源
17、分配和保护的基本单位资源分配和保护的基本单位。性质性质 结构性结构性 共享性共享性 动态性动态性 独立性独立性 制约性制约性 并发性并发性进程的状态和转换三态模型运行态就绪态等待态落选选中等待结束出现等待事件阻塞态、睡眠态进程的状态和转换五态模型运行态就绪态等待态落选选中等待结束出现等待事件新建态终止态具有挂起功能的系统什么是进程挂起?将进程对换到外部存储器上,释放其占有的系将进程对换到外部存储器上,释放其占有的系统资源,排除在进程调度之外统资源,排除在进程调度之外为什么要挂起进程?提高系统资源的利用率提高系统资源的利用率减轻系统的负载减轻系统的负载调试程序、排除故障调试程序、排除故障具有挂起
18、状态的状态转换模型挂起就绪态挂起等待态新建态就绪态等待态运行态终止态提交提交等待事件结束等待事件结束挂起挂起挂起解除挂起解除挂起进程的描述操作系统的控制结构通常以表的方式来管理和维护通常以表的方式来管理和维护常见的四类表常见的四类表存储器设备文件进程存储表I/O表文件表进程表进程1内存映像进程N内存映像进程的描述进程的内存映像进程控制块(PCB)用户堆栈用户私有地址空间(代码段、数据段)共享地址空间代码段数据段堆栈段Minix进程结构进程上下文进程物理实体和支持进程运行的环境合称为进程上下文用户级上下文程序段、数据段、共享存储区、用户栈程序段、数据段、共享存储区、用户栈寄存器上下文程序状态字寄
19、存器、栈指针寄存器、控制寄存器、程序状态字寄存器、栈指针寄存器、控制寄存器、通用寄存器通用寄存器系统级上下文进程控制块、主存管理信息(如页表)、核心栈进程控制块、主存管理信息(如页表)、核心栈进程的描述进程控制块的结构每个进程都有且只有一个进程控制块每个进程都有且只有一个进程控制块进程标识信息(外部标识+内部标识)进程现场信息(通用寄存器、PSW寄存器、各种指针)进程控制信息(调度、组成、通信等信息、资源清单等)Minix进程控制表内容进程管理进程管理内存管理内存管理文件管理文件管理寄存器寄存器正文段正文段(代码段代码段)指针指针UMASKUMASK掩码掩码程序计数器程序计数器数据段指针数据段
20、指针根目录根目录程序状态字程序状态字(PSW)(PSW)bssbss段指针段指针工作目录工作目录栈指针栈指针退出状态退出状态文件描述符文件描述符进程状态进程状态信号状态信号状态有效有效UIDUID进程开始时间进程开始时间进程标识号进程标识号(PID)(PID)有效有效GIDGID使用的使用的CPUCPU时间时间父进程父进程(PPID)(PPID)系统调用参数系统调用参数子进程的子进程的CPUCPU时间时间进程组进程组(GID)(GID)各种标志位各种标志位下次报警时间下次报警时间真实真实UIDUID消息队列指针消息队列指针有效有效UIDUID挂起的信号位挂起的信号位真实真实GIDGID进程标识
21、号进程标识号(PID)(PID)有效有效GIDGID各种标志位各种标志位信号位图信号位图各种标志位各种标志位进程控制块单个进程块刻画一个进程的运行状态进程控制块的集合,则刻画了一个操作系统的当前状态进程控制块的使用和修改,只能由操作系统内核来完成进程队列将处于同一状态的所有进程控制块链接在一起的数据结构,称为进程队列便于操作系统进行统一的管理和调度先进先出PCB进程队列管理和状态转换示意CPU提交完成指派就绪队列超时事件1等待队列事件n等待队列等待事件1等待事件n等待事件2事件出现进程切换与模式切换模式切换进程切换模式切换是中断驱动的,在用户态和核心态之模式切换是中断驱动的,在用户态和核心态之
22、间切换间切换进程切换只能在核心态(管理态)完成,是一进程切换只能在核心态(管理态)完成,是一个进程与另一个进程之间的切换个进程与另一个进程之间的切换进程切换一定是先产生模式切换,而模式切换进程切换一定是先产生模式切换,而模式切换不一定导致进程切换。不一定导致进程切换。(模式切换频繁、进程(模式切换频繁、进程切换较少)切换较少)进程切换与模式切换用户态运行(1)核心态运行(2)等待态(4)就绪态(3)中断引起的模式切换模式切换中断、中断返回调度进程唤醒等待用户进程系统进程用户进程/系统进程用户进程和系统进程是一个进程的两个侧面,对应一个进程实体(PCB)系统进程系统进程是在核心态执行操作系统代码
23、的进程是在核心态执行操作系统代码的进程用户进程用户进程是在用户态执行用户程序的进程是在用户态执行用户程序的进程进程控制原语:在管态下执行、完成系统特定功能的过程。在管态下执行、完成系统特定功能的过程。其执行不可中断其执行不可中断操作系统内核实现操作系统内核实现操作系统用于进行进程控制的工具操作系统用于进行进程控制的工具进程控制的内容进程创建进程阻塞和唤醒进程撤消(终止)进程挂起和激活进程创建常见原语:常见原语:fork,clonefork,clone fork,fork,派生,父子进程关系派生,父子进程关系 clone,clone,克隆,对等关系克隆,对等关系主要内容:主要内容:申请申请PCB
24、PCB 分配进程映像空间分配进程映像空间 分配资源分配资源 将进程内容装入分配空间将进程内容装入分配空间 初始化初始化PCBPCB,分配唯一标识,分配唯一标识 加入就绪队列,或投入运行加入就绪队列,或投入运行 通知操作系统其他模块通知操作系统其他模块进程阻塞与唤醒常见原语(阻塞):常见原语(阻塞):wait,waitpidwait,waitpid进程阻塞内容:进程阻塞内容:保存现场到保存现场到PCBPCB 修改进程状态(运行修改进程状态(运行等待)等待)将将PCBPCB加入相加入相应应等待等待队队列列 转转入入进进程程调调度程序,度程序,调调度其他度其他进进程程进进程程唤唤醒内容:醒内容:从相
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 处理器 管理 整理 ppt
限制150内