计算机操作系统(第四版)输入输出系统_第1页
计算机操作系统(第四版)输入输出系统_第2页
计算机操作系统(第四版)输入输出系统_第3页
计算机操作系统(第四版)输入输出系统_第4页
计算机操作系统(第四版)输入输出系统_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1设备管理设备管理 教学目的教学目的: 设备管理不但要管理实际I/O操作的设备(如磁盘机、打印机),还要管理诸如设备控制器、DMA控制器、中断控制器、I/O处理机(通道)等支持设备。设备管理包括各种设备分配、缓冲区管理和实际物理IO设备操作,通过管理达到提高设备利用率和方便用户的目的。 设备管理是操作系统中最繁杂而且与硬件紧密相关的部分。2教学要求: l了解设备的分类,熟悉设备管理的目标和功能。l熟悉程序I/O方式、中断方式、DMA方式和通道方式四种I/O的控制方式;掌握通道的概念,熟悉通道类型。l熟悉缓冲的概念,熟悉单缓冲、双缓冲、多缓冲和缓冲池工作原理,了解UNIX系统的缓冲技术。l了解在

2、进行设备分配时应考虑的设备的固有属性、设备的分配算法、设备分配的安全性和设备的独立性等因素;掌握设备分配中数据结构,熟悉设备分配的流程;掌握SPOOLing技术概念和SPOOLing系统的组成。l熟悉设备处理程序的功能和处理方式,熟悉设备处理程序的处理过程。3 存储设备存储设备:用来:用来存放存放各种信息的设备称为存储设备,例如,各种信息的设备称为存储设备,例如,软盘、硬盘、光盘和磁带等;软盘、硬盘、光盘和磁带等; I/OI/O设备设备:用来向计算机用来向计算机输入和输出输入和输出信息的设备,如键盘、信息的设备,如键盘、鼠标、显示器、打印机等。鼠标、显示器、打印机等。 在现代计算机系统中有些设

3、备既可以做在现代计算机系统中有些设备既可以做存储设备存储设备,也可以,也可以做做I/OI/O设备设备,例如,软盘、硬盘等。,例如,软盘、硬盘等。 设备管理就是设备管理就是I/OI/O管理,它是操作系统的一个重要的组成部管理,它是操作系统的一个重要的组成部分,负责分,负责管理系统中所有的外部设备管理系统中所有的外部设备。计算机外部设备:在计算机系统中除计算机外部设备:在计算机系统中除CPUCPU和内存储和内存储外所有的外所有的设备和装置称为计算机外部设备设备和装置称为计算机外部设备( (外围设备、外围设备、I/OI/O设备设备) )。4计算机外部设备种类繁多,特性各异。主要表现在以下几个方面:计

4、算机外部设备种类繁多,特性各异。主要表现在以下几个方面:1.1.速度速度 不同的外部设备的传输速度的差别相当大,如不同的外部设备的传输速度的差别相当大,如键盘键盘的传输速度不的传输速度不过几十,上百个字符,而过几十,上百个字符,而磁盘磁盘的传输速度则是的传输速度则是6060万字节万字节/ /每秒。每秒。2.2.传输单位传输单位 有的设备的传输单位是有的设备的传输单位是字节字节,如键盘、打印机、显示器;,如键盘、打印机、显示器; 有的传输单位是有的传输单位是字符块字符块( (数据块数据块) ),如软盘、硬盘、磁带,如软盘、硬盘、磁带 有的传输单位是有的传输单位是位位,如个人计算机中的,如个人计算

5、机中的Serial Port(s) COM1Serial Port(s) COM1、COM2COM23.3.容许的操作(操作特性)容许的操作(操作特性) 设备完成的设备完成的操作种类各不相同操作种类各不相同,如允许,如允许写写操作,只能做操作,只能做读读操作操作,既可读,也可写既可读,也可写。4.4.出错条件出错条件 不同的设备,其出错条件也不相同,即数据传输不同的设备,其出错条件也不相同,即数据传输失败的原因失败的原因各各种各样,如打印机有缺纸错,磁盘种各样,如打印机有缺纸错,磁盘I/OI/O有奇偶校验错等有奇偶校验错等。5设备管理功能设备管理功能 设备管理的主要设备管理的主要任务任务,是完

