您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 操作系统(东南大学滕至阳ppt)chapter(3)
第七章设备管理7.1基本功能◆与进程管理的接口应提供读/写等接口命令,并把进程的要求转达给设备驱动机构◆设备分配必须按照一定的算法把一个I/O设备分配给对该类设备提出请求的进程,若该进程未分配到所请求的设备,则进入等待队列第七章设备管理7.1基本功能◆并行操作通道与通道之间,通道与CPU之间的并行操作◆I/O控制要构造相应的通道程序,启动通道,对通道发来的中断请求及时响应和处理◆缓冲区管理第七章设备管理7.2直接输入/输出◆由用户程序直接控制CPU与外围设备之间的数据传送称为直接输入/输出图7-1直接输入输出的体系结构……设备控制器……控制寄存器i状态寄存器i数据寄存器i总线设备i主存CPU第七章设备管理7.2直接输入/输出◆4条供直接输入输出的指令:①SIOdevice,register②TIOdevice③INdevice,register④OUTdevice,register第七章设备管理7.2直接输入/输出◆存储器映射(memory-mapped)I/O技术◆在MS-DOS中128KB显示主存就是memory-mappedI/O技术的一个很好的例子第七章设备管理7.3间接输入/输出图7-2间接输入输出的体系结构…………设备控制器控制寄存器i状态寄存器i地址寄存器i长度计数器i数据寄存器i总线设备i主存CPU第七章设备管理7.3间接输入/输出◆对于间接输入/输出,系统只需提供2条指令:①TIOdevice②SIOdeviceregistersCPU继续做它的事情第七章设备管理7.3间接输入/输出◆控制寄存器直接从主存存取(DirectMemoryAccess)数据,需要挪用CPU的周期图7-3间接输出的并行工作情况CPU主存设备控制器I/O设备CPU从主存读取控制信息(粗黑线)1CPU主存设备控制器I/O设备CPU把控制信息送设备控制器2CPU主存设备控制器I/O设备CPU执行其它命令,同时,设备控制器从主存读数据(粗黑线)3CPU主存设备控制器I/O设备CPU执行其它命令,同时,设备控制器把数据送I/O设备(粗黑线)4CPU主存设备控制器I/O设备重复35CPU主存设备控制器I/O设备重复46图7-3间接输出的并行工作情况第七章设备管理7.4中断控制下的输入输出7.4.1设备状态及其变换图7-4设备状态图闲置中断修复中断中断加电就绪SIO忙失败去电第七章设备管理7.4.2输入输出的数据结构系统控制块SCB进程控制块PCB当前PCB下一PCBPCB就绪队列进程名PCB等待I/O表┇┇被中断的PSW设备控制块中断寄存器设备控制块个数主存基址自由空间块主存长度进程外存地址┇设备控制块DCB自由空间块FSB设备地址下一块设备特性本块长度设备状态输入/输出块队列服务例程入口点1,2,…中断向量表中断事件或设备标识符旧PSW等保存地址中断处理入口新PSW┇┇┇I/O设备地址被中断的PSW新PSW及处理入口┇┇┇输入/输出块IOB下一输入/输出块对应的PCB进程活动标记状态信息存放地址I/O操作代码缓冲区地址缓冲区长度其他特性11…中断处理程序入口1,2,…服务例程入口1,2,……程序代码,状态数据,I/O缓冲等…主存图7-5支持I/O的数据结构第七章设备管理7.4.2输入输出的数据结构◆设备控制块(DCB)◆输入输出块(IOB)◆中断向量下面是某输入输出设备DCB:Deviceaddress3DevicecharacteristicsSerialaccessNonsharableIndirectI/OcontrollerBlocksizeof80bytes┇DevicestatusRead/busy/failedIOBqueueNullorpointertolastnodeofacircularqueueofpendingI/OoperationsEntrypoittableAddressofinterruptsubsystemmoduleforhandinginterruputsforthistypeofdevice;Addressoftheserviceroutineforreadingthedevice;Addressoftheserviceroutineforwritingthedevice;Addressoftheserviceroutineforrewindingthedevice;Addressoftheserviceroutinefornon-standardoperations;第七章设备管理7.4.3输入输出过程的实现算法图7-6模块及数据结构之间的关系I/O中断设备控制器I/O设备当前进程IO_IHSCBDCBIOB队列DEVICE_IHINITIATE_IOIOB队列DCBSCBWAIT_IOFREE_MEMORYGET_MEMORYSC_IH中断向量表进程调度中断向量表┇系统调用输入输出指令┇第七章设备管理7.4.4IOB队列调度◆FIFO请求次序:123456789101112磁盘柱面:1937620513418561923962931940磁头移动的总距离为1604柱面◆最短寻找时间优先SSTF(ShortestSeekTimeFirst)调度次序改为:4,7,3,6,12,9,1,11,5,10,2,8,磁头移动的总距离为700柱面第七章设备管理7.4.4IOB队列调度◆扫描算法(Scan)因其磁头的移动与电梯升降道理相似,故也称电梯算法◆循环扫描法C-scan(Circularscan)◆N-scan(Newscan)算法第七章设备管理7.5通道环境下的输入输出
本文标题:操作系统(东南大学滕至阳ppt)chapter(3)
链接地址:https://www.777doc.com/doc-4607962 .html