第五章 设备管理PPT讲稿.ppt

上传人:石*** 文档编号:51803225 上传时间:2022-10-20 格式:PPT 页数:77 大小:3.73MB
返回 下载 相关 举报
第五章 设备管理PPT讲稿.ppt_第1页
第1页 / 共77页
第五章 设备管理PPT讲稿.ppt_第2页
第2页 / 共77页
点击查看更多>>
资源描述

《第五章 设备管理PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第五章 设备管理PPT讲稿.ppt(77页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第五章第五章 设备管理设备管理第1页,共77页,编辑于2022年,星期三教学重点教学重点:1、通道、通道、DMA2、数据传送控制方式、数据传送控制方式3、设备驱动程序、设备驱动程序4、I/O进程控制进程控制5、设备分配、设备分配6、缓冲管理、缓冲管理第2页,共77页,编辑于2022年,星期三操作系统的基本组织结构操作系统的基本组织结构进程与资进程与资源管理源管理文件管理文件管理存储管理存储管理设备管理设备管理处理机处理机主存主存设备设备操作系统操作系统计算机硬件计算机硬件第3页,共77页,编辑于2022年,星期三5.1 5.1 引言引言l设备管理是直接与设备接口打交道的操作系统模块设备管理是直

2、接与设备接口打交道的操作系统模块,通常由文件系统调用。通常由文件系统调用。l设备管理完成对物理设备的抽象设备管理完成对物理设备的抽象,驱动程序是对设备驱动程序是对设备进行抽象的具体表现,也是上层软件系统与硬件直接进行抽象的具体表现,也是上层软件系统与硬件直接沟通的唯一渠道,驱动程序屏蔽了底层设备的物理细沟通的唯一渠道,驱动程序屏蔽了底层设备的物理细节。节。第4页,共77页,编辑于2022年,星期三一、设备管理的主要任务一、设备管理的主要任务(1 1)设备的选择和分配实现数据传输)设备的选择和分配实现数据传输(2 2)控制输入)控制输入/输出输出-CPU-CPU(内存)之间交换数据(内存)之间交

3、换数据(3 3)提供用户使用接口)提供用户使用接口(4 4)提高并行操作度(设备)提高并行操作度(设备/设备、设备设备、设备/CPU/CPU、进程、进程/进程)进程)第5页,共77页,编辑于2022年,星期三二、设备管理程序提供的功能二、设备管理程序提供的功能(1 1)为进程管理提供接口(将进程的请求转给设)为进程管理提供接口(将进程的请求转给设备管理)备管理)(2 2)实施设备分配(按照设备分类、调度算法分配设)实施设备分配(按照设备分类、调度算法分配设备、将未分配到的进程放入等待队列)备、将未分配到的进程放入等待队列)(3 3)实现设备之间及设备与)实现设备之间及设备与CPUCPU间并行操

4、作间并行操作(DMADMA、通道)通道)(4 4)缓冲区管理(解决速度的不匹配问题,负责)缓冲区管理(解决速度的不匹配问题,负责进行缓冲区的分配进行缓冲区的分配/释放等工作)释放等工作)第6页,共77页,编辑于2022年,星期三三、设备管理的两个阶段(三、设备管理的两个阶段(P192)(1)接收用户提出的)接收用户提出的I/O请求阶段请求阶段 (2)响应设备中断请求阶段)响应设备中断请求阶段第7页,共77页,编辑于2022年,星期三输入输入/输出请求输出请求设备驱动程序设备驱动程序设备文件设备文件标准设备接口(标准设备接口(read,write,open,close.)与设备无关软件(文件系统

5、)与设备无关软件(文件系统)中断处理程序中断处理程序返回信息返回信息显示器显示器鼠标鼠标打印机打印机第8页,共77页,编辑于2022年,星期三5.2 5.2 输入输入/输出硬件输出硬件一、输入一、输入/输出设备输出设备l电子设备电子设备l设备分类设备分类+字符设备字符设备特点:输入特点:输入/输出时以字符为单位(显示器)输出时以字符为单位(显示器)第9页,共77页,编辑于2022年,星期三块设备:将信息存储在可寻址的固定大小的数据块块设备:将信息存储在可寻址的固定大小的数据块中。包括存取控制部分(磁带机中的读写控制电路、中。包括存取控制部分(磁带机中的读写控制电路、磁头)和信息载体(磁带、磁盘

6、片)两部分。磁头)和信息载体(磁带、磁盘片)两部分。特征:能够独立的读写单个的数据块,又叫存储设备特征:能够独立的读写单个的数据块,又叫存储设备1、顺序存取设备(磁带)、顺序存取设备(磁带)2、直接存取设备(磁盘、磁鼓)、直接存取设备(磁盘、磁鼓)3、完全直接存取设备(半导体只读存储器)、完全直接存取设备(半导体只读存储器)第10页,共77页,编辑于2022年,星期三磁带磁带磁带格式磁带格式磁带头部磁带头部反光片反光片磁带尾部磁带尾部反光片反光片记记录录记记录录IRGIRG块记录格式块记录格式记录记录1记录记录2记录记录3记录记录4IRGIRG800字节字节第11页,共77页,编辑于2022年

7、,星期三磁盘磁盘 扇区扇区磁道磁道单磁盘片表面的划分单磁盘片表面的划分旋转方向旋转方向读读/写磁头写磁头臂移动方向臂移动方向 移动头磁盘示意图移动头磁盘示意图第12页,共77页,编辑于2022年,星期三磁盘设备结构磁盘设备结构第13页,共77页,编辑于2022年,星期三二、设备控制器二、设备控制器 机械部件(设备本身)机械部件(设备本身)I/OI/O设备设备 电子部件(设备控制器电子部件(设备控制器/适配器)适配器)用于控制字符设备的控制器用于控制字符设备的控制器 用于控制块设备的控制器用于控制块设备的控制器 第14页,共77页,编辑于2022年,星期三1 1、设备控制器的作用、设备控制器的作

8、用(1 1)控制一个或多个)控制一个或多个I/OI/O设备,以实现设备,以实现I/OI/O设备和设备和计算机之间的数据交换。它是计算机之间的数据交换。它是CPUCPU和和I/OI/O设备之设备之间的接口,它接收从间的接口,它接收从CPUCPU发出的命令,并控制发出的命令,并控制I/OI/O设备工作。设备工作。(2 2)设备控制器是一个可编址的设备,当它只控制一)设备控制器是一个可编址的设备,当它只控制一个设备时,它有惟一的一个设备地址;若控制器连接多个设备时,它有惟一的一个设备地址;若控制器连接多个设备时,则应含有多个设备地址,使每一个设备地址个设备时,则应含有多个设备地址,使每一个设备地址对