6、成用户提出的,是完成用户提出的I/O请求,为用户请求,为用户分配分配I/O设备;提高设备;提高CPU和和I/O设备的利用率设备的利用率;提高提高I/O速度速度;以及;以及方便用方便用户户使用使用I/O设备。设备。设备管理应具有设备管理应具有设备分配与去配、外围设备的启动、磁盘的驱动调设备分配与去配、外围设备的启动、磁盘的驱动调度、设备处理和虚拟设备、缓冲管理等功能。度、设备处理和虚拟设备、缓冲管理等功能。设备分配与去配设备分配与去配的基本任务是根据用户的的基本任务是根据用户的I/OI/O请求,为之分配其所请求,为之分配其所需的设备。运行结束及时收回需的设备。运行结束及时收回. .设备处理设备处

7、理(设备驱动程序设备驱动程序)的基本任务是实现的基本任务是实现CPU和设备控制器和设备控制器之间之间的通信。的通信。虚拟设备虚拟设备的功能是把的功能是把一个物理设备一个物理设备变换为变换为多个对应的逻辑设备多个对应的逻辑设备,以,以使一个物理设备能供多个用户共享。使一个物理设备能供多个用户共享。缓冲管理缓冲管理的基本任务是管理好各种类型的缓冲区,以的基本任务是管理好各种类型的缓冲区,以缓和缓和CPUCPU和和I/OI/O速度不匹配的矛盾速度不匹配的矛盾,最终达到提高,最终达到提高CPUCPU和和I/OI/O设备利用率。设备利用率。 6I/O系统系统 把把I/OI/O设备及其接口线路设备及其接口

8、线路、控制部件、通道以及管理软件、控制部件、通道以及管理软件统称为统称为I/O系统系统.主存与处围设备之间的信息传输操作主存与处围设备之间的信息传输操作,称为称为I/O操作操作.I/O系统系统 把把I/O设备及其接口线路、控制部件、通道以及管理软件统称为设备及其接口线路、控制部件、通道以及管理软件统称为I/O系统。主存与外围设备之间的信息传输操作系统。主存与外围设备之间的信息传输操作,称为称为I/O操作。操作。 典型的典型的I/O系统具有四级结构系统具有四级结构:主机、通道、设备控制器和主机、通道、设备控制器和I/O设设备。备。中央处理器(CPU)主存储器(MM)通道1(CH1)通道2(CH2

9、)通道3(CH3)磁盘控制器磁盘机卡片控制器打印机控制器卡片机打印机磁带控制器磁带机7 I/O I/O设备的种类繁多设备的种类繁多, ,其重要性能指标有其重要性能指标有: :数据传输单数据传输单位位、数据传输速率数据传输速率和和设备的共享属性设备的共享属性等。从不同的角度可等。从不同的角度可以对以对I/O设备进行不同分类:设备进行不同分类:1 按使用特性分按使用特性分 存储型存储型设备设备 输入输出型输入输出型设备(交互型设备)设备(交互型设备)2 2 按传输速率分按传输速率分 低速设备:传输速率每秒低速设备:传输速率每秒几个字节几个字节至至数百个数百个字节;字节; 中速设备:传输速率每秒中速

10、设备:传输速率每秒数千个数千个字节;字节; 高速设备:传输速率每秒高速设备:传输速率每秒数百个千数百个千字节至字节至千兆千兆字节;字节;I/O设备分类设备分类83 按信息交换的单位分按信息交换的单位分 块设备:以块设备:以数据块数据块为单位存储、传输信息,如为单位存储、传输信息,如磁盘、磁带。磁盘、磁带。 字符设备:以字符设备:以字符字符为单位存储、传输信息,如为单位存储、传输信息,如打印机、终端。打印机、终端。4 4 按设备的共享属性分按设备的共享属性分 独占设备独占设备:在:在一段时间一段时间内只能有内只能有一个一个进程使用的设备,一般为低进程使用的设备,一般为低速速I/OI/O设备。(如

11、打印机,磁带等)设备。(如打印机,磁带等) 共享设备共享设备:在:在一段时间一段时间内可有内可有多个多个进程共同使用的设备,多个进进程共同使用的设备,多个进程以程以交叉交叉的方式来使用设备,其资源利用率高。(如硬盘)的方式来使用设备,其资源利用率高。(如硬盘) 虚拟设备虚拟设备:在一类设备上模拟另一类设备,常用共享设备模拟独:在一类设备上模拟另一类设备,常用共享设备模拟独占设备,用高速设备模拟低速设备,占设备,用高速设备模拟低速设备,被模拟的设备被模拟的设备称为虚拟设备。称为虚拟设备。目目的:将的:将慢速的独占设备慢速的独占设备改造成改造成多个用户可共享的设备多个用户可共享的设备,提高设备的利

