试论操作系统的运行环境.ppt_第1页
试论操作系统的运行环境.ppt_第2页
试论操作系统的运行环境.ppt_第3页
试论操作系统的运行环境.ppt_第4页
试论操作系统的运行环境.ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

1 8 1中央处理器CPU一 CPU的构成与基本工作方式 CPU包含 运算器 控制器 寄存器 高速缓存 PC IR 数据寄存器 处理器 内存 总线 PSW 地址寄存器 控制和状态寄存器 高速缓存Cache 运算器 控制器 1 8操作系统的运行环境 运算器实现指令中的算术和逻辑运算 是计算机计算的核心 控制器负责控制程序运行的流程 包括取指令 维护CPU状态 CPU与内存的交互等等 寄存器是指令在CPU内部作处理的过程中暂存数据 地址以及指令信息的存储设备 在计算机的存储系统中它具有最快的访问速度 高速缓存处于CPU和物理内存之间 一般由控制器中的内存管理单元 MMU MemoryManagementUnit 管理 访问速度快于内存 低于寄存器 利用程序局部性原理使得高速指令处理和低速内存访问得以匹配 从而提高CPU的效率 处理器中的寄存器 寄存器提供了一定的存储能力速度比主存快得多造价高 容量一般都很小两类寄存器 用户可见寄存器高级语言编译器通过算法分配并使用之 以减少程序访问主存次数 控制和状态寄存器用于控制处理器的操作 由OS的特权代码使用 以控制其它程序的执行 用户可见寄存器 机器语言 汇编语言 直接引用包括数据寄存器 地址寄存器等数据寄存器 dataregister 又称通用寄存器地址寄存器 addressregister 用于存储数据及指令的物理地址 如indexregister segmentpointer stackpointer 控制和状态寄存器 用于控制处理器的操作大部分对于用户是不可见的一部分可以在某种特权模式 由OS使用 下访问 常见的控制和状态寄存器 程序计数器 PC ProgramCounter 记录将要取出的指令的地址指令寄存器 IR InstructionRegister 包含最近取出的指令程序状态字 PSW ProgramStatusWord 记录处理器的运行模式信息等等 指令执行的基本过程 1 两个步骤 先从存储器中每次读取一条指令然后执行这条指令一个单条指令处理过程称为一个指令周期程序的执行是由不断取指和执行的指令周期组成 每个指令周期开始时 依据在程序计数器中的指令地址从存储器中取一条指令在取指完成后根据指令类别自动将程序计数器的值变成下条指令的地址取到的指令放在指令寄存器 IR 中处理器解释并执行所要求的动作 指令执行的基本过程 2 5类指令 访问存储器指令 处理器和存储器间数据传送I O指令 处理器和I O设备间数据传送和命令发送算术逻辑指令 数据处理指令 执行数据算术和逻辑操作控制转移指令 指定一个新的指令的执行起点处理器控制指令 修改处理器状态 改变处理器工作方式 特权指令和非特权指令 特权指令 只能由操作系统使用的指令使用多道程序设计技术的计算机指令系统必须要区分为特权指令和非特权指令 CPU如何知道当前运行的是操作系统还是一般应用软件 有赖于处理器状态 处理器的状态 多数系统将处理器工作状态划分为管态和目态 管态 操作系统管理程序运行的状态 较高的特权级别 又称为特权态 特态 系统态 核心态目态 用户程序运行时的状态 较低的特权级别 又称为普通态 普态 用户态有些系统将处理器状态划分核心状态 管理状态和用户程序状态 目标状态 三种 实例 x86系列处理器 386 486 Pentium系列都支持4个处理器特权级别 特权环 R0 R1 R2和R3 从R0到R3特权能力依次降低R0相当于双状态系统的管态R3相当于目态R1和R2则介于两者之间 它们能够运行的指令集合具有包含关系 四个级别运行不同类别的程序 R0 运行操作系统核心代码R1 运行关键设备驱动程序和I O处理例程R2 运行其它受保护共享代码 如语言系统运行环境R3 运行各种用户程序现有基于x86处理器的操作系统 如UNIX Linux以及Windows系列大都只用了R0和R3两个特权级别 图 Intel系列CPU的特权级别 管态和目态的差别 处理器处于管态时 全部指令 包括特权指令 可以执行可使用所有资源并具有改变处理器状态的能力处理器处于目态时 只有非特权指令能执行 程序状态字PSW PSW ProgramStatusWord CPU的状态 指明管态还是目态 用来说明当前在CPU上执行的是操作系统还是一般用户程序 从而决定其是否可以使用特权指令或拥有其它的特殊权力条件码 反映指令执行后的结果特征中断屏蔽码 指出是否允许中断 例1 微处理器M68000的程序状态字 条件位 C 进位标志位V 溢出标志位Z 结果为零标志位N 结果为负标志位I0 I2 三位中断屏蔽位S CPU状态标志位 为1处于管态 为0处于目态T 陷阱 Trap 中断指示位为1 在下一条指令执行后引起自陷中断 CPU状态的转换 目态 管态其转换的唯一途径是通过中断管态 目态可用设置PSW 修改程序状态字 实现 思考题 什么是管态 什么是目态 为什么要区分二态 你认为用什么方法可以区分二态 在什么情况下处理机的状态会从目态转换到管态 如何实现这种转换 1 8 2存储系统 作业必须把它的程序和数据存放在内存中才能运行多道程系统中 若干个程序和相关的数据要放入主存储器操作系统要管理 保护程序和数据 使它们不至于受到破坏操作系统本身也要存放在主存储器中并运行 一 存储器类型 RAM和ROM二 存储系统的层次结构 存储访问的局部性原理 容量 速度 光盘 磁盘 优盘 磁带 硬盘 硬盘缓存 内存 高速缓存 寄存器 256K 512K 128M 2G 2M 40G 80G 650M 1 44M 64M 400G 读写型的存储器可把数据存入其中任一地址单元 并可在以后的任何时候把数据读出 或者重新存入新的数据的一种存储器常被称为随机访问存储器 RAM RandomAccessMemory RAM主要用作存放随机存取的程序的数据 只读型的存储器 只能从其中读取数据 但不能随意用普通方法写入数据 写入数据只能用特殊方法 称为只读存储器 ROM Read OnlyMemory 变型 PROM和EPROMPROM 一种可编程只读存储器 使用特殊PROM写入器写入数据EPROM 用特殊的紫外线光照射此芯片 以 擦去 信息 恢复原来状态 然后使用特殊EPROM写入器写入数据 存储器的层次结构 存储系统设计三个问题 容量 速度和成本容量 需求无止境速度 能匹配处理器的速度成本问题 成本和其它部件相比应在合适范围之内 容量 速度和成本三个目标不可能同时达到最优 要作权衡存取速度快 每比特价格高容量大 每比特价格越低 同时存取速度也越慢 解决方案 采用层次化的存储体系结构当沿着层次下降时每比特的价格将下降 容量将增大速度将变慢 处理器的访问频率也将下降 存储访问局部性原理 提高存储系统效能关键点 程序存储访问局部性原理程序执行时 有很多的循环和子程序调用 一旦进入这样的程序段 就会重复存取相同的指令集合对数据存取也有局部性 在较短的时间内 稳定地保持在一个存储器的局部区域处理器主要和存储器的局部打交道在经过一段时间以后 使用的代码和数据集合会改变 设计多级存储的体系结构 假设两级存储器 第I级包含1KB 存取时间为0 1 s第II级包含1MB 存取时间为1 s存取I级中的内容 直接存取存取II级 首先被转移到I级 然后再存取假设确定内容所在位置时间可以忽略若在I级存储器中发现存取对象的概率是95 则平均访问时间为 结果非常接近I级存储的存取时间 思考题 层次化的存储体系结构有什么好处 处理器如何知道要访问的数据是在内存还是在Cache 请设计一个你认为可行的方案 提示 从内存装数据到Cache以块为单位 一块一般为1 4k 什么叫存储访问局部性原理 缓冲技术引入缓冲目的 缓和CPU与设备速度不匹配的矛盾 CPU Cache 内存 Buffer 外部设备 字传送 块传送 缓冲包括 Cache和Buffer 内存可看作由一些固定大小的块构成 每块K个字 Cache由一些存储槽构成 每槽K个字 需要访问某内存块中的字时 把该块移到某个槽中 Cache读 开始 CPU需要读内存地址RA中的数据 包含RAM的块在Cache中 访问内存中包含RA的块 为内存块分配Cache槽 取RA中的字传递给CPU 将内存块装入Cache槽 结束 是 否 什么是中断 指CPU对系统中或系统外发生异步事件的响应异步事件是指无一定时序关系的随机发生事件如外部设备完成数据传输 实时设备出现异常等 中断 名称源于 当异步事件发生后 打断了对当前程序的执行而转去处理该异步事件直到处理完了后 再转回原程序中断点继续执行 1 8 3中断技术 从用户角度看中断 引入中断的目的解决主机与外设的并行工作问题提高可靠性实现多机联系实现实时控制特点 1 中断是随机的2 中断是可恢复的3 中断是自动处理的 中断源 引起中断发生的事件中断寄存器 记录中断系统堆栈 内存中的一块区域 用于保存现场 几个概念 中断类型 强迫性中断正在运行的程序所不期望的 由于某种硬件故障或外部请求引起的自愿性中断用户在程序中有意识安排的中断 是由于用户在编制程序时因为要求操作系统提供服务 有意使用 访管 指令或系统调用 使中断发生 强迫性中断输入 输出 I O 中断 主要来自外部设备通道程序性中断 运行程序中本身的中断 如被0除 缺页中断 缺段中断 地址越界 时钟中断控制台中断硬件故障中断 自愿性中断又称访管中断执行I O指令 创建进程 分配内存信号量操作 发送 接收消息 IBM370中的中断 1 机器故障中断 如电源故障 电路检验出错等2 输入输出中断 I O设备完成任务时产生3 外部中断 时钟中断 多机系统中其它CPU的通信要求中断等4 程序中断 程序中的问题引起的中断 如错误地使用指令或数据 存储保护等5 访管中断 每当CPU执行访管指令时 即引起中断并调用操作系统相应的功能模块为其服务 中断系统 中断系统的两大组成部分 硬件中断装置和软件中断处理程序中断装置 中断系统的机制部分负责捕获中断源发出的中断请求 以一定方式响应中断源 然后将处理器控制权交给特定的中断处理程序中断处理程序 中断系统的策略部分 中断装置的基本功能 发现中断响应中断 保护现场 找到恰当的中断处理程序 处理器如何发现中断信号 处理器的控制部件中设一个能检测中断的机构 称为中断扫描机构在每条指令执行周期的最后时刻扫描中断寄存器 询问是否有中断信号若无中断信号 继续执行下一条指令若有中断 中断硬件就进行中断响应 发现中断 中断向量表 存放所有中断处理程序的入口地址 主存最低端的若干个字节 中断向量 关中断 保存中断现场 根据中断向量表设置新运行现场 开中断 执行中断处理程序 关中断 恢复被中断程序的现场 开中断 返回断点 继续执行 此时允许中断嵌套 即优先级更高的中断请求可以打断低级中断的处理 设备发中断信号 CPU向设备发确认中断信号 中断处理过程 中断处理一般过程 1 设备给处理器发一个中断信号 2 处理器处理完当前指令后检测到中断 判断出中断来源并向发送中断的设备发送确认中断信号 确认信号使得该设备将中断信号恢复到一般状态 3 处理器开始为软件处理中断做准备 保存中断点的程序执行上下文环境 这通常包括程序状态字PSW 程序计数器PC 一些寄存器的值 它们通常保存在系统栈中 4 处理器根据中断源查询中断向量表 获得与该中断相联系的处理程序入口地址 并将PC置成该地址 处理器开始一个新的指令周期 控制转移到中断处理程序 5 中断处理程序开始工作 6 中断处理结束时 执行中断返回指令 被中断程序的上下文环境从系统堆栈中被恢复 处理器状态恢复成原来的状态 7 PSW和PC被恢复成中断前的值 处理器开始一个新的指令周期 中断处理结束 中断系统硬件完成的工作 中断系统软件完成的工作 中断的其它问题 中断优先级在一些机器中 中断优先级按中断类型划分 以机器故障中断的优先级最高程序中断和访问管理程序中断次之外部中断更次之输入输出的优先级最低 中断屏蔽 在CPU上运行的程序 有时由于种种原因 不希望其在执行过程中被别的事件所中断 称为中断屏蔽在PSW中设置中断屏蔽码以屏蔽某些指定的中断类型各设备接口中也有中断禁止位 以禁止该设备的中断 多个中断的处理 若中断处理过程中又发生中断 引起多中断处理问题两种处理方法 第一种 处理一个中断时禁止中断 对任何新中断置之不理 当再次允许中断时 新中断才被响应 多中断处理第一种处理方法 第二种 中断按照优先度分级允许高优先级中断打断低优先级的中断中断处理嵌套 多中断处理第二种处理方法 思考题 在中断处理过程中 需要保存哪些信息 如何保存 中断装置如何发现中断 如何响应中断 什么是中断向量 I O技术程序控制中断驱动DMA DirectMemoryAccess 通道 I O处理机 1 8 4时钟 时钟为计算机完成以下必不可少的工作 在多道程序运行环境中 为系统发现陷入死循环 编程错误 的作业 防止机时的浪费在分时系统中 间隔时钟实现作业间按时间片轮转在实时系统中 按要求的间隔输出正确时间信号给实时的控制设备 如A D D A转换设备 定时唤醒要求延迟执行的各外部事件 如定时为各进程计算优先数 银行中定时运行某类结账程序等 记录用户使用设备时间和记录某外部事件发生时间记录用户和系统所需要的绝对时间 即年

温馨提示

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

评论

0/150

提交评论