9、应一个设备。设备控制器的复杂性因设备而异,相差对应一个设备。设备控制器的复杂性因设备而异,相差很大。很大。第15页,共77页,编辑于2022年,星期三2 2、设备控制器主要功能、设备控制器主要功能:接收和识别命令接收和识别命令 数据交换数据交换 地址识别地址识别 标识和报告设备的状态标识和报告设备的状态 数据缓冲数据缓冲 差错控制差错控制第16页,共77页,编辑于2022年,星期三3 3、接口、接口(1 1)控制器和设备之间采用标准接口;)控制器和设备之间采用标准接口;IDEIDE、SCSISCSI、VGAVGA、USBUSB、RS-232CRS-232C(2 2)操作系统直接将数据发送到设备

10、的控制器中)操作系统直接将数据发送到设备的控制器中 磁盘:从磁盘的驱动中读出二进制比特流,控制器将其磁盘:从磁盘的驱动中读出二进制比特流,控制器将其转化成字节块转化成字节块 CRT CRT:从内存中读取字节流,:从内存中读取字节流,CRTCRT控制器根据控制器根据OSOS的参数的参数调制调制CRTCRT射线信号,并将结果显示在屏幕上射线信号,并将结果显示在屏幕上第17页,共77页,编辑于2022年,星期三三、三、通道通道通道:独立与通道:独立与CPUCPU的专管输入的专管输入/输出控制的处理机,它控输出控制的处理机,它控制设备与内存直接进行数据交换制设备与内存直接进行数据交换工作方法:有自己的

11、通道指令、由工作方法:有自己的通道指令、由CPUCPU执行相应的指令执行相应的指令(I/OI/O)来启动通道,说明要执行的)来启动通道,说明要执行的I/OI/O操作和要访问操作和要访问的的I/OI/O设备,通道接到命令后启动相应的通道程序完设备,通道接到命令后启动相应的通道程序完成成I/OI/O操作,并在操作结束时向操作,并在操作结束时向CPUCPU发中断信号发中断信号1 1、字节多路通道、字节多路通道2 2、数据选择通道、数据选择通道3 3、数组多路通道、数组多路通道第18页,共77页,编辑于2022年,星期三I/O控制器控制器I/O控制器控制器I/O控制器控制器I/O控制器控制器I/O控制

12、器控制器I/O控制器控制器I/O控制器控制器字节多路字节多路通道通道选择通道选择通道成组多路成组多路通道通道磁盘磁盘磁盘磁盘磁带磁带磁带磁带终端终端终端终端终端终端CPU内存内存总线总线通道方式的数据传送结构通道方式的数据传送结构第19页,共77页,编辑于2022年,星期三四、四、DMA(存储器直接存取)(存储器直接存取)在外围设备和内存之间开辟直接的数据交换通路。在外围设备和内存之间开辟直接的数据交换通路。DMA控制器代替了控制器代替了CPU控制内存和设备进行成批的数控制内存和设备进行成批的数据交换。在数据传送开始时需据交换。在数据传送开始时需CPU启动,数据传送结启动,数据传送结束时需发中