12、,提高设备的利用率。用率。95 5 按外部设备的从属关系分按外部设备的从属关系分 系统设备系统设备:指操作系统生成时,登记在系统中的:指操作系统生成时,登记在系统中的标准设标准设备备(如终端、打印机、磁盘机等)(如终端、打印机、磁盘机等) 用户设备用户设备:指在系统生成时,未登记在系统中的:指在系统生成时,未登记在系统中的非标准非标准设备设备。对于这类设备的处理程序由用户提供,并将其纳入。对于这类设备的处理程序由用户提供,并将其纳入系统,由系统代替用户实施管理。(如系统,由系统代替用户实施管理。(如A/DA/D,D/AD/A转换器,转换器,CADCAD所用专用设备)所用专用设备)6 6 从程序

13、使用角度分从程序使用角度分 逻辑设备逻辑设备 物理设备物理设备10 I IO O设备一般由设备一般由机械机械和和电子电子两部分组成。把这两部分两部分组成。把这两部分分开处理,以提供更加模块化,更加通用的设计。分开处理,以提供更加模块化,更加通用的设计。1.1.物理设备物理设备 机械部分是设备本身(物理装置)。机械部分是设备本身(物理装置)。2.2.设备控制器(设备控制器(是设备与是设备与CPU的的接口接口) 电子部分叫做电子部分叫做设备控制器设备控制器或或适配器适配器、接口卡接口卡 在小型和微型机中,它常采用在小型和微型机中,它常采用印刷电路卡印刷电路卡插入计算机中。插入计算机中。设备组成设备

14、组成11设备控制器设备控制器 通常通常, ,外围设备并不是直接与外围设备并不是直接与CPUCPU进行通信进行通信, ,而是与设备而是与设备控制器通信控制器通信. .在设备与设备控制器之间有一个接口在设备与设备控制器之间有一个接口, ,通过通过数数据线据线、控制线和状态线、控制线和状态线传输传输数据、控制和状态三种类型信数据、控制和状态三种类型信号号.转换器缓冲控制逻辑I/O设备数据信号线状态信号线控制信号线至设备控制器信号数据设备与控制器之间的接口12 设备控制器位于设备控制器位于CPU与设备与设备之间之间,主要主要职责职责是控制一个或是控制一个或多个多个I/O设备,以实现设备,以实现I/O设

15、备设备和和主机主机之间的数据交换。它接受之间的数据交换。它接受从从CPU发来的命令,并去控制发来的命令,并去控制I/O设备工作。设备工作。 设备控制器是一个设备控制器是一个可编址可编址的设备,当它的设备,当它只控制一个只控制一个设备时,设备时,它只有一个它只有一个唯一的设备地址唯一的设备地址;若它控制;若它控制多个设备多个设备时,则它含时,则它含有有多个设备地址多个设备地址,并使每个设备对应一个设备地址,以,并使每个设备对应一个设备地址,以区别区别各个设备各个设备。 控制器的控制器的任务任务是把串行的是把串行的位流位流转换为转换为字节块字节块,并进行必,并进行必要的要的错误修正错误修正。首先,

16、控制器按位进行。首先,控制器按位进行组装组装,然后,然后存入存入控制控制器内部的器内部的缓冲区中缓冲区中形成以形成以字节为单位的块字节为单位的块。在对块验证检查。在对块验证检查和并证明和并证明无错误时无错误时,再将它,再将它复制到主存复制到主存中。中。设备控制器可分为两类:设备控制器可分为两类:1 用于控制用于控制字符设备字符设备的控制器的控制器2 用于控制用于控制块设备块设备的控制器的控制器设备控制器设备控制器131 接受和识别命令接受和识别命令 通过控制器中的通过控制器中的控制寄存器控制寄存器来存放和接受来存放和接受CPU发来发来的命令和参数,并对这些命令进行译码。的命令和参数,并对这些命

17、令进行译码。2 数据交换数据交换 通过控制器中的通过控制器中的数据寄存器数据寄存器来实现来实现CPU与控制器之与控制器之间、控制器与设备之间的数据交换。间、控制器与设备之间的数据交换。3 表示和报告设备的状态表示和报告设备的状态 通过控制器中的通过控制器中的状态寄存器状态寄存器记下设备的状态供记下设备的状态供CPU了解。仅当设备处于发送就绪状态时,了解。仅当设备处于发送就绪状态时,CPU才能启动设才能启动设备控制器从中读出数据。备控制器从中读出数据。设备控制器设备控制器基本功能基本功能144 地址识别地址识别 通过控制器中的通过控制器中的地址译码器地址译码器来识别各个设备。系统来识别各个设备。

18、系统中的每一个设备都有一个地址,用来唯一的标示这台设中的每一个设备都有一个地址,用来唯一的标示这台设备,为此设备控制器必须能够识别它所控制的每个设备备,为此设备控制器必须能够识别它所控制的每个设备的地址。的地址。5 数据缓冲数据缓冲 通过控制器中的通过控制器中的缓冲器缓冲器来缓解来缓解I/O设备与设备与CPU之间速之间速率不匹配的矛盾。率不匹配的矛盾。6 差错控制差错控制 设备控制器兼管数据的差错检查。通过将差错检测设备控制器兼管数据的差错检查。通过将差错检测码置位来向码置位来向CPU报告数据出错。报告数据出错。15设备控制器的组成设备控制器的组成设备控制器与设备控制器与CPU的接口的接口:实

19、现:实现CPU与控制器之间的通信;与控制器之间的通信;设备控制器与设备控制器与设备设备的接口的接口:用于与设备的连接,一个设备控制器:用于与设备的连接,一个设备控制器上可以连接多个设备,因而一个设备控制器便有上可以连接多个设备,因而一个设备控制器便有多个设备接口多个设备接口,一个接口连接一个设备;一个接口连接一个设备; I/O逻辑逻辑:实现设备的控制;:实现设备的控制; 16数据寄存器控制/状态寄存器I/O逻辑控制器与设备接口1控制器与设备接口 n.数据线地址线控制线数据状态控制数据状态控制CPU与控制器接口控制器与设备接口设备控制器的组成设备控制器的组成17I/OCPU内内存存18CPU内内

20、存存设备设备控制器控制器I/O19CPU内内存存设备设备控制器控制器通道通道I/O20 1. 1.定义定义:I/OI/O通道是独立于通道是独立于CPUCPU的专门的专门负责数据输入负责数据输入/ /输出传输输出传输工作工作的的处理机处理机,对外部设备实现统一管理,对外部设备实现统一管理,代替代替CPUCPU对输入对输入/ /输出操作进输出操作进行控制,从而使输入行控制,从而使输入/ /输出操作输出操作可与可与CPUCPU并行操作并行操作, ,又称又称I/OI/O处理器。处理器。通道工作原理通道工作原理 通道相当于一个通道相当于一个功能简单的处理机功能简单的处理机,包含,包含通道指令通道指令(读

21、操作,(读操作,写操作,控制,转移操作),并写操作,控制,转移操作),并可执行可执行用这些指令编写的用这些指令编写的通道程序通道程序。 通道程序启动通道程序启动I/OI/O设备,执行完毕后设备,执行完毕后, ,如果还有下一条指令,则如果还有下一条指令,则继续执行继续执行, , 否则表示传输完成。否则表示传输完成。 执行执行通道程序,向控制器通道程序,向控制器发出命令发出命令,并具有向,并具有向CPUCPU发中断信号发中断信号的功能。的功能。 一旦一旦CPUCPU发出指令,启动通道,则通道发出指令,启动通道,则通道独立于独立于CPUCPU工作工作。一个通道一个通道可连接多个控制器可连接多个控制器

22、,一个控制器,一个控制器可连接多个设备可连接多个设备,形成树,形成树形交叉连接。形交叉连接。 I/O通道通道212.2.引入通道的目的引入通道的目的 为了使为了使CPUCPU从从I/OI/O事务中解脱出来,同时为了提高事务中解脱出来,同时为了提高CPUCPU与与设备设备,设备与设备设备与设备之间的并行工作能力。之间的并行工作能力。 建立独立的建立独立的I/OI/O操作,使一些原来由操作,使一些原来由CPUCPU处理的处理的I/OI/O任务任务转由转由通道通道来承担。来承担。3.3.特点特点 1)1)指令类型单一指令类型单一:所执行的命令仅局限于:所执行的命令仅局限于与与I/OI/O操作有关操作

