OS硬件环境(补).ppt_第1页
OS硬件环境(补).ppt_第2页
OS硬件环境(补).ppt_第3页
OS硬件环境(补).ppt_第4页
OS硬件环境(补).ppt_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

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

文档简介

2020 1 11 1 第二讲操作系统的硬件环境 讨论操作系统对运行硬件环境的要求讨论操作系统设计者考虑的硬件问题操作系统运行的硬件环境组成中央处理器 CPU 存储系统中断机制I O系统时钟以及时钟队列其他 2020 1 11 2 概述 任何系统软件都是硬件功能的延伸操作系统直接依赖于硬件条件OS的硬件环境以较分散的形式同各种管理相结合实现操作系统时必须理解的计算机基本结构操作系统管理的重要资源 2020 1 11 3 简单的个人计算机中的部件 Monitor Bus 2020 1 11 4 一 中央处理器 CPU 专门设计了一系列基本机制 具有特权级别的处理器状态 能在不同特权级运行的各种特权指令 硬件机制使得OS可以和普通程序隔离实现保护和控制 2020 1 11 5 1 CPU的构成与基本工作方式 处理器由运算器 控制器 一系列的寄存器以及高速缓存构成运算器实现指令中的算术和逻辑运算 是计算机计算的核心控制器负责控制程序运行的流程 包括取指令 维护CPU状态 CPU与内存的交互等等 2020 1 11 6 寄存器是指令在CPU内部作处理的过程中暂存数据 地址以及指令信息的存储设备在计算机的存储系统中它具有最快的访问速度高速缓存处于CPU和物理内存之间一般由控制器中的内存管理单元 MMU MemoryManagementUnit 管理访问速度快于内存 低于寄存器利用程序局部性原理使得高速指令处理和低速内存访问得以匹配 从而提高CPU的效率 2020 1 11 7 处理器中的寄存器 寄存器提供了一定的存储能力速度比主存快得多造价高 容量一般都很小两类寄存器 用户可见寄存器 高级语言编译器通过算法分配并使用之 以减少程序访问主存次数控制和状态寄存器 用于控制处理器的操作由OS的特权代码使用 以控制其他程序的执行 2020 1 11 8 用户可见寄存器 机器语言直接引用包括数据寄存器 地址寄存器以及条件码寄存器数据寄存器 dataregister 又称通用寄存器主要用于各种算术逻辑指令和访存指令地址寄存器 addressregister 用于存储数据及指令的物理地址 线性地址或者有效地址 用于某种特定方式的寻址 如indexregister segmentpointer stackpointer条件码寄存器保存CPU操作结果的各种标记位如算术运算产生的溢出 符号等等 2020 1 11 9 控制和状态寄存器 用于控制处理器的操作大部分对于用户是不可见的一部分可以在某种特权模式 由OS使用 下访问常见的控制和状态寄存器 程序计数器 PC ProgramCounter 记录将要取出的指令的地址指令寄存器 IR InstructionRegister 包含最近取出的指令程序状态字 PSW ProgramStatusWord 记录处理器的运行模式信息等等 2020 1 11 10 指令执行的基本过程 1 两个步骤 先从存储器中每次读取一条指令然后执行这条指令一个单条指令处理过程称为一个指令周期程序的执行是由不断取指和执行的指令周期组成仅当关机 出错或有停机相关指令时 程序才停止 2020 1 11 11 每个指令周期开始时 依据在程序计数器中的指令地址从存储器中取一条指令在取指完成后根据指令类别自动将程序计数器的值变成下条指令的地址 自增1取到的指令放在指令寄存器中处理器解释并执行所要求的动作 指令执行的基本过程 2 2020 1 11 12 5类指令 访问存储器指令 处理器和存储器间数据传送I O指令 处理器和I O模块间数据传送和命令发送算术逻辑指令 数据处理指令 执行数据算术和逻辑操作控制转移指令 指定一个新的指令的执行起点处理器控制指令 修改处理器状态 改变处理器工作方式 2020 1 11 13 2 特权指令和非特权指令 特权指令 只能由操作系统使用的指令使用多道程序设计技术的计算机指令系统必须要区分为特权指令和非特权指令特权指令一般引起处理器状态的切换处理器通过特殊的机制将处理器状态切换到操作系统运行的特权状态 管态 然后将处理权移交给操作系统中的一段特殊代码 这一个过程称为陷入 CPU如何知道当前运行的是操作系统还是一般应用软件 有赖于处理器状态的标识 2020 1 11 14 3 处理器的状态 根据运行程序对资源和机器指令的使用权限将处理器设置为不同状态多数系统将处理器工作状态划分为管态和目态管态 操作系统管理程序运行的状态 较高的特权级别 又称为特权态 特态 核心态 系统态目态 用户程序运行时的状态 较低的特权级别 又称为普通态 普态 用户态有些系统将处理器状态划分核心状态 管理状态和用户程序状态 目标状态 三种 2020 1 11 15 实例 x86系列处理器 1 386 486 Pentium系列都支持4个处理器特权级别 特权环 R0 R1 R2和R3 从R0到R3特权能力依次降低R0相当于双状态系统的管态R3相当于目态R1和R2则介于两者之间 它们能够运行的指令集合具有包含关系 2020 1 11 16 各个级别有保护性检查 地址校验 I O限制 特权级别之间的转换方式不尽相同四个级别运行不同类别的程序 R0 运行操作系统核心代码R1 运行关键设备驱动程序和I O处理例程R2 运行其他受保护共享代码 如语言系统运行环境R3 运行各种用户程序现有基于x86处理器的操作系统 多数UNIX Linux以及Windows系列大都只用了R0和R3两个特权级别 实例 x86系列处理器 2 2020 1 11 17 管态和目态的差别 处理器处于管态时 全部指令 包括特权指令 可以执行可使用所有资源并具有改变处理器状态的能力处理器处于目态时 只有非特权指令能执行特权级别不同 可运行指令集合也不同特权级别越高 可以运行指令集合越大高特权级别对应的可运行指令集合包含低特权级的 2020 1 11 18 4 程序状态字PSW ProgramStatusWord 在PSW中专门设置一位 根据运行程序使用指令的权限而设置CPU状态CPU的工作状态码 指明管态还是目态 用来说明当前在CPU上执行的是操作系统还是一般用户 从而决定其是否可以使用特权指令或拥有其他的特殊权力条件码 反映指令执行后的结果特征中断屏蔽码 指出是否允许中断 2020 1 11 19 例 微处理器M68000的程序状态字 条件位 C 进位标志位V 溢出标志位Z 结果为零标志位N 结果为负标志位I0 I2 三位中断屏蔽位S CPU状态标志位 为1处于管态 为0处于目态T 陷阱 Trap 中断指示位为1 在下一条指令执行后引起自陷中断 2020 1 11 20 例 微处理器Pentium的程序状态字 2020 1 11 21 CPU状态的转换 目态 管态唯一途径是中断管态 目态设置PSW 修改程序状态字 可实现 2020 1 11 22 二 存储系统 支持OS运行硬件环境的一个重要方面 作业必须把它的程序和数据存放在内存中才能运行多道程系统中 若干个程序和相关的数据要放入内存操作系统要管理 保护程序和数据 使它们不至于受到破坏操作系统本身也要存放在内存中并运行 2020 1 11 23 1 存储器的类型 半导体存储器实现内存存储器芯片的内部组织结构静态存储器 SRAM 异步动态随机存储器 DRAM 同步动态随机存储器 SDRAM 双倍数据速率SDRAM DDRSDRAM 开放标准 Rambus公司的SDRAM 2020 1 11 24 只读型存储器ROM Read OnlyMemory 只能从其中读取数据 但不能随意用普通方法写入数据 写入数据只能用特殊方法 在微机中 一些常驻内存的模块以微程序形式固化在ROM中 如 PCBIOS和CBASIC解释程序被固化于ROM中PROM 可编程只读存储器 使用特殊PROM写入器写入数据EPROM 电可擦写可编程只读存储器 用特殊的紫外线光照射此芯片 以 擦去 信息 恢复原来状态 再使用特殊EPROM写入器写入数据闪存 flashmemory 存储器的类型 2020 1 11 25 存储系统设计三个问题 容量 速度和成本容量 需求无止境速度 能匹配处理器的速度成本问题 成本和其他部件相比应在合适范围之内 2020 1 11 26 容量 速度和成本三个目标不可能同时达到最优 要作权衡存取速度快 每比特价格高容量大 每比特价格越低 同时存取速度也越慢解决方案 采用层次化的存储体系结构当沿着层次下降时每比特的价格将下降 容量将增大速度将变慢 处理器的访问频率也将下降 2020 1 11 27 层次化的存储体系结构 2020 1 11 28 存储访问局部性原理 提高存储系统效能关键点 程序存储访问局部性原理程序执行时 有很多的循环和子程序调用 一旦进入这样的程序段 就会重复存取相同的指令集合对数据存取也有局部性 在较短的时间内 稳定地保持在一个存储器的局部区域处理器主要和存储器的局部打交道在经过一段时间以后 使用的代码和数据集合会改变 2020 1 11 29 设计多级存储的体系结构 原则 级别较低存储器比率小于级别较高存储器比率假设两级存储器 第I级包含1KB 存取时间为0 1 s第II级包含1MB 存取时间为1 s存取I级中的内容 直接存取存取II级 首先被转移到I级 然后再存取假设确定内容所在位置时间可以忽略若在I级存储器中发现存取对象的概率是95 则平均访问时间为 结果非常接近I级存储的存取时间 2020 1 11 30 T1 I级存储器的存取时间T2 II级存储器的存取时间 一个简单二级存储系统的性能 2020 1 11 31 3 存储分块 存储最小单位 二进位 包含信息为0或1最小编址单位 字节 一个字节包含八个二进位主流个人电脑主存 2GB 4GB之间辅助存储器 在200GB 400GB工作站 服务器主存 8GB 16GB之间硬盘容量 N个数百GB为简化分配和管理 存储器分成块 称一个物理页 Page 块的大小 512B 1K 4K 8K 2020 1 11 32 4 存储保护设施 对主存中的信息加以严格的保护 使操作系统及其他程序不被破坏 是其正确运行的基本条件之一多用户 多任务操作系统 OS给每个运行进程分配一个存储区域问题 多个程序同时在同一台机器上运行 怎样才能互不侵犯 如何处理重定位 2020 1 11 33 保护的硬件支持 解决方案依赖于配有特殊硬件的CPU硬件可提供如下功能 界地址寄存器 界限寄存器 存储键地址转换机制 2020 1 11 34 界地址寄存器 界限寄存器 界地址寄存器被广泛使用的一种存储保护技术机制比较简单 易于实现实现方法 在CPU中设置一对下限寄存器和上限寄存器存放用户作业在主存中的下限和上限地址也可将一个寄存器作为基址寄存器 另一寄存器作为限长寄存器 指示存储区长度 每当CPU要访问主存 硬件自动将被访问的主存地址与界限寄存器的内容进行比较 以判断是否越界如果未越界 则按此地址访问主存 否则将产生程序中断 越界中断 存储保护中断 2020 1 11 35 界地址寄存器存储保护技术 2020 1 11 36 存储键 每个存储块有一个由二进位组成的存储保护键一用户作业被允许进入主存 OS分给它一个唯一的存储键号并将分配给该作业各存储块存储键也置成同样键号当OS挑选该作业运行时 OS将它的存储键号放入程序状态字PSW存储键 钥匙 域中每当CPU访问主存时 都将该主存块的存储键与PSW中的 钥匙 进行比较如果相匹配 则允许访问 否则 拒绝并报警 2020 1 11 37 地址转换机制 同时有多个程序在内存程序在内存的位置不是固定的而是随机的 用户程序A 内存 用户程序B 2020 1 11 38 CPU MMU 内存 磁盘控制器 总线 虚拟地址 物理地址 MMU 内存管理单元 2020 1 11 39 地址转换机制 虚拟地址 逻辑地址 处理器生成的指令或数据的二进制地址这些地址用硬件和软件结合的方法转换成物理地址MMU 内存管理单元 一种特殊硬件 完成转换工作 2020 1 11 40 三 中断技术 中断对于操作系统的重要性就像机器中的驱动齿轮一样所以有人把操作系统称为是由 中断驱动 或者 中断 事件驱动 它使得OS可以捕获用户程序发出的系统功能调用及时处理设备的中断请求防止用户程序中破坏性的活动等等 2020 1 11 41 1 中断的概念 CPU对系统发生的某个事件作出的一种反应CPU暂停正在执行的程序 保留现场后自动转去执行相应事件的处理程序 处理完成后返回断点 继续执行被打断的程序 特点 1 中断随机的2 中断是可恢复的3 中断是自动处理的 引入中断的目的解决主机与外设的并行工作问题实现实时控制 2020 1 11 42 中断 异常 指系统发生某个异步 同步事件后 处理机暂停正在执行的程序 转去执行处理该事件程序的过程中断的引入 为了开发CPU和通道 或设备 之间的并行操作 当CPU启动通道 或设备 进行输入 输出后 通道便 或设备 可以独立工作了 CPU也可以转去做与此次输入 输出不相关的事情 那么通道 或设备 输入 输出完成后 还必须告诉CPU继续输入 输出以后的事情 通道 或设备 通过向CPU发中断告诉CPU此次输入 输出结束 中断的概念 2020 1 11 43 异常引入 用于表示CPU执行指令时本身出现算术溢出 零做除数 取数时的奇偶错 访存指令越界或就是执行了一条所谓 异常指令 用于实现系统调用 等情况 这时中断当前的执行流程 转到相应的错误处理程序或异常处理程序注意 最早中断和异常并没有区分 都把它们叫做中断 随着它们的发生原因和处理方式的差别愈发明显 才有了以后的中断和异常 中断的概念 2020 1 11 44 中断 外中断 异常 内中断 例外 I O中断 时钟中断 系统调用缺页异常断点指令其他程序性异常 如算术溢出等 中断 狭义 与异常的区别 中断 与正执行指令无关 可以屏蔽异常 与正执行指令有关 不可屏蔽 广义中断 中断的概念 2020 1 11 45 2 中断系统 中断系统是现代计算机系统的核心机制之一硬件和软件相互配合 相互渗透而使得计算机系统得以充分发挥能力的计算模式中断系统的两大组成部分 硬件中断装置和软件中断处理程序中断系统的硬件中断装置 中断系统的机制部分负责捕获中断源发出的中断请求 以一定方式响应中断源 然后将处理器控制权交给特定的中断处理程序软件中断处理程序 中断系统的策略部分负责辨别中断类型并做出相应的操作 2020 1 11 46 中断源 引起中断发生的事件中断寄存器 记录中断中断字 中断寄存器的内容系统堆栈 在内存开辟的一块区域 用于临时保存现场 中断系统中的相关概念 2020 1 11 47 中断优先级设计原则 一般来说 高速设备的中断优先级高 慢速设备的中断优先级低 因为高速设备的中断被处理机优先响应时 可以让处理机尽快地向它发出下一个I O请求 提高高速设备的利用率如PDP 11机上的UNIX系统把中断级别分为 时钟中断 中断优先级 6级磁盘中断 中断优先级 5级终端等其他外设中断 中断优先级 4级 3 中断优先级和中断屏蔽 2020 1 11 48 处理机优先级 指出处理机正运行程序的中断响应级别 即当处理机处于某一优先级时 只允许处理机去响应比该优先级高的中断 而屏蔽低于或等于该优先级的中断 可以通过置处理机优先级来通知硬件 屏蔽优先级小于等于处理机优先级的中断中断屏蔽 指禁止处理机响应中断或禁止中断出现 中断优先级和中断屏蔽 2020 1 11 49 中断屏蔽有两种方法 硬件实现 由软件置处理机优先级 硬件按系统设计时的约定 屏蔽那些低优先级中断软件实现 由软件按操作系统优先级约定 设置屏蔽寄存器 中断优先级和中断屏蔽 2020 1 11 50 4 中断类型 强迫性中断正在运行的程序所不期望的 由于某种硬件故障或外部请求引起的自愿性中断用户在程序中有意识安排的中断 是由于用户在编制程序时因为要求操作系统提供服务 有意使用 访管 指令或系统调用 使中断发生 2020 1 11 51 中断类型 强迫性中断输入 输出 I O 中断 主要来自外部设备通道程序性中断 运行程序中本身的中断 如溢出 缺页中断 缺段中断 地址越界 时钟中断控制台中断硬件故障 2020 1 11 52 中断类型 自愿性中断执行I O 创建进程 分配内存信号量操作 发送 接收消息 2020 1 11 53 微机中的中断 1 可屏蔽中断 IO中断 2 不可屏蔽中断 机器内部故障 掉电中断 3 程序错误中断 溢出 除法错等中断 4 软件中断 Trap指令或中断指令INT 2020 1 11 54 IBM370中的中断 1 机器故障中断 如电源故障 机器电路检验错等2 输入输出中断 输入输出设备和通道数据传输状态 3 外部中断 时钟中断 操作员控制台中断 多机系统中其他机器的通信要求中断 各种外设或传感器发来的实时中断等4 程序中断 程序中的问题引起的中断 如错误地使用指令或数据 溢出等问题 存储保护等5 访管中断 访管指令或陷阱指令 Trap指令 中的操作数规定了要求服务的类型 每当CPU执行访管指令或陷阱指令时 即引起中断并调用操作系统相应的功能模块为其服务 2020 1 11 55 5 中断响应 CPU如何响应中断 两个问题 CPU何时响应中断 通常在CPU执行了一条指令以后 更确切地 在指令周期最后时刻接受中断请求 或此时扫描中断寄存器如何知道提出中断请求的设备或中断源 因为只有知道中断源或中断设备 才能调用相应的中断处理程序 2020 1 11 56 处理器如何发现中断信号 处理器的控制部件中设一个能检测中断的机构称为中断扫描机构在每条指令执行周期的最后时刻扫描中断寄存器 询问是否有中断信号若无中断信号 继续执行下一条指令若有中断 中断硬件将该中断触发器内容按规定编码送入PSW的相应位 称为中断码通过交换中断向量引出中断处理程序 中断响应 2020 1 11 57 开始 取下一条指令 执行指令 检查指令处理中断 停止 取周期 执行周期 中断周期 不允许中断 允许中断 2020 1 11 58 用软件指令去查询各设备接口这种方法比较费时多数微型机对此问题的解决方法 使用一种 向量中断 的硬件设施 中断向量 当CPU接受某中断请求时 该设备接口给处理器发送具有唯一性的 中断向量 以标识该设备 中断向量 在各计算机上实现方法差别比较大 两种解决方法 2020 1 11 59 中断向量 一个存放中断处理程序入口地址和程序运行所需处理机状态字的内存单元 硬件按中断号 异常类型的不同通过中断向量表转移 2020 1 11 60 中断向量表 在有的机器中 将主存最低位128个字保留作为中断向量表 每个中断向量占两个字中断请求的设备接口为了标识自己 向处理器发送一个该设备在中断向量表中表目的地址指针 2020 1 11 61 中断响应 2020 1 11 62 6 中断处理 简单的中断处理 典型的处理过程 1 设备给处理器发一个中断信号 2 处理器处理完当前指令后响应中断 延迟非常短 要求处理器没有关闭中断 3 处理器处理完当前指令后检测到中断 判断出中断来源并向发送中断的设备发送了确认中断信号 确认信号使得该设备将中断信号恢复到一般状态 4 处理器开始为软件处理中断做准备 保存中断点的程序执行上下文环境 这通常包括程序状态字PSW 程序计数器PC中的下一条指令位置 一些寄存器的值 它们通常保存在系统控制栈中 处理器状态被切换到管态 2020 1 11 63 5 处理器根据中断源查询中断向量表 获得与该中断相联系的处理程序入口地址 并将PC置成该地址 处理器开始一个新的指令周期 控制转移到中断处理程序 6 中断处理程序开始工作 包括检查I O相关的状态信息 操纵I O设备或者在设备和主存之间传送数据等等 7 中断处理结束时 处理器检测到中断返回指令 被中断程序的上下文环境从系统堆栈中被恢复处理器状态恢复成原来的状态 8 PSW和PC被恢复成中断前的值 处理器开始一个新的指令周期 中断处理结束 中断处理 2020 1 11 64 简单的中断处理过程 2020 1 11 65 多个中断的处理 若中断处理过程中又发生中断 引起多中断处理问题两种策略方法 第一种 处理一个中断时禁止中断 对任何新中断置之不理 在这期间发生的中断将保持挂起状态当再次允许中断时 新中断信号被处理器检测到软件实现方法 在任何中断处理前使用禁止中断指令在处理结束后开放中断指令所有中断严格按照发生顺序处理不考虑中断紧急程度 无法达到较严格时间要求 2020 1 11 66 多中断处理第一种策略方法 2020 1 11 67 第二种 中断按照优先度分级允许优先级高中断打断优先级低的中断处理过程这样中断优先级技术将引起中断处理的嵌套只要合适地定义中断的优先级别方法一的弊端大都可以克服 多个中断的处理 2020 1 11 68 多中断处理第二种策略方法 2020 1 11 69 典型的中断处理 1 I O中断 由I O设备的控制器或者通道发出两类I O中断 I O操作正常结束如果要继续I O操作 需要在准备好以后重新启动I O 若请求I O程序正处于等待I O状态 则应将其唤醒I O异常需要重新执行失败的I O操作重试次数有上限 次数过大 系统将判定硬件故障 2020 1 11 70 系统多道能力的重要推动力量 时钟中断处理程序通常做与系统运转 管理和维护相关的工作 包括 维护软件时钟 系统有若干个软件时钟 控制定时任务以及进程的处理器时间配额 时钟中断需要维护 定时更新这些软件时钟处理器时间调度 维护当前进程时间片软件时钟 并在当前进程时间片到时以后运行调度程序选择下一个被调度的进程控制系统定时任务 通过软件时钟和调度程序定时激活一些系统任务 如监测死锁 系统记帐 系统审计等实时处理 典型的中断处理 2 时钟中断 2020 1 11 71 典型的中断处理 3 硬件故障中断 硬件故障中断处理程序一般需要做的工作 保存现场 使用一定警告手段 提供些辅助诊断信息在高可靠系统中 中断处理程序还要评估系统可用性 尽可能恢复系统如Windows2000 XP 关键硬件发生故障时 如显示卡损坏 出现系统蓝屏 系统实际上进入相应故障处理程序 发现故障不可恢复 则在屏幕上打印出发生故障时程序位置 并开始进行内存转储 将一定范围的内存内容写上磁盘 是系统故障时的全系统 快照 备日后故障诊断 2020 1 11 72 程序指令出错 指令越权或者指令寻址越界而引发两类处理方法 只能由操作系统的相关扩展功能模块完成多为程序试图作不能做的操作引起的系统保护如访问合法的 但不在内存虚地址内 引发页故障页故障一般会引发OS虚存模块作一个页面换入可由程序自己完成 如一些算术运算错误不同程序可有不同处理方法 所以很多OS提供由用户自己处理这类中断的 绿色通道 系统调试中断 断点中断 单步跟踪 也可被用户程序处理 用以支持各种程序调试 典型的中断处理 4 程序性中断 2020 1 11 73 典型的中断处理 5 系统服务请求 自愿性中断 系统服务请求由处理器专用指令 访管指令 激发如x86处理器提供int指令 用来激发软件中断其他不少处理器则提供系统调用指令syscall执行专用指令的结果是系统被切换到管态 并且转移到一段专门OS程序处开始执行指令格式通常是指令名加请求服务识别号 中断号 OS利用处理器提供的这种接口建立系统服务体系处理器一般不负责定义系统调用所传递的参数格式 2020 1 11 74 DOS 21h号中断的系统服务功能以及参数列表现代操作系统一般不提供直接使用系统调用指令的接口 通常做法 提供一套方便 实用的应用程序函数库 应用程序设计接口API 从应用层面重新封装系统调用屏蔽复杂的系统调用传参问题高级语言接口 有助于快速开发有的系统在更高层面提供系统程序设计模板库和类库如Windows2000 XP提供封装系统用Win32API和高层编程机制MFC以及ATLLinux提供封装系统调用 符合POSIX标准API和C运行库 典型的中断处理 6 系统服务请求实例 2020 1 11 75 中断系统硬件完成的工作 2020 1 11 76 中断系统软件完成的工作 2020 1 11 77 强迫性中断事件 自愿性中断事件 保存现场信息 保存现场信息 取出中断码 取出访管号 分析中断原因 分析何种系统调用 转相应处理程序 是否中断嵌套 由系统恢复现场 由系统恢复现场 转低级调度程序 返回上层中断 返回目态程序 需要切换进程 T F F T 2020 1 11 78 四 I O技术 I O控制使用下面几种技术 程序控制中断驱动直接存储器存取 DMA 通道 2020 1 11 79 1 程序控制I O技术 由处理器提供I O相关指令来实现I O处理单元处理请求并设置I O状态寄存器相关位不中断处理器 也不给处理器警告信息处理器定期轮询I O单元的状态 直到处理完毕I O软件包含直接操纵I O的指令控制指令 用于激活外设 并告诉它做什么状态指令 用于测试I O控制中的各种状态和条件数据传送指令 用于在设备和主存之间来回传送数据主要缺陷 处理器必须关注I O处理单元的状态 因而耗费大量时间轮询信息 严重地降低了系统性能 2020 1 11 80 2 中断驱动I O技术 为了解决程序控制I O方法的主要问题应该让处理器从轮询任务中解放出来使I O操作和指令执行并行起来具体作法 当I O处理单元准备好与设备交互的时候通过物理信号通知处理器 即中断处理器 2020 1 11 81 3 DMA技术 1 中断的引入大大地提高了处理器处理I O的效率当处理器和I O间传送数据时 效率仍旧不高解决方法 直接存储器访问 DMA DirectMemoryAccess 通过系统总线中一独立控制单元 DMA控制器自动控制成块数据在内存和I O单元间的传送大大提高处理I O的效能 2020 1 11 82 DMA技术 2 当处理器需要读写一整块数据时给DMA控制单元发送一条命令包含 是否请求一次读或写 I O设备的编址 开始读或写的主存编址 需要传送的数据长度等信息处理器发送完命令后就可处理其他事情DMA控制器将自动管理数据的传送当这个过程完成后 它会给处理器发一个中断处理器只在开始传送和传送结束时关注一下就可 2020 1 11 83 处理器和DMA传送不完全并行有时会有总线竞争的情况发生处理器用总线时可能稍作等待不会引起中断不引起程序

温馨提示

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

评论

0/150

提交评论