您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 《操作系统原理》第六章 设备管理
操作系统原理第六章设备管理任晓霞北京大学计算中心操作系统原理内容提要概述I/O硬件硬件分类设备控制器、通道、DMAI/O软件设备控制方式设备驱动程序I/O控制2内容提要操作系统原理I/O设备管理系统结构图3概述操作系统I/O硬件管理I/O软件管理上层用户程序(应用层)设备控制器命令寄存器底层硬件设备(物理层)键盘中断处理程序设备驱动程序设备无关程序用户进程状态寄存器数据寄存器操作系统原理设备管理的目标和任务按照用户的请求,控制设备的各种操作,完成I/O设备与内存之间的数据交换,最终完成用户的I/O请求设备分配与回收记录设备的状态根据用户的请求和设备的类型,采用一定的分配算法,选择一条数据通路执行设备驱动程序,实现真正的I/O操作设备中断处理:处理外部设备的中断缓冲区管理:管理I/O缓冲区4概述操作系统原理设备管理的目标和任务(2)建立方便、统一的独立于设备的接口方便性:向用户提供使用外部设备的方便接口,使用户编程不考虑设备的复杂物理特性统一性:对不同的设备采取统一的操作方式,在用户程序中使用的是逻辑设备逻辑设备与物理设备、屏蔽硬件细节(设备的物理细节,错误处理,不同I/O的差异性)5概述操作系统原理设备独立性(设备无关性)目的:从用户角度:用户在编制程序时,使用逻辑设备名,由系统实现从逻辑设备到物理设备(实际设备)的转换,并实施I/O操作从系统角度:设计并实现I/O软件时,除了直接与设备打交道的底层软件之外,其他部分的软件不依赖于硬件6概述操作系统原理设备管理的目标和任务(3)充分利用各种技术(通道、中断、缓冲等)提高CPU与设备、设备与设备之间的并行工作能力,充分利用资源,提高资源利用率并行性均衡性(使设备充分忙碌)7概述操作系统原理设备管理的目标和任务(4)保护设备传送或管理的数据应该是安全的、不被破坏的、保密的。8概述操作系统原理内容提要概述I/O硬件硬件分类设备控制器、通道、DMAI/O软件设备控制方式设备驱动程序I/O控制9内容提要操作系统原理I/O设备的特点分析操作系统需要管理的最复杂的资源——I/O设备I/O设备种类繁多,工作模式各不相同I/O设备数据多样,处理方式各不相同I/O设备性能参差,运行控制多种多样最容易成为计算机系统的瓶颈——I/O设备很多I/O设备使用机械操作,导致其速度较CPU相差很大进程运行中的输入输出操作可能造成系统运行的性能瓶颈I/O管理:如何最大限度保证I/O设备与CPU的并行工作最实用、最体现操作系统特色的工作——I/O管理兼容性:操作系统最难以完成的使命标准化:IT技术迅速普及发展的本质高性能:I/O设备发展的主要目标10I/O硬件管理操作系统原理11I/O设备分类(1)按照数据的组织形式划分块设备以数据块为单位存储、传输数据传输速率较高(几MB/秒)、可寻址(随机读写)例如:磁盘、磁带、光盘块设备根据存取速度及不同的载体结构可分三类:I/O硬件管理顺序存储设备:严格按照信息在载体上的物理顺序来定位与存取的设备-磁带机直接存取存储设备:直接对某个物理位置的记录进行存取-磁盘,磁盘组完全直接存取存储设备:RAM操作系统原理字符设备以字节为单位存储、传输数据传输速率较低、不可寻址例如:输入型设备—键盘、鼠标、图形扫描器输出型设备—显示器、打印机、绘图机12操作系统原理I/O设备分类(2)按照资源分配的形式划分独占式设备一个时刻只能由一个进程使用,一般为低速I/O设备如:打印机、磁带等共享式设备一个时刻可由多个进程共同使用的设备,多个进程以交叉的方式来使用设备,其资源利用率很高如:硬盘虚拟式设备13操作系统原理虚拟式设备在一类设备上模拟另一类设备,常用共享设备模拟独占设备,用高速设备模拟低速设备,被模拟的设备称为虚设备目的:将慢速的独占设备改造成多个用户可共享的设备,提高设备的利用率(实例:SPOOLing技术,利用虚设备技术——用硬盘模拟输入输出设备)SPOOLing技术为解决独立设备数量少,速度慢,不能满足众多进程的要求,而且在进程独占设备期间,设备利用率比较低而提出的一种设备管理技术另一种资源转换技术14操作系统原理I/O设备分类(3)按照程序使用的方式划分逻辑设备由操作系统维护,简便用户操作和控制的“设备结构”物理设备由硬件结构组成,真实完成各类I/O设备操作15操作系统原理I/O设备硬件组成I/O设备的硬件结构机械部分(物理装置)设备本身,是接收模拟信号的各种机械装置电子部分(电子装置)•又叫设备控制器/适配器•完成设备与主机的连接和通信16操作系统原理设备控制器是CPU与I/O设备的接口分成两大类用于控制字符设备的控制器用于控制块设备的控制器在小型和微型机中,它常采用印刷电路卡插入计算机主板上的总线插槽17操作系统原理设备控制器功能按照主机与设备之间约定的格式和过程接收计算机发来的数据和控制信号向主机发送数据和状态信号将计算机的数字信号转换成机械部分能识别的模拟信号,或反之实现设备内部硬件缓冲、数据加工等提高性能或增强功能(端口)地址译码:实现对I/O地址空间的正确映射18操作系统原理设备控制器的组成设备控制器与处理机接口三类信号线:数据线、地址线和控制线寄存器:数据寄存器、控制/状态寄存器设备控制器与设备接口一个设备连接一台设备每个接口中含有数据、地址、控制信号。控制器的I/O逻辑根据处理机发的地址信号选择设备接口I/O逻辑通过一组控制线与处理机交互处理机利用它向控制器发送I/O命令。I/O逻辑对收到的命令进行译码。19操作系统原理20操作系统原理几乎所有的微型机和小型机都利用下图所示的单总线模型,实现CPU和控制器之间的通信。21操作系统原理通道早期:外部设备的输入/输出是在CPU的直接控制下,I/O设备和CPU之间只能采用串行方式工作为了使CPU从I/O事务中解脱出来,同时为了提高CPU与设备,设备与设备之间的并行工作能力通道:是一种专门管理设备I/O控制的部件-一个小规模处理机,控制设备和内存直接进行数据交换22操作系统原理通道是一种特殊的处理机,与一般处理机不同。表现在两个方面:指令类型单一、即由于通道硬件比较简单,其所能执行的指令,主要为与I/O有关的指令。通道没有自己的内存,与CPU共享内存23操作系统原理通道的类型根据信息交换方式,可分为三种类型字节多路通道数据选择通道数组多路通道24操作系统原理通道的类型--字节多路通道字节多路通道以字节为单位传输信息子通道按时间片轮转方式共享通道第一个子通道控制其I/O设备完成一个字节的交换后,便立即腾出字节多路通道(主通道),让第二个子通道使用,依次类推,所有通道轮转一周后重返回。只要扫描每个子通道的速度足够快,而连接到子同上的设备的速率较小的时,不丢数据主要连接以字节为单位的低速I/O设备,如:打印机、终端25操作系统原理字节多路通道:适于控制多路低速设备26操作系统原理通道的类型—数据选择通道选择通道是以成组方式工作的,即每次传送一批数据,故传送速率高。选择通道在一段时间内只能执行一个通道程序,只允许一台设备进行数据传输当这台设备数据传输完成后,再选择与通道连接的另一台设备,执行相应的通道程序主要连接磁盘,磁带等高速I/O设备27操作系统原理28数据选择通道:适于高速设备,成组传输数据操作系统原理通道的类型—数组多路通道它结合了数据选择通道传送速度高和字节多路通道能进行分时并行操作的优点。它先为一台设备执行一条通道指令,然后自动转接,为另一台设备执行一条通道指令主要连接高速设备这样,对于连接多台磁盘机的数组多路通道,它可以启动它们同时执行移臂定位操作,然后,按序交叉地传输一批批数据。数组多路通道实际上是对通道程序采用多道程序设计的硬件实现29操作系统原理“瓶颈”问题I/O性能经常称为系统的瓶颈CPU性能不等于系统性能响应时间也是一个重要因素CPU性能越高,与I/O差距越大弥补:更多的进程进程多,进程切换多,系统开销大30操作系统原理通道价格昂贵,使机器中的通道数量比较少,这往往使它成了I/O的瓶颈解决“瓶颈”问题的最有效的方法,便是增加设备到主机之间的通路,而不是通道31操作系统原理32单通道与多通道单通道I/O机制:每个设备由一个通道负责操作系统原理单通道与多通道33多通道I/O机制:每个设备由多个通道控制操作系统原理存储器直接存取(DMA)设备DMA:DirectMemoryAccess通过系统总线中一独立控制单元——DMA控制器,自动控制成块数据在内存和I/O单元间的传送大大提高处理I/O的效能34操作系统原理当处理器需要读写一整块数据时给DMA控制单元发送一条命令包含:是否请求一次读或写,I/O设备的编址,开始读或写的主存编址,需要传送的数据长度等信息处理器发送完命令后就可处理其他事情DMA控制器将自动管理数据的传送当这个过程完成后,DMA控制器给处理器发一个中断,处理器只在开始传送和传送结束时关注一下就可35操作系统原理处理器和DMA传送不完全并行因为有时会有总线竞争的情况发生处理器用总线时可能稍作等待不会引起中断不引起程序上下文的保存通常过程只有一个总线周期在DMA传送时,处理器访问总线速度会变慢对于大量数据I/O传送,采用DMA这种方式是很有价值36操作系统原理内容提要概述I/O硬件硬件分类设备控制器、通道、DMAI/O软件设备控制方式设备驱动程序I/O控制37内容提要操作系统原理38I/O软件体系结构I/O软件管理中断处理程序底层硬件设备设备驱动程序用户I/O软件设备无关软件I/O请求I/O响应提供系统库调用,供人员使用;提供类似Spooling这样的精灵守护进程管理共享设备命名、保护、阻塞、缓冲建立设备寄存器、解决错误处理中断信号操作系统原理39数据传输控制方式程序直接控制方式中断控制方式DMA控制方式通道方式操作系统原理程序直接控制方式ProgrammedDirectControlCPU直接与I/O设备进行通信,负责将用户数据传送到I/O端口用户程序通过系统调用来使用I/O设备CPU需要不断查询I/O设备的端口状态,性能较低40操作系统原理外围设备接收到start命令做接收或发送数据准备准备完毕?标志触发器置done是否CPU发start命令设备标志触发器为done否是等待执行下条指令开始数据传送等待CPU来的下一条指令操作系统原理程序直接控制方式-特点优点:简单、不需要硬件支持缺点:CPU和外围设备只能串行工作,CPU利用率低在一段时间内CPU只能和一台外围设备交换数据信息,不能实现设备之间的并行工作依靠测试设备标志触发器的状态位控制数据传输,无法发现处理其它错误只适用于速度慢、设备少的系统42操作系统原理中断控制方式为了减少程序直接控制方式中CPU等待时间及提高系统的并行工作程度。CPU设定I/O设备的初始值,然后不再忙等待,运行其他进程,当前进程阻塞I/O设备完成对当前数据的处理后,向CPU发出中断,I/O中断处理程序将负责传送剩余数据43操作系统原理44设备收到CPU发来的start命令准备数据并将其放入缓冲寄存器缓冲寄存器满吗?控制器发中断信号是否CPU向设备发start命令中断允许位置1调度程序调度其它进程收到中断信号了吗?否其它进程执行是中断处理中断处理程序操作系统原理需要CPU和设备控制器之间有相应的中断请求线,而且在设备控制器的控制状态寄存器中有相应的中断允许位从数据寄存器到内存的传送是在CPU的控制下完成的切换的进程可以做到设备间的并行操作和设备-CPU间的并行操作,CPU的利用率大于程序控制方式数据缓冲寄存器满时发出中断,而缓冲寄存器一般比较小,中断频繁消耗了大量CPU时间45中断控制方式-特点操作系统原理DMA控制方式使用独立的DMA控制器代替CPU的工作,I/O设
本文标题:《操作系统原理》第六章 设备管理
链接地址:https://www.777doc.com/doc-3291128 .html