23、有关的指令。的指令。 2)2)没有自己的内存没有自己的内存:通道:通道与与CPUCPU共享内存共享内存。224. 4. 分类分类 根据信息交换的方式不同根据信息交换的方式不同, ,通道可分为三种类型通道可分为三种类型: :字节多字节多路通道路通道、数组选择通道数组选择通道和和数组多路通道。数组多路通道。1) 1) 字节多路通道字节多路通道 字节多路通道以字节多路通道以字节字节为单位传输信息,它可以为单位传输信息,它可以分时地分时地执行多个通道程序。当一个通道程序控制某台设备传送执行多个通道程序。当一个通道程序控制某台设备传送一个一个字节字节后,后,通道硬件通道硬件就控制转去执行另一个通道程序,

24、控制另就控制转去执行另一个通道程序,控制另一台设备传送信息。一台设备传送信息。 主要连接以主要连接以字节字节为单位的为单位的低速低速I/OI/O设备。设备。如打印机,终如打印机,终端。以字节为单位交叉传输,当一台传送一个字节后,立即端。以字节为单位交叉传输,当一台传送一个字节后,立即转去为另一台传送字节转去为另一台传送字节23子通道子通道子通道子通道控制器A控制器B控制器C控制器N设备主通道字节多路通道的工作原理字节多路通道的工作原理24 2) 2)数组选择通道数组选择通道 数组选择通道是以数组选择通道是以块为单位成批传送数据块为单位成批传送数据,即每次,即每次传送传送一批数据一批数据,故,故

