5. 1 学习指导
设备管理是操作系统的重要组成部分。由于它直接面向各种输入/输出设备,所以设备管理与其他部分的管理相比,与硬件关系最为密切。常见的设备分类方法有:按设备的从属关系分(可分为系统设备和用户设备);按设备共享属性分(可分为独享设备、共享设备和虚拟设备);按信息交换的单位分(可分为字符设备和块设备)。设备管理应具备以下功能:设备分配(按照设备类型和相应的分配算法决定将I/O设备分配给哪一个要求该设备的进程;设备控制(完成这一功能的是设备处理程序,为实现这一功能设备处理程序首先根据用户提出的I/O请求构成相应的通道程序,交给通道去执行,然后启动指定的设备进行I/O操作,最后要对通道发来的中断请求作出及时的响应和处理);实现其他功能(包括对缓冲区的管理功能等)。
所谓通道是专管理输入输出的处理机,它有自己的指令系统,该指令系统比较简单,一般只有数据传送指令、设备控制指令等。通道所执行的程序称为通道程序。通道按信息交换方式的不同,可分成以下几种类型:字节多路通道、数据选择通道、数组多路通道。
设备管理的主要任务之一是控制设备和内存或CPU之间的数据传送,常用的输入输出控制方式有:程序I/O方式、中断控制方式、DMA方式和通道控制方式。
提高处理机与外设并行程度的一项技术是缓冲技术。缓冲是用来在两种不同速度的设备之间传输信息时平滑传输过程的常用手段。一种经济的缓冲实现方法是在内存中划出一块存储区,专门用来临时存放输入输出数据,这个区域称为缓冲区。根据系统设置的缓冲区的个数,可以将缓冲技术分为:单缓冲、双缓冲、环形缓冲和缓冲池。
设备分配是由设备分配程序完成的,设备分配中要用到许多数据结构,主要有:设备控制表(DCT)、控制器控制表(COCT)、通道控制表(CHCT)和系统设备表(SDT)。设备分配的步骤是:分配设备、分配控制器、分配通道。
设备的独立性是指用户在编制程序时所使用的设备与实际使用的设备无关。为此,要求用户程序对I/O设备的请求采用逻辑设备名,而在程序实际执行时使用物理设备名,它们之间的关系类