好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

设备管理51资料讲解.ppt

99页
  • 卖家[上传人]:youn****329
  • 文档编号:270946656
  • 上传时间:2022-03-27
  • 文档格式:PPT
  • 文档大小:558.50KB
  • / 99 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第五章第五章 设备管理设备管理 5.1I/O系统5.2I/O控制方式5.3缓冲管理5.4设备分配5.5设备处理5.6磁盘存储器管理5.1 I/O 系系 统统 5.1.1 I/O设备设备 1. I/O设备的类型设备的类型 1)按传输速率分类(1)低速设备(键盘、鼠标器、语音输入/输出等)(2)中速设备(行式打印机、激光打印机等)(3)高速设备(磁带机、磁盘机、光盘机等)2)按信息交换的单位分类(1)块设备(BlockDevice)(2)字符设备(CharacterDevice)3)按设备的共享属性分类(1)独占设备2)共享设备3)虚拟设备2、主机I/O系统因为配置的I/O设备较多,若用一条总线直接与CPU通讯,会使总线和CPU的负担太重因此增加一级I/O通道,以替代CPU与各设备控制器进行通信,实现对它们的控制I/O通路共分为4级:具有通道的I/O系统结构计算机I/O通道1I/O通道2控制器控制器控制器控制器设备设备I/O设备一般由机械和电子两部分组成电子部分称做设备控制器或适配器操作系统总是通过设备控制器实施对设备的控制和操作控制器是可编址的设备5.1.2 设备控制器设备控制器设备控制器是CPU和设备之间的一个接口,它接收从CPU发来的命令,控制I/O设备操作,实现主存和设备之间的数据传输1. 设备控制器的基本功能设备控制器的基本功能 1)接收和识别命令2)2)数据交换3)3)标识和报告设备的状态4)4)地址识别5)5)数据缓冲6)6)差错控制(1)控制器接口设备控制器有两个方向的接口:一个是与主机之间的系统接口;另一个是与设备驱动电路之间的低层次接口。

      2. 设备控制器的组成设备控制器的组成 (2)存储器映像I/O为了实现与CPU通信,每个控制器都有几个寄存器控制寄存器状态寄存器数据寄存器除控制寄存器外,很多设备还有数据缓冲区CPU与控制寄存器和设备数据缓冲区的通信方式有两种一种方式是为每个控制寄存器分配一个I/O端口号(8位或16位整数),使用专门的I/O指令,CPU可以读/写控制寄存器另一种方式是把所有控制寄存器映像到存储器空间这种模式称做存储器映像I/O(Memory-MappedI/O)此外,还有混合方式,既有存储器映像I/O数据缓冲器,又采用单独的I/O端口图5-2设备控制器的组成5.1.3 I/O通道通道 1. I/O通道通道(I/O Channel)设备的引入设备的引入 实际上,I/O通道是一种特殊的处理机它具有执行I/O指令的能力,并通过执行通道(I/O)程序来控制I/O操作但I/O通道又与一般的处理机不同,主要表现在以下两个方面:(1)指令类型单一,局限于与I/O操作有关的指令;(2)通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的,通道与CPU共享内存2. 通道类型通道类型 1)字节多路通道(ByteMultiplexorChannel)图5-3字节多路通道的工作原理2)数组选择通道(BlockSelectorChannel)按数组方式进行数据传送。

      可以连接多台高速设备,每次只允许一个设备传输数据3)数组多路通道(BlockMultiplexorChannel)将数组选择通道传输速率高和字节多路通道能使各子通道(设备)分时并行操作的优点相结合而形成的一种新通道3. “瓶颈瓶颈”问题问题 图5-4单通路I/O系统图5-5多通路I/O系统5.2 I/O控制方式控制方式 5.2.1 程序程序I/O方式方式 在程序I/O方式中,由于CPU的高速性和I/O设备的低速性, 致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中, 造成对CPU的极大浪费在该方式中,CPU之所以要不断地测试I/O设备的状态,就是因为在CPU中无中断机构, 使I/O设备无法向CPU报告它已完成了一个字符的输入操作 程序I/O方式的流程向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器中读入字向内存中写入字传送完毕?出错处理CPUI/OI/OCPU未就绪未完完成执行下一条I/O指令I/OCPUCPURAM就绪5.2.2中断控制中断控制(Interrupt-driven I/O)方式方式CPUCPU向向I/OI/O部件发出命令后,转去做其他部件发出命令后,转去做其他有用的工作。

      当有用的工作当I/OI/O部件准备好数据后,利部件准备好数据后,利用中断通知用中断通知CPUCPU,再由,再由CPUCPU完成数据传输完成数据传输CPUCPU不必反复测试寄存器状态,节约了时不必反复测试寄存器状态,节约了时间但总体看来,中断控制方式仍然消耗大间但总体看来,中断控制方式仍然消耗大量的量的CPUCPU时间,因为时间,因为每个字的数据传输都必每个字的数据传输都必须经过须经过CPUCPU寄存器转发寄存器转发中断驱动方式的流程向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器中读入字向内存中写入字传送完毕?CPUI/OCPU做其它事中断I/OCPU出错就绪I/OCPUCPURAM 未完完成执行下一条I/O指令启动启动启动启动I/OI/OI/OI/O(读操作)(读操作)(读操作)(读操作)继续执行继续执行继续执行继续执行第第第第K K K K条指令条指令条指令条指令第第第第K+1K+1K+1K+1条指令条指令条指令条指令 现行程序现行程序I/OI/OI/OI/O设备就绪设备就绪设备就绪设备就绪发生发生发生发生I/OI/OI/OI/O中断中断中断中断I/OI/O控制器工作控制器工作启动命令启动命令返回原程序返回原程序CPUCPUCPUCPU读读读读I/OI/OI/OI/O状态状态状态状态 处理处理处理处理 无无无无CPUCPUCPUCPU从从从从I/OI/OI/OI/O接口读接口读接口读接口读 一个字一个字一个字一个字CPUCPUCPUCPU等一个字到等一个字到等一个字到等一个字到 主存主存主存主存未未未未 响应中断响应中断返回断点返回断点5.2.3 直接存储器访问直接存储器访问DMA I/O控制方式控制方式 1. DMA(Direct Memory Access)控制方式的引入控制方式的引入 前两种方式的缺陷:前两种方式的缺陷: I/O I/O的传输速率受的传输速率受CPUCPU测试或中断响应的速度限制;测试或中断响应的速度限制; CPU CPU为管理为管理I/OI/O耗费大量时间。

      耗费大量时间DMADMA(直接内存存取)仅在传送一个或多个数据(直接内存存取)仅在传送一个或多个数据块的开始和结束时,才需块的开始和结束时,才需 CPU CPU干预,整块数据的干预,整块数据的传送是在控制器的控制下完成的传送是在控制器的控制下完成的CPUCPU向向DMADMA部件发送部件发送I/OI/O命令后,即可进行其他工命令后,即可进行其他工作给DMADMA的命令中应包括:操作类别、的命令中应包括:操作类别、I/OI/O设备设备的地址、读写数据在内存中的首地址、字数的地址、读写数据在内存中的首地址、字数向向DMADMA部件部件发读命令发读命令读取读取DMADMA部件状态部件状态下一条指令下一条指令CPUDMACPU做其他事中断DMACPU2. DMA控制器的组成控制器的组成 图5-8DMA控制器的组成为了实现在主机与控制器之间成块数据的直接交换, 必须在DMA控制器中设置如下四类寄存器: (1) 命令/状态寄存器CR用于接收从CPU发来的I/O命令或有关控制信息, 或设备的状态 (2) 内存地址寄存器MAR在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。

      (3) 数据寄存器DR用于暂存从设备到内存,或从内存到设备的数据 (4) 数据计数器DC 存放本次CPU要读或写的字(节)数启动启动启动启动I/OI/OI/OI/O(读操作)(读操作)(读操作)(读操作)继续执行继续执行继续执行继续执行第第第第K K K K条指令条指令条指令条指令第第第第K+1K+1K+1K+1条指令条指令条指令条指令 现行程序现行程序传输准备传输准备传输准备传输准备DMADMADMADMA向内存发出询向内存发出询向内存发出询向内存发出询问问问问挪用挪用挪用挪用CPUCPUCPUCPU周期周期周期周期读读读读/ / / /写操作写操作写操作写操作修改内存地址和修改内存地址和修改内存地址和修改内存地址和计数计数计数计数 发发发发I/OI/OI/OI/O中断信号中断信号中断信号中断信号DMADMA工作工作启动命令启动命令返回原程序返回原程序处理处理处理处理DMADMADMADMAI/OI/OI/OI/O结束中断结束中断结束中断结束中断响应中断响应中断I/OI/O中断处理程序中断处理程序未未返回断点返回断点DMA方式I/ODMA传送操作5.2.4 I/O通道控制方式通道控制方式 1. I/O通道控制方式的引入通道控制方式的引入 虽然 DMA方式比中断驱动方式已显著地减少了CPU的干预,即由以字(节)为单位的干预减少到以数据块为单位的干预。

      但是CPU每发出一条I/O指令,也只能去读(或写)一个连续的数据块而当我们需要一次去读多个离散的数据块且将它们分别传送到不同的内存区域,或者相反时,则需由CPU分别发出多条I/O指令及进行多次中断处理,才能完成 由于DMA每次只能执行一条I/O指令,不能满足复杂的I/O操作要求在大、中型计算机系统中,普遍采用由专用的I/O处理机来接受CPU的委托,独立执行自己的通道程序来实现I/O设备与内存之间的信息交换,这就是通道技术通道技术可以进一步减少 CPU的干预,即把对一个数据块为单位的读(或写)的干预,减少到对一组数据块为单位的读(或写)的有关的控制和管理的干预这样可实现 CPU、通道和I/O设备三者之间的并行工作,从而更有效地提高了整个系统的资源利用率和运行速度2. 通道程序通道程序 (1)操作码2)(2)内存地址3)(3)计数4)(4)通道程序结束位P5)(5)记录结束标志R操作操作操作操作 P PRR计数计数计数计数内存地址内存地址内存地址内存地址WRITE WRITE 0 00 08080813813WRITEWRITE0 00 014014010341034WRITEWRITE0 01 1606058305830WRITEWRITE0 01 130030020002000WRITEWRITE0 00 025025018501850WRITEWRITE1 11 12502507207205.3 缓缓 冲冲 管管 理理 5.3.1 缓冲的引入缓冲的引入 1.引入缓冲的原因引入缓冲的原因凡是凡是数据到达数据到达和和离去离去速度不匹配的地方速度不匹配的地方均可采用缓冲技术。

      均可采用缓冲技术1)(1)缓和缓和CPUCPU与与I/OI/O设备间速度不匹配的矛盾设备间速度不匹配的矛盾 (2)(2)(2)(2)减少对减少对CPUCPU的中断频率,的中断频率, 放宽对放宽对CPUCPU中断响应时间的限制中断响应时间的限制 (3)(3)(3)(3)提高提高CPUCPU和和I/OI/O设备之间的并行性设备之间的并行性 例子:例子: 阵发性的阵发性的I/OI/O请求请求图5-10利用缓冲寄存器实现缓冲2.2.缓冲区设置缓冲区设置 硬缓冲:硬缓冲:在设备中设置缓冲区,由硬件实现在设备中设置缓冲区,由硬件实现 软缓冲:软缓冲:在内存中开辟一个空间,用作缓冲区在内存中开辟一个空间,用作缓冲区5.3.2 单缓冲和双缓冲单缓冲和双缓冲 1. 单缓冲单缓冲(Single Buffer) 如果数据到达率与离去率相差很远,则可采用单如果数据到达率与离去率相差很远,则可采用单缓冲方式缓冲方式例如:需要输出的信息很多,而输出设备的速度例如:需要输出的信息很多,而输出设备的速度很慢这时,可用一个缓冲区存放从内存中取得很慢这时,可用一个缓冲区存放从内存中取得的部分。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.