25、传送速度很高传送速度很高。选择通道在。选择通道在一段时间一段时间内只能执行内只能执行一个通道程序一个通道程序,只允许一台设备进行数据传,只允许一台设备进行数据传输,输,当一台设备数据传输完成后,当一台设备数据传输完成后,再选择再选择与通道连接的与通道连接的另一台设备另一台设备,执行它的相应的通道程序。,执行它的相应的通道程序。 主要连接磁盘,磁带等主要连接磁盘,磁带等高速高速I/O设备设备。选择通道选择通道25 3) 3)数组多路通道数组多路通道 它结合了它结合了选择通道传送速度高选择通道传送速度高和和字节多路通道字节多路通道能进能进行行分时并行操作分时并行操作的优点。它先为一台设备执行一条通

26、道的优点。它先为一台设备执行一条通道指令,然后自动转接,为另一台设备执行一条通道指令。指令,然后自动转接,为另一台设备执行一条通道指令。 主要连接主要连接高速设备。高速设备。这样,对于连接多台磁盘机的这样,对于连接多台磁盘机的数组多路通道,它可以启动它们同时执行移动定位操作,数组多路通道,它可以启动它们同时执行移动定位操作,然后,按序交叉地传输一批批数据。数据多路通道实际然后,按序交叉地传输一批批数据。数据多路通道实际上是对上是对通道程序通道程序采用采用多道程序设计多道程序设计的硬件实现。的硬件实现。26 由于由于通道的价格较贵通道的价格较贵,致使计算机系统中通,致使计算机系统中通道的数量远比

