版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机设备管理知识培训5.1 输入输出管理概念一、设备管理的目的:1 1)合理地利用外部设备)合理地利用外部设备: :提高设备的并行性和均衡性提高设备的并行性和均衡性。2 2)方便用户:)方便用户:对各种不同的设备都使用同一界面对各种不同的设备都使用同一界面。二、设备管理的功能 根据各类设备的特点确定相应的分配策略。(根据各类设备的特点确定相应的分配策略。(包括:设备包括:设备分配策略,分配的方式,分配技术和选择用户的算法分配策略,分配的方式,分配技术和选择用户的算法。)。) 启动设备完成实际的输入输出操作。启动设备完成实际的输入输出操作。 向用户提供统一、友好的使用界面。(设备独立性)向用户
2、提供统一、友好的使用界面。(设备独立性) 优化设备的调度、提高设备的利用率。优化设备的调度、提高设备的利用率。外部设备:除除CPUCPU、主存之外的其它设备。、主存之外的其它设备。2 2三、设备的分类 计算机的计算机的I/OI/O设备种类很多,结构也较复杂,管理起来较困难,设备种类很多,结构也较复杂,管理起来较困难,为了管理上的方便。通常按不同的观点从不同的角度对设备进行分为了管理上的方便。通常按不同的观点从不同的角度对设备进行分类。类。1按所属关系分类1 1)系统设备。指在操作系统生成时已登记于系统中的标准设备。如系统设备。指在操作系统生成时已登记于系统中的标准设备。如键盘、打印机、磁盘等。
3、键盘、打印机、磁盘等。2 2)用户设备。指在系统生成时未登记于系统中的非标准设备。用户设备。指在系统生成时未登记于系统中的非标准设备。用户必须用某种方式把这类设备交给系统统一管理,如绘图用户必须用某种方式把这类设备交给系统统一管理,如绘图机、扫描仪等,机、扫描仪等,3 32从设备的共享属性(资源分配角度)分类1 1)独占设备。指在在一段时间内只允许一个用户(进程)访问独占设备。指在在一段时间内只允许一个用户(进程)访问的设备,如打印机、卡片输入机等。系统一旦将这类设备分配给的设备,如打印机、卡片输入机等。系统一旦将这类设备分配给某一作业,就在作业整个运行期间都为它独占。某一作业,就在作业整个运
4、行期间都为它独占。2 2)共享设备。指允许若干个用户同时共享使用的设备,如磁盘、磁带共享设备。指允许若干个用户同时共享使用的设备,如磁盘、磁带等。等。3 3)虚拟设备。为提高设备的利用率,通过虚拟设备。为提高设备的利用率,通过Spooling技术把一台独技术把一台独占设备变换为若干台逻辑设备,供若干个用户(进程)同时使用,占设备变换为若干台逻辑设备,供若干个用户(进程)同时使用,用来模拟独占设备的那部分共享设备称为虚拟设备。用来模拟独占设备的那部分共享设备称为虚拟设备。4 43从设备的使用特性分类1 1) 存储设备。指计算机用来存储信息的设备:如磁盘、磁带等。存储设备。指计算机用来存储信息的设
5、备:如磁盘、磁带等。2 2) 输入输出设备。包括输入设备和输出设备两大类。输入输出设备。包括输入设备和输出设备两大类。输入设备:是将外部世界来的信息输送给计算机,如键盘、鼠标器、扫输入设备:是将外部世界来的信息输送给计算机,如键盘、鼠标器、扫描仪等。描仪等。输出设备:是将计算机处理或加工好的信息输出给外部世界,如打印输出设备:是将计算机处理或加工好的信息输出给外部世界,如打印机、显示器、绘图机等。机、显示器、绘图机等。5 54按信息交换(单位)方式分类1 1)块设备。指计算机的主存和外设之间的信息交换是以块为单)块设备。指计算机的主存和外设之间的信息交换是以块为单位进行的设备。一块通常是位进行
6、的设备。一块通常是512512个字节或个字节或1K1K字节,由于信息交换字节,由于信息交换以块为单位进行,所以这类设备有较高的存取速度;如磁盘、磁以块为单位进行,所以这类设备有较高的存取速度;如磁盘、磁带等。带等。2 2)字符设备。指计算机的主存与设备之间的信息交换是以字)字符设备。指计算机的主存与设备之间的信息交换是以字符为单位进行的设备,由于每次只能传送一个字符的信息,所符为单位进行的设备,由于每次只能传送一个字符的信息,所以这类设备的速度较低,如键盘、显示器、打印机、卡片输入以这类设备的速度较低,如键盘、显示器、打印机、卡片输入机等。机等。6 6 计算机系统的输入输出设备种类、型号、规格
7、繁多,所以必计算机系统的输入输出设备种类、型号、规格繁多,所以必须屏蔽设备的物理特性,向用户提供一个统一、简便的使用接口,须屏蔽设备的物理特性,向用户提供一个统一、简便的使用接口,实现所谓的与设备无关性(设备独立性)。实现所谓的与设备无关性(设备独立性)。 所谓方便,是指用户能摆脱具体物理设备的繁琐规定的束所谓方便,是指用户能摆脱具体物理设备的繁琐规定的束缚而方便灵活地使用设备。缚而方便灵活地使用设备。 所谓统一所谓统一,是指对各种不同的设备都使用同一界面。例如,在是指对各种不同的设备都使用同一界面。例如,在UNIXUNIX系统中从各种输入设备输入信息都使用系统调用系统中从各种输入设备输入信息
8、都使用系统调用read,read,向各种输向各种输出设备传送信息都使用系统调用出设备传送信息都使用系统调用write.write.四、设备独立性(设备无关性)逻辑设备名:用户自己指定的设备名(设备类逻辑设备名:用户自己指定的设备名(设备类相对号)。相对号)。物理设备名:系统提供的设备标准名称(绝对号)。物理设备名:系统提供的设备标准名称(绝对号)。( (一一) )设备独立性:用户在编制程序时使用的设备与实际使用的设备设备独立性:用户在编制程序时使用的设备与实际使用的设备无关,用户程序中使用的是逻辑设备。无关,用户程序中使用的是逻辑设备。7 71 1、一个程序应该独立于分配给它的某种类型的具体设
9、备。、一个程序应该独立于分配给它的某种类型的具体设备。 1 1)保护程序不会因为某一台物理设备发生故障或已分配)保护程序不会因为某一台物理设备发生故障或已分配给其它程序而失效;给其它程序而失效; 2 2)使操作系统根据当时总的设备配置情况自由地分配适当类型)使操作系统根据当时总的设备配置情况自由地分配适当类型的设备。的设备。2 2、一个程序应该尽可能与它所使用的、一个程序应该尽可能与它所使用的I/OI/O设备类型无关。设备类型无关。 指在指在I/OI/O信息时,可以从不同类型的设备上信息时,可以从不同类型的设备上I/OI/O,若要改变设备的类,若要改变设备的类型,程序只需做很少的修改。型,程序
10、只需做很少的修改。(二)设备独立性的类型:逻辑设备名逻辑设备名物理设备名物理设备名设备管理设备管理8 8(三)设备管理分为两层:1 1)输入输出控制系统)输入输出控制系统 它与用户相互交互,完成设备的分配、调度并向程序员它与用户相互交互,完成设备的分配、调度并向程序员提供一个统一的编程接口,实现了逻辑设备向物理设备的转换。提供一个统一的编程接口,实现了逻辑设备向物理设备的转换。2 2)设备驱动程序)设备驱动程序 它直接与设备打交道,控制设备控制器,完成具体的输它直接与设备打交道,控制设备控制器,完成具体的输入输出。入输出。 实现设备无关性的一个好办法就是采用分层思想,逐层抽象。实现设备无关性的
11、一个好办法就是采用分层思想,逐层抽象。9 95.2 数据传输控制方式一、IO控制方式1 1)循环测试)循环测试I/OI/O方式;方式;2 2)I/OI/O中断方式;中断方式;3 3)DMADMA方式;方式;4 4)通道方式。)通道方式。设备(I/O)控制器: 是是CPUCPU与与I/OI/O设备之间的接口,设备不直接与设备之间的接口,设备不直接与CPUCPU进行通信,进行通信,设备控制器接收从设备控制器接收从CPUCPU发来的命令,去控制发来的命令,去控制I/OI/O设备工作,包设备工作,包括控制括控制/ /状态寄存器和数据缓冲寄存器。状态寄存器和数据缓冲寄存器。1010 CPU CPU与外设
12、的活动本质上是异步的,为了实现与外设的活动本质上是异步的,为了实现CPUCPU与外设间的信息传与外设间的信息传送,送,CPUCPU必须重复测试外设的状态;仅当外设是处在准备好的状态时,必须重复测试外设的状态;仅当外设是处在准备好的状态时,CPUCPU才能与外设交换信息。才能与外设交换信息。问题:问题:1 1)CPUCPU的大量时间消耗在等待输入输出的循环检测上,使的大量时间消耗在等待输入输出的循环检测上,使CPUCPU与外与外设串行工作,严重影响了设串行工作,严重影响了CPUCPU的使用效率;的使用效率;2 2)外设的使用也不合理)外设的使用也不合理( (诸外设不能并行工作诸外设不能并行工作)
13、 );3 3)无法支持多道程序并发执行,整个系统效率很低。)无法支持多道程序并发执行,整个系统效率很低。 在早期计算机或现代一些简单的微型计算机系统中采用循环在早期计算机或现代一些简单的微型计算机系统中采用循环测试传送方式。循环测试传送是一种用程序直接控制测试传送方式。循环测试传送是一种用程序直接控制I IO O操作的操作的方式。方式。1. 循环测试I/O方式;11112. IO中断方式; 引入中断技术后,每当设备完成引入中断技术后,每当设备完成I IO O操作时,便向操作时,便向CPUCPU发发出中断请求信号,通知出中断请求信号,通知CPUCPU进行进行I/OI/O中断处理。中断处理。 这样
14、,这样,CPUCPU一旦启动一旦启动1 1O O设备后便可执行其它程序,仅在收设备后便可执行其它程序,仅在收到到I IO O中断请求时才执行其中断服务程序,进行中断请求时才执行其中断服务程序,进行I IO O处理。处理。 例如例如, ,行式打印机每打印一行约需行式打印机每打印一行约需60ms,60ms,在循环测试传送方式中,在循环测试传送方式中,大约有大约有59.99ms CPU59.99ms CPU都处于循环测试中,在程序中断都处于循环测试中,在程序中断I IO O方式中,方式中,CPUCPU仅用仅用0.1ms0.1ms时间处理打印机的中断服务程序。其余的时间处理打印机的中断服务程序。其余的
15、59.9ms59.9ms可以可以处理其它任务。处理其它任务。1212优点:优点:1 1)程序中断传送方式改善了)程序中断传送方式改善了CPUCPU的利用率;的利用率;2 2)使)使CPUCPU与外设并行操作。与外设并行操作。缺点:缺点: 采用中断驱动采用中断驱动I IO O方式时,每传送一个数据方式时,每传送一个数据CPUCPU都要做一次都要做一次中断处理,每次中断处理都要保护中断处理,每次中断处理都要保护CPUCPU现场,处理结束时又要恢现场,处理结束时又要恢复复CPUCPU现场,若管理的现场,若管理的I/OI/O设备较多,设备较多,CPUCPU会陷入这些会陷入这些I/OI/O中断处中断处理
16、中,无法进行其他工作。理中,无法进行其他工作。13133. DMA传送方式(直接内存存取) 为了进一步减少为了进一步减少CPUCPU对对I IO O的干预而引入了直接存储器访问方式。的干预而引入了直接存储器访问方式。设备设备主存主存直接传送直接传送不用不用CPUCPU干涉干涉 I/O I/O控制器增添了控制器增添了DMADMA控制机构,在控制机构,在DMADMA控制器控制下,外设直接与控制器控制下,外设直接与内存交换成批数据而不用内存交换成批数据而不用CPUCPU干预。干预。 为了实现控制器与主机之间成批数据的直接交换,必须在为了实现控制器与主机之间成批数据的直接交换,必须在DMADMA控制器
17、中设置四类寄存器:控制器中设置四类寄存器:(1)(1)命令状态寄存器命令状态寄存器CRCR;(2)(2)数据缓冲寄存器数据缓冲寄存器DR;DR;(3)(3)内存地址寄存器内存地址寄存器MAR;MAR;(4)(4)数据计数器数据计数器DCDC。1414以从磁盘读入数据为例说明以从磁盘读入数据为例说明DMADMA方式的工作流程:方式的工作流程:1 1)当)当CPUCPU要从磁盘读入一数据块时,便向磁盘控制器发送一条要从磁盘读入一数据块时,便向磁盘控制器发送一条读命令,该命令被送入命令寄存器读命令,该命令被送入命令寄存器CR;CR;2 2)同时发送本次要将数据读入内存的起始地址到)同时发送本次要将数
18、据读入内存的起始地址到MARMAR中中; ;3 3)本次要读的数据的字节)本次要读的数据的字节( (符符) )数送至数送至DRDR中中; ;4 4)将磁盘源地址直接送至)将磁盘源地址直接送至DMADMA控制器的控制器的I/OI/O控制逻辑上;控制逻辑上;5 5)然后启动)然后启动DMADMA控制器进行数据传送。控制器进行数据传送。 以后以后,CPU,CPU便可去处理其他任务。此后的整个数据传送便由便可去处理其他任务。此后的整个数据传送便由DMADMA控制控制器进行控制。器进行控制。1515 采用采用DMADMA方式时,不仅允许方式时,不仅允许CPUCPU控制地址线,进行控制地址线,进行CPUC
19、PU与主存与主存贮器的数据交换,而且允许贮器的数据交换,而且允许DMADMA控制器接管地址线的控制权,直控制器接管地址线的控制权,直接控制接控制DMADMA控制器与主存的数据交换。控制器与主存的数据交换。 当当DMADMA硬件控制磁盘与存贮器之间进行信息交换时,每当磁硬件控制磁盘与存贮器之间进行信息交换时,每当磁盘把一个数据读入控制器的数据缓冲区时,盘把一个数据读入控制器的数据缓冲区时,DMADMA控制器取代控制器取代CPU,CPU,接管地址总线的控制权,并按照接管地址总线的控制权,并按照DMADMA控制器中的存贮器地址寄存控制器中的存贮器地址寄存器内容器内容, ,把数据送入相应的存贮器单元中
20、。然后,把数据送入相应的存贮器单元中。然后,DMADMA硬件自动地硬件自动地把传送的字节计数器减把传送的字节计数器减1 1,把地址寄存器加,把地址寄存器加1 1,并恢复,并恢复CPUCPU对主存对主存贮器的控制权,贮器的控制权,DMADMA控制器对每一个传送的数据重复上述过程,控制器对每一个传送的数据重复上述过程,直到传送字节计数器为直到传送字节计数器为“0”“0”时,向时,向CPUCPU产生一个中断信号。产生一个中断信号。1616DMA方式的问题:1 1)DMADMA方式仍存在一定的局限性,如数据传送的方向、存放数据的方式仍存在一定的局限性,如数据传送的方向、存放数据的内存始址、传送数据的长
21、度都需要内存始址、传送数据的长度都需要CPUCPU控制;控制;2 2)每台设备都需要配置一个)每台设备都需要配置一个DMADMA控制器,当设备较多时,成本太高。控制器,当设备较多时,成本太高。该方式的特点: 数据传输的基本单位是数据块;所传送的数据是从设备直接进入内数据传输的基本单位是数据块;所传送的数据是从设备直接进入内存的存的, ,或者相反,仅在传送一个或多个数据块的开始或结束时才需或者相反,仅在传送一个或多个数据块的开始或结束时才需CPUCPU干干预,整块数据的传送是在控制器的控制下完成的。预,整块数据的传送是在控制器的控制下完成的。 DMA DMA方式较之中断驱动方式,又是成百倍地减少
22、了方式较之中断驱动方式,又是成百倍地减少了CPUCPU对对I IO O的干预,进一步提高了的干预,进一步提高了CPUCPU与与I/OI/O设备的并行程度。设备的并行程度。1717通道:专门负责通道:专门负责I IO O控制的处理机。控制的处理机。它接收它接收CPU的委托,独立的委托,独立地执行自己的通道程序,管理和控制输入输出操作,实现主存贮地执行自己的通道程序,管理和控制输入输出操作,实现主存贮器与外围设备之间的成批数据传送。器与外围设备之间的成批数据传送。 在大中型和高档小型计算机系统中,大多采用通道技术。通道有在大中型和高档小型计算机系统中,大多采用通道技术。通道有自己的简单指令系统,数
23、据传送指令和设备控制指令等。通道执行的自己的简单指令系统,数据传送指令和设备控制指令等。通道执行的程序称为通道程序。程序称为通道程序。 与与DMADMA方式相比,通道有更强的方式相比,通道有更强的I IO O处理能力。处理能力。4. 通道方式 当当CPUCPU委托的委托的I IO O任务完成后,通道发出中断信号,请求任务完成后,通道发出中断信号,请求CPUCPU处理。处理。使使CPUCPU摆脱了繁琐的输入输出控制工作,提高了摆脱了繁琐的输入输出控制工作,提高了CPUCPU与外围设备工作的并与外围设备工作的并行程度。多通道之间可实现了并行操作,各通道控制的外围设备也实现行程度。多通道之间可实现了
24、并行操作,各通道控制的外围设备也实现了并行操作,从而提高整个系统的处理效率。了并行操作,从而提高整个系统的处理效率。 1818 按照信息的交换方式和控制设备的种类,通道可以分为三种类型:1)字节多路通道 字节多路通道以字节为单位传输信息,它可以以字节交字节多路通道以字节为单位传输信息,它可以以字节交叉方式执行多个通道程序。当一个通道程序控制某台设备传叉方式执行多个通道程序。当一个通道程序控制某台设备传送一个字节后,通道硬件就控制转去执行另一个通道程序,送一个字节后,通道硬件就控制转去执行另一个通道程序,控制另一台设备传送信息。控制另一台设备传送信息。 字节多路通道主要用来连接大量慢速的字符设备
25、,如纸带输入字节多路通道主要用来连接大量慢速的字符设备,如纸带输入出机,卡片输入出机、打印机、终端等等。在出机,卡片输入出机、打印机、终端等等。在IBM370IBM370系统中,这样系统中,这样的通道可连接的通道可连接256256台设备。台设备。19192)选择通道 选择通道每次选择一台设备,执行一个通道程序,传送一选择通道每次选择一台设备,执行一个通道程序,传送一批数据,当这台设备数据传输完成后,再选择与通道连接的另批数据,当这台设备数据传输完成后,再选择与通道连接的另一台设备,执行它的相应的通道程序。选择通道在一段时间内一台设备,执行它的相应的通道程序。选择通道在一段时间内只允许一台设备进
26、行数据传输,传送速度很高,但在设备传输只允许一台设备进行数据传输,传送速度很高,但在设备传输未完成之前,由它独占通道。由于选择通道能控制设备高速连未完成之前,由它独占通道。由于选择通道能控制设备高速连续地传送一批数据,因此常用它连接高速的块设备。如磁盘、续地传送一批数据,因此常用它连接高速的块设备。如磁盘、磁鼓等。磁鼓等。 2020 3成(数)组多路通道 成组多路通道结合了选择通道传送速度高和字节多路通成组多路通道结合了选择通道传送速度高和字节多路通道能进行并行操作的优点,采用分时轮转同时控制多台设备。道能进行并行操作的优点,采用分时轮转同时控制多台设备。它先为一台设备执行一条通道指令然后自动
27、转接,为另一它先为一台设备执行一条通道指令然后自动转接,为另一台设备执行一条通道指令。因此常用它连接中速的块设备。台设备执行一条通道指令。因此常用它连接中速的块设备。如磁带等。如磁带等。 2121主存主存CPUCPU 字节字节多路通道多路通道 选择选择 通道通道 成组成组多路通道多路通道CPUCPU总线总线磁盘磁盘磁带磁带I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制 采用通道方式的计算机系统结构采用通道方式的计算机系统结构22221.1.中断:一进程占有处理机
28、执行期间系统发生各种事件需要处中断:一进程占有处理机执行期间系统发生各种事件需要处理机来处理,从而使得处理机暂停当前进程的执行而转去执行理机来处理,从而使得处理机暂停当前进程的执行而转去执行相应的中断处理程序,待事件处理完毕后再返回原来被中断处相应的中断处理程序,待事件处理完毕后再返回原来被中断处继续执行的过程。继续执行的过程。5.3 中断技术一、中断的基本概念2.2.中断源:引起中断发生的事件。中断源:引起中断发生的事件。3.3.中断请求:中断源向处理机发出的请求中断处理的信号。中断请求:中断源向处理机发出的请求中断处理的信号。4.4.中断处理程序:对中断事件进行相应处理的操作系统程序。中断
29、处理程序:对中断事件进行相应处理的操作系统程序。23231.1.强迫性中断事件(非运行进程所期望的)强迫性中断事件(非运行进程所期望的)二、中断事件的类型2.2.自愿性中断事件(运行进程所要求的)自愿性中断事件(运行进程所要求的)硬件故障中断(电源掉电、读硬件故障中断(电源掉电、读/ /写错等)写错等)程序性中断(数据溢出、访问溢出等)程序性中断(数据溢出、访问溢出等)外部中断(键盘输入命令)外部中断(键盘输入命令)输入输出中断(外部设备故障)输入输出中断(外部设备故障)访管中断(执行一条访管中断(执行一条“访管指令访管指令”请求系统调用)。请求系统调用)。2424 中断码存入中断码存入PSW
30、PSW寄存器的中断码位寄存器的中断码位 将旧将旧PSW PSW 将新将新PSWPSW保存到主存保存到主存 送到送到PSWPSW寄存器。寄存器。 CPU CPU收到中断请求后转相应的中断处理程序的过程称为中断响应。收到中断请求后转相应的中断处理程序的过程称为中断响应。三、中断响应 PSW寄存器寄存器1.1.保存被中断进保存被中断进程的现场程的现场2.2.执行中断处理执行中断处理程序程序 四、中断处理过程 应用应用 程序程序 交换交换PSWPSW 执行中断执行中断 处理程序处理程序 PSW PSW寄存器寄存器CPU 1. 1. 发现和识别中断事件发现和识别中断事件: :硬件设有中断装置发现和识别中
31、断硬件设有中断装置发现和识别中断事件。事件。2. 2. 交换交换PSWPSW2525五、中断处理的原则硬件故障中断硬件故障中断输出事件的性质。输出事件的性质。程序性中断程序性中断输出进程名,程序断点,事件性质。输出进程名,程序断点,事件性质。外部中断外部中断接收外部请求后转例行子程序。接收外部请求后转例行子程序。 正常情况,释放等待进程。正常情况,释放等待进程。输入输出中断输入输出中断 异常情况,告知出错信息。异常情况,告知出错信息。访管中断访管中断根据访管指令中的功能号转对应的系统调用。根据访管指令中的功能号转对应的系统调用。2626中断优先级顺序:中断优先级顺序: 硬件故障中断自愿性中断程
32、序性中断外部中断输入输出硬件故障中断自愿性中断程序性中断外部中断输入输出中断中断。七、中断屏蔽 中断请求产生之后,系统用软件的方法有选择地封锁部中断请求产生之后,系统用软件的方法有选择地封锁部分中断而响应其余中断。分中断而响应其余中断。六、中断优先级 当多个中断事件同时发生时,中断装置按预先定好的顺序当多个中断事件同时发生时,中断装置按预先定好的顺序响应同时出现的中断事件,这个预先定好的顺序称为中断优先响应同时出现的中断事件,这个预先定好的顺序称为中断优先级。级。27275.4 缓冲技术一、概述引入缓冲技术的目的:引入缓冲技术的目的:1 1)改善)改善CPUCPU与外围设备之间速度不匹配的矛盾
33、;与外围设备之间速度不匹配的矛盾;2 2)减少中断减少中断CPU的次数,放宽的次数,放宽CPU对中断的响应时间。对中断的响应时间。3 3)减少占用通道的时间,使通道的瓶颈现象得以缓和,从而减少占用通道的时间,使通道的瓶颈现象得以缓和,从而显著提高显著提高CPU、通道、通道、I/O设备间的并行操作程度。设备间的并行操作程度。缓冲技术实现的基本思想:缓冲技术实现的基本思想: 当一个进程执行写操作输出数据时,先向系统申请一个主存区当一个进程执行写操作输出数据时,先向系统申请一个主存区域域缓冲区,然后,将数据高速送到缓冲区。若为顺序写请求,则缓冲区,然后,将数据高速送到缓冲区。若为顺序写请求,则不断把
34、数据填到缓冲区,直到它被装满为止。此后,进程可以继续它不断把数据填到缓冲区,直到它被装满为止。此后,进程可以继续它的计算,同时,系统将缓冲区内容写到的计算,同时,系统将缓冲区内容写到I IO O设备上。设备上。2828 在输出数据时,只有在系统还来不及腾空缓冲区之前,进在输出数据时,只有在系统还来不及腾空缓冲区之前,进程又欲输出信息时,它才需要等待;在输入数据时,仅当缓冲程又欲输出信息时,它才需要等待;在输入数据时,仅当缓冲区空而进程又要从中读取数据时,它才被迫等待。其它时间可区空而进程又要从中读取数据时,它才被迫等待。其它时间可以进一步提高以进一步提高CPUCPU和和I IO O设备的并行性
35、,以及设备的并行性,以及I IO O设备和设备和I IO O设备设备之间的并行性,从而,提高之间的并行性,从而,提高整个系统的效率。整个系统的效率。缓冲的类型缓冲的类型 单缓冲单缓冲双缓冲双缓冲多缓冲(环形缓冲)多缓冲(环形缓冲)缓冲池(缓冲池(UNIXUNIX操作系统)操作系统)1 1)硬缓冲)硬缓冲寄存器寄存器2 2)软缓冲)软缓冲在主存中开辟一片区域充当缓冲区,并设置在主存中开辟一片区域充当缓冲区,并设置 I/OI/O指针。指针。 根据系统设置缓存器的数目可把缓冲的类型分为:根据系统设置缓存器的数目可把缓冲的类型分为:29292.双缓冲 两个缓冲区交替使用,使两个缓冲区交替使用,使CPU
36、CPU和和I IO O设备的并行性进一步设备的并行性进一步提高,仅当两个缓冲区都取空,进程还要提取数据时,它再被提高,仅当两个缓冲区都取空,进程还要提取数据时,它再被迫等待。迫等待。 缓冲区缓冲区1 1 取出取出 缓冲区缓冲区2 2 放入放入 1.单缓冲 缓冲区缓冲区 放入放入 取出取出 放数据和取数据以串行方式工作,一般说,每次读写操作放数据和取数据以串行方式工作,一般说,每次读写操作都要转入进程调度,所以,采用单缓冲技术,都要转入进程调度,所以,采用单缓冲技术,I/OI/O设备并行性差,设备并行性差,系统效率低。系统效率低。30303.环形缓冲技术 环形缓冲技术是在主存中分配一组大小相等的
37、存贮区作为环形缓冲技术是在主存中分配一组大小相等的存贮区作为缓冲区,并将这些缓冲区链接起来,系统中有个缓冲区链首指缓冲区,并将这些缓冲区链接起来,系统中有个缓冲区链首指针指向第一个缓冲区,每个缓冲区中有一个指向下一个缓冲区针指向第一个缓冲区,每个缓冲区中有一个指向下一个缓冲区的指针,最后一个缓冲区中的指针指向第一个缓冲区,从而形的指针,最后一个缓冲区中的指针指向第一个缓冲区,从而形成环形缓冲区链,系统可循环使用这些缓冲区。成环形缓冲区链,系统可循环使用这些缓冲区。 环形缓冲区用于输入环形缓冲区用于输入( (输出输出) )时,还要有两个指针时,还要有两个指针1N1N和和0UT0UT,ININ指向
38、可接收数据的空闭缓冲区的首址,指向可接收数据的空闭缓冲区的首址,OUTOUT指针指向装好数指针指向装好数据且未取走的缓冲区首址。据且未取走的缓冲区首址。313132324.缓冲池 缓冲池由内存中一组大小相等的缓冲区组成,池中各缓冲区的缓冲池由内存中一组大小相等的缓冲区组成,池中各缓冲区的大小与用于大小与用于I I0 0设备的基本信息单位相似,缓冲池属系统资源,由设备的基本信息单位相似,缓冲池属系统资源,由系统进行管理。缓冲池中各缓冲区可用于输出输入信息,并可根据系统进行管理。缓冲池中各缓冲区可用于输出输入信息,并可根据需要组成各种缓冲区队列。需要组成各种缓冲区队列。 缓冲池中的缓冲区一般有以下
39、三种类型:空闲缓冲区、装输缓冲池中的缓冲区一般有以下三种类型:空闲缓冲区、装输入数据的缓冲区和装输出数据的缓冲区。入数据的缓冲区和装输出数据的缓冲区。 1.缓冲池结构缓冲池结构 缓冲池由多个缓存区组成。缓冲池由多个缓存区组成。 缓冲首部:缓冲区的说明信息。缓冲首部:缓冲区的说明信息。缓冲区由两部分组成缓冲区由两部分组成 缓冲体:存放数据的区域。缓冲体:存放数据的区域。3333缓冲区队列缓冲区队列:空白缓冲队列空白缓冲队列em,队首指针,队首指针F(em),队尾指针),队尾指针L(em)。输)。输入缓冲队列入缓冲队列in,队首指针,队首指针F(in),队尾指针),队尾指针L(in)。)。输出缓冲
40、队列输出缓冲队列out,队首指针,队首指针F(out),队尾指针),队尾指针L(out)缓冲区队列缓冲区缓冲区队列缓冲区2.2.工作缓冲区工作缓冲区: :收容输入缓冲区收容输入缓冲区hin hin 提取输入缓冲区提取输入缓冲区sinsin收容输出缓冲区收容输出缓冲区hout hout 提取输出缓冲区提取输出缓冲区soutsout34343.3.缓冲池管理缓冲池管理(1 1)从缓冲区队列取出一个缓冲区的过程:)从缓冲区队列取出一个缓冲区的过程: take-buf take-buf(typetype););(2 2)将一个缓冲区插入缓冲区队列的过程:)将一个缓冲区插入缓冲区队列的过程: add-b
41、uf add-buf(typetype,numbernumber););(3 3)进程申请一个缓冲区用的过程:)进程申请一个缓冲区用的过程: get-buf get-buf(typetype,numbernumber););(4 4)进程释放一个缓冲区用的过程:)进程释放一个缓冲区用的过程: put-buf put-buf(typetype,work-bufwork-buf)。)。 其中:参数其中:参数typetype表示缓冲区队列;表示缓冲区队列; 参数参数numbernumber为缓冲区号;为缓冲区号; 参数参数work-bufwork-buf为工作缓冲区类型。为工作缓冲区类型。35354
42、.4.缓冲池的工作过程缓冲池的工作过程收容输入:收容输入: 收容输出:收容输出:get-bufget-buf(emem,numbernumber);); get-buf get-buf(emem,numbernumber););设备放入输入数据;设备放入输入数据; 进程放入输出数据;进程放入输出数据;put-bufput-buf(inin,hinhin) put-buf put-buf(outout,houthout)提取输入:提取输入: 提取输出:提取输出:get-bufget-buf(inin,numbernumber);); get-buf get-buf(outout,numbernu
43、mber););进程取出输入数据;进程取出输入数据; 设备取出输出数据;设备取出输出数据;put-bufput-buf(emem,sinsin) put-buf put-buf(emem,soutsout)。)。5.5.特点:既可以用于输入又可以用于输出。特点:既可以用于输入又可以用于输出。3636 当进程向系统提出当进程向系统提出I/OI/O请求后,由设备分配程序按照一定的策略请求后,由设备分配程序按照一定的策略把所要求的设备分配给该进程,为确保把所要求的设备分配给该进程,为确保CPUCPU与设备之间能进行通信,与设备之间能进行通信,还应分配相应的控制器和通道。还应分配相应的控制器和通道。5
44、.5 设备的分配一、设备分配的功能一、设备分配的功能系统设备表(系统设备表(SDT)整个系统一张,每个设备占一个表项,整个系统一张,每个设备占一个表项,记录了系统中所有设备的情况。记录了系统中所有设备的情况。 设备控制表(设备控制表(DCT)每个设备一张,记录了设备特性以及每个设备一张,记录了设备特性以及设备和设备和I/O控制器的连接情况。控制器的连接情况。控制器表(控制器表(COCT)每个控制器一张,记录了控制器的使每个控制器一张,记录了控制器的使用状态以及和通道的连接情况。用状态以及和通道的连接情况。通道控制表(通道控制表(CHCT)每个通道一张,记录了通道的情况。每个通道一张,记录了通道
45、的情况。二、设备分配的数据结构二、设备分配的数据结构3737 系统必须具有一种合理的设备分配策略,该策略与下述的四个因素系统必须具有一种合理的设备分配策略,该策略与下述的四个因素有关;有关;1 1)I IO O设备的固有属性,该设备仅适合于某进程独占或可供几个设备的固有属性,该设备仅适合于某进程独占或可供几个进程共享(设备的分配方式);进程共享(设备的分配方式);三、设备分配原则2 2)系统采用的分配算法,是采用先请求先分配方式,还是按优)系统采用的分配算法,是采用先请求先分配方式,还是按优先级最高者优先分配的方式(设备的分配策略);先级最高者优先分配的方式(设备的分配策略);3 3)设备分配
46、的安全性,不合理的设备分配有可能导致死锁的发生;)设备分配的安全性,不合理的设备分配有可能导致死锁的发生;4 4)设备的无关性,用户程序与实际使用的物理设备无关。)设备的无关性,用户程序与实际使用的物理设备无关。3838(一)设备分配的方式静态分配:是在作业级进行的,当一个作业运行之前由系统静态分配:是在作业级进行的,当一个作业运行之前由系统一次分配满足需要的全部设备,这些设备一直为该作业占用,一次分配满足需要的全部设备,这些设备一直为该作业占用,直到作业撤消。这种分配不会出现死锁,但设备的利用效率直到作业撤消。这种分配不会出现死锁,但设备的利用效率较低。较低。动态分配:是在进程运行的过程中进
47、行的,当进程需要使用设备时,动态分配:是在进程运行的过程中进行的,当进程需要使用设备时,通过系统调用命令向系统提出设备请求,系统按一定的分配策略给通过系统调用命令向系统提出设备请求,系统按一定的分配策略给进程分配所需设备,一旦使用完毕立即释放。显然这种分配方式有进程分配所需设备,一旦使用完毕立即释放。显然这种分配方式有利于提高设备的使用效率,但会出观死锁。利于提高设备的使用效率,但会出观死锁。3939(二)I/O设备分配算法1 1先请求先分配:根据进程对某设备提出请求的先后次序,可先请求先分配:根据进程对某设备提出请求的先后次序,可将进程排成一个队列,设备分配程序总是先把设备分配给队首将进程排
48、成一个队列,设备分配程序总是先把设备分配给队首进程。进程。2 2优先级高者优先分配:本算法总是将设备分配给优先级最高的进程。优先级高者优先分配:本算法总是将设备分配给优先级最高的进程。为此,通常在形成设备队列时,是将优先级高的进程排在前面;对于为此,通常在形成设备队列时,是将优先级高的进程排在前面;对于相同优先级的相同优先级的I IO O请求,则按先来先服务原则排队。请求,则按先来先服务原则排队。4040(三)设备分配的安全性 从进程运行的安全性上考虑,设备分配有以下两种方式;从进程运行的安全性上考虑,设备分配有以下两种方式;1 1安全分配方式安全分配方式( (单请求方式单请求方式) ):在这
49、种分配方式中,每当进程发:在这种分配方式中,每当进程发出出I IO O请求后便进入阻塞状态,直至请求后便进入阻塞状态,直至I IO O操作完成时才被唤醒。操作完成时才被唤醒。在此策略中,由于已经避免了造成死锁的四个必要条件之一的在此策略中,由于已经避免了造成死锁的四个必要条件之一的“请求和保护请求和保护”条件,因而分配是安全的。其缺点是进程进展缓条件,因而分配是安全的。其缺点是进程进展缓慢、慢、CPUCPU和和1 1O O之间是串行工作的。之间是串行工作的。4141 2 2不安全分配方式不安全分配方式( (多请求方式多请求方式) ):在这种分配方式中,进程发:在这种分配方式中,进程发出出I I
50、O O请求后仍继续运行,需要时又发出第二个请求后仍继续运行,需要时又发出第二个I IO O请求、第三请求、第三个个I IO O请求。仅当进程所请求的设备己被另一进程占用时进程请求。仅当进程所请求的设备己被另一进程占用时进程才进入阻塞状态。才进入阻塞状态。优点:一个进程可同时操作多个设备,使这些设备能并行工作;优点:一个进程可同时操作多个设备,使这些设备能并行工作;缺点:分配不安全,从而可能形成死锁。因此在设备分配程序缺点:分配不安全,从而可能形成死锁。因此在设备分配程序中还应增加一个功能,用于对本次的设备分配是否会形成死锁中还应增加一个功能,用于对本次的设备分配是否会形成死锁而进行安全性计算,
51、仅当计算结果说明分配是安全时,方才进而进行安全性计算,仅当计算结果说明分配是安全时,方才进行分配。行分配。(四)设备的无关性42421 1、独享分配、独享分配 独占型设备有行式打印机,键盘,显示器。磁带机可作为独占设独占型设备有行式打印机,键盘,显示器。磁带机可作为独占设备,也可作为共享设备。备,也可作为共享设备。 对独占型设备一般采用静态分配,即当一个用户作业申请对独占型设备一般采用静态分配,即当一个用户作业申请独占设备时,系统把设备分配给这个用户作业,直到这个作业独占设备时,系统把设备分配给这个用户作业,直到这个作业撤销为止,在这期间设备被这个用户作业独占。撤销为止,在这期间设备被这个用户
52、作业独占。2 2、共享分配、共享分配 共亨设备包括磁盘,磁鼓和磁带。共亨设备包括磁盘,磁鼓和磁带。 对这类设备的分配是采用动态分配的方式进行的,当一个进程对这类设备的分配是采用动态分配的方式进行的,当一个进程要请求某个设备时,系统按照某种算法立即分配相应的设备给请求要请求某个设备时,系统按照某种算法立即分配相应的设备给请求者,请求者使用完后立即释放。者,请求者使用完后立即释放。四、虚拟设备技术43433 3、虚拟设备技术:、虚拟设备技术:为提高计算机系统的效率,提出了在高速共享设备为提高计算机系统的效率,提出了在高速共享设备上模拟低速独占设备功能的技术。目的是使独占设备变成可共享的设备。上模拟
53、低速独占设备功能的技术。目的是使独占设备变成可共享的设备。操作系统中实现这种技术的功能模块称操作系统中实现这种技术的功能模块称SpoolingSpooling(即外部设备联机同(即外部设备联机同时操作时操作) )系统系统 。虚拟设备:代替独占设备的那部分存贮空间和相应的控制结构。虚拟设备:代替独占设备的那部分存贮空间和相应的控制结构。提出虚拟设备的原因提出虚拟设备的原因: 设备的独占使用影响系统的效率。设备的独占使用影响系统的效率。系统效率不高的表现:系统效率不高的表现: 1. 1.占用者不是每时每刻在使用独占的设备;占用者不是每时每刻在使用独占的设备; 2. 2.欲使用者必须等待这些设备;欲
54、使用者必须等待这些设备; 3. 3.独占独占设备的传输效率低(低速的设备的传输效率低(低速的I/OI/O设备)。设备)。4444实现虚拟设备的条件实现虚拟设备的条件 : :硬件硬件: : 通道通道 大容量磁盘大容量磁盘: : 输入井输入井用于存放作业的原始信息用于存放作业的原始信息 输出井输出井用于存放作业的执行结果用于存放作业的执行结果软件:预输入程序、井管理程序、缓输出程序软件:预输入程序、井管理程序、缓输出程序预输入(程序):在作业执行前,负责将作业信息通过独占设备预预输入(程序):在作业执行前,负责将作业信息通过独占设备预先输入到磁盘输入井中放好。先输入到磁盘输入井中放好。缓输出(程序
55、):在作业执行完毕后,负责组织信息输出。缓输出(程序):在作业执行完毕后,负责组织信息输出。井管理(程序):控制用户进程和磁盘井之间的信息交换。井管理(程序):控制用户进程和磁盘井之间的信息交换。 作业执行使用数据时不必再启动独占设备读入,而只需从作业执行使用数据时不必再启动独占设备读入,而只需从磁盘磁盘输入井输入井上输入数据。上输入数据。 作业执行中,不必启动独占设备输出数据,只要将作业输出数据写作业执行中,不必启动独占设备输出数据,只要将作业输出数据写入磁盘输出井中放好入磁盘输出井中放好45454646虚拟分配实现的过程:虚拟分配实现的过程: 当用户当用户( (或进程或进程) )申请独占设
56、备时,系统给它分配共享设备的一申请独占设备时,系统给它分配共享设备的一部分存储空间。当进程要与设备交换信息时,系统就把要交换的信息部分存储空间。当进程要与设备交换信息时,系统就把要交换的信息存放在这部分存储空间。在适当的时候再将存贮空间的信息传输到相存放在这部分存储空间。在适当的时候再将存贮空间的信息传输到相应的设备上去处理。应的设备上去处理。 如系统打印信息时,就把要打印的信息送到某个存贮空如系统打印信息时,就把要打印的信息送到某个存贮空间中去,然后由系统在适当时机把存储空间上的信息送到打间中去,然后由系统在适当时机把存储空间上的信息送到打印机上打印。这个时机可能是打印机空闲或打印机完成了一
57、印机上打印。这个时机可能是打印机空闲或打印机完成了一用户的打印之后。用户的打印之后。4747虚拟设备技术虚拟设备技术的特点的特点:1 1)提高了)提高了I/OI/O速度。从对低速速度。从对低速I/OI/O设备进行的设备进行的I/OI/O操作变为对输入操作变为对输入井或输出井的操作,如同脱机操作一样,提高了井或输出井的操作,如同脱机操作一样,提高了I/OI/O速度,缓和了速度,缓和了CPUCPU与低速与低速I/OI/O设备速度不匹配的矛盾。设备速度不匹配的矛盾。2 2)设备并没有分配给任何进程。在输入井或输出井中,分配给进程的)设备并没有分配给任何进程。在输入井或输出井中,分配给进程的是一存储区
58、和建立一张是一存储区和建立一张I/OI/O请求表。请求表。3 3)实现了虚拟设备功能。多个进程同时使用一独享设备,而)实现了虚拟设备功能。多个进程同时使用一独享设备,而对每一进程而言,都认为自己独占这一设备,不过该设备是对每一进程而言,都认为自己独占这一设备,不过该设备是逻辑上的设备。逻辑上的设备。48481 1)提高了独占设备的利用率;)提高了独占设备的利用率; 2 2)每个用户都有速度极高的)每个用户都有速度极高的“输入机输入机”和和“打印机打印机”,缩短,缩短 了作了作业执行时间;业执行时间;3 3)能够多道并行工作)能够多道并行工作 。实现虚拟设备实现虚拟设备的好处的好处:4949一、
59、什么是一、什么是I/OI/O进程控制进程控制 从用户进程的输入输出请求开始,给用户进程分配设备和启动相从用户进程的输入输出请求开始,给用户进程分配设备和启动相关设备,进行关设备,进行I/OI/O操作,以及在操作,以及在I/OI/O操作完成以后响应中断,进行善后操作完成以后响应中断,进行善后处理为止的整个系统控制过程。处理为止的整个系统控制过程。5.6 5.6 I/OI/O进程控制进程控制二、二、I/OI/O控制的功能控制的功能外设中断请求外设中断请求用户进程用户进程I/O请求请求中断原因分析中断原因分析唤醒唤醒中断处理程序中断处理程序I/O请求处理请求处理设备分配程序设备分配程序缓冲区管理缓冲
60、区管理中断响应中断响应启动启动I/O指令指令设备驱动程序或通道程序设备驱动程序或通道程序I/O控制控制5050一、什么是设备驱动程序一、什么是设备驱动程序 设备驱动程序,是驱动物理设备和设备驱动程序,是驱动物理设备和DMADMA控制器或控制器或I/OI/O控制器等直接进控制器等直接进行行I/OI/O操作的子程序的集合。负责设置设备有关寄存器的值,启动设备操作的子程序的集合。负责设置设备有关寄存器的值,启动设备进行进行I/OI/O操作,指定操作的类型和数据流向等。操作,指定操作的类型和数据流向等。二、为何要有设备驱动程序二、为何要有设备驱动程序 设备驱动程序屏蔽了直接对硬件操作的细节,为编程者提
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年小学生走进大自然植物观察日记
- 脑梗塞患者的心理护理与支持
- 2026年应急预案编制与管理规范
- 2026年校长返岗后学校后勤精细化管理
- 热点七“反向接话”亲子互动(练习)-高考语文高频热点命题练习卷
- 生态旅游可持续发展规划协议
- 2026年职场贵人识别与职场人脉分层管理
- 咖啡烘焙设备维修保养协议书
- 瑜伽普拉提赛事裁判培训合同2026年
- 压力管理咨询服务协议书
- 高一会考试卷及答案地理
- 建设项目全过程工程咨询-第一次形成性考核-国开(SC)-参考资料
- 精麻毒药品管理制度
- 【游戏案例】建构故事:家乡的桥
- 农村土地使用权转让协议书
- 空气动力学方程:RANS方程在飞机设计中的应用
- 马工程《公共财政概论》课后习题库(含)参考答案(可做期末复习和试卷)
- 奥体中心体育场工程施工组织设计
- 2023年浙江政治选考卷阅卷评分细则
- 医院有害生物防治投标方案(技术标)
- 落地式盘扣脚手架专项施工方案
评论
0/150
提交评论