13、断给束时需发中断给CPU。第20页,共77页,编辑于2022年,星期三DMA控制器控制器CPU内存内存I/O设备设备数据数据中断位中断位启动位启动位控制状态寄存器控制状态寄存器数据缓冲寄存器数据缓冲寄存器内存地址寄存器内存地址寄存器传送字节数寄存器传送字节数寄存器DMADMA方式的传送结构方式的传送结构startintDMA第21页,共77页,编辑于2022年,星期三 5.3 5.3 输入输入/输出软件输出软件一、输入输出软件作用:一、输入输出软件作用:把软件组织为层次结构,底层软件用于屏蔽输把软件组织为层次结构,底层软件用于屏蔽输入入/输出硬件的细节输出硬件的细节,即实现上层的设备无关(设备

14、独立即实现上层的设备无关(设备独立性)一个性)一个I/O程序在不用修改的情况下能读出不同的程序在不用修改的情况下能读出不同的文件,即使设备更换,用户用于进行文件,即使设备更换,用户用于进行I/O操作的程序也操作的程序也不用改变);高层软件为用户提供界面。不用改变);高层软件为用户提供界面。第22页,共77页,编辑于2022年,星期三层次结构(为实现设备无关性):层次结构(为实现设备无关性):中断处理程中断处理程 设备驱动程设备驱动程 与设备无关的操作系统与设备无关的操作系统 用户层软件用户层软件第23页,共77页,编辑于2022年,星期三二、二、I/OI/O软件的目标软件的目标1 1、设备独立

15、性、设备独立性 设计设计I/OI/O软件的一个最关键目标是设备独立性。软件的一个最关键目标是设备独立性。也就是说,除了直接与设备打交道的低层软件之外,也就是说,除了直接与设备打交道的低层软件之外,其他部分的软件并不与依赖于硬件其他部分的软件并不与依赖于硬件(Windows)(Windows)。2 2、统一命名、统一命名 统一命名是指在系统中采取预先设计的、统一统一命名是指在系统中采取预先设计的、统一的逻辑名称,对各类设备进行命名,并且应用在同的逻辑名称,对各类设备进行命名,并且应用在同设备有关的全部软件模块中。对设备统一命名是与设备有关的全部软件模块中。对设备统一命名是与设备独立性密切相关的。

16、设备独立性密切相关的。第24页,共77页,编辑于2022年,星期三通常给通常给I/O设备命名的做法:设备命名的做法:用用个序列字符串或一个整数来表示一个输入个序列字符串或一个整数来表示一个输入输出设备的名字,这个统一命名不依赖于设备,即输出设备的名字,这个统一命名不依赖于设备,即在一个设备的名称之下,其对应的物理设备可能发在一个设备的名称之下,其对应的物理设备可能发生了变化,但它并不在该名称上体现,因此用户并生了变化,但它并不在该名称上体现,因此用户并不知晓。不知晓。第25页,共77页,编辑于2022年,星期三进行进行I/O调用:格式化调用:格式化I/O执行执行I/O操作操作命命名名、保保护护

17、、阻阻塞塞、缓缓冲冲、分配分配I/O结结束束时时,唤唤醒醒设设备备服服务务子子程序程序设设置置设设备备寄寄存存器器、检检测测状状态态4-用户进程用户进程3-设备无关软件设备无关软件2-设备驱设备驱动程序动程序硬硬件件设备服务子程序设备服务子程序1-中断处理程序中断处理程序I/O请求请求I/O应答应答三、输入输出软件的功能三、输入输出软件的功能第26页,共77页,编辑于2022年,星期三四、四、数据传送控制方式数据传送控制方式选择和衡量控制方式的原则:选择和衡量控制方式的原则:(1)数据传送速度足够高,能满足用户的需要而)数据传送速度足够高,能满足用户的需要而又不丢失数据;又不丢失数据;(2)系

18、统开销小,所需的处理控制程序少;)系统开销小,所需的处理控制程序少;(3)充分发挥硬件资源能力,使得)充分发挥硬件资源能力,使得I/O设备尽可能设备尽可能忙,而忙,而CPU等待时间尽可能少。等待时间尽可能少。第27页,共77页,编辑于2022年,星期三1 1、程序直接控制方式、程序直接控制方式2 2、中断方式、中断方式3 3、DMADMA方式方式4 4、通道控制方式、通道控制方式第28页,共77页,编辑于2022年,星期三1 1、程序直接控制方式、程序直接控制方式否否外围设备外围设备做接收或发送数据准备做接收或发送数据准备接收到接收到start命令命令标志触发器置标志触发器置“done”等待等

