计算机外部设备管理.ppt

上传人:xt****7 文档编号:4010641 上传时间:2019-12-30 格式:PPT 页数:105 大小:1.81MB
返回 下载 相关 举报
计算机外部设备管理.ppt_第1页
第1页 / 共105页
计算机外部设备管理.ppt_第2页
第2页 / 共105页
计算机外部设备管理.ppt_第3页
第3页 / 共105页
点击查看更多>>
资源描述
第4章设备管理 4 1概述4 2输入 输出的处理步骤4 3设备的分配与调度算法4 4数据传输的方式4 5设备管理中的若干技术 在此 设备 泛指计算机系统中的外部设备 即除主机以外的其他所有设备 本章着重讲述四个方面的内容 1 完成一个I O请求的步骤 2 如何管理和分配系统中的设备 3 数据传输的各种控制方式 4 设备管理中常用的若干技术 4 1概述 4 1 1计算机设备的分类可以从不同的角度对外部设备进行分类 1 基于设备的从属关系 可以把系统中的设备分为系统设备与用户设备两类 系统设备 用户设备 2 基于设备的分配特性 可以把系统中的设备分为独享设备 共享设备和虚拟设备三类 独享设备 共享设备 虚拟设备 3 基于设备的工作特性 可以把系统中的设备分为输入 输出设备和存储设备两类 输入 输出设备 存储设备 磁带是一种严格按照信息存放物理顺序进行定位与存取的存储设备 磁带机的启停必须要考虑到物理上惯性的作用 当启动读磁带上的下一个记录时 必须经过一段时间 才能使磁带从静止加速到额定速度 从读完一个记录后 到真正停下来 又要滑过一小段距离 因此 磁带上每个记录之间要安排有所谓的 记录间隙 IRG 存在 图4 1记录与记录间隙 IRG 磁带写时 是在缓冲区中把若干个记录拼装成一块 然后写出 这个过程被称为 记录的成组 磁带读时 是先把一块读到内存缓冲区 然后从中挑选出所需要的记录 这个过程被称为 记录的分解 磁盘的特点是存储容量大 存取速度快 并且能够顺序或随机存取 操作系统中的很多实现技术 比如存储管理中的虚拟存储 本章将要介绍的虚拟设备等 都是以磁盘作为后援的 因此 它越来越成为现代计算机系统中一个不可缺少的重要组成部分 图4 2磁盘结构示意图 4 1 2设备管理的目标与功能1 设备管理的目标操作系统设备管理的目标之一是提高外部设备的利用率 操作系统设备管理的目标之二是为用户提供便利 统一的使用界面 2 设备管理的功能设备管理必须具有如下功能 1 提供一组I O命令 以便用户进程能够在程序一级发出所需要的I O请求 这就是用户使用外部设备的 界面 2 进行设备的分配与回收 3 对缓冲区管理 4 实现真正的I O操作 4 2输入 输出的处理步骤 4 2 1I O请求的提出输入 输出请求来自用户作业进程 图4 3I O请求的处理步骤 4 2 2对I O请求的管理设备的输入 输出管理程序由三块内容组成 接受用户的I O请求 组织管理输入 输出的进行 以及输入 输出完成后的善后处理 4 2 3I O请求的具体实现在操作系统的设备管理中 是由设备驱动程序来具体实现I O请求的 设备驱动程序有时也称为输入输出处理程序 它必须使用有关输入 输出的特权指令来与设备硬件进行交往 以便真正实现用户的输入 输出操作要求 4 3设备的分配与调度算法 4 3 1管理设备时的数据结构为了管理系统中的外部设备 操作系统为每一台设备开辟一个存储区 随时记录系统中每一台设备的基本信息 这个存储区被称为 设备控制块DCB DeviceControlBlock 图4 4设备控制块DCB及设备请求队列 因为设备控制块DCB中存放的是一台具体设备的有关信息 找到一个设备的DCB 就得到了该设备的特性 各种参数 使用情况等 所以DCB是设备管理中最重要的一种数据结构 图4 5系统设备表SDT 为了管理设备 系统除了为每个设备设置DCB外 整个系统还要有一张所谓的 系统设备表 SDT SystemDeviceTable 图4 5系统设备表SDT 4 3 2独享设备的分配 独享设备 即是在使用上具有排它性的设备 独享设备的使用具有排它性 因此对这类设备只能采取 静态分配 的策略 为了管理起见 系统在内部对每一台设备进行编号 以便相互识别 设备的这种内部编号称为设备的 绝对号 为了便于区分 避免混乱 允许用户对自己要求使用的几台相同类型的设备进行编号 这种编号出自于用户 因此称为设备的 相对号 用户是通过 设备类 相对号 来提出使用设备的请求的 操作系统设置两种表 一是 设备类表 整个系统就只有一张设备类表 一是 设备表 每一类设备有一张 图4 7设备类表和设备表 对于独享设备 常采用的分配算法有如下两种 1 先来先服务 2 优先级高者先服务 4 3 3共享磁盘的调度当有很多进程向磁盘提出I O请求时 对它们就有一个调度安排问题 让谁先用 让谁后用 执行一次磁盘的输入 输出需要花费的时间有如下几种 1 查找时间 在移动臂的带动下 把磁头移动到指定柱面所需要的时间 2 等待时间 将指定的扇区旋转到磁头下所需要的时间 3 传输时间 由磁头进行读 写 完成信息传送所需要的时间 图4 8磁盘的访问过程 1 先来先服务 调度算法以I O请求到达的先后次序作为磁盘调度的顺序 这就是先来先服务调度算法 图4 9先来先服务磁盘调度算法 2 最短查找时间优先 调度算法把距离磁头当前位置最近的I O请求作为下一次调度的对象 这就是最短查找时间优先调度算法 图4 10最短查找时间优先磁盘调度算法 3 电梯 调度算法总是沿着移动臂的移动方向选择距离磁头当前位置最近的I O请求作为下一次调度的对象 如果该方向上已无I O请求 则改变方向再做选择 图4 11电梯调度算法 1 图4 12电梯调度算法 2 4 单向扫描 调度算法单向扫描调度算法总是从0号柱面开始往里移动移动臂 遇到有I O请求就进行处理 直到到达最后一个请求柱面 然后移动臂立即带动磁头不做任何服务地快速返回到0号柱面 开始下一次扫描 图4 13单向扫描调度算法 例4 1一个具有40个柱面的磁盘 现在正在处理柱面11上的I O请求 这时又顺序到达新的请求 涉及的磁道是1 36 16 34 9和12 分别采用先来先服务 最短查找时间优先以及电梯调度算法 试问它们各需要滑过多少柱面 为了减少移动臂移动时花费的时间 通常信息 也就是文件 不是按照盘面上的磁道顺序存放 磁盘上磁盘块 即扇区 的编号按照柱面的顺序进行 从0开始 每个柱面按照柱面上的磁道顺序 也就是按照磁头顺序 进行 从0开始 每个磁道按照扇区顺序进行 从0开始 假定用c表示每个柱面上的磁道数 用s表示每个盘面上的扇区数 则第i个柱面 j磁头 k扇区所对应的磁盘块号b可以用如下的公式计算 b k s j i c 1 同样地 根据给出的磁盘块号 也可以计算出它在磁盘上的位置 即它位于的柱面号 磁头号 扇区号 仍以上面的假定为前提 现在要求第p个磁盘块在磁盘上的位置 令D s c 每个柱面上拥有的磁盘块数 设M p D N p D 注意 这里的 和 分别表示整除和求余 于是 求第p块在磁盘上位置的公式为柱面号 M 磁头号 N s 扇区号 N s 2 例4 2假定一个磁盘组共有100个柱面 每个柱面上有8个磁道 每个盘面被划分成8个扇区 现在有一个含6400个记录的文件 记录大小与扇区尺寸相同 编号从0开始 该文件从0柱面 0磁道 0扇区顺序存放 试问 a 该文件的第3680个记录应该存放在磁盘的哪个位置 b 第78柱面的第6磁道的第6扇区中应该存放该文件的第几个记录 4 4数据传输的方式 数据传输 或发生在I O设备与内存之间 或发生在I O设备与CPU之间 所谓 数据传输的方式 就是讨论在进行输入 输出时 I O设备与CPU谁做什么的问题 4 4 1设备控制器为了使设计模块化 具有通用性 也为了降低设备成本 通常总是把这两部分分开 机械部分称为设备本身 电子部分称为 设备控制器 或适配器 设备挂接在控制器上 因此要让设备做输入 输出操作 操作系统总是与控制器交往 而不是与设备交往 图4 15CPU与控制器之间的单总线模型 4 4 2程序循环测试方式在早期的计算机系统中 都是采用程序循环测试的方式来控制数据传输的 4 4 3中断方式所谓 中断 是一种使CPU暂时中止正在执行的程序而转去处理特殊事件的操作 能够引起中断的事件称为 中断源 它们可能是计算机的一些异常事故或其他内部原因 比如缺页 更多的是来自外部设备的输入输出请求 程序中产生的中断 由CPU的某些错误结果 如计算溢出 产生的中断称为 内中断 由外部设备控制器引起的中断成为 外中断 图4 16中断方式的数据传输 4 4 4直接存储器存取 DMA 方式直接存储器存取方式即是通常所说的DMA DirectMemoryAccess 方式 主要适用于一些高速的I O设备 如磁带 磁盘等 图4 17DMA控制方式 DMA控制器中包含有四个寄存器 数据寄存器 状态寄存器 地址寄存器和字节计数器 在数据传输之前 将根据I O命令参数对这些寄存器进行初始化 每个字节传输后 地址寄存器内容自动增1 字节计数器自动减1 使用DMA方式进行数据传输具有如下特点 1 DMA控制器是在获得总线控制权的情况下直接与内存储器进行数据交换 CPU不介入数据传输的任何事宜 2 在DMA方式下 设备与内存储器之间进行的是成批数据传输 比如一块 3 用DMA方式传输数据时 CPU不得使用总线 因此用DMA方式传输数据 不存在设备与CPU并行工作的问题 4 在DMA方式下 CPU只做启动和善后处理工作 数据传输以及I O管理等事宜均由DMA负责实行 4 4 5通道方式通道是一个独立于CPU的 专门用来管理输入 输出操作的处理机 它控制设备与内存储器直接进行数据交换 通道有自己的指令系统 称为 通道命令字 图4 18IBM的通道命令字格式 若干通道命令字构成一个 通道程序 它规定了设备应该执行的各种操作和顺序 必须把存放通道程序的内存起始地址告诉通道 存放这个起始地址的内存固定单元 被称为 通道地址字 当采用通道来进行数据传输时 计算机系统的I O结构应该是通道与主机相连 设备控制器与通道相连 设备与设备控制器相连 图4 19带有通道的I O结构 使用通道方式进行数据传输的步骤如下 1 当进程提出I O请求后 CPU发出start命令 指明I O操作 设备号和对应的通道 把数据传输的任务交给通道 2 发出I O请求的进程被阻塞 进程调度程序把CPU分配给另一个进程使用 3 通道接收CPU发来的启动命令 调出通道程序执行 设备与CPU并行工作 4 通道逐条执行通道程序中的通道命令字 指示设备完成规定的操作 与内存储器进行数据交换 5 数据传输完毕 通道向CPU发出中断请求 6 CPU响应通道提出的中断请求 对这次I O进行善后处理 把阻塞进程的状态变为就绪 重新参与对CPU的竞争 4 5设备管理中的若干技术 4 5 1I O缓冲技术 缓冲 即是过渡一下的意思 在处理I O时 引入缓冲技术是非常有必要的 通过缓冲 能够调节计算机系统各部分的负荷 使CPU和外部设备的工作都尽量保持在一个较为平稳的良好状态 缓冲的实现有两种方法 一种是采用专门的硬件寄存器 这是 硬件缓冲 另一种是在内存储器中开辟出n个单元 作为专用的I O缓冲区 这种内存缓冲区就是 软件缓冲 在I O管理中 主要采用的是软件缓冲 根据系统设置缓冲区的个数 可以分为单缓冲 双缓冲 多缓冲以及缓冲池等四种 1 单缓冲 2 双缓冲 3 多缓冲 4 缓冲池 图4 20单缓冲与双缓冲的工作示意图 图4 21多缓冲的两个队列 4 5 2虚拟设备与SPOOLing技术利用大容量的共享设备 磁盘作为后援 用软件技术来模拟独享设备的工作 使得每个用户都认为获得了供自己独占使用的输入设备或输出设备 并且它们的传输速度与磁盘一样快 但这仅仅是一种 幻觉 系统中并不存在多个独享设备 这种用一类物理设备模拟出的另一类物理设备 被称为 虚拟设备 在提供虚拟设备的系统中 用户进行I O时 不是直接面对物理的独享设备 而是面对虚拟的独享设备 为了实现虚拟设备 要在磁盘上划分出两块存储空间 一块用来预先存放多个作业的全部信息 这块存储空间被称为 输入井 另一块用来暂时存放每个运行作业的输出信息 这块存储空间被称为 输出井 为了真正提供虚拟设备 还要有相应的软件 这就是建筑在多道程序设计基础上的 联机的外围设备同时操作 即通常所说的斯普林 SPOOLing 技术 把操作系统中实现虚拟设备的软件功能模块统称为 SPOOL系统 图4 22SPOOL系统工作示意图 操作系统中实现虚拟设备的软件功能模块由三部分组成 1 预输入程序2 缓输出程序3 井管理程序
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!