27、设备少。这样,往往因道的数量远比设备少。这样,往往因通道数量不通道数量不足足,产生一种,产生一种“瓶颈瓶颈”现象,影响整个系统的处现象,影响整个系统的处理能力。理能力。 解决解决“瓶颈瓶颈”问题的问题的最有效的方法最有效的方法,便是,便是增增加加设备到主机间的设备到主机间的通路通路而而不增加通道不增加通道。也就是,。也就是,把一个设备连接到多个控制器上,而一个控制器把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。又连接到多个通道上。 “瓶颈瓶颈”问题问题272829总线总线:控制器和设备之间的:控制器和设备之间的接口接口以及计算机系统以及计算机系统中的中的各个子系统各个子系统(C

28、PUCPU、内存、外设等)相互连接、内存、外设等)相互连接的的线路线路,且连接是共享的。,且连接是共享的。优点:优点:低成本低成本(一线多用)(一线多用) 灵活性灵活性(易于增加设备易于增加设备,便于两个计算机,便于两个计算机系统之间共享外设系统之间共享外设)总线分类:总线分类: 数据总线数据总线(DB)(DB)、地址总线、地址总线(AB)(AB)、控制总线、控制总线(CB)(CB)总线总线30I/O控制方式控制方式 按照按照I/O控制器功能的强弱以及和控制器功能的强弱以及和CPU之间联系之间联系方式的不同,把方式的不同,把I/O设备的控制方式分为以下四类设备的控制方式分为以下四类:1 程序程

29、序I/O方式方式2 中断驱动中断驱动I/O控制方式控制方式3 直接存储器访问直接存储器访问(DMA)I/O控制方式控制方式4 I/O通道控制方式通道控制方式 I/OI/O控制方式发展的目标控制方式发展的目标是尽量减少主机对是尽量减少主机对I/OI/O控制的干预,更多地进行数据处理,提高计算机效控制的干预,更多地进行数据处理,提高计算机效率和资源的利用率。率和资源的利用率。主要差别主要差别在于在于CPUCPU与外围设备并与外围设备并行工作的方式不同,并行工作的程度不同。行工作的方式不同,并行工作的程度不同。31程序程序I/O方式方式 程序程序I/O控制方式控制方式是指由程序是指由程序直接控制内存

30、直接控制内存或或CPU和和外围设备外围设备之间进行信息传送的方式。通常又称为之间进行信息传送的方式。通常又称为“忙忙/等等待待”方式方式或或询问方式询问方式。 以数据输入为例,当用户进程需要输入数据时,由以数据输入为例,当用户进程需要输入数据时,由处理机处理机向设备控制器向设备控制器发出发出I/OI/O指令指令启动设备进行输入,同启动设备进行输入,同时把状态寄存器中的时把状态寄存器中的忙忙/ /闲状态闲状态busybusy置为置为1 1。在设备。在设备输入期输入期间间,CPUCPU通过通过循环执行测试指令循环执行测试指令不间断地检测不间断地检测设备状态寄设备状态寄存器存器的值,当状态寄存器的值

31、显示设备的值,当状态寄存器的值显示设备输入完成时输入完成时,处理,处理机将机将数据寄存器数据寄存器中的数据中的数据取走取走,送入内存指定单元送入内存指定单元,然后,然后再启动再启动设备去设备去读下一个数据读下一个数据。反之,当用户进程需要向设。反之,当用户进程需要向设备输出数据时,也必须同样备输出数据时,也必须同样发启动命令发启动命令启动设备输出并启动设备输出并等等待输出待输出操作完成。操作完成。32向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器读入字向主存中写字传送完成?下条指令完成忙就绪未完CPU I/OI/O CPU出错I/O CPUCPU 主存程序I/O方式33 (

32、1) (1)把一个启动位为把一个启动位为“1 1”的控制字写入该设备的的控制字写入该设备的控制控制状态寄存器状态寄存器; (2)(2)将需输出数据的将需输出数据的一个字一个字( (节节) )送到送到数据缓冲寄存器数据缓冲寄存器; (3)(3)测试控制状态寄存器中的测试控制状态寄存器中的“busybusy”,若为,若为1 1,转,转(2)(2),否则转否则转(4)(4); (4)(4)输出设备将输出设备将数据缓冲寄存器数据缓冲寄存器中的数据取走进行实中的数据取走进行实际的输出。际的输出。直接控制方式的输出数据时的工作过程:直接控制方式的输出数据时的工作过程:优点优点:控制简单:控制简单,不需要多