19、待CPU来的下条指令来的下条指令准备完毕?是是否否CPU发发start命令命令等等待待执行下条指令执行下条指令开始数据传送开始数据传送设备标志触发器为done”?是是(a)(b)第29页,共77页,编辑于2022年,星期三缺点缺点:(1)CPU和设备只能串行工作。和设备只能串行工作。(2)CPU在一段时间内只能和一台外围设备交换数在一段时间内只能和一台外围设备交换数据信息,设备之间不能并行工作。据信息,设备之间不能并行工作。(3)依靠设备标志触发器的状态位来控制数据传送,)依靠设备标志触发器的状态位来控制数据传送,无法发现和处理由于其他硬件所产生的错误。无法发现和处理由于其他硬件所产生的错误。

20、第30页,共77页,编辑于2022年,星期三2 2、中断控制方式的传送结构、中断控制方式的传送结构I/O控制器控制器1I/O控制器控制器nI/O设备设备1I/O设备设备n地址线地址线数据线数据线控制线控制线intCPU内存内存start启动位启动位中断位中断位信号线信号线控制状态寄存器控制状态寄存器数据缓冲寄存器数据缓冲寄存器第31页,共77页,编辑于2022年,星期三接接收收到到CPU发发来来的的start指令指令准准备备数数据据并并将将其其置置入缓冲寄存器入缓冲寄存器缓冲寄存器满吗?缓冲寄存器满吗?控制器发中断信号控制器发中断信号向设备发向设备发start指令指令将中断允许位置将中断允许位

21、置1调调度度程程序序调调度度其其他进程他进程其他进程执行其他进程执行收到中断信号了吗?收到中断信号了吗?中断处理中断处理被中断进程执行被中断进程执行否否否否是是设备设备CPU中断控制方式的处理过程中断控制方式的处理过程第32页,共77页,编辑于2022年,星期三优点:优点:做到设备之间以及设备和做到设备之间以及设备和CPU之间的并行操作。之间的并行操作。缺点:缺点:(1)数据缓冲寄存器装满后发生中断,)数据缓冲寄存器装满后发生中断,若寄存器小则若寄存器小则中断中断次数较多中断次数较多,消耗次数较多中断次数较多,消耗CPU的时间。的时间。(2)设备方式下通过中断方式进行并行操作会增加)设备方式下

22、通过中断方式进行并行操作会增加无法响应中断和出现数据丢失现象。无法响应中断和出现数据丢失现象。(3)要求外围设备的速度较低。)要求外围设备的速度较低。第33页,共77页,编辑于2022年,星期三3 3、DMADMA方式的数据传送处理过程方式的数据传送处理过程否否CPU发发start命令命令内存地址内存地址内存始址寄存器内存始址寄存器传送字节数传送字节数字节计数器字节计数器允许中断位与启动位置允许中断位与启动位置1当前进程被阻塞,当前进程被阻塞,调度程序调度其他进程运行调度程序调度其他进程运行被调度的进程执行被调度的进程执行接收到中断信号吗?是是转中断处理转中断处理设备设备启动设备准备数据启动设

23、备准备数据DMA控制器接收到控制器接收到start指令指令缓冲寄存器内容入内存缓冲寄存器内容入内存改变传送字节数计数器与改变传送字节数计数器与内存地址寄存器内容内存地址寄存器内容否否传送字节数0?吗?数据入数据缓冲寄存器数据入数据缓冲寄存器发中断信号发中断信号停止停止I/O操作操作是是第34页,共77页,编辑于2022年,星期三优点:优点:(1 1)数据的传输块全部结束后发生中断,减少中断次数。)数据的传输块全部结束后发生中断,减少中断次数。(2 2)数据传输在)数据传输在DMADMA控制器的控制下完成,中断方式控制器的控制下完成,中断方式的数据传输是在中断处理时由的数据传输是在中断处理时由C

24、PUCPU控制完成。控制完成。缺点:缺点:(1 1)设备越多时,管理和控制越复杂,容易形成内存冲)设备越多时,管理和控制越复杂,容易形成内存冲突。突。(2 2)多个)多个DMADMA控制器成本高。控制器成本高。第35页,共77页,编辑于2022年,星期三4、通道方式、通道方式(1 1)数据传送的方向、数据存放的内存地址以及)数据传送的方向、数据存放的内存地址以及传送的数据地址长度有通道控制,传送的数据地址长度有通道控制,DMADMA方式中数据方式中数据传送的方向、数据存放的内存地址以及传送的数据传送的方向、数据存放的内存地址以及传送的数据地址长度有地址长度有DMADMA控制。控制。(2 2)I

25、/OI/O控制器中无传送字节计数器和内存字节计控制器中无传送字节计数器和内存字节计数器,增加了通道设备控制器和指令执行机构数器,增加了通道设备控制器和指令执行机构(3 3)CPUCPU只需发出启动指令,指出通道相应的操作只需发出启动指令,指出通道相应的操作和和I/OI/O设备,该指令既可启动通道从内存中调出相应设备,该指令既可启动通道从内存中调出相应的指令执行。的指令执行。第36页,共77页,编辑于2022年,星期三数据输入过程:数据输入过程:(1 1)CPUCPU发出发出startstart指令指明指令指明I/OI/O操作、设备号和对应通操作、设备号和对应通道;道;(2 2)对应的通道接到)

