9设备管理课件.pptVIP

  • 4
  • 0
  • 约3.19千字
  • 约 56页
  • 2017-04-18 发布于河南
  • 举报
操作系统 Operating System;第九章 设备管理; 9.5 设备分配;9.1 引言;9.1 引言;第九章 设备管理;9.2 数据传输I/O方式;9.2.1 程序直接控制;程序直接控制方式处理流程;9.2.1 程序直接控制;9.2.2 中断方式;9.2.2 中断方式;中断方式的处理流程图;9.2.2 中断方式;9.2.3 DMA方式;★处理过程: 1. 当进程需要数据时,CPU将内存的地址和传输数据的字节数送到DMA控制器的内存地址寄存器和传输字节计数器中,将控制状态寄存器的中断允许位和启动位置1,启动设备开始数据输入 2. 当前进程等待数据输入。调度程序选择就绪进程占用CPU。 3. 输入设备不断地将数据由设备写入指定的内存地址,当完成了要求的字节数后,DMA控制器发出中断请求,CPU收到中断信号后,转中断处理程序进行善后工作。 ;DMA工作流程;★ DMA控制器的连接和传送;★ DMA方式的特点 直接从设备缓冲区将数据读写到指定的内存地址,数据传输的方向和大小、地址都由CPU控制。 中断方式是当数据缓存满后发中断要求CPU处理,而DMA方式是要求的数据全部进入内存后发中断指令。因此大大减少了CPU进行中断处理的次数。 中断方式中传输数据的过程是由CPU控制完成的,当并行操作的设备过多时,可能由于CPU来不及处理,会导致数据丢失。DMA方式是在DMA控制器的控制下完成的,没有经过CPU。排除了因并行操作设备过多时CPU来不及处理或因速度不匹配而造成数据丢失等现象。 ;9.2.4 通道控制方式;★通道控制方式的工作过程 1)当进程要求设备输入数据时,CPU发Start指令指明I/O操作、设备号和对应通道。 2) 对应通道接收到CPU发来的启动指令Start之后,把存放在内存中的通道指令程序读出,设置对应设备的I/O控制器中的控制状态寄存器。 3) 设备根据通道指令的要求,把数据送往内存中指定区域。 4) 若数据传送结束,I/O控制器通过中断请求线发中断信号请求CPU做中断处理。 5)与DMA方式时相同,即中断处理结束后CPU返回被中断进程处继续执行 ;★通道控制方式与DMA方式的区别 ;★通道方式的特点 ;通道类型 ;第九章 设备管理;9.3.1 中断的基本思想;9.3.1 中断的基本思想;9.3.2 中断的分类与优先级;9.3.2 中断的分类与优先级;9.3.3 软中断;9.3.4 中断处理过程;中断向量;9.4 缓冲技术;9.4.1 缓冲的引入;9.4.2 缓冲的种类;9.4.3 缓冲池的管理;缓冲池的结构;缓冲队列;9.5 设备分配;9.5.1设备分配用数据结构;系统设备表(System Device Table)——整个系统一张,反映整个系统中所有设备的概要情况,每个设备占一个表项,内容包括: 指向设备的设备控制表DCT的指针 正在使用该设备的进程编号。 设备类型 设备标识符;I/O控制器表(I/O Controler Table)——每个I/O控制器一个,反映I/O控制器的使用状态,以及与通道的连接情况。 控制器的标识符 忙/闲标志 指向通道控制表的指针 控制器等待队列的首指针。 控制器等待队列的尾指针。;通道控制表(Channel Control Table)——每个通道一个,描述该通道的信息,包括: 通道标识符 通道忙/闲标志 通道等待队列的首指针。 通道等待队列的尾指针。 ;设备开关表——系统只有一个设备开关表,表中给出每类设备的各个操作子程序的入口地址: 打开子程序入口地址 关闭子程序入口地址 读子程序入口地址 写子程序入口地址 启动设备子程序入口地址 ;;9.5.2 设备分配算法;先来先服务(FCFS, First Come First Service ) :每类设备有一按请求先后次序排成的队列,设备分配程序把设备分配给队列中的第一个。 按优先级(Priority) :按照进程的优先级分配设备。要求设备的进程按照优先级在等待队列中排队。;设备分配的过程如下: 需要设备时,系统首先检查系统设备表SDT,找到需要使用的设备; 然后找到设备控制表DCT,检查该设备的忙闲状态; 如果设备忙就将该进程放入该设备的等待队列中,若设备空闲就检查设备分配的安全性,看是否会发生死锁,如果会出现死锁,则将该进程链入该设备的等待队列,并从设备等待队列中唤醒一个睡眠的进程执行安全性检查; 如果安全性检查通过,则看I/O控制器COCT是否空闲,如果忙则将该进程链入等待队列,否则分配I/O控制器; 最后查看通道CHCT是否空闲,如果通道忙,则将该进程链入通道等待队列,否则分配通道; 都分配好后,发出设备启动命令。 ;I

文档评论(0)

1亿VIP精品文档

相关文档