第七章设备管理 (Devices Management) 教学目的: 设备管理不但要管理实际ⅠO操作的设备(如磁盘机、打印 机),还要管理诸如设备控制器、DMA控制器、中断控制器、 I/O处理机(通道)等支持设备。设备管理包括各种设备分配 缓冲区管理和实际物理Ⅰ/O设备操作,通过管理达到提高设 备利用率和方便用户
第七章 设备管理 (Devices Management) 教学目的: 设备管理不但要管理实际I/O操作的设备(如磁盘机、打印 机),还要管理诸如设备控制器、DMA控制器、中断控制器、 I/O处理机(通道)等支持设备。设备管理包括各种设备分配、 缓冲区管理和实际物理I/O设备操作,通过管理达到提高设 备利用率和方便用户
教学要求: 了解设备的分类,熟悉设备管理的目标和功能。 熟悉程序I/O方式、中断方式、DMA方式和通道方式四种I/0的 控制方式;掌握通道的概念,熟悉通道类型 熟悉缓冲的概念,熟悉单缓冲、双缓冲和多缓冲和缓冲池工 作原理,了解UNIX系统的缓冲技术。 了解在进行设备分配时应考虑的设备的固有属性、设备的分 配算法、设备分配的安全性和设备的独立性等因素;掌握设 备分配中数据结构,熟悉设备分配的流程;掌握 SPOOLing技 术概念和 SPOOLing系统的组成 熟悉设备处理程序的功能和处理方式,熟悉设备处理程序的 处理过程
教学要求: • 了解设备的分类,熟悉设备管理的目标和功能。 • 熟悉程序I/O方式、中断方式、DMA方式和通道方式四种I/O的 控制方式;掌握通道的概念,熟悉通道类型。 • 熟悉缓冲的概念,熟悉单缓冲、双缓冲和多缓冲和缓冲池工 作原理,了解UNIX系统的缓冲技术。 • 了解在进行设备分配时应考虑的设备的固有属性、设备的分 配算法、设备分配的安全性和设备的独立性等因素;掌握设 备分配中数据结构,熟悉设备分配的流程;掌握SPOOLing技 术概念和SPOOLing系统的组成。 • 熟悉设备处理程序的功能和处理方式,熟悉设备处理程序的 处理过程
(一)设备管理的概述 (1)IO系统的组成: 1。微机JO系统 2。主机ⅣO系统
(一)设备管理的概述 (1)I/O系统的组成: 1。微机I/O系统 图 2。主机I/O系统 图
(一)设备管理的概述 (1)设备的分类 Ⅰ/0设备的种类繁多,从0S观点来看,其重要的性能指标有 数据传输速率、数据的传输单位、设备的共享属性等 1.按传输速率分类 低速设备:指传输速率为每秒钟几个字节到数百个字节的设 备。典型的设备有键盘、鼠标、语音的输入等; 中速设备:指传输速率在每秒钟数千个字节至数十千个字节 的设备。典型的设备有行式打印机、激光打印机等; 高速设备:指传输速率在数百千个字节至数兆字节的设备。 典型的设备有磁带机、磁盘机、光盘机等
(一)设备管理的概述 (1)设备的分类 I/O设备的种类繁多,从OS观点来看,其重要的性能指标有: 数据传输速率、数据的传输单位、设备的共享属性等。 1.按传输速率分类 • 低速设备:指传输速率为每秒钟几个字节到数百个字节的设 备。典型的设备有键盘、鼠标、语音的输入等; • 中速设备:指传输速率在每秒钟数千个字节至数十千个字节 的设备。典型的设备有行式打印机、激光打印机等; • 高速设备:指传输速率在数百千个字节至数兆字节的设备。 典型的设备有磁带机、磁盘机、光盘机等
设备的分类-1 2.按信息交换的单位分类 块设备( Block device):指以数据块为单位来组织和传送 数据信息的设备。这类设备用于存储信息,有磁盘和磁带等 它属于有结构设备。典型的块设备是磁盘,每个盘块的大小 为512B~4KB,磁盘设备的基本特征是:①传输速率较高,通 常每秒钟为几兆位;②它是可寻址的,即可随机地读/写任意 块;③磁盘设备的I/O采用DMA方式。 字符设备( Character device):指以单个字符为单位来传 送数据信息的设备。这类设备一般用于数据的输入和输出, 有交互式终端、打印机等。它属于无结构设备。字符设备的 基本特征是:①传输速率较低;②不可寻址,即不能指定输 入时的源地址或输出时的目标地址;③字符设备的I/0常采 用中断驱动方式
设备的分类-1 2.按信息交换的单位分类 • 块设备(Block Device):指以数据块为单位来组织和传送 数据信息的设备。这类设备用于存储信息,有磁盘和磁带等。 它属于有结构设备。典型的块设备是磁盘,每个盘块的大小 为512B~4KB,磁盘设备的基本特征是:①传输速率较高,通 常每秒钟为几兆位;②它是可寻址的,即可随机地读/写任意 一块;③磁盘设备的I/O采用DMA方式。 • 字符设备(Character Device):指以单个字符为单位来传 送数据信息的设备。这类设备一般用于数据的输入和输出, 有交互式终端、打印机等。它属于无结构设备。字符设备的 基本特征是:①传输速率较低;②不可寻址,即不能指定输 入时的源地址或输出时的目标地址;③字符设备的I/O常采 用中断驱动方式
设备的分类-2 3.按资源分配的角度分类 独占设备:指在一段时间内只允许一个用户(进程)访问的 设备,大多数低速的I0设备,如用户终端、打印机等属于这 类设备。因为独占设备属于临界资源,所以多个并发进程必 须互斥地进行访问。 共享设备:指在一段时间内允许多个进程同时访问的设备 显然,共享设备必须是可寻址的和可随机访问的设备。典型 的共享设备是磁盘。共享设备不仅可以获得良好的设备利用 率,而且是实现文件系统和数据库系统的物质基础 虚拟设备:指通过虚拟技术将一台独占设备变换为若干台供 多个用户(进程)共享的逻辑设备。一般可以利用假脱机技 术( SPOOLing技术)实现虚拟设备
设备的分类-2 3.按资源分配的角度分类 • 独占设备:指在一段时间内只允许一个用户(进程)访问的 设备,大多数低速的I/O设备,如用户终端、打印机等属于这 类设备。因为独占设备属于临界资源,所以多个并发进程必 须互斥地进行访问。 • 共享设备:指在一段时间内允许多个进程同时访问的设备。 显然,共享设备必须是可寻址的和可随机访问的设备。典型 的共享设备是磁盘。共享设备不仅可以获得良好的设备利用 率,而且是实现文件系统和数据库系统的物质基础。 • 虚拟设备:指通过虚拟技术将一台独占设备变换为若干台供 多个用户(进程)共享的逻辑设备。一般可以利用假脱机技 术(SPOOLing技术)实现虚拟设备
(2)设备管理的目标和功能 1.设备管理的目标 提高设备的利用率。为此,应尽量提高CPU与I/0设备之间的 并行操作程度,主要利用的技术有:中断技术、DMA技术、通 道技术、缓冲技术 为用户提供方便、统一的界面。所谓方便,是指用户能独立 于具体设备的复杂物理特性之外而方便地使用设备。所谓统 ,是指对不同的设备尽量使用统一的操作方式,例如各种 字符设备用一种I/O操作方式。这就要求用户操作的是简便的 逻辑设备,而具体的Ⅰ/0物理设备由操作系统去实现,这种性 能常常被称为设备的独立性
(2)设备管理的目标和功能 1.设备管理的目标 • 提高设备的利用率。为此,应尽量提高CPU与I/O设备之间的 并行操作程度,主要利用的技术有:中断技术、DMA技术、通 道技术、缓冲技术。 • 为用户提供方便、统一的界面。所谓方便,是指用户能独立 于具体设备的复杂物理特性之外而方便地使用设备。所谓统 一,是指对不同的设备尽量使用统一的操作方式,例如各种 字符设备用一种I/O操作方式。这就要求用户操作的是简便的 逻辑设备,而具体的I/O物理设备由操作系统去实现,这种性 能常常被称为设备的独立性
设备管理的目标和功能-1 2.设备管理功能 设备分配。指设备管理程序按照一定的算法把某一个I/O设备 及其相应的设备控制器和通道分配给某一用户(进程),对 于未分配到的进程,则插入等待队列中。 缓冲区管理。为了解决CPU与I/O之间速度不匹配的矛盾,在 它们之间配置了缓冲区。这样设备管理程序又要负责管理缓 冲区的建立、分配和释放。 ·实现物理I/0设备的操作。对于具有通道的系统,设备管理程 序根据用户提出的I/O0请求,生成相应的通道程序并提交给通 道,然后用专门的通道指令启动通道,对指定的设备进行I/0 操作,并能响应通道的中断请求。对于未设置通道的系统, 设备管理程序直接驱动设备进行I/0操作
设备管理的目标和功能-1 2. 设备管理功能 • 设备分配。指设备管理程序按照一定的算法把某一个I/O设备、 及其相应的设备控制器和通道分配给某一用户(进程),对 于未分配到的进程,则插入等待队列中。 • 缓冲区管理。为了解决CPU与I/O之间速度不匹配的矛盾,在 它们之间配置了缓冲区。这样设备管理程序又要负责管理缓 冲区的建立、分配和释放。 • 实现物理I/O设备的操作。对于具有通道的系统,设备管理程 序根据用户提出的I/O请求,生成相应的通道程序并提交给通 道,然后用专门的通道指令启动通道,对指定的设备进行I/O 操作,并能响应通道的中断请求。对于未设置通道的系统, 设备管理程序直接驱动设备进行I/O操作
二)I/0控制方式 随着计算机技术的发展,I/0的控制方式也在不断地发 展。一般可分为:程序I/0方式、中断方式、DMA方式和通道 方式。I/0的控制方式发展的目标是尽量减少主机对I/0控制 的干预。 (1)程序I/0( Programmed 1/0)方式 在早期的计算机系统中,由于没有中断机构,处理机对I/0 设备直接进行控制,采取程序I/0( Programmed I/0)方式 或称为忙-等待方式,即在CPU向设备控制器发出一条I/0指 令启动Ⅰ/0设备进行数据传输时,要同时把状态寄存器中的 忙/闲标志busy置为1,然后便不断地循环测试busy。当 busy=1时,表示该I/0设备尚未输入完一个字(符),CPU应继 续对该标志进行测试,直至busy=0,表示该I/O设备已将输 入数据送入到I/O控制器的数据寄存器中,于是CPU将从数据 寄存器中取出数据,送入内存的指定单元,接着,再启动去 读下一个数据,并置busy=1
(二)I/O控制方式 • 随着计算机技术的发展,I/O的控制方式也在不断地发 展。一般可分为:程序I/O方式、中断方式、DMA方式和通道 方式。I/O的控制方式发展的目标是尽量减少主机对I/O控制 的干预。 (1) 程序I/O(Programmed I/O)方式 • 在早期的计算机系统中,由于没有中断机构,处理机对I/O 设备直接进行控制,采取程序I/O(Programmed I/O)方式 或称为忙-等待方式,即在CPU向设备控制器发出一条I/O指 令启动I/O设备进行数据传输时,要同时把状态寄存器中的 忙/闲标志busy置为1,然后便不断地循环测试busy。当 busy=l时,表示该I/O设备尚未输入完一个字(符),CPU应继 续对该标志进行测试,直至busy=0,表示该I/O设备已将输 入数据送入到I/O控制器的数据寄存器中,于是CPU将从数据 寄存器中取出数据,送入内存的指定单元,接着,再启动去 读下一个数据,并置busy=l
(a)程序I/0方式的流程 (b)中断驱动方式的流程 CPU→I/0 CPU→I/0 CP其它事 向ⅣO控制器发读命令 向ⅣO控制器发读命令 中断 读ⅣO控制器的状态 I/0→CPU 读ⅣO控制器的状态 CPU 未就绪 出错 出错 检查状态? 检查状态?处理 就绪 就绪 I/0→CPU I/0→CPI 从ⅣO控制器中读入字 从ⅣO控制器中读入字 CPU→RAM CPU→RA 向内存中写入字 向内存中写入字 未 未完 传送完毕? 传送完毕? 元成 完成 执行下条I/0指令 执行下条I/0指令
(a)程序I/O方式的流程 (b)中断驱动方式的流程 CPU→I/O CPU→I/O CPU做其它事 中断 I/O→CPU I/O→CPU 未就绪 出错 出错 处理 处理 就绪 就绪 I/O→CPU I/O→CPU CPU→RAM CPU→RAM 未完 未完 完成 完成 执行下一条I/O指令 执行下一条I/O指令 向I/O控制器发读命令 读I/O控制器的状态 检查状态? 从I/O控制器中读入字 向内存中写入字 传 送 完 毕 ? 向I/O控制器发读命令 读I/O控制器的状态 检查状态? 从I/O控制器中读入字 向内存中写入字 传 送 完 毕 ?