26、对应的通道接到startstart后,将存放在内存中的通道后,将存放在内存中的通道指令程序读出,设置对应设备的控制器中的控指令程序读出,设置对应设备的控制器中的控制状态寄存器制状态寄存器;(3 3)设备根据通道要求,把数据送往内存指定区域)设备根据通道要求,把数据送往内存指定区域(4 4)若数据传送结束,控制器通过中断请求线)若数据传送结束,控制器通过中断请求线发中断信号请求做中断处理;发中断信号请求做中断处理;(5 5)中断处理结束后返回被中断进程处继续执行。)中断处理结束后返回被中断进程处继续执行。第37页,共77页,编辑于2022年,星期三例:该通道程序由例:该通道程序由6条通道指令构成

27、。该通道程序的功能是将主存条通道指令构成。该通道程序的功能是将主存中不同地址中的数据写成多个记录。其中,前中不同地址中的数据写成多个记录。其中,前3条指令是分别将从条指令是分别将从1977单元开始的单元开始的12个字符、从个字符、从1996单元开始的单元开始的13个字符和从个字符和从1000单元开始的单元开始的99个字符写成一个记录;第个字符写成一个记录;第4条指令是单独写一条指令是单独写一个个573个字符的记录;第个字符的记录;第5、6两条指令合写一个两条指令合写一个600个字节的记录。个字节的记录。操作PR计数主存地址Write00121977Write00131996Write01991

28、000Write015733698Write00100858Write115002000第38页,共77页,编辑于2022年,星期三五、中断处理技术:五、中断处理技术:为了提高整体效率,减少在程序直接控制方式中为了提高整体效率,减少在程序直接控制方式中CPU等待时间,采用中断方式来控制输入输出设备和内存等待时间,采用中断方式来控制输入输出设备和内存与与CPU之间的数据传送是很必要的。之间的数据传送是很必要的。1、概念、概念中断:计算机在执行其间。系统内发生任何非寻常的中断:计算机在执行其间。系统内发生任何非寻常的或非预期的急需处理事件。使暂时中断当前正或非预期的急需处理事件。使暂时中断当前正在

29、执行的程序转而去执行相应的事件处理程序,待处在执行的程序转而去执行相应的事件处理程序,待处理完毕后又返回被中断处继续执行或调度新进程执行理完毕后又返回被中断处继续执行或调度新进程执行的过程。的过程。第39页,共77页,编辑于2022年,星期三中断源:引起中断发生的事件中断源:引起中断发生的事件中断请求:中断源向发出的请求中断处理信号中断请求:中断源向发出的请求中断处理信号中断相应:收到中断后转去响应的事件处理中断相应:收到中断后转去响应的事件处理程序程序禁止中断:在中断请求后,内部的处理机状态禁止中断:在中断请求后,内部的处理机状态字的中断允许位以被清除,从而不允许响应中字的中断允许位以被清除

30、,从而不允许响应中断。也叫关中断断。也叫关中断屏蔽中断:在中断请求产生后,系统用软件方式有屏蔽中断:在中断请求产生后,系统用软件方式有选择的封锁部分中断而允许其余部分的中断仍能得选择的封锁部分中断而允许其余部分的中断仍能得到响应。电源掉电事件不可屏蔽。到响应。电源掉电事件不可屏蔽。第40页,共77页,编辑于2022年,星期三2 2、中断优先级:、中断优先级:外中断:中断源来自处理机和内存外部,包括外中断:中断源来自处理机和内存外部,包括设备发出的中断、外部信号中断(设备发出的中断、外部信号中断()、定时中断、程序的端点等外中断在狭义)、定时中断、程序的端点等外中断在狭义上称为中断上称为中断内中

31、断:处理机和内存内部产生的中断(陷入内中断:处理机和内存内部产生的中断(陷入异常)。非法地址、算数溢出、校验错、数据异常)。非法地址、算数溢出、校验错、数据格式错等。一般称陷入或异常。格式错等。一般称陷入或异常。中断和陷入都是硬中断。中断和陷入都是硬中断。第41页,共77页,编辑于2022年,星期三3、软中断:通信进程之间用来模拟硬中断的一种信号、软中断:通信进程之间用来模拟硬中断的一种信号通信方式。通信方式。软中断和硬中断的相同点:软中断和硬中断的相同点:中断源发出中断请求或软中断信号后,或接受中断源发出中断请求或软中断信号后,或接受进程在适当时机自动进行中断处理或完成软中断信号进程在适当时