33、少硬件支持。不需要多少硬件支持。(循环测试方式循环测试方式)缺点缺点:CPU和和外设外设只能只能串行工作串行工作,CPU利用率低利用率低。设。设备之间备之间不能并行工作不能并行工作 。(忙忙等待方式等待方式) 34 为了提高为了提高CPU和设备的利用率,就应使和设备的利用率,就应使CPU与与设备并设备并行工作行工作。在现代计算机系统中,对。在现代计算机系统中,对I/O设备的控制设备的控制广泛采用广泛采用I/O中断方式中断方式。采用这种方式要求。采用这种方式要求CPU与设备之间有相应的与设备之间有相应的中断请求线,且在控制寄存器中有一个中断位。中断请求线,且在控制寄存器中有一个中断位。中断驱动中

34、断驱动I/O控制方式控制方式 计算机在运行过程中,可能会发生运算溢出、除数为计算机在运行过程中,可能会发生运算溢出、除数为零、无休止循环或电压下降等零、无休止循环或电压下降等事先无法预料的故障事先无法预料的故障,这些,这些都是运行中非正常的现象。都是运行中非正常的现象。 CPU收到中断请求后转相应事件处理程序的过程称为收到中断请求后转相应事件处理程序的过程称为中断响应中断响应。35向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器读字向主存中写字传送完成?下条指令完成就绪未完CPU I/OI/O CPU出错I/O CPUCPU 主存CPU做其他事中断中断驱动方式流程中断驱动方式

35、流程36 优点优点:实现:实现主机主机和和外部设备并行工作外部设备并行工作,CPUCPU原来用于查原来用于查询外设状态的时间被充分地利用起来了,其工作效率得到了询外设状态的时间被充分地利用起来了,其工作效率得到了显著的提高,大大地显著的提高,大大地提高了提高了CPUCPU的利用效率的利用效率。 缺点缺点:传送信息的单位通常是:传送信息的单位通常是一个字一个字( (节节) ),对于,对于块设块设备备( (磁盘、磁带磁盘、磁带) )数据交换是成批的,且数据交换是成批的,且单位数据之间的时间单位数据之间的时间间隔较短间隔较短,如果也采用程序中断方式,将,如果也采用程序中断方式,将造成信息的丢失。造成

36、信息的丢失。且每传送一个字符或一个字且每传送一个字符或一个字, ,都要发生一次中断。都要发生一次中断。37 DMA方式又称直接存储器访问又称直接存储器访问I/O控制方式控制方式 程序中断控制方式提高了程序中断控制方式提高了主机主机和和外设并行工作的效率外设并行工作的效率,但,但是每传送一个字或一个字节的数据是每传送一个字或一个字节的数据就要执行一遍中断服务程序就要执行一遍中断服务程序,数据传送时仍然要占用数据传送时仍然要占用CPUCPU的时间,整个系统的效率的时间,整个系统的效率还是没有还是没有充分发挥充分发挥。对于一些高速传送的外部设备,这种传送方式的传。对于一些高速传送的外部设备,这种传送

37、方式的传输速度就显得太低了。输速度就显得太低了。其基本思想其基本思想是在是在外设外设和和主存主存之间开辟之间开辟直接的数据交换通路直接的数据交换通路。如。如图所示,使图所示,使CPUCPU不介入不介入传送时的操作,数据也不经过传送时的操作,数据也不经过CPUCPU。这样。这样就减少了就减少了CPUCPU的开销,系统效率得到了提高。的开销,系统效率得到了提高。CPU主存DMA接口接口38向I/O控制器发布读块命令CPU DMACPU做其他事读DMA控制器的状态中断DMA CPU下条指令DMA方式39DMA方式的特点是:方式的特点是: (1)数据传送的基本单位是)数据传送的基本单位是数据块数据块。

