版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1第第6章章 设备管理设备管理n“设备设备”泛指计算机系统中的外部设备,即除泛指计算机系统中的外部设备,即除主机以外的其他所有设备。在多道程序设计环主机以外的其他所有设备。在多道程序设计环境下,计算机系统允许多个用户作业同时在内境下,计算机系统允许多个用户作业同时在内存,它们的运行势必涉及到存,它们的运行势必涉及到I/O设备。于是,设备。于是,对于设备本身,有一个如何有效利用的问题;对于设备本身,有一个如何有效利用的问题;对于设备和对于设备和CPU,有一个如何发挥并行工作能有一个如何发挥并行工作能力的问题;对于设备和用户,有一个如何方便力的问题;对于设备和用户,有一个如何方便使用的问题。使用的
2、问题。2022-6-242设备管理的任务设备管理的任务n是完成用户提出的是完成用户提出的I/O请求,为用户分配请求,为用户分配I/O设设备,提高备,提高CPU与与I/O设备的利用率,提高设备的利用率,提高I/O设备的速度,方便用户使用设备的速度,方便用户使用I/O设备。设备。 2022-6-2436.1.1I/O6.1.1I/O系统的基本功能系统的基本功能n方便用户使用方便用户使用I/O设备设备u隐藏物理设备的细节隐藏物理设备的细节u与设备的无关性与设备的无关性n提高提高CPU和和I/O设备的利用率设备的利用率u提高提高CPU和和I/O设备的利用率设备的利用率u对对I/O设备进行控制设备进行控
3、制n为用户的共享设备时提供方便为用户的共享设备时提供方便u确保对设备的正确共享确保对设备的正确共享u错误处理错误处理2022-6-2446.1.26.1.2 I/OI/O系统的层次和结构模型系统的层次和结构模型nI/OI/O层次结构层次结构u用户层用户层I/OI/O软件软件u设备独立性软件设备独立性软件u设备驱动程序设备驱动程序u中断处理程序中断处理程序2022-6-2452022-6-24I/OI/O层次结构层次结构n用户层软件用户层软件设备独立性软件设备独立性软件设备驱动程序设备驱动程序中断处理程序中断处理程序硬件硬件实现与用户交互的接实现与用户交互的接口,产生口,产生I/O请求请求负责实
4、现与设备驱动器的统一接口负责实现与设备驱动器的统一接口、设备命名,设备的保护,设备的、设备命名,设备的保护,设备的分配与释放,缓冲等。分配与释放,缓冲等。与硬件直接相关,负责具体实现系与硬件直接相关,负责具体实现系统对设备发出的操作指令,驱动统对设备发出的操作指令,驱动I/O设备工作的驱动程序设备工作的驱动程序保护环境,转入相应处理保护环境,转入相应处理程序,恢复现场等程序,恢复现场等执行执行I/O操作操作2022-6-2462022-6-24操作系统的操作系统的I/OI/O子系统通常由四个层次组成,每一层明确定义了与邻近层次子系统通常由四个层次组成,每一层明确定义了与邻近层次的接口。其合理的
5、层次组织排列顺序是的接口。其合理的层次组织排列顺序是(2012)(2012)A.用户级I/O软件、设备无关软件、设备驱动程序、中断处理程序B、用户级I/O软件、设备无关软件、中断处理程序、设备驱动程序C、用户级I/O软件、设备驱动程序、设备无关软件、中断处理程序D、用户级I/O软件、中断处理程序、设备无关软件、设备驱动程序用户程序发出磁盘用户程序发出磁盘I/OI/O请求后,系统的处理流程是:用户程序请求后,系统的处理流程是:用户程序- -系统调用处系统调用处理程序理程序- -设备驱动程序设备驱动程序- -中断处理程序。其中,计算数据所在磁盘的柱面中断处理程序。其中,计算数据所在磁盘的柱面号、磁
6、头号、扇区号的程序是(号、磁头号、扇区号的程序是(2011,20132011,2013)A、用户程序 B、系统调用处理程序C、设备驱动程序 D、中断处理程序2022-6-2472022-6-24I/OI/O层次视图层次视图n用户层软件用户层软件设备独立性软件设备独立性软件设备驱动程序设备驱动程序中断处理程序中断处理程序硬件硬件I/O系统接口系统接口RW/HW接口接口2022-6-2486.1.36.1.3 I/OI/O系统接口系统接口n块设备接口块设备接口u块设备:数据的存取和传输都是以数据块为单位块设备:数据的存取和传输都是以数据块为单位的设备。特点:传输速率高,可寻址,的设备。特点:传输速
7、率高,可寻址,DMADMA控制控制方式方式u隐藏了磁盘的二维结构隐藏了磁盘的二维结构u将抽象命令映射为低层操作将抽象命令映射为低层操作n流设备接口流设备接口u字符设备。特点:传输速率低,不可寻址,中断字符设备。特点:传输速率低,不可寻址,中断驱动方式驱动方式uGetGet操作和操作和putput操作操作uIn-controlIn-control指令指令n网络接口网络接口2022-6-2496.26.2 I/OI/O设备和设备控制器设备和设备控制器 n I/OI/O设备由执行设备由执行I/OI/O操作的机械部分和操作的机械部分和执行控制执行控制I/OI/O的电子部件(设备控制器)的电子部件(设备
8、控制器)组成。组成。2022-6-24106.2.1 I/O6.2.1 I/O设备设备1 1、I/OI/O设备的类型设备的类型按使用特性分按使用特性分n存储设备:用以存储信息的主要设备存储设备:用以存储信息的主要设备n输入输出设备:输入设备输入输出设备:输入设备, ,输出设备输出设备, ,交互式交互式设备设备2022-6-2411I/OI/O设备的分类设备的分类按传输速率分按传输速率分n低速设备:每秒几个到数百字节。如键盘、低速设备:每秒几个到数百字节。如键盘、鼠标鼠标n中速设备:每秒数千到数万字节。如打印机中速设备:每秒数千到数万字节。如打印机n高速设备:每秒数百高速设备:每秒数百K K到数
9、兆。如磁盘、磁带到数兆。如磁盘、磁带2022-6-2412按信息交换的单位分类按信息交换的单位分类n块设备块设备 : I/O传输的单位是块,如磁盘、磁传输的单位是块,如磁盘、磁带。特征:速率高(几兆)、可寻址(可随带。特征:速率高(几兆)、可寻址(可随机访问任一块)、机访问任一块)、DMA方式驱动。方式驱动。 n字符设备:字符设备:I/OI/O传输的单位是字节,如打印机、传输的单位是字节,如打印机、modemmodem等。特征:速率较低、不可寻址、中断等。特征:速率较低、不可寻址、中断驱动。驱动。2022-6-2413 按设备共享属性分类按设备共享属性分类n独占型设备:在任一段时间内最多有一个
10、进程占用独占型设备:在任一段时间内最多有一个进程占用它,字符设备及磁带机属独占型设备。即临界资源。它,字符设备及磁带机属独占型设备。即临界资源。n共享型设备:多个进程对它的访问可以交叉进行,共享型设备:多个进程对它的访问可以交叉进行,除磁带机外的块设备属共享设备除磁带机外的块设备属共享设备n虚拟设备:虚拟设备:在一类设备上模拟另一类设备,常用共在一类设备上模拟另一类设备,常用共享设备模拟独占设备,用高速设备模拟低速设备,享设备模拟独占设备,用高速设备模拟低速设备,被模拟的设备称为虚被模拟的设备称为虚拟拟设备设备2022-6-24142、设备与控制器之间的接口n通常,设备不是直接与通常,设备不是
11、直接与CPUCPU进行通信,而是与设备控制进行通信,而是与设备控制器通信,因此在器通信,因此在I/OI/O设备中应含有与设备控制器间的接设备中应含有与设备控制器间的接口,在该接口中有三种类型的信号,各对应一条信号口,在该接口中有三种类型的信号,各对应一条信号线线缓冲转换器控制逻辑信号数据数据信号线状态信号线控制信号线至设备控制器I/O设备2022-6-24152、设备与控制器之间的接口n数据信号线数据信号线 用于在设备和设备控制器之间传送数据信号。用于在设备和设备控制器之间传送数据信号。n控制信号线控制信号线 作为由设备控制器向作为由设备控制器向I/OI/O设备发送控制信号时的通路。设备发送控
12、制信号时的通路。n状态信号线状态信号线 用于传送指示设备当前状态的信号。用于传送指示设备当前状态的信号。缓冲转换器控制逻辑信号数据数据信号线状态信号线控制信号线至设备控制器I/O设备2022-6-24166.2.26.2.2设备控制器设备控制器n设备控制器主要负责控制一个或多个设备控制器主要负责控制一个或多个I/OI/O设备,设备,以实现以实现I/OI/O设备和计算机之间的数据交换。它设备和计算机之间的数据交换。它是是CPUCPU与与I/OI/O设备之间的接口设备之间的接口,接收从,接收从CPUCPU发来发来的命令,并控制的命令,并控制I/OI/O设备工作,以使设备工作,以使CPUCPU从繁杂
13、从繁杂的设备控制事务中解脱出来。的设备控制事务中解脱出来。n是一个可编址设备,每一个地址对应一个设备。是一个可编址设备,每一个地址对应一个设备。n设备控制器可分为两类,一类用于控制字符设设备控制器可分为两类,一类用于控制字符设备的控制器,另一类是用于控制块设备的控制备的控制器,另一类是用于控制块设备的控制器。器。n在微型机中的控制器,常做成印刷电路卡,因在微型机中的控制器,常做成印刷电路卡,因而也常称为接口卡而也常称为接口卡2022-6-2417设备控制器的基本功能设备控制器的基本功能n接收和识别命令接收和识别命令n数据交换数据交换n标识和报告设备的状态标识和报告设备的状态n地址识别地址识别n
14、数据缓冲数据缓冲n差错控制差错控制2022-6-2418设备控制器的组成设备控制器的组成n由于设备控制器位于由于设备控制器位于CPUCPU与设备之间,它既要与设备之间,它既要与与CPUCPU通信,又要与设备通信,还应具有按照通信,又要与设备通信,还应具有按照CPUCPU所发来的命令去控制设备的工作的功能,所发来的命令去控制设备的工作的功能,因此现有的大多数控制器都是由三部分组成因此现有的大多数控制器都是由三部分组成u设备控制器与处理机的接口设备控制器与处理机的接口u设备控制器与设备的接口设备控制器与设备的接口uI/OI/O逻辑逻辑2022-6-2419设备控制器的组成设备控制器的组成数据寄存器
15、控制/状态寄存器数据线I/O逻辑控制器与设备接口1控制器与设备接口i数据状态控制数据状态控制地址线控制线CPU与控制器接口控制器与设备接口2022-6-24206.2.36.2.3内存映像内存映像I/OI/O2022-6-24216.2.36.2.3内存映像内存映像I/OI/O2022-6-2422I/O通道通道虽然在CPU与I/O设备之间增加了设备控制器后,已能大大减少CPU对I/O的干预,但当一个系统配置的设备较多时,I/O操作较为频繁的情况下,CPU可能完全陷入I/O处理,这样会大大地降低计算机系统的效率,解决的方法就是用到通道技术。 2022-6-2423n通道方式的目的使一些原来由C
16、PU处理的I/O任务转由通道来承担,从而使CPU彻底从I/O中解放出来。当用户发出I/O请求后,CPU就把该请求全部交由通道去完成。通道在整个I/O任务结束后,才发出中断信号,请求CPU进行善后处理。不仅数据传输独立于CPU,而且I/O操作的组织管理也独立于CPU。I/O通道的引入通道的引入:2022-6-2424 为使中央处理机从繁忙的I/O处理中摆脱出来,现代大、中型计算机系统中设置了专门的处理I/O操作的处理机,并把这种处理机称为通道。通道在CPU的控制下独立地执行通道程序,对外部设备的I/O操作进行控制,以实现内存与外设之间成批的数据交换。通道=I/O处理机 通道概念通道概念2022-
17、6-2425 I/O通道与一般的处理机不同,主要表现在以下两个方面:n指令类型单一,这是由于通道硬件比较简单, 其所能执行的命令,主要局限于与I/O操作有关的指令; n通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的, 换言之,是通道与CPU共享内存。2022-6-2426I/O通道通道nI/O通道的分类通道的分类 u字节多路通道字节多路通道u数据选择通道数据选择通道u数组多路通道数组多路通道2022-6-2427通道的种类通道的种类n字节多路通道:字节多路通道:u字节多路通道是以字节为基本传输单位,通常含有许多非分配型子通道,其数量从几十到数百个,每一个子通道连接一台I/O设备,
18、并控制该设备的I/O操作。这些子通道按时间片轮转主式共享主通道。u当一个子通道控制的某台外设交换了一个字节后,就转向下一个子通道,以控制下一台设备传送一个字节。这就实现了子通道的循环轮转,以达到多路控制的目的,字节多路通道主要用来控制低速、并且以字节为基本传送单位的设备。如打印机。2022-6-2428控制器A控制器B控制器C控制器D控制器NA1A2A3子通道AB1B2B3子通道BC1C2C3子通道CN1N2N3子通道NA1B1C1 A2B2C2设 备2022-6-2429n数组选择通道:数组选择通道: 字节多路通道不适于连接高速设备,这推动了按数组方式进行数据传送的数组选择通道的形成。这种通
19、道虽然可以连接多台高速设备,但由于它只含有一个分配型子通道,在一段时间内只能执行一道通道程序, 控制一台设备进行数据传送, 致使当某台设备占用了该通道后,便一直由它独占, 即使是它无数据传送,通道被闲置, 也不允许其它设备使用该通道, 直至该设备传送完毕释放该通道。它的优点是传输速度高,缺点是一次只能控制一台设备进行I/O操作,利用率低。它主要用来控制高速外设。如磁盘选择通道选择通道2022-6-2430 n数组多路通道:数组多路通道: 这种通道是上述两种通道的折中,可以分时的方式执行多道程序,每道程序可传送一组数据。因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率。也正因此
20、,才使该通道能被广泛地用于连接多台高、中速的外围设备,其数据传送是按数组方式进行的。 在一大型系统中可以同时存在这三种类型的通在一大型系统中可以同时存在这三种类型的通道以便控制各种不同类型的设备。道以便控制各种不同类型的设备。2022-6-2431 通道通道 I / OI / O 系 统系 统结构结构在大型计在大型计算机系统算机系统中较为典中较为典型 的型 的 I / OI / O系统结构系统结构是主机、是主机、通道、控通道、控制器和外制器和外部设备。部设备。2022-6-2432“瓶颈瓶颈”问题问题 图 5-4 单通路I/O系统 设备1设备2设备3设备4设备5设备6设备7控制器1控制器2控制
21、器3控制器4通道1通道2存储器2022-6-2433图 5-5 多通路I/O系统 I/O设备控制器1控制器2通道1通道2存储器I/O设备I/O设备I/O设备解决“瓶颈”问题的最有效方法就是增加设备到主机间的通路而不增加通道 2022-6-2434练习练习n通道是I/O处理机,它用于实现_之间的信息传输;n_用作连接大量的低速或中速设备;A、数据选择通道 B、字节多路通道C、数据多路通道n按_分类可将设备分为块设备和字符设备。A、从属关系 B、操作特性C、共享属性 D、信息交换单位2022-6-2435练习练习n硬盘属于( ) A、字符型设备 B、独占型设备 C、块设备 D、虚拟设备 n所有的块
22、型设备都是共享设备。( ) n打印机是一类典型的块设备。()。()n选择通道主要用于连接低速设备. ()()2022-6-24366.3中断机构和中断处理程序中断机构和中断处理程序n中断的简介中断的简介 F中断是由于某些事件的出现,中止现行进程的执行,而转去处理出现的事件,中断事件处理完后,再继续运行被中止进程的过程。F在这里引起中断的事件称为中断源。中断事件通常由硬件发现n中断的处理中断的处理 F对出现的事件进行处理的程序称为中断处理程序。中断处理程序是由操作系统处理的,属于操作系统的组成部分2022-6-2437中断的简介中断的简介 2022-6-2438中断的简介中断的简介 n 2022
23、-6-2439中断的处理中断的处理n中断处理过程中断处理过程u测定是否有未响应的中断信号。测定是否有未响应的中断信号。u保护被中断进程的保护被中断进程的CPU环境。环境。u转入相应的设备处理程序。转入相应的设备处理程序。u中断处理。中断处理。u恢复现场,退出中断。恢复现场,退出中断。 2022-6-2440图 6-10 中断现场保护示意图 PSW程序状态字PC(N1)程序计数器R0Rn寄存器开始返回用户程序中断服务子例程PSWPC(N1)中断栈TTM线指针YNN1R0Rn2022-6-2441唤醒被阻塞的驱动程序进程对被中断进程的CPU环境进行保护分析中断原因,转入相应的中断处理程序终端中断处
24、理程序打印机中断处理程序磁盘中断处理程序恢复被中断进程的CPU现场返回被中断的进程,继续执行中断请求信号图 6-11 中断处理流程2022-6-24426.4 设备驱动程序设备驱动程序n设备处理程序通常又称为设备驱动程序,它设备处理程序通常又称为设备驱动程序,它是是I/O进程与设备控制器之间的通信程序,又进程与设备控制器之间的通信程序,又由于它常以进程的形式存在,所以简称之为由于它常以进程的形式存在,所以简称之为设备驱动进程设备驱动进程n主要任务:接收上层软件发来的抽象要求,主要任务:接收上层软件发来的抽象要求,把它转换为具体要求后,发送给设备控制器,把它转换为具体要求后,发送给设备控制器,启
25、动设备去执行。也将由设备控制器发来的启动设备去执行。也将由设备控制器发来的信号传送给上层软件。信号传送给上层软件。 n通常,每一类设备配置一种驱动程序。通常,每一类设备配置一种驱动程序。2022-6-2443设备驱动程序的功能和特点设备驱动程序的功能和特点n设备驱动程序的功能设备驱动程序的功能 u一是接收设备独立性软件发来的命令和参数,把一是接收设备独立性软件发来的命令和参数,把抽象要求转化为具体要求。抽象要求转化为具体要求。u二是检查用户二是检查用户I/O请求的合法性,了解请求的合法性,了解I/O设备的设备的状态,传递有关参数,设置设备的工作方式。状态,传递有关参数,设置设备的工作方式。u三
26、是发出三是发出I/O 命令,启动分配到的命令,启动分配到的I/O设备,完成设备,完成指定的指定的I/O操作。操作。u四是及时响应由控制器或通道发来的中断请求,四是及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行并根据其中断类型调用相应的中断处理程序进行处理。处理。2022-6-2444设备驱动程序的功能和特点设备驱动程序的功能和特点n设备驱动程序的特点设备驱动程序的特点u一是驱动程序主要是在请求一是驱动程序主要是在请求I/O的进程与设备控制的进程与设备控制器之间的一个通信程序。器之间的一个通信程序。u二是驱动程序与二是驱动程序与I/O设备的特性密切相关。设备的特
27、性密切相关。u三是驱动程序与三是驱动程序与I/O控制方式紧密相关。控制方式紧密相关。u四是驱动程序与硬件紧密相关,其部分被固化在四是驱动程序与硬件紧密相关,其部分被固化在ROM 中。中。 u五是驱动程序应允许可重入五是驱动程序应允许可重入u六是驱动程序不允许系统调用。六是驱动程序不允许系统调用。2022-6-2445设备驱动程序的功能和特点设备驱动程序的功能和特点n设备处理的方式设备处理的方式 u一是为每一类设备设置一个进程,它专门执行这一是为每一类设备设置一个进程,它专门执行这类设备的类设备的I/O操作。操作。u二是在整个系统中设置一个二是在整个系统中设置一个I/O进程,专门负责对进程,专门
28、负责对系统中所有各类设备的系统中所有各类设备的I/O操作。操作。u三是不设置专门的设备处理进程,只为各类设备三是不设置专门的设备处理进程,只为各类设备设置相应的设备处理程序,供用户进程或系统进设置相应的设备处理程序,供用户进程或系统进程调用。程调用。2022-6-2446设备驱动程序的处理过程设备驱动程序的处理过程n主要任务:启动指定设备主要任务:启动指定设备n将抽象要求转化为具体要求将抽象要求转化为具体要求 n检查检查I/O请求的合法性请求的合法性 n读出和检查设备的状态读出和检查设备的状态 n传送必要的参数传送必要的参数 n设置工作方式设置工作方式 n启动启动I/O 设备设备 2022-6
29、-2447练习练习n 设备驱动程序与()密切相关,如果计算机中配置有一个光盘,一个软盘,一个硬盘,此时应为它们配置()种外存设备驱动程序。如果系统中连接有四个相同的终端设备,此时应为它们配置()个终端设备驱动程序2022-6-24486.4.3 对对I/O设备控制方式设备控制方式n轮询的可编程轮询的可编程I/OI/O方式方式 nI/OI/O中断方式中断方式 nDMADMA方式方式 n通道方式通道方式 中断中断DMA通道通道2022-6-24491 1 程序程序I/OI/O方式方式早期,早期,I/OI/O控制器控制器是是OSOS同硬件之间的接口同硬件之间的接口p(147)p(147)。它有两个寄
30、存器:。它有两个寄存器:数据缓冲寄存器数据缓冲寄存器、控制控制/ /状态寄存器状态寄存器。状态控制寄存器有一个标。状态控制寄存器有一个标志忙志忙/ /闲的标志位闲的标志位busybusy。CPU外部设备控控制制逻逻辑辑电电路路控制寄存器控制寄存器I/O控制器控制器数据寄存器数据寄存器2022-6-2450工作过程工作过程以输入为例以输入为例1 1、 把把busybusy置置1 12 2、 反复测试反复测试busybusy,为,为1 1表示输入机尚未输完一个字,表示输入机尚未输完一个字,处理机应继续对该标志进行测试,转处理机应继续对该标志进行测试,转2 2,为,为0 0表示输表示输入机已将输入数
31、据送入控制器的数据寄存器中,转入机已将输入数据送入控制器的数据寄存器中,转3 33 3、 把数据从数据缓冲区中读走,并置把数据从数据缓冲区中读走,并置busybusy为为1 1。n所谓所谓“程序循环测试程序循环测试”的数据传输方式,就是指用的数据传输方式,就是指用户进程使用启动设备后,不断地执行测试指令,去户进程使用启动设备后,不断地执行测试指令,去测试所启动设备的状态寄存器。只有在状态寄存器测试所启动设备的状态寄存器。只有在状态寄存器出现了所需要的状态后,才停止测试工作,完成输出现了所需要的状态后,才停止测试工作,完成输入入/输出。输出。忙忙-等待方式等待方式2022-6-2451 在程序I
32、/O方式中,由于CPU的高速性和I/O设备的低速性, 致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中, 造成对CPU的极大浪费。在该方式中,CPU之所以要不断地测试I/O设备的状态,就是因为在CPU中无中断机构, 使I/O设备无法向CPU报告它已完成了一个字符的输入操作。2022-6-24522 I/O中断方式中断方式I/OI/O控制器能发中断控制器能发中断。工作过程:工作过程:1 1、发出启动某设备的命令,本进程(、发出启动某设备的命令,本进程(A A)变为等待变为等待状态,转进程调度,调度另一进程状态,转进程调度,调度另一进程B B。2 2、输入完成时,控制器发出中
33、断,中断输入完成时,控制器发出中断,中断B B,通过中通过中断进入中断处理程序。断进入中断处理程序。3 3、在中断处理程序中把数据缓冲寄存器中的数取走,、在中断处理程序中把数据缓冲寄存器中的数取走,放入内存特定位置放入内存特定位置M M,唤醒等待进程唤醒等待进程A A,中断返回中断返回到到B B的断点继续执行。的断点继续执行。4 4、在以后的某个时刻、在以后的某个时刻OSOS调度要求输入的进程调度要求输入的进程A A。A A从从M M取数处理。取数处理。 2022-6-24532022-6-2454 在I/O设备输入每个数据的过程中,由于无须CPU干预,因而可使CPU与I/O设备并行工作。仅当
34、输完一个数据时,才需CPU花费极短的时间去做些中断处理。可见,这样可使CPU和I/O设备都处于忙碌状态,从而提高了整个系统的资源利用率及吞吐量。例如,从终端输入一个字符的时间约为100 ms, 而将字符送入终端缓冲区的时间小于 0.1 ms。 若采用程序I/O方式,CPU约有 99.9 ms的时间处于忙等待中。 采用中断驱动方式后,CPU可利用这 99.9 ms的时间去做其它事情,而仅用 0.1 ms的时间来处理由控制器发来的中断请求。 可见,中断驱动方式可以成百倍地提高CPU的利用率。 2022-6-2455分析分析同前相比,同前相比,CPU利用率大大提高。利用率大大提高。缺点:每台设备每输
35、入输出一个字节的数据都缺点:每台设备每输入输出一个字节的数据都有一次中断。如果设备较多时,中断次数会有一次中断。如果设备较多时,中断次数会很多,使很多,使CPU的计算时间大大减少。的计算时间大大减少。为减少中断对为减少中断对CPU造成的负担,可采用造成的负担,可采用DMA方方式和通道方式。式和通道方式。2022-6-24563 直接存储器访问(直接存储器访问(DMA)方式方式n直接存储器存取控制方式的概念直接存储器存取控制方式的概念 u是指对是指对I/O设备的控制由设备的控制由DMA控制器完成,在控制器完成,在DMA控制器的作用下,设备和主存之间可以控制器的作用下,设备和主存之间可以成批地进行
36、数据交换,而不用成批地进行数据交换,而不用CPU的干涉。的干涉。 2022-6-24575.2.3 DMA方式方式n直接存储器存取控制方式的概念直接存储器存取控制方式的概念 u该方式的特点是:u 数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块;u 所传送的数据是从设备直接送入内存的,或者相反;u 仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。u可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。 2022-6-2458DMA方式方式控制器功能更强
37、,除有中断功能外,还有一个控制器功能更强,除有中断功能外,还有一个DMADMA控控制机构。在制机构。在DMADMA控制器的控制下,控制器的控制下,设备同主存之间可设备同主存之间可成批交换数据,不用成批交换数据,不用CPUCPU干预。干预。DMADMA控制器组成:主机与控制器组成:主机与DMADMA控制器的接口;控制器的接口;DMADMA控制器控制器与块设备的接口;与块设备的接口;I/OI/O控制逻辑控制逻辑DRMARDCCRI/O控制逻辑主机控制器接口控制器与块设备接口count内存CPU命令系统总线DMA控制器2022-6-2459DMA方式方式DMADMA控制器组成:主机与控制器组成:主机
38、与DMADMA控制器的接口;控制器的接口;DMADMA控制控制器与块设备的接口;器与块设备的接口;I/OI/O控制逻辑控制逻辑为了实现在主机与控制器之间的成块数据的直接交换,为了实现在主机与控制器之间的成块数据的直接交换,须在须在DMADMA控制器中设置如下四类寄存器:控制器中设置如下四类寄存器:命令命令/ /状态寄状态寄存器存器CRCR;内存地址寄存器;内存地址寄存器MARMAR;数据寄存器;数据寄存器DRDR;数据;数据计数器计数器DCDC。DRMARDCCRI/O控制逻辑主机控制器接口控制器与块设备接口count内存CPU命令系统总线DMA控制器2022-6-2460 DMA方式工作过程
39、方式工作过程n直接存储器存取控制方式的步骤直接存储器存取控制方式的步骤(P197)u 当进程要求设备输入一批数据时,当进程要求设备输入一批数据时,CPU将设备存放输入数据的将设备存放输入数据的内存始址以及要传送的字节数分别送入内存始址以及要传送的字节数分别送入DMA控制器中的地址寄存控制器中的地址寄存器器MAR和数据计数器和数据计数器DC;另外,还要将磁盘中的源地址直接送至;另外,还要将磁盘中的源地址直接送至DMA控制器的控制器的I/O控制逻辑上。控制逻辑上。u 发出数据要求的进程进入等待状态,进程调度程序调度其他进发出数据要求的进程进入等待状态,进程调度程序调度其他进程占据程占据CPU。u
40、输入设备不断从磁盘中读入一个字的数据并送入数据寄存器输入设备不断从磁盘中读入一个字的数据并送入数据寄存器DR中,再挪用一个存储器周期,将数据寄存器中的数据写入内存,中,再挪用一个存储器周期,将数据寄存器中的数据写入内存,MAR+1,DC-1,若,若DC不为不为0则继续传下一个字。则继续传下一个字。u DMA控制器在传送字节数完成时,通过中断请求线发出中断信控制器在传送字节数完成时,通过中断请求线发出中断信号,号,CPU收到中断信号后转中断处理程序,唤醒等待输入完成的收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断的程序。进程,并返回被中断的程序。u 在以后的某个时刻,进程调度
41、程序选中提出请求输入的进程,在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存始址取出数据做进一步处理。该进程从指定的内存始址取出数据做进一步处理。2022-6-24613. DMA工作过程工作过程 图 5-9 DMA方式的工作流程 设置 AR 和DC 初值启动 DMA 传送命令挪用存储器周期传送数据字存储器地址增1字计数寄存器减1DC 0?请求中断在继续执行用户程序的同时,准备又一次传送否是2022-6-2462直接存储器存取控制直接存储器存取控制n直接存储器存取控制方式的特点直接存储器存取控制方式的特点uI/O数据传输速度快,数据传输速度快,CPU负担少。负担少。u在
42、在DMA方式下,数据的传送方向、存放数据的内方式下,数据的传送方向、存放数据的内存始址及传送数据的长度等都由存始址及传送数据的长度等都由CPU控制。每台控制。每台设备需要配一个设备需要配一个DMA控制器。控制器。 2022-6-2463DMA方式与中断的主要区别方式与中断的主要区别n中断方式是在数据缓冲寄存区满后,发中断中断方式是在数据缓冲寄存区满后,发中断请求,请求,CPU进行中断处理进行中断处理 DMA方式则是在所要求传送的数据块全部方式则是在所要求传送的数据块全部传送结束时要求传送结束时要求CPU进行中断处理进行中断处理 大大减少了大大减少了CPU进行中断处理的次数进行中断处理的次数n中
43、断方式的数据传送是由中断方式的数据传送是由CPU控制完成的控制完成的 而而DMA方式则是在方式则是在DMA控制器的控制下不控制器的控制下不经过经过CPU控制完成的控制完成的2022-6-2464实现流程实现流程向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器中读入字向存储器中写字传送完成?未就绪就绪出错CPUI/OI/OCPUI/OCPUCPU 内存下条指令完成未完向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器中读字向内存中写字传送完成?就绪出错CPUI/OI/OCPUI/OCPUCPU 内存下条指令完成未完中断CPU做其它事向I/O控制器发布读块命令CP
44、UDMACPU做其它事读DMA控制器的状态中断DMACPU下条指令(a) 程序I/O方式(b) 中断驱动方式(c) DMA方式2022-6-24654 4 I/O I/O通道控制方式通道控制方式 1. I/O通道控制方式的引入通道控制方式的引入 虽然虽然DMA方式比起中断方式来,已经显著地减少了方式比起中断方式来,已经显著地减少了CPU的干预,即已由以字的干预,即已由以字(节节)为单位的干预减少到以数据块为单位的干预减少到以数据块为单位的干预,但为单位的干预,但CPU每发出一条每发出一条I/O指令,也只能去读一指令,也只能去读一个连续的数据块,要是一次去读多个数据块且将它们分别传个连续的数据块
45、,要是一次去读多个数据块且将它们分别传送到不同的内存区域,则须由送到不同的内存区域,则须由CPU发出多条发出多条I/O指令,进行指令,进行多次中断。多次中断。 2022-6-24665.2.4 I/O5.2.4 I/O通道控制方式通道控制方式 1. I/O通道控制方式的引入通道控制方式的引入 I/O通道方式是DMA方式的发展,它可进一步减少CPU的干预,即把对一个数据块的读(或写)为单位的干预,减少为对一组数据块的读(或写)及有关的控制和管理为单位的干预。 同时,又可实现CPU、通道和I/O设备三者的并行操作,从而更有效地提高整个系统的资源利用率。例如,当CPU要完成一组相关的读(或写)操作及
46、有关控制时,只需向I/O通道发送一条I/O指令,以给出其所要执行的通道程序的首址和要访问的I/O设备,通道接到该指令后,通过执行通道程序便可完成CPU指定的I/O任务。 2022-6-24672 2 通道程序通道程序 通道有它自己的指令系统,用一系列通道指通道有它自己的指令系统,用一系列通道指令构成的程序叫令构成的程序叫通道程序通道程序。 通道通过执行通道程序,并与设备控制器共通道通过执行通道程序,并与设备控制器共同实现对同实现对I/OI/O设备的控制。设备的控制。 通道只能执行通道程序,不可能执行用户进通道只能执行通道程序,不可能执行用户进程。程。2022-6-2468n通道有自己的指令系统
47、,它与一般的机器通道有自己的指令系统,它与一般的机器指令不同,在它的每条指令中都包含下列指令不同,在它的每条指令中都包含下列诸信息:操作码;内存地址;计数;通道诸信息:操作码;内存地址;计数;通道程序结束位程序结束位P;记录结束标志;记录结束标志R2022-6-2469操作操作 PR计数计数内存地址内存地址WRITE 0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE112507202022-6-2470n若干通道命令字构成一个若干通道命令字构成一个“通道程序通道程序”,它规定了,它规定了设备应该执行的各种操作
48、和顺序。在设备应该执行的各种操作和顺序。在CPU启动通道启动通道后,由通道执行通道程序,完成后,由通道执行通道程序,完成CPU所交给的所交给的I/O任务。通常,通道程序存放在通道自己的存储部件任务。通常,通道程序存放在通道自己的存储部件里。当通道中没有存储部件时,就存放在内存储器里。当通道中没有存储部件时,就存放在内存储器里。这时,为了使通道能取到通道程序去执行,必里。这时,为了使通道能取到通道程序去执行,必须把存放通道程序的内存起始地址告诉通道。存放须把存放通道程序的内存起始地址告诉通道。存放这个起始地址的内存固定单元,被称为这个起始地址的内存固定单元,被称为“通道地址通道地址字字”。202
49、2-6-2471通道的工作过程通道的工作过程n某进程在运行过程中,若提出了I/O请求,只需向通道I/O通道发一条I/O指令,以给出其所要执行的通道程序的始址和要访问的I/O设备;n用户进程阻塞以等待I/O完成n通道则通过执行通道程序控制设备控制器,控制设备完成指定的I/O任务。n发出中断信号通知CPU通道程序已执行完成。nCPU响应中断,进行善后处理并唤醒被阻塞的用户进程2022-6-2472 n通道是一种特殊的(),具有()能力。主通道是一种特殊的(),具有()能力。主机的机的CPUCPU与通道可以并行工作,并通过()实与通道可以并行工作,并通过()实现彼此之间的通信和同步现彼此之间的通信和
50、同步 。1、I/O设备设备 2、设备控制器、设备控制器 3、处理机、处理机 4、I/O控制器控制器1、执行、执行I/O指令集指令集 2、执行、执行CPU指令集指令集 3、传输、传输I/O命令命令 4、运行、运行I/O进程进程1、I/O指令指令 2、I/O中断中断 3、I/O指令和指令和I/O中断中断 4、操作员、操作员2022-6-2473 n在程序在程序I/OI/O方式中,对于输出设备,准备就绪方式中,对于输出设备,准备就绪就是指就是指1、输出缓冲区已空、输出缓冲区已空 2、输出缓冲区已有数据、输出缓冲区已有数据 3、输出设备已开始工作、输出设备已开始工作 4、输出设备已收到、输出设备已收到
51、I/O指令指令n不使用中断机制的不使用中断机制的I/O控制方式是控制方式是_n如果如果I/O设备与存储设备进行数据交换不经过设备与存储设备进行数据交换不经过CPU来来完成,这种数据交换方式是完成,这种数据交换方式是_。A、程序查询、程序查询 B、中断方式、中断方式 C、DMA方式方式n在中断驱动方式中,在中断驱动方式中,CPU是以是以_为单位对为单位对I/O进行干预的;进行干预的;DMA方式时,是以方式时,是以_为单位进为单位进行干预的;行干预的;I/O通道方式是以通道方式是以_为单位进行干为单位进行干预的。预的。2022-6-24746.5设备无关的设备无关的I/O软件软件n设备独立性概念(
52、设备无关性)设备独立性概念(设备无关性)u应用程序中所使用的设备,不局限于使用某个具应用程序中所使用的设备,不局限于使用某个具体的物理设备。体的物理设备。F应用程序独立于具体使用的物理设备。在应用程序中,使用逻辑设备名称来请求使用某类设备。系统在实际执行时,必须使用物理设备名称2022-6-2475设备独立性设备独立性n设备独立性好处(设备无关性)设备独立性好处(设备无关性)u设备分配时的灵活性设备分配时的灵活性。如果一个系统中有若干台相同的。如果一个系统中有若干台相同的设备,用户编程时不指定使用哪一个具体的设备,而仅设备,用户编程时不指定使用哪一个具体的设备,而仅说明要使用哪一类设备,系统根
53、据当前这一类设备的具说明要使用哪一类设备,系统根据当前这一类设备的具体状况给用户分配一台具体的设备。体状况给用户分配一台具体的设备。u易于实现易于实现I/OI/O重定向重定向。用于。用于I/OI/O操作的设备可以更换(重操作的设备可以更换(重定向),而不必改变应用程序。例如有一程序要求输入定向),而不必改变应用程序。例如有一程序要求输入信息,可以从各种不同类型的输入设备上给程序输入数信息,可以从各种不同类型的输入设备上给程序输入数据,则称该程序是独立于不同类型的输入设备的。据,则称该程序是独立于不同类型的输入设备的。2022-6-2476设备独立性设备独立性n逻辑设备名到物理设备名映射的实现逻
54、辑设备名到物理设备名映射的实现u逻辑设备表LUT 将应用程序中所使用的逻辑设备名映射为物理设备名。逻辑设备名物理设备名驱动程序入口地址/dev/tty/dev/printer3510242046逻辑设备名/dev/tty/dev/printer系统设备表指针35(a)(b)2022-6-2477设备独立性设备独立性n设备独立性软件设备独立性软件n驱动程序是一个与硬件紧密相关的软件,为了实现设备独立驱动程序是一个与硬件紧密相关的软件,为了实现设备独立性,必须在其上设置一层软件称为设备独立性软件。其功能性,必须在其上设置一层软件称为设备独立性软件。其功能有有u执行所有设备的公有操作 这些公有操作包
55、括:设备驱动程序的统一接口,无论何种设备, 它们向用户所提供的接口应该是相同的。 例如, 对各种设备的读操作,在应用程序中都使用read; 而对各种设备的写操作,也都使用write; 并将逻辑设备名映射为物理设备名,进一步可以找到相应物理设备的驱动程序;对设备进行保护,禁止用户直接访问设备; 缓冲管理,即对字符设备和块设备的缓冲区进行有效的管理, 以提高I/O的效率;差错控制。设备独立性软件只处理那些设备驱动程序无法处理的错误。对独立设备的分配与回收; 提供独立于设备的逻辑块。u向用户层(或文件层)软件提供统一接口 2022-6-2478n程序员利用系统调用打开程序员利用系统调用打开I/O设备
56、时,通常使设备时,通常使用的设备标识是(用的设备标识是(2009) A.逻辑设备名逻辑设备名 B.物理设备名物理设备名 C.主设备号主设备号 D.从设备号从设备号n本地用户通过键盘登陆系统是,首先获得键本地用户通过键盘登陆系统是,首先获得键盘输入信息的程序是盘输入信息的程序是()。(。(2010) A. 命令解释程序命令解释程序 B. 中断处理程序中断处理程序 C. 系统调用程序系统调用程序D. 用户登录程序用户登录程序2022-6-24796.5.36.5.3 设设 备备 分分 配配n在多道程序环境下,系统中的设备供所在多道程序环境下,系统中的设备供所有进程共享,为防止诸进程对系统资源有进程
57、共享,为防止诸进程对系统资源的无序竞争,特规定系统设备不允许用的无序竞争,特规定系统设备不允许用户自行使用,户自行使用,必须由系统统一分配必须由系统统一分配。n每当进程向系统提出请求时,只要是可每当进程向系统提出请求时,只要是可能和安全的,按一定策略分配能和安全的,按一定策略分配n为了实现独占设备分配,必须在系统中为了实现独占设备分配,必须在系统中设置相应的数据结构设置相应的数据结构2022-6-2480设备分配中的数据结构设备分配中的数据结构n从前面所学内容中我们知道,创建一个进程时,从前面所学内容中我们知道,创建一个进程时,开辟一个进程控制块开辟一个进程控制块PCB,以便随时记录进程以便随
58、时记录进程的信息;在把一个作业提交给系统时,系统也的信息;在把一个作业提交给系统时,系统也是开辟一个作业控制块是开辟一个作业控制块JCB,以便随时记录作以便随时记录作业的信息。为了管理系统中的外部设备,操作业的信息。为了管理系统中的外部设备,操作系统仍然采用这种老办法:为每一台设备开辟系统仍然采用这种老办法:为每一台设备开辟一个存储区,随时记录系统中每一个设备的基一个存储区,随时记录系统中每一个设备的基本信息,这个存储区被称为本信息,这个存储区被称为“设备控制表设备控制表DCT(Device Control Table)”。2022-6-2481设备分配中的数据结构设备分配中的数据结构 n设备
59、控制表(设备控制表(DCT)u系统为每个设备配置一张设备控制表,用于记录设备系统为每个设备配置一张设备控制表,用于记录设备的特性及的特性及I/O控制器连接的情况。控制器连接的情况。 n控制器控制表(控制器控制表(COCT)u每个控制器配置一张表,它反映控制器的使用情况等。每个控制器配置一张表,它反映控制器的使用情况等。 n通道控制表(通道控制表(CHCT)u为每个通道配置一张表,它反映通道的使用状态。为每个通道配置一张表,它反映通道的使用状态。 n系统设备表(系统设备表(SDT)u它记录已被连接到系统中的所有物理设备的情况,每它记录已被连接到系统中的所有物理设备的情况,每个物理设备占一个表目。
60、整个系统配置一张。个物理设备占一个表目。整个系统配置一张。 2022-6-2482n下图左侧的下图左侧的“DCT”,表示系统中所有,表示系统中所有外部设备的外部设备的DCT的集合;中间是对其中的集合;中间是对其中的第的第i个设备的个设备的DCT放大,给出了放大,给出了DCT中中可能有的一些表项。不难理解,可能有的一些表项。不难理解,随着系随着系统的不同,统的不同,DCT中所含的内容也不同。中所含的内容也不同。DCT 2022-6-2483DCTDCT1DCTiDCTnDCTi图:设备控制表及设备请求队列图:设备控制表及设备请求队列忙忙/闲闲 等待等待/不等待不等待n与设备连接的控制器表指针与设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广告公司考勤制度及规范
- 公司档案管理制度清单
- 小学班主任班级制度规范
- 幼儿园诚信档案制度
- 出租车报备制度规范要求
- 制造业车间轮岗制度规范
- 诉讼材料档案管理制度
- 搅拌站安全管理档案制度
- 刻制档案保管移交制度
- 执行三重一大制度不规范
- 2025至2030中国预糊化玉米淀粉行业调研及市场前景预测评估报告
- GB/T 42968.9-2025集成电路电磁抗扰度测量第9部分:辐射抗扰度测量表面扫描法
- 安装铜排施工方案(3篇)
- 物流仓储管理表格库存状态与操作指导模板
- 日本风格家居空间设计解析
- 商铺应急预案范本(3篇)
- 浅析国有参股企业股权管理优化方案构建与实施
- 住院患者非计划性拔管循证预防与安全管理体系构建
- 后勤工作会议讲话稿
- DB11∕T 1831-2021 装配式建筑评价标准
- 2024-2025学年度陕西能源职业技术学院单招《职业适应性测试》考试历年机考真题集(易错题)附答案详解
评论
0/150
提交评论