32、机自动进行中断处理或完成软中断信号所对应的功能。所对应的功能。第42页,共77页,编辑于2022年,星期三4、中断处理过程、中断处理过程关中断关中断保存被中断现场保存被中断现场分析中断原因分析中断原因转中断处理子程序转中断处理子程序执行中断处理子程序执行中断处理子程序恢复现场恢复现场开中断开中断返回中断点返回中断点第43页,共77页,编辑于2022年,星期三5、中断方式的实现、中断方式的实现 在中断方式下,中央处理器与在中断方式下,中央处理器与I/O设备之间数据设备之间数据的传输,大致步骤如下:的传输,大致步骤如下:在某个进程需要数据时,发出指令启动输入输出在某个进程需要数据时,发出指令启动输

33、入输出设备准备数据。同时该指令通知输入输出设备控制状态设备准备数据。同时该指令通知输入输出设备控制状态寄存器中的中断允许位置位,以便在需要时,中断程序寄存器中的中断允许位置位,以便在需要时,中断程序可以被调用执行。可以被调用执行。在进程发出指令启动设备之后,该进程放弃处在进程发出指令启动设备之后,该进程放弃处理机,等待相关理机,等待相关I/O操作完成。此时,进程调度程序会操作完成。此时,进程调度程序会调度其他就绪进程使用处理机。另一种方式是该进程继调度其他就绪进程使用处理机。另一种方式是该进程继续运用(如果能够运行的话),直到续运用(如果能够运行的话),直到I/O中断信号来临。中断信号来临。第

34、44页,共77页,编辑于2022年,星期三 当当I/O操作完成时,输入输出设备控制器操作完成时,输入输出设备控制器通过中断请求线向处理机发出中断信号。处理通过中断请求线向处理机发出中断信号。处理机收到中断信号之后,转向预先设计好的中断机收到中断信号之后,转向预先设计好的中断处理程序,对数据传送工作进行相应的处理。处理程序,对数据传送工作进行相应的处理。得到了数据的进程,转入就绪状态。在得到了数据的进程,转入就绪状态。在随后的某个时刻,进程调度程序会选中该进程随后的某个时刻,进程调度程序会选中该进程继续工作继续工作第45页,共77页,编辑于2022年,星期三6、中断方式的优缺点、中断方式的优缺点

35、 中断方式使处理器的利用率提高,且能支中断方式使处理器的利用率提高,且能支持多道程序和持多道程序和I/O设备的并行操作。设备的并行操作。中断频率过高,耗去大量的中断频率过高,耗去大量的CPU处理时间。处理时间。中断频率过高,中断频率过高,CPU无法响应中断会丢失无法响应中断会丢失数据。数据。第46页,共77页,编辑于2022年,星期三六、六、设备驱动程序设备驱动程序设备驱动程序设备驱动程序 驱动物理设备和控制器或控制器等直接驱动物理设备和控制器或控制器等直接进行操作的子程序的集合(它是进行操作的子程序的集合(它是I/O进程与设备控制进程与设备控制器之间的通信程序)。负责设置与相应设备有关的寄存

36、器之间的通信程序)。负责设置与相应设备有关的寄存器的值,启动设备进行操作,指定操作的类型和器的值,启动设备进行操作,指定操作的类型和数据流向等(接收由上层软件发来的抽象要求,如数据流向等(接收由上层软件发来的抽象要求,如Read或或Write命令。再把它转换为具体要求后,发送给设备控命令。再把它转换为具体要求后,发送给设备控制器,启动设备去执行。此外,它也将由设备控制器发制器,启动设备去执行。此外,它也将由设备控制器发来的信号传送给上层软件)。来的信号传送给上层软件)。第47页,共77页,编辑于2022年,星期三设备驱动程序功能:设备驱动程序功能:将接收到的抽象要求转换为具体要求。将接收到的抽

37、象要求转换为具体要求。检查用户检查用户I/O请求的合法性,了解请求的合法性,了解I/O设备的状态,设备的状态,传递有关参数,设置设备的工作方式。传递有关参数,设置设备的工作方式。发出发出I/O命令,启动分配到的命令,启动分配到的I/O设备,完成指定的设备,完成指定的I/O操作。操作。及时响应由控制器或通道发来的中断请求,并根据及时响应由控制器或通道发来的中断请求,并根据其中断类型(正常、异常结束的中断或其他类型中断)调用其中断类型(正常、异常结束的中断或其他类型中断)调用相应的中断处理程序进行处理。相应的中断处理程序进行处理。对于设置有通道的计算机系统,驱动程序还应能对于设置有通道的计算机系统

