《【教学课件】第2章操作系统的结构和硬件支持.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第2章操作系统的结构和硬件支持.ppt(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第2章章操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统虚拟机操作系统虚拟机操作系统虚拟机操作系统虚拟机操作系统的组织结构操作系统的组织结构操作系统的组织结构操作系统的组织结构处理机的特权级处理机的特权级处理机的特权级处理机的特权级中断技术中断技术中断技术中断技术必要的硬件支持必要的硬件支持必要的硬件支持必要的硬件支持1操作系统的结构和硬件支持操作系统的结构和硬件支持主要内容主要内容操作系统虚拟机操作系统虚拟机操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统虚拟机操作系统虚拟机2 在裸机上配置了操作系统程序在裸机上配置了操作系统
2、程序 后就构了操作系统虚拟机后就构了操作系统虚拟机。操作系统的核心在裸机上 运行;用户程序在扩充后的机器上运行。操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统虚拟机操作系统虚拟机裸机裸机作作系系统统应应程程序序用用序序程程用用户户操操扩扩充充后后机机器器的的操作系统虚拟机1.什么是什么是操作系统虚拟机操作系统虚拟机思考:什么是虚拟机?为什么要设思考:什么是虚拟机?为什么要设置虚拟机?置虚拟机?All problems in computer science can be solved by another level of indirection David Wheeler3机器指令
3、机器指令2.操作系统虚拟机的指令系统操作系统虚拟机的指令系统(1)(1)裸机的指令系统裸机的指令系统裸机的指令系统裸机的指令系统(2)(2)操作系统虚拟机的指令系统操作系统虚拟机的指令系统操作系统虚拟机的指令系统操作系统虚拟机的指令系统操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统虚拟机操作系统虚拟机 操作命令操作命令(又称命令接口又称命令接口)作业控制语言键盘命令图形化用户界面 系统功能调用系统功能调用(又称程序接口又称程序接口)操作系统的结构操作系统的结构操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构4 操作系统的设计方法操作系统的设计方法单体结构单
4、体结构 模块化结构模块化结构 可扩展内核结构可扩展内核结构 层次结构层次结构操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构应用软件应用软件其他系统软件其他系统软件操作系统其他功能操作系统其他功能操作系统内核 单体结构单体结构 模块化结构模块化结构应用软件应用软件其他系统软件其他系统软件操作系统其他功能操作系统其他功能操作系统内核内核1.操作系统的结构类型操作系统的结构类型5 可扩展内核结构可扩展内核结构内核内核操作系统应用软件应用软件其他系统软件其他系统软件操作系统其他功能操作系统其他功能内核内核核心功能核心功能基础核心基础核心 层次结构层次结构操作系统应用软件应
5、用软件其他系统软件其他系统软件操作系统其他功能操作系统其他功能内核内核操作系统 4 种组织结构示意图操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构62.操作系统的层次结构操作系统的层次结构 操作系统层次结构示意图操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构73.实例实例操作系统的结构操作系统的结构 (1)UNIX(1)UNIX操作系统的结构操作系统的结构操作系统的结构操作系统的结构UNIX操作系统结构示意图操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构 UNIX核心层核心层 处理机管理存储管理设备管理文
6、件系统 UNIX实用层实用层 实用程序 编辑程序、调试程序、系统状态监控、文件管理等实用程序存储管理软件工具 源代码控制程序SCCS、文档准备程序包等8系系 统统 调调 用用 界界 面面程程 序序 库库进程通信进程通信进程调度进程调度存储管理存储管理文件子系统文件子系统高速缓冲高速缓冲字符设备字符设备 块设备块设备 设备驱动程序设备驱动程序用户程序用户程序 硬硬 件件 控控 制制 硬硬 件件 用户级用户级核心级核心级硬件层硬件层进程管理与存储管理进程管理与存储管理网络管理网络管理网络协议网络协议网络驱动网络驱动Linux系统的核心结构示意图(2)Linux(2)Linux系统的核心结构系统的核
7、心结构系统的核心结构系统的核心结构操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构9系统虚拟机系统虚拟机32位位Windows应用程序应用程序32位位Windows应用程序应用程序 16位位Windows应用程序应用程序16位位Windows应用程序应用程序 Windows 子系统子系统WindowsKernelWindowsGDIWindowsUserMS DOS虚拟机虚拟机MS DOS虚拟机虚拟机MS DOS虚拟机虚拟机 可安装的文件系统管理程序可安装的文件系统管理程序32位位FATCD-ROM文件系统文件系统 网络重网络重定向程序定向程序 块块 I/O 子系统
8、子系统 主存管理 调度程序 Vxds服务及动态装入程序 MS DOS VM 管理程序 设备驱动程序:键盘、显示器、鼠标、通信及其他第第 3环环组组件件第第 0环环组组件件文件管理子系统文件管理子系统虚拟机管理子系统虚拟机管理子系统共享的地址空间共享的地址空间Windows系统结构示意图(3)Windows(3)Windows操作系统的结构操作系统的结构操作系统的结构操作系统的结构操作系统的结构和硬件支持操作系统的结构和硬件支持操作系统的结构操作系统的结构处理机的特权级处理机的特权级操作系统的结构和硬件支持操作系统的结构和硬件支持处理机的特权级处理机的特权级10 管理程序管理程序 用户程序用户程
9、序 管理系统资源 使用资源,提出申请 控制程序运行 被控制区分处理机状态的目的:保护操作系统区分处理机状态的目的:保护操作系统区分处理机状态的目的:保护操作系统区分处理机状态的目的:保护操作系统 操作系统的结构和硬件支持操作系统的结构和硬件支持处理机的特权级处理机的特权级1.为什么要区分处理机的状态为什么要区分处理机的状态系统中两类程序的职责和区别系统中两类程序的职责和区别处理机的态,又称为处理机的特权级,是中央处理机的工作状态。当前处理机正在执行哪类程序,决定处理机的态。(1)(1)什么是处理机的态什么是处理机的态什么是处理机的态什么是处理机的态2.处理机的状态及分类处理机的状态及分类11
10、管态管态(Supervisor mode)操作系统的管理程序执行时机器所处的状态,又称处理机的特权级。在此状态下处理机可使用全部指令(包括一组特权指令);使用全部系统资源(包括整个存储区域)。用户态用户态(User mode)用户程序执行时机器所处的状态称为用户态。在此状态下禁止使用特权指令,不能直接取用资源与改变机器状态,并且只允许用户程序访问自己的存储区域。(2)(2)处理机状态的分类处理机状态的分类处理机状态的分类处理机状态的分类操作系统的结构和硬件支持操作系统的结构和硬件支持处理机的特权级处理机的特权级 涉及外部设备的输入涉及外部设备的输入/输出指令输出指令 修改特殊寄存器的指令修改特
11、殊寄存器的指令 改变机器状态的指令改变机器状态的指令12(3)(3)处理机状态的特权指令集处理机状态的特权指令集处理机状态的特权指令集处理机状态的特权指令集操作系统的结构和硬件支持操作系统的结构和硬件支持处理机的特权级处理机的特权级 管态管态管态管态 用户态用户态用户态用户态 操作系统的程序执行 用户程序执行 使用全部指令 禁止使用特权指令 使用全部系统资源 只允许用户程序 (包括整个存储区域)访问自己的存储区域13 DOS系统系统 不分态不分态 Windows 系统系统 3环环 用户态用户态0环环 系统态系统态还有还有1、2环预留环预留 UNIX系统系统(Linux)系统系统 00 核态核态
12、01 管态管态11 用户态用户态 (4)(4)实例操作系统处理机的状态实例操作系统处理机的状态实例操作系统处理机的状态实例操作系统处理机的状态操作系统的结构和硬件支持操作系统的结构和硬件支持处理机的特权级处理机的特权级中断及其处理中断及其处理操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理异常异常Exception中断中断Interrupt ReQuest(IRQ)i386的异常和中断Exceptions and interrupts are both protected control transfers,which cause the processor to sw
13、itch from user to kernel mode(CPL=0)without giving the user-mode code any opportunity to interfere with the functioning of the kernel or other environments.In Intels terminology,an interrupt is a protected control transfer that is caused by an asynchronous event usually external to the processor,suc
14、h as notification of external device I/O activity.An exception,in contrast,is a protected control transfer caused synchronously by the currently running code,for example due to a divide by zero or an invalid memory access.1.异常和中断异常和中断异常异常(Exception)在i386中与trap是一个意思,但中文翻译的时候往往翻译成异常、陷阱或俘获,其实是一个意思。异常是由
15、于程序的行为(如除0错、缺页等)导致的同步同步事件,必须由计算机立刻处理立刻处理。处理完成后,回到程序发生异常处继续执行。中断中断是指某个事件(例如键盘输入、I/O传输结束等)发生时,系统中止现行程序的运行、引出处理事件程序对该事件进行处理,处理完毕后返回现行程序的下一条指令,继续执行。中断处理的时机在指令的间隙,当前指令执行完毕后会检测是否有中断到达,并由系统决定是否进入中断处理。异常和中断(续)异常和中断(续)i386的异常/中断表异常和中断(续)异常和中断(续)中断源中断源:引起中断的事件称中断源,如打印完成中断,其中断源是打印机。断点断点:发生中断时正在运行的程序被暂时停止,程序的暂停
16、点称为断点。例如,某程序正在执行0200地址的指令被中断,那么,0200地址就是断点,在中断返回时就执行0200的下一条指令。中断响应中断响应:是处理机发现有中断请求时,中止现运行程序的执行并自动引出中断处理程序的过程。中断由软硬件协同处理中断装置中断装置:指发现中断,响应中断的硬件中断处理程序中断处理程序:由软件来完成中断系统中断系统=中断装置+中断处理程序152.中断类型中断类型(1)(1)按中断功能分类按中断功能分类按中断功能分类按中断功能分类 输入输出中断输入输出中断 I/O传输结束或出错中断 外中断外中断 时钟中断、操作员控制台中断、通信中断等 机器故障中断机器故障中断 电源故障、主
17、存取指令错等 程序性中断程序性中断 定点溢出、用户态下用核态指令、非法操作 访管中断访管中断 对操作系统提出某种需求时所发出的中断操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理16(2)(2)按中断方式分类按中断方式分类按中断方式分类按中断方式分类 强迫性中断强迫性中断 不是正在运行的程序所期待的中断。如:输入输出中断、外中断、机器故障中断、程序性中断 自愿中断自愿中断 是运行程序所期待的事件。如:访管中断操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理(3)(3)按中断是否可屏蔽按中断是否可屏蔽按中断是否可屏蔽按中断是否可屏蔽 不可屏蔽中断(
18、不可屏蔽中断(NMI)可屏蔽中断可屏蔽中断17 中断中断 由处理机外部事件引起的中断 俘获俘获 由处理机内部事件引起的中断 中断与俘获的例子中断与俘获的例子trap指令指令俘点俘点溢出溢出地址地址越界越界非法非法指令指令exitforkreadclock时钟时钟 rk磁盘磁盘 tty终端终端中断与俘获中断与俘获中断中断俘获俘获中断与俘获示意图(4)(4)按中断来源分类按中断来源分类按中断来源分类按中断来源分类操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理18继续执行继续执行中断进入中断进入中断中断返回返回中断信号中断信号正在执行正在执行的程序的程序中断处中断处理程序理
19、程序中断概念示意图3.中断响应中断响应(中断进入中断进入)操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理19 在中断的那一时刻能确保程序继续运行的有关信息。在中断的那一时刻能确保程序继续运行的有关信息。后继指令所在主存的单元号 程序运行所处的状态 指令执行情况 程序执行的中间结果等(1)(1)保护现场和恢复现场保护现场和恢复现场保护现场和恢复现场保护现场和恢复现场 现场现场操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理20当中断发生时,必须立即把现场信息保存在主存中,这一工作称之为保护现场。保护现场保护现场程序重新运行之前,把保留的该程序现场
20、信息从主存中送至相应的指令计数器、通用寄存器或一些特殊的寄存器中。完成这些工作称为恢复现场。恢复现场恢复现场操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理21指令地址、指令执行情况、处理机状态、应屏蔽的中断等。IBM 370 机机 程序状态字内容 PSW寄存器 IBM PC 机机 程序状态字内容 CS IP 指令地址 flag 标志寄存器 PDP 11系列机系列机 程序状态字内容 PC 指令计数器 PS 处理器状态寄存器(2)(2)程序状态字程序状态字程序状态字程序状态字 (psw)(psw)定义定义反映程序执行时机器所处的现行状态的代码。内容内容 程序状态字的例程序
21、状态字的例操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理22中断响应是当中央处理机发现已有中断请求时,中止现行程序执行,并自动引出中断处理程序的过程。指令计数器指令计数器系统系统堆栈堆栈中断中断向量表向量表处理机状态寄存器处理机状态寄存器继续执行继续执行中断进入中断进入中断中断返回返回中断信号中断信号正在执行正在执行的程序的程序中断处中断处理程序理程序中断响应所需的硬件支持(3)(3)什么是中断响应什么是中断响应什么是中断响应什么是中断响应(4)(4)中断响应所需的硬件支持中断响应所需的硬件支持中断响应所需的硬件支持中断响应所需的硬件支持操作系统的结构和硬件支持操作系
22、统的结构和硬件支持中断及其处理中断及其处理23 保留程序断点及处理机保留程序断点及处理机 有关信息有关信息 自动转入相应的中断处自动转入相应的中断处 理程序执行理程序执行 中断处理程序的中断处理程序的PC中断处理程序的中断处理程序的PS主存主存PCPS PC PS堆栈堆栈堆栈栈堆栈栈顶指针顶指针(4)(1)(2)(3)交换指令地址及处理机 的状态信息中断响应过程示意图(5)(5)中断响应过程中断响应过程中断响应过程中断响应过程(6)(6)中断响应的实质中断响应的实质中断响应的实质中断响应的实质操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理24 当硬件完成了中断进入过程
23、后,由相应的中断处理程序得到 控制权,进入了软件的中断处理过程。软件的中断处理过程如图所示。保留被中断程序的现场保留被中断程序的现场 进入相应的中断服务例程进入相应的中断服务例程 恢复被中断程序的现场恢复被中断程序的现场中断中断返回返回中断中断进入进入k+0现行程序现行程序k+1软件中断处理过程示意图4.软件软件中断处理中断处理操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理必要的硬件支持必要的硬件支持操作系统的结构和硬件支持操作系统的结构和硬件支持中断及其处理中断及其处理主存储器(主存、内存):处理机能直接访问的存储器称为主存储器,用来存放正在或将要执行的系统和用户程
24、序和数据以及程序执行时要求的临时存储空间。只读存储器ROM(Read-only memory):ROM称为BIOS,用来存放基本的I/O程序。随机访问存储器 RAM(random access memory)辅存储器(辅存、外存):处理机不能直接访问的存储器,如磁盘、磁带、光盘等,用来存放大量的数据信息。存储器存储器DMA(Direct Memory Access)Operation of a DMA transferOperation of a DMA transferClocks-Clock Hardware时钟硬件时钟硬件实时时钟(实时时钟(Real Time ClockReal Tim
25、e Clock,RTCRTC)可编程间隔定时器(可编程间隔定时器(Programmable Interval Programmable Interval TimerTimer,PITPIT)时间戳计数器(时间戳计数器(Time Stamp CounterTime Stamp Counter,TSCTSC)。Clocks-Clock HardwareA programmable interval clockClocks-Clock Hardware(续)(续)Programmable interval clockProgrammable interval clock的工作模式的工作模式One-s
26、hot modeOne-shot modeSquare-wave modeSquare-wave mode时钟滴答时钟滴答(Clock tick)(Clock tick)周期性地发生时钟中断(可编程设置间隔)周期性地发生时钟中断(可编程设置间隔)Clocks-Clock Hardware(续)(续)实时时钟实时时钟RTC RTC 在在PCPC机断电后仍能保存时间机断电后仍能保存时间通过主板上的电池供电;通常与通过主板上的电池供电;通常与CMOS RAMCMOS RAM集成到一块芯片上,集成到一块芯片上,也称为也称为 CMOS TimerCMOS Timer可在系统初启时读入可在系统初启时读入并
27、转换为相对于某一基准时间的时钟滴答数并转换为相对于某一基准时间的时钟滴答数操作系统提供实用程序可以设置系统时钟和操作系统提供实用程序可以设置系统时钟和RTCRTC并在二者之间并在二者之间同步同步Clocks-Clock Hardware(续)(续)时间戳记数器TSCPentiumPentium之后的之后的CPUCPU中包含的中包含的6464位的寄存器位的寄存器在每一个振荡信号到达时,该计数器递增在每一个振荡信号到达时,该计数器递增可为操作系统提供更准确的时间度量可为操作系统提供更准确的时间度量第第2章章 操作系统的结构和硬件支持操作系统的结构和硬件支持小结小结操作系统的结构和硬件支持操作系统的结构和硬件支持小结小结25什么是操作系统虚拟机什么是操作系统虚拟机操作系统的结构操作系统的结构区分处理机的态的目的区分处理机的态的目的管态、用户态,二者的区别管态、用户态,二者的区别 中断的定义、类型中断的定义、类型中断响应的定义、实质、所需的硬件支持中断响应的定义、实质、所需的硬件支持软件中断处理过程软件中断处理过程必要的硬件支持,必要的硬件支持,PIT、DMA等等操作系统的结构和硬件支持操作系统的结构和硬件支持小结小结