运行基础与结构.ppt
操作系统的运行基础与结构,操作系统的运行基础与结构,处理机的状态中断技术操作系统虚拟机操作系统的组织结构,操作系统的运行基础与结构 主要内容,1.为什么要区分处理机的状态 系统中有两类程序 管理程序 用户程序 管理系统资源 使用资源,提出申请 控制程序运行 被控制 区分处理机状态的目的:保护操作系统 2.什么是处理机的状态 中央处理机的工作状态,当前它正在执行哪类程序,决定 处理机的态。,操作系统的运行基础与结构 处理机的状态,3.处理机状态的分类管态(Supervisor mode)(也叫系统态)操作系统的管理程序执行时机器所处的状态。使用全部指 令(包括一组特权指令);使用全部系统资源(包括整个存储 区域)。用户态(User mode)(也叫目态)用户程序执行时机器所处的状态。在此状态下禁止使用特 权指令,不能直接取用资源与改变机器状态,并且只允许 用户程序访问自己的存储区域。,操作系统的运行基础与结构 处理机的状态,管态 用户态 操作系统的程序执行 用户程序执行 使用全部指令 禁止使用特权指令 使用全部系统资源 只允许用户程序(包括整个存储区域)访问自己的存储区域为了区分处理机的工作状态,需要硬件支持:在计算机的状态寄存器中设置一个系统状态位(或称为模式位)-1位或2位。,操作系统的运行基础与结构 处理机的状态,若用户程序执行时超出了它的权限(如要访问操作系统核心数据或要执行一个特权指令),系统如何处理?将发生中断(属于程序性中断类型),系统从用户态转为管态,由操作系统得到CPU控制权来处理这一非法事件,以保护操作系统。用户程序如何请求操作系统服务?通过系统功能调用。用户程序执行时,若需要请求操作系统服务,则通过一种受控方式进入操作系统,用户态-系统态,由操作系统得到控制权,在系统态下执行相应的服务例程,完成后返回到用户态,让用户程序继续执行(由中断返回指令实现)。,操作系统的运行基础与结构 处理机的状态,4.特权指令集涉及外部设备的输入/输出指令修改特殊寄存器的指令改变机器状态的指令以下情况,由用户态自动转向管态:用户进程请求操作系统的某种服务(系统功能调用)用户程序执行时,发生一次中断(如I/O完成中断)当用户进程产生一个错误状态时(程序性中断)在用户态下企图执行一条特权指令时(程序性中断),操作系统的运行基础与结构 处理机的状态,5.特权指令的功能允许和禁止中断;例:lock all interrupters在进程之间切换处理机;例:switch from user to supervisor 存取用于内存保护的寄存器;例:clear memory执行输入和输出操作;例:start I/O停止一个中央处理机的工作;例:halt,操作系统的运行基础与结构 处理机的状态,6.实例操作系统处理机的状态DOS系统 不分态Windows 系统 3环 用户态0环 系统态还有1、2环预留UNIX系统(Linux)系统 00 核态01 管态11 用户态,操作系统的运行基础与结构 处理机的状态,1.中断概念,操作系统的运行基础与结构 中断技术,所谓中断是指某个事件(例如 电源掉电、定点加法溢出或 I/O传输结束等)发生时,系 统中止现行程序的运行、引 出处理事件程序对该事件进 行处理,处理完毕后返回断 点,继续执行。,2.中断类型按中断功能分类 输入输出中断 I/O传输结束或出错中断外中断 时钟中断、操作员控制台中断、通信中断等机器故障中断 电源故障、主存取指令错等程序性中断 定点溢出、用户态下用核态指令、非法操作等访管中断 对操作系统提出某种需求时所发出的中断按中断方式分类 强迫性中断 不是正在运行的程序所期待的中断如:输入输出中断、外中断、机器故障中断、程序性中断自愿中断 是运行程序所期待的事件如:访管中断,操作系统的运行基础与结构 中断技术,按中断来源分类 中断 由处理机外部事件引起的中断俘获 由处理机内部事件引起的中断,也叫陷入中断与俘获的例,操作系统的运行基础与结构 中断技术,3.中断响应(中断进入),操作系统的运行基础与结构 中断技术,中断源、断点和恢复点中断源:引起中断的事件称中断源,如打印完成中断,其中断源是打印机。断点:发现中断时,刚执行完的那条指令所在的单元号(PC的内容减1,如某程序正在执行0200地址的指令被中断,那么,0200地址就是断点)恢复点:中断时PC所指示的地址(如上例中的恢复点就是在中断返回时执行0200的下一条指令),操作系统的运行基础与结构 中断技术,保护现场和恢复现场现场 在中断的那一时刻能确保程序继续运行的有关信息。后继指令所在主存的单元号程序运行所处的状态(用户态或管态)指令执行情况程序执行的中间结果等,操作系统的运行基础与结构 中断技术,保护现场 当中断发生时,必须立即把现场信息(存放在PC、通用寄存器和一些特殊寄存器中)保存在主存中,这一工作称之为保护现场。恢复现场 程序重新运行之前,把保留的该程序现场信息从主存 中送至相应的指令计数器、通用寄存器或一些特殊的 寄存器中。完成这些工作称为恢复现场。,操作系统的运行基础与结构 中断技术,程序状态字(PSW)定义 反映程序执行时机器所处的现行状态的代码。内容 指令地址、指令执行情况、处理机状态、应屏蔽的中断、寻址方式等。,程序状态字的例IBM 370 机 程序状态字内容 PSW寄存器IBM PC 机 程序状态字内容 CS IP 指令地址 flag 标志寄存器PDP 11系列机 程序状态字内容 PC 指令计数器 PS 处理器状态寄存器寄存器,操作系统的运行基础与结构 中断技术,什么是中断响应中断响应是当中央处理机发现已有中断请求时,中止 现行程序执行,并自动引出中断处理程序的过程。中断响应所需的硬件支持,操作系统的运行基础与结构 中断技术,中断向量中断处理程序的入口地址(PC)中断处理程序的程序状态字(PS)中断响应过程保留程序断点及处理机 有关信息 自动转入相应的中断处 理程序执行,中断响应的实质交换指令地址及处理机 的状态信息,操作系统的运行基础与结构 中断技术,4.软件中断处理当硬件完成了中断进入(中断响应)过程后,由相应的中断处理程序得到控制权,进入了软件的中断处理过程。中断处理程序对中断事件进行处理的程序叫中断处理程序。如时钟中断处理、打印机完成中断处理、打印机缺纸中断处理等等。它是操作系统中与硬件最接近的一部分,是操作系统与硬件的接口。,操作系统的运行基础与结构 中断技术,软件的中断处理过程如图所示。,操作系统的运行基础与结构 中断技术,软件的中断处理过程:硬件故障中断事件的处理程序性中断事件的处理外中断事件的处理外部设备中断的处理,操作系统的运行基础与结构 中断技术,1.什么是操作系统虚拟机在裸机上配置了操作系统程序后就构成了操作系统虚拟机。操作系统的核心在裸机上运行;用户程序在扩充后的机器上运行。,操作系统的运行基础与结构 操作系统虚拟机,操作系统虚拟机的指令系统操作命令(又称命令接口)作业控制语言键盘命令图形化用户界面系统功能调用(又称程序接口),2.操作系统虚拟机的指令系统裸机的指令系统是什么?机器指令,操作系统的运行基础与结构 操作系统虚拟机,1.操作系统的结构操作系统的设计方法单体结构 模块化结构 可扩展内核结构 层次结构,单体结构,模块化结构,操作系统的运行基础与结构 操作系统的结构,可扩展内核结构,内核,层次结构,操作系统的运行基础与结构 操作系统的结构,2.操作系统的层次结构,操作系统的运行基础与结构 操作系统的结构,Linux系统的核心结构,操作系统的运行基础与结构 操作系统的结构,3.实例操作系统的结构,Windows操作系统的结构,操作系统的运行基础与结构 操作系统的结构,区分处理机的态的目的管态、用户态,二者的区别 中断的定义、类型中断响应的定义、实质、所需的硬件支持软件中断处理过程什么是操作系统虚拟机操作系统的结构,操作系统的运行基础与结构 小结,