38、,驱动程序还应能够根据用户的够根据用户的I/O请求,自动地构成通道程序。请求,自动地构成通道程序。第48页,共77页,编辑于2022年,星期三设备驱动程序特点:设备驱动程序特点:驱动程序主要是在请求驱动程序主要是在请求I/O的进程与设备控的进程与设备控制器之间的一个通信程序。制器之间的一个通信程序。驱动程序与驱动程序与I/O设备的特性紧密相关。设备的特性紧密相关。驱动程序与驱动程序与I/O控制方式紧密相关控制方式紧密相关。驱动程序与硬件紧密相关驱动程序与硬件紧密相关,很多驱动程序其,很多驱动程序其基本部分已经固化。基本部分已经固化。DST(设备开关表)(设备开关表)第49页,共77页,编辑于2

39、022年,星期三用户进程用户进程文件系统文件系统设备驱动程序设备驱动程序设备控制器设备控制器设备本身设备本身用户进程请求设备服务的流程用户进程请求设备服务的流程驱动程序所处地位驱动程序所处地位第50页,共77页,编辑于2022年,星期三设备驱动程序主要功能:设备驱动程序主要功能:、对设备的初始化;、对设备的初始化;、使设备投入运行和退出服务;、使设备投入运行和退出服务;、从设备接收数据并将它们送回内核;、从设备接收数据并将它们送回内核;、将数据从内核送到设备;、将数据从内核送到设备;、检测和处理设备出现的错误。、检测和处理设备出现的错误。第51页,共77页,编辑于2022年,星期三设备驱动程序

40、是一组相关函数的集合。包设备驱动程序是一组相关函数的集合。包括设备服务子程序和中断处理子程序。括设备服务子程序和中断处理子程序。1、设备服务子程序:与设备无关的代码,每个处理、设备服务子程序:与设备无关的代码,每个处理程序只处理一种设备,从与设备无关的软件中接受抽程序只处理一种设备,从与设备无关的软件中接受抽象命令并执行。象命令并执行。2、中断处理子程序:中断服务。、中断处理子程序:中断服务。第52页,共77页,编辑于2022年,星期三七、七、与设备无关的与设备无关的I/O软件软件基本任务是:实现所有设备都需要的输入基本任务是:实现所有设备都需要的输入/输出功能,输出功能,并且向用户级软件提供

41、一个统一的接口。并且向用户级软件提供一个统一的接口。与设备无关的软件有必要向较高层软件屏蔽各种与设备无关的软件有必要向较高层软件屏蔽各种I/O设备空间大小、处理速度和传输速率各不相同的事实,设备空间大小、处理速度和传输速率各不相同的事实,而向上层提供大小统一的逻辑块尺寸。这样,较高层的而向上层提供大小统一的逻辑块尺寸。这样,较高层的软件只与抽象设备打交道时,不考虑物理设备空间和数软件只与抽象设备打交道时,不考虑物理设备空间和数据块大小而使用等长的逻辑块据块大小而使用等长的逻辑块 缓冲技术是设备独立软件应提供的另一个目的缓冲技术是设备独立软件应提供的另一个目的 出错处理一般来说是由设备驱动程序实

42、现的出错处理一般来说是由设备驱动程序实现的第53页,共77页,编辑于2022年,星期三对设备程序的统一接口对设备程序的统一接口设备命名设备命名设备保护设备保护提供一个独立于设备的逻辑块(数据块大小)提供一个独立于设备的逻辑块(数据块大小)缓冲缓冲块设备的存储分配块设备的存储分配分配和释放独占设备分配和释放独占设备错误报告错误报告设备无关软件功能设备无关软件功能第54页,共77页,编辑于2022年,星期三 大部分大部分I/OI/O软件包含在操作系统中,但是在用户程软件包含在操作系统中,但是在用户程序中仍有一小部分是与序中仍有一小部分是与I/OI/O过程连接在一起的。过程连接在一起的。通常的系统调

43、用,包括通常的系统调用,包括I/OI/O系统调用,由库过程系统调用,由库过程实现。实现。并非所有的用户层并非所有的用户层I/OI/O软件都是由库过程组成的。软件都是由库过程组成的。Spooling Spooling系统则是另一种重要的处理方法。系统则是另一种重要的处理方法。第55页,共77页,编辑于2022年,星期三八、设备分配八、设备分配1、设备分配用数据结构、设备分配用数据结构()设备控制表()()设备控制表()反映设备的特性、设备和控制器的连接情况。反映设备的特性、设备和控制器的连接情况。包括设备标识、使用状态和等待使用该设备的进程队列等。包括设备标识、使用状态和等待使用该设备的进程队列

44、等。每个设备必须有一个。每个设备必须有一个。在系统生成时或在该设备和系统连接时创建、在系统生成时或在该设备和系统连接时创建、表中内容根据系统执行情况而被动地修改。表中内容根据系统执行情况而被动地修改。内容:设备标识符、设备类型、设备地址或设备号、设备内容:设备标识符、设备类型、设备地址或设备号、设备状态、等待队列指针、控制器指针。状态、等待队列指针、控制器指针。第56页,共77页,编辑于2022年,星期三(2)系统设备表()系统设备表()整个系统中只有一张,记录已被连接到系统中的所有物理整个系统中只有一张,记录已被连接到系统中的所有物理设备的情况,并为每个物理设备设一表项目设备的情况,并为每个