38、 (2)所传送的数据是从)所传送的数据是从设备设备送送内存内存,或者相反。,或者相反。 (3)仅在传送一个或多个数据块的)仅在传送一个或多个数据块的开始和结束时开始和结束时,才需中才需中断断CPU,请求干预,整块数据的传送是在,请求干预,整块数据的传送是在DMA控制器控制控制器控制下完成的。下完成的。 采用采用DMADMA方式时,允许方式时,允许DMADMA控制器控制器接管地址线的控制权接管地址线的控制权,直接控制直接控制DMADMA控制器控制器与内存的数据交换与内存的数据交换。从而使磁盘设备与。从而使磁盘设备与存储器之间的数据传送不需要存储器之间的数据传送不需要CPUCPU介入,因而减轻了介

39、入,因而减轻了CPUCPU负负担。担。 当采用当采用DMADMA时,除向控制器时,除向控制器提供提供要读块的要读块的磁盘地址磁盘地址外,外,还要向控制器提供两个信息:要读块送往还要向控制器提供两个信息:要读块送往内存的起始地址内存的起始地址和要和要传送的字节数传送的字节数40DMADMA方式与中断方式的主要区别方式与中断方式的主要区别 1 1)中断方式是每传送)中断方式是每传送一个字节一个字节之后发中断请求,请求之后发中断请求,请求CPUCPU进行中断处理;进行中断处理; DMADMA方式则是在所要求传送的方式则是在所要求传送的数据块数据块全部传送结束时要求全部传送结束时要求CPUCPU进行中

40、断处理,大大进行中断处理,大大减少了减少了CPUCPU进行中断处理的次数进行中断处理的次数 2 2)中断方式的)中断方式的数据传送数据传送是由是由CPUCPU控制完成控制完成的;的; DMADMA方式则是在方式则是在DMADMA控制器控制器的控制下不经过的控制下不经过CPUCPU控制完成的控制完成的41 DMA方式的一个显著特点是方式的一个显著特点是数据传送时,数据传送时,CPU仍然执仍然执行主程序,行主程序,那么,有可能那么,有可能DMA控制逻辑与控制逻辑与CPU同时要访同时要访问主存问主存,引起主存使用权的冲突。如何处理这种冲突呢?,引起主存使用权的冲突。如何处理这种冲突呢?周期挪用法周期

41、挪用法: : 当当DMADMA要求访问主存时,要求访问主存时,CPUCPU暂时停顿一个存储周期暂时停顿一个存储周期。一个数据传送结束后,一个数据传送结束后,CPUCPU立即立即继续运行继续运行。由于。由于 CPUCPU现场现场并没有变动,只是并没有变动,只是延缓了对指令的执行延缓了对指令的执行,因此,这种技术,因此,这种技术称为称为周期挪用周期挪用,或称,或称周期窃取周期窃取。思考:思考:M1 M2 存储周期存储周期 M3DMA挪用挪用42 虽然虽然 DMADMA方式比中断驱动方式已显著地减少了方式比中断驱动方式已显著地减少了CPUCPU的干预,即的干预,即由以由以字(节)字(节)为单位的干预

42、减少到以为单位的干预减少到以数据块数据块为单位的干预。但是为单位的干预。但是CPUCPU每发出一条每发出一条I/OI/O指令,也只能去读(或写)一个连续的数据块。指令,也只能去读(或写)一个连续的数据块。而当我们需要而当我们需要一次去读多个离散的数据块一次去读多个离散的数据块且将它们分别且将它们分别传送到不同传送到不同的内存区域的内存区域,或者相反时,则需由,或者相反时,则需由CPUCPU分别发出多条分别发出多条I/OI/O指令及进行指令及进行多次中断处理,才能完成。多次中断处理,才能完成。I/O通道控制方式的引入通道控制方式的引入 由于由于DMADMA每次只能执行一条每次只能执行一条I/OI/O指令指令,不能满足复杂的,不能满足复杂的I/OI/O操作操作要求。在大、中型计算机系统中,普遍采用由要求。在大、中型计算机系统中,普遍采用由专用的专用的I/OI/O处理器处理器来来接受接受CPUCPU的委托,独立执行自己的通道程序来的委托,独立执行自己的通道程序来实现实现I/OI/O设备与内存之设备与内存之间间的信息交换,这就是的信息交换,这就是通道技术通道技术。 通道技术可以进一步减少通道技术可以进一步减少 CPUCPU的干预,即把的干预

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论