45、物理设备设一表项目内容:内容:指针:指向有关设备的设备控制表指针:指向有关设备的设备控制表正在使用设备的进程标识正在使用设备的进程标识设备类型和设备标识符设备类型和设备标识符第57页,共77页,编辑于2022年,星期三(3)控制器表()控制器表()反映控制器的使用状态以及和通道的连接,每个控反映控制器的使用状态以及和通道的连接,每个控制器一张表制器一张表(4)通道控制器表()通道控制器表()包括通道标识符、通道忙闲标识、等待获得该通道的包括通道标识符、通道忙闲标识、等待获得该通道的进程等待队列的队首指针与对尾指针等。每个通到一张。进程等待队列的队首指针与对尾指针等。每个通到一张。只在通道控制方

46、式中存在只在通道控制方式中存在注意注意:一个进程只有获得通道、控制器、所需设备之后才一个进程只有获得通道、控制器、所需设备之后才具备具备I/O操作的物理条件。操作的物理条件。第58页,共77页,编辑于2022年,星期三设备类型设备类型设备标识设备标识设备忙设备忙/闲标记闲标记COCT指针指针设备等待队列首设备等待队列首设备等待队列尾设备等待队列尾驱动程序地址驱动程序地址控制器标识控制器标识控制忙控制忙/闲标记闲标记CHCT指针指针控制器等待队列首控制器等待队列首控制器等待队列尾控制器等待队列尾 通道标识通道标识通道忙通道忙/闲标记闲标记通道等待队列首通道等待队列首通道等待队列尾通道等待队列尾

47、表目表目1 表目表目i 设备类型设备类型设备标识设备标识获得设备的进程获得设备的进程DCT指针指针系统设备表系统设备表STDCOCT CHCT DCT 设备分配采用的数据结构图设备分配采用的数据结构图第59页,共77页,编辑于2022年,星期三注意注意:一个进程只有获得通道、控制器、所需设一个进程只有获得通道、控制器、所需设备之后才具备备之后才具备I/O操作的物理条件。操作的物理条件。第60页,共77页,编辑于2022年,星期三l由通道、设备控制器和由通道、设备控制器和设备三级组成。由通道、设备设备三级组成。由通道、设备控制器和设备三级组成。控制器和设备三级组成。I/O操作要经过三级控制,第一

48、级操作要经过三级控制,第一级由由CPU执行执行I/O指令,启动或指令,启动或停止通道运行,查询通道状态;停止通道运行,查询通道状态;第二级是在通道接收第二级是在通道接收CPU的的I/O指令后,由通道执行为其指令后,由通道执行为其准备的通道程序,向设备控制准备的通道程序,向设备控制器发命令;第三级由设备控制器发命令;第三级由设备控制器根据通道发出的命令控制设器根据通道发出的命令控制设备完成备完成I/O操作。操作。现代计算机现代计算机I/O系统的结构系统的结构l因为通道、设备控制器都是因为通道、设备控制器都是独立的功能部件,它们可以独立的功能部件,它们可以并行操作,所以可以构成并行操作,所以可以构

49、成I/O系统多通路情况。系统多通路情况。第61页,共77页,编辑于2022年,星期三2、设备分配原则、设备分配原则发挥设备的使用效率,避免由于不合理的分配方发挥设备的使用效率,避免由于不合理的分配方法造成进程死锁;隔离用户程序和具体物理设备。法造成进程死锁;隔离用户程序和具体物理设备。独占设备。应采用独占分配策略,即在把设备独占设备。应采用独占分配策略,即在把设备分配给一个用户进程后,只有等该用户进程使用完该分配给一个用户进程后,只有等该用户进程使用完该设备,系统回收该设备后,才能把该设备分配给其他设备,系统回收该设备后,才能把该设备分配给其他进程使用。这种分配策略的缺点是设备得不到有效的进程

50、使用。这种分配策略的缺点是设备得不到有效的利用,可能发生死锁利用,可能发生死锁第62页,共77页,编辑于2022年,星期三共享设备。对该类设备应注意对各个进程访共享设备。对该类设备应注意对各个进程访问设备的先后次序进行合理的调度。问设备的先后次序进行合理的调度。虚拟设备。因为虚拟设备已属可共享设备,因虚拟设备。因为虚拟设备已属可共享设备,因而也可将它分配给多个进程使用,并可对这些进而也可将它分配给多个进程使用,并可对这些进程访问该设备的先后次序进行控制。程访问该设备的先后次序进行控制。第63页,共77页,编辑于2022年,星期三3、设备分配分类:、设备分配分类:静态分配:用户作业开始执行前,有

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