收藏 分销(赏)

设备管理方法与信息化课程.pptx

上传人:人****来 文档编号:9371421 上传时间:2025-03-23 格式:PPTX 页数:173 大小:1.26MB
下载 相关 举报
设备管理方法与信息化课程.pptx_第1页
第1页 / 共173页
设备管理方法与信息化课程.pptx_第2页
第2页 / 共173页
点击查看更多>>
资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第五章 设 备 管 理,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第五章 设 备 管 理,第五章 设备管理,5.1 引言,5.2 操作系统与中止处理,5.3 操作系统与时钟系统,5.4 操作系统对I/O操作控制,5.5 设备管理数据结构,5.6 磁盘调度,5.7 UNIX系统V设备管理,5.8 设备分配,1,设备管理方法与信息化课程,第1页,第五章 设备管理,5.1 引言,设备管理,是指计算机系统中,除中央处理器、主存放器以外设备管理,是操作系统主要功效之一。,通常把这些设备及其接口线路、控制部件和管理软件统称为,I/O系统,。,2,设备管理方法与信息化课程,第2页,在I/O系统中,普遍地使用中断、通道、缓冲区等各种技术,使主机和外设并行工作,改善了设备使用效率。,但是,在其次却给用户带来困难。用户想使用一台外部设备,除了需掌握相关 I/O部分原理之外,还要求对接口、控制器以及设备物理特征都要有一定了解。,为了使用户摆脱这些限制,操作系统负担了这项任务,凡是有关外设驱动、控制、分配等技术问题都统一由设备管理程序负责。,3,设备管理方法与信息化课程,第3页,5.1.1 设备概念和分类,1.设备概念,它既指进行实际输入输出操作,物理设备,,也指控制这些设备并进行I/O操作,支持设备,和,支持部件,,也指为提升设备利用率,采取某种 I/O技术形成,逻辑设备,和,虚拟设备,。,所以能够说,,输入输出设备可指计算机系统所能控制一切控制对象或者与控制对象相联络媒体,。,4,设备管理方法与信息化课程,第4页,2.设备分类,按照功效分类:,能够分为输入设备、输出设备、存放设备、供电设备、网络联网设备等。,从设备数据组织方式分类:,能够分为块设备(blockdevice)和字符设备(characterdevice)。,块设备,以数据块为单位组织和传送数据,。它将数据存放在定长块中,每个数据块都有自己地址,块大小与设备和详细操作系统相关,普通在5124096字节之间。块设备基本特征是,能够单独地读写每一个数据块,,所读写块与其它数据块无关。,字符设备,以字符为单位组织和传送数据,。它传送或接收一连串字符,数据组织不考虑块结构,也不能单独寻址。,5,设备管理方法与信息化课程,第5页,从设备管理模式分类,,能够分为,物理设备,和,逻辑设备,。,物理设备,指计算机系统硬件配置实际设备。这些设备在操作系统内含有一个惟一符号名称,系统能够按照该名称对对应设备进行物理操作。,逻辑设备,是指一个在逻辑意义上存在设备,在未加以定义前,它不代表任何硬件设备和实际设备。逻辑设备是系统提供,它也是独立于物理设备而进行输入输出操作一个“虚拟设备”。,6,设备管理方法与信息化课程,第6页,从设备资源属性分类,,能够分为,独占设备,、,共享设备,和,虚拟设备,。,独占设备,在用户作业或者进程运行期间为该用户所独享,只有等它用完,才能让别用户和进程使用;,共享设备,是指能被多个用户或进程,交替共用,设备,宏观上似乎多个用户同时在使用,如磁盘等随机存放设备。,虚拟设备,含有将一个物理设备模拟成另一个设备能力。用户进行输入输出所使用设备并不是他所指定设备,系统用另一个设备代替了用户指定设备。,7,设备管理方法与信息化课程,第7页,SPOOLING技术,系统采取某种 I/O技术(如 SPOOLING),将某个独占设备改进为多用户共享设备,以提升系统运行效率和资源利用率。,伴随SPOOLING技术引入,I/O 设备不再被看做仅仅是一个孤立物理设备,而且把它们与文件系统联络起来,看做是一个流式文件(数据流I/O),建立了,设备文件,概念,采取了直接I/O端口控制语句和文件操作语句来进行I/O设备操作,使I/O设备操作愈加灵活。,8,设备管理方法与信息化课程,第8页,5.1.2 I/O设备控制与驱动,I/O 设备控制和驱动技术包含了,硬件控制驱动技术,和,驱动软件,。,前者是 I/O 设备厂商设计建立与设备亲密相关技术,这些技术依据不一样设备依赖性很大。,后者包括系统全部I/O 处理软件,经过它们完成整个 I/O 操作。,9,设备管理方法与信息化课程,第9页,操作系统中I/O驱动(处理)软件普通分为几个层次,如,中止处理程序,、,设备驱动程序,、,操作系统 I/O原语和用户级软件,。,中止处理程序,位于最底层,它作为系统和I/O操作激励,响应来自系统内部和外部 I/O请求。,设备驱动程序,处理一个设备类型或者一类亲密相关设备,程序代码依赖于设备操作,其任务是接收来自与设备无关上层软件抽象请求,确保操作详细实施。,操作系统I/O原语,是系统和用户进程请求 I/O操作抽象高级操作,它们不针对某个详细设备,而在 I/O处理过程中由设备控制表和设备驱动程序转接到物理设备。,用户级软件,是用户程序中负责处理 I/O 操作程序部分,经编译后产生对I/O高级处理,操作再逐层下交。,10,设备管理方法与信息化课程,第10页,5.1.3 设备管理设计要求和任务,1.设计要求,第一,,为用户提供方便、统一设备使用界面;,第二,,提升外部设备利用率,尽可能提升并行程度。,第三,,用户程序应独立于设备,即实现程序与设备无关性,当物理设备发生意外或有更改时,用户程序无须修改,就可使用系统分配其它设备,11,设备管理方法与信息化课程,第11页,2.设备管理任务,为了到达上述目标,管理功效通常包含,设备配置和资源分配,、,设备控制和驱动,、,系统与设备之间缓冲协调,、,设备调度与分配,等。,(1)设备配置和资源分配,是针对 I/O 设备本身。因为系统要配置各种 I/O 设备和部件,它们都要使用一定系统资源,包含I/O通道、I/O地址、I/O端口、存放器地址、中止请求号及 DMA 通道等,它们共享在硬件和软件上可能会产生冲突,必须由操作系统对 I/O 设备进行正确配置和分配。,12,设备管理方法与信息化课程,第12页,(2)设备控制和驱动,主要是按照 I/O 控制方式,对不一样设备完成对应 I/O 中止、设备控制器操作、读写操作等物理过程。针对不一样设备请求,经过设备处理程序或设备驱动程序完成对设备直接控制。,(3)系统与设备间协调,主要是速度上协调,通常要处理快速处理器与慢速I/O 设备之间操作匹配问题,在操作系统中,采取缓冲区方式,来缓解这个矛盾,设备管理要实现这些缓冲区建立、分配、释放与回收。,(4)设备调度与分配,是针对两种不一样情况:,对等候设备和I/O 操作进程,进行调度;,对,多个进程争用设备,进行分配。,13,设备管理方法与信息化课程,第13页,UNIX设备管理,在UNIX操作系统中,采取比较统一方法对外设进行管理。,首先将各种外部设备分成特征迥然不一样两大类,即,块设备,和,字符设备,;,接着又把与设备物理特征亲密相关部分与设备管理基本方式和使用基本技术分离开来。,系统为各个设备设置单独数据结构,然后用基本相同方式和技术对同类设备I/O操作进行处理。,14,设备管理方法与信息化课程,第14页,5.2 操作系统与中止处理,中止,是参加计算机系统设备管理一个主要原因和主要结构。它是操作系统中与硬件最靠近一部分,是操作系统和硬件界面,是由软、硬件结合形成一套中止机构实施。,15,设备管理方法与信息化课程,第15页,5.2.1 中止基本概念,当一个正在运行过程被另外一个过程打断,停顿运行过程而转向执行另一过程活动称为,中止,。,中止过程是打断当前正在进行工作,转而处理更紧急事务,处理完成后再继续原来工作。,计算机系统中止既来自系统内部,也来自系统外部,分别称为,内(部)中止,和,外(部)中止,。,内部中止是计算机系统本身在工作过程中出现各种需要紧急处理事务,如犯错中止、程序中止等,也称为,软件中止,。内部中止多采取程序陷入(trap)方式。,外部中止主要是来自 I/O 设备中止,如设备请求中止、打印中止、掉电中止、数据传输中止等,大部分是,硬件中止,。,16,设备管理方法与信息化课程,第16页,17,设备管理方法与信息化课程,第17页,5.2.2 中止类型,(1)I/O中止,这是来自通道或者各种外部设备中止,用于反应通道或设备工作情况。比如,打印机打印结束、磁盘传输完成、利用终端进行 I/O 操作等,也包含外设在执行 I/O 操作时犯错而引发中止。,18,设备管理方法与信息化课程,第18页,(2)时钟中止,一类特殊 I/O 完成中止,它不一定与详细 I/O 相连,既可由硬件引发,也可由软件引发。,经由硬件定时芯片产生规则时钟间隔(时间片)或者由软件计数产生时间间隔,每一次中止都意味着一段固定时间已到,时钟中止需要定时、复位和更新。,19,设备管理方法与信息化课程,第19页,(3)系统请求中止,向操作系统提出请求服务,是由系统指令产生。系统调用指令是这一类中止特例。,各种 I/O 指令,如 TRAP、IOT 等均可产生系统请求。该中止把命令传送到操作系统,以确定一个进程需要什么样服务,操作系统对请求做出分析并提供所需要服务。,20,设备管理方法与信息化课程,第20页,(4)报警中止,普通由计算机系统外部条件引发,如计算机中止键、开启键、求援键等,以及由外部通信信号和网络传输信号抵达产生中止。,(5)程序错误中止,因编程错误、逻辑条件判断或分支错误、运行参数错误而产生中止。它通常会经过用户终端或显示器给予提醒。这类中止类型包含:除数为零、浮点运算溢出、存放器使用无效、地址越界、使用特权或非法指令、越权访问、错误格式化数据等,21,设备管理方法与信息化课程,第21页,(6)机器错误中止,对应于系统硬件错误中止。如存放器错误、I/O 设备错误、显示器错误、接口通道错误等。普通操作系统只汇报这些错误,并终止操作。,22,设备管理方法与信息化课程,第22页,UNIX,中止机构,处理一切外部设备 I/O 中止。,陷入机构,处理在系统内发生需要马上干预事件,包含使用指令陷入(自陷)和因为软、硬件故障或错误造成陷入。,系统调用,是UNIX操作系统面向在用户态下运行程序界面,在C语言和汇编语言级上都允许用户态程序使用系统调用。,23,设备管理方法与信息化课程,第23页,(补充)系统调用命令,操作系统里预先编制了很多不一样功效子程序。用户能够在自己程序里调用这些子程序,请求操作系统提供服务。这些子程序称为“系统功效调用”程序。,系统调用是操作系统程序模块一部分,它应该在管态下执行。不能直接被用户程序调用,用户程序只有经过系统提供,“访管”指令,,才能实现由目态转为管态、进而调用这些功效程序目标。,24,设备管理方法与信息化课程,第24页,访管指令,访管指令,:是一条非特权指令,功效是执行它就会产生一个软中止,促使处理器由目态转换到管态,进入操作系统,并处理中止。,利用访管指令这种功效,编译程序就把源程序中系统调用都转换成访管指令,把详细功效转换成不一样编码。这么,就能使处理机执行访管指令由目态进入管态,再依据编码,转到对应功效处理程序去执行。,25,设备管理方法与信息化课程,第25页,例:在c语言中,write(fd,buf,count)系统调用命令。,C编译程序在编译C源程序时,总把系统调用命令翻译成能够引发软中止访管指令trap.,该指令长两个字节,第一个字节为,操作码,,第二个字节为系统调用命令,功效编码,。,Trap,功效码,Fd,Buf,count,Trap16进制操作码89;,Write功效码04;,Write机器指令:,二进制1000100100000100;,八进制104404,26,设备管理方法与信息化课程,第26页,Trap指令中功效码是用来区分不一样功效调用。,在UNIX操作系统中,有一张“,系统调用程序入口地址表,”。该表表目从0开始、以系统调用命令所对应功效码为次序排列。,自带参数个数,该系统调用处理程序入口地址,表目内容,27,设备管理方法与信息化课程,第27页,系统调用处理过程,语言编译程序,产生中止,查看入口表,Write处理程序,Write入口,3,write(fd,buf,count),104404,(trap 04),C语言源程序,目标程序,Trap中止处理程序,3,4,5,28,设备管理方法与信息化课程,第28页,系统调用与普通过程调用区分,(1),普经过程调用,调用者与被调用者都运行在相同cpu状态。但发生系统调用时,发出调用命令调用者运行在目态,而被调用者运行在管态。,(2),普经过程调用,是直接经过转移指令转向被调用程序;但发生系统调用时,只能经过软中止指令提供一个统一入口,由目态进入管态,经分析后,才转向对应命令处理程序。,(3),普经过程调用,在被调用者执行完后,就径直返回断点继续执行;但系统调用可能会招致进程状态改变,从而引发系统重新分配处理机。所以,系统调用结束后,不一定是返回调用者断点处继续执行。,29,设备管理方法与信息化课程,第29页,1与进程管理和控制相关系统调用,属于这一类有21种。,进程创建和消亡:fork、exit。进程间同时:wait、pause等。,2,与文件系统相关系统调用,属于这一类有28种。,文件生成和取消:creat、unlink。文件打开、关闭及控制:open、close、fcntl。,UNIX SVR4 提供了 53 种系统调用,它们大致可分为 3 类。,30,设备管理方法与信息化课程,第30页,3,其它系统调用,属于这一类有4种。,设置和取得系统或进程时间:stime、time、times。,在指定时间后发告警信号:alarm,31,设备管理方法与信息化课程,第31页,5.2.3 中止响应和实现过程,中止是在,中止控制机构,管理下实现。设备提出中止请求信号由中止控制机构响应,然后给予实施。,中止控制机构,主要功效,以下。,统计各中止源中止请求信号,方便于分别处理。,在CPU硬件中,每当执行完一条指令,或开始取一条指令前,检测有没有中止请求,若有则硬件自动转入中止处理周期。,32,设备管理方法与信息化课程,第32页,系统对不一样中止类型要求了不一样优先级,当同时存在多个中止请求时,选优先级最高给予响应。,假如两个中止优先级相等,将按照一定算法,如先来先服务(FIFO)等进行处理。,优先级机制可能使中止服务形成嵌套,即优先级低中止处理程序执行会被优先级高中止打断,从而又调用了另一个处理程序。在有操作系统(如实时系统)中是不允许中止嵌套。,33,设备管理方法与信息化课程,第33页,响应中止后,依据中止源找出对应中止处理程序入口地址,方便转去执行。,怎样转入对应中止处理程序,当前惯用结构是,中止矢量,(interruptvector)结构。,中止矢量结构,是一类,地址指针集合,,在主存中开辟了一个特殊存放区域来存放这种结构,其中某一个或者几个存放单元存放一个指向中止处理程序地址,它被称为中止矢量。一个中止发生,总能够在固定位置找到这个指针,再依据指针所指位置(即指针内容)取得对应处理程序或者驱动程序入口地址。,34,设备管理方法与信息化课程,第34页,保护现场,,方便中止返回时能够在断点处继续执行。,中止现场,主要指:对应中止时,指令计数器PC,内容(即下一条指令地址,也称为断点);,进程运行参数和条件,;,现运行程序状态存放器 PS,内容以及,累加器,或,通用存放器,内容和标识,有计算机也把 PC 和PS 合起来统称为,程序状态字 PSW,。,现场保护是把它们保留到主存中特殊区域(普通是堆栈)中,并确保中止过程中原有现场不做任何改变。,35,设备管理方法与信息化课程,第35页,当正在进行某一中止处理时,或在执行程序一些阶段,有时不允许响应一些中止,所以应该在程序控制下,禁止响应一些中止,即,屏蔽这些中止,。当不需要屏蔽时,又能及时在程序控制下撤消屏蔽。,在实时系统中中止屏蔽必须小型化,而且严格限制中止处理程序执行时间。,36,设备管理方法与信息化课程,第36页,5.2.4 中止处理程序和驱动程序,中止处理程序也叫做,中止服务程序,,它是与设备硬件亲密相关处理程序,普通情况下,处理设备各个 I/O 操作细节是采取汇编语言和机器语言编写。,为了将这种与设备相关程序对用户透明,使用户无须去了解每一个设备操作详细细节,通常采取统一简单方式,如上述中止矢量方式来进行。,37,设备管理方法与信息化课程,第37页,在微型机和个人计算机中,经常把,I/O 中止处理程序,以,设备驱动程序,方式作为操作系统设备管理和控制依据,用户采取一个,通用界面和操作,来使用这些设备。,比如,UNIX和 DOS 操作系统中都把设备作为一个,虚拟文件,对待,每个设备有一个像文件名那样名字,并对它像一个文件那样存取。,设备驱动程序,被作为一个特殊文件存放在系统辅助存放设备(如磁盘)中,在需要时由操作系统装入使用。,38,设备管理方法与信息化课程,第38页,在操作系统设计时,考虑了全部可能与计算机系统配置设备,全部设备驱动程序随操作系统软件一起提供给用户,用户在安装操作系统时,依据当初配置 I/O 设备情况,调入对应设备驱动程序文件,将它们设置并嵌入操作系统中,做好系统运行操作环境准备。假如操作系统设备配置有改变,则需要重新引导或者重新配置安装操作系统。,39,设备管理方法与信息化课程,第39页,在UNIX系统中,将设备分成两类:,块设备,和,字符设备,。关键与驱动程序接口是由,块设备开关表,和,字符设备开关表,描述.,40,设备管理方法与信息化课程,第40页,5.2.5 中止返回与恢复,当中止请求操作完成时,系统必须返回被中止程序。,此时,必须将中止开始保留下来原来程序状态、存放器内容和标识、进程运行参数和条件等一一恢复,复原到中止未出现时状态,称为,现场恢复,。,41,设备管理方法与信息化课程,第41页,UNIX 操作系统中,,中止处理都是在关键态下进行,。,假如,中止前处理机状态为关键态,,则在执行完设备处理子程序后就恢复现场,然后用中止返回指令回到中止前状态,继续执行被中止操作系统程序。,假如,中止前为用户态,,则在执行完设备处理子程序后,先要检验重新调度标志runrun是否设置。如若已经设置,则调用进程切换调度程序进行进程调度,中止时被保护现场就无须马上恢复。假如runrun标志没有设置,则恢复保护在堆栈中现场,继续在用户态下执行被中止程序。,42,设备管理方法与信息化课程,第42页,5.4 操作系统对I/O操作控制,外围设备与内存或CPU间惯用数据传送控制方式:,程序循环测试方式,中止控制方式,直接存放器存取(DMA)方式,通道方式,43,设备管理方法与信息化课程,第43页,1.程序I/O方式,等候,发Start指令,Test测试,设备标志触发器为“Done”?,CPU,执行下一条指令,开始数据传送,否,是,外围设备,接收到Start指令,作接收或发送数据准备,准备好?,标志触发器置为“Done”,等候CPU来下一条指令,是,否,44,设备管理方法与信息化课程,第44页,程序I/O方式,在程序I/O方式中,因为CPU高速性和I/O设备低速性,致使CPU绝大部分时间都处于等候I/O设备完成数据I/O循环测试中,造成对CPU极大浪费。,在该方式中,CPU之所以要不停地测试I/O设备状态,就是因为在CPU中无中止机构,使I/O设备无法向CPU汇报它已完成了一个字符输入操作。,45,设备管理方法与信息化课程,第45页,2.中止驱动I/O控制方式,I/O操作由程序发起,在操作完成时(如数据可读或已经写入)由外设向CPU发出中止,通知该程序。数据每次读写经过CPU。,硬件要求:,要在CPU与控制器之间连有,中止请求线路,;要在设备控制器,状态存放器,中增设“,中止允许位,”,46,设备管理方法与信息化课程,第46页,数据传输步骤,经过CPU发出start指令。开启设备,将中止允许位加以设置,发出I/O请求进程由运行状态改变为阻塞状态,等候输入/输出完成。,输入/输出完成时,设备控制器经过中止请求线向CPU发出中止请求信号。CPU响应该中止后,就转向中止处理程序,对数据传输工作进行对应处理。,输入/输出请求全部完成后,进程被解除阻塞,改变状态为“就绪态”,方便进入它下一步工作。,47,设备管理方法与信息化课程,第47页,中止控制方式处理过程,接收到CPU发来Start指令,缓冲存放器满?,设备,控制器发中止信号,是,准备数据并将其置入缓冲存放器,否,CPU,调度程序调度其它进程,收到中止信号了吗?,中止处理,被中止进程执行,是,否,向设备发Start指令,,置中止允许位为“1”,其它进程执行,48,设备管理方法与信息化课程,第48页,在I/O设备输入每个数据过程中,因为无须CPU干预,因而可使CPU与I/O设备并行工作。仅当输完一个数据时,才需CPU花费极短时间去做些中止处理。可见,这么可使CPU和I/O设备都处于忙碌状态,从而提升了整个系统资源利用率及吞吐量。,比如,从终端输入一个字符时间约为100 ms,而将字符送入终端缓冲区时间小于 0.1 ms。若采取程序I/O方式,CPU约有 99.9 ms时间处于忙等候中。采取中止驱动方式后,CPU可利用这 99.9 ms时间去做其它事情,而仅用 0.1 ms时间来处理由控制器发来中止请求。可见,中止驱动方式能够成百倍地提升CPU利用率。,49,设备管理方法与信息化课程,第49页,3.直接存放器访问DMA I/O控制方式,1)DMA(Direct Memory Access)控制方式引入,该方式特点是:,数据传输基本单位是数据块,即在CPU与I/O设备之间,每次传送最少一个数据块;,所传送数据是从设备直接送入内存,或者相反;,仅在传送一个或多个数据块开始和结束时,才需CPU干预,整块数据传送是在控制器控制下完成。可见,DMA方式较之中止驱动方式,又是成百倍地降低了CPU对I/O干预,深入提升了CPU与I/O设备并行操作程度。,50,设备管理方法与信息化课程,第50页,2).DMA控制器组成,51,设备管理方法与信息化课程,第51页,为了实现在主机与控制器之间成块数据直接交换,必须在DMA控制器中设置以下四类存放器:,(1),命令/状态存放器CR,。用于接收从CPU发来I/O命令或相关控制信息,或设备状态。,(2),内存地址存放器MAR,。在输入时,它存放把数据从设备传送到内存起始目标地址;在输出时,它存放由内存到设备内存源地址。,(3),数据存放器DR,。用于暂存从设备到内存,或从内存到设备数据。,(4),数据计数器DC,。存放此次CPU要读或写字(节)数。,52,设备管理方法与信息化课程,第52页,当进程要求输入数据时,CPU将准备存放输入数据内存起始地址、要传送字节数送入DMA控制器内存地址存放器和传送字节计数器,将中止允许位和开启位置成1,开启设备。,CPU将总线让给DMA控制器,在DMA控制器进行数据传输期间,CPU不再使用总线,而是DMA控制器取得总线控制权。,发出传输要求进程进入等候状态,执行指令被暂时挂起,进程调度其它进程占据CPU,DMA工作原理,53,设备管理方法与信息化课程,第53页,DMA控制器按照地址存放器指示,不停与内存放器进行直接数据传输,并随时修改地址存放器和字节计数器值。,输入设备不停窃取CPU工作周期,数据不停写入内存,传送完成,发出中止信号,CPU接到中止信号转入中止处理程序处理,中止处理结束,CPU返回原进程或切换到新进程,DMA工作原理,54,设备管理方法与信息化课程,第54页,DMA方式工作流程,设置MAR和DC初值,开启DMA传送命令,挪用存放器周期传送数据字,存放器地址增1字计数存放器减1,DC=0?,请求中止,在继续执行用户程序同时,准备又一次传送,55,设备管理方法与信息化课程,第55页,DMA方式与中止方式主要区分,中止方式是在数据缓冲存放器满后,发中止请求,CPU进行中止处理;,DMA方式则是在所要求传送数据块全部传送结束时要求CPU进行中止处理,大大,降低,了CPU进行,中止处理,次数,中止方式,数据传送,是,由CPU,控制完成,而DMA方式则是在,DMA控制器,控制下不经过CPU控制完成,所以防止了因速度不匹配而造成数据丢失现象。(DMA硬件比较复杂),56,设备管理方法与信息化课程,第56页,4.I/O通道控制方式,1)I/O通道控制方式引入,I/O通道方式是DMA方式发展,它可深入降低CPU干预,即把对一个数据块读(或写)为单位干预,降低为对一组数据块读(或写)及相关控制和管理为单位干预。同时,又可实现CPU、通道和I/O设备三者并行操作,从而更有效地提升整个系统资源利用率。比如,当CPU要完成一组相关读(或写)操作及相关控制时,只需向I/O通道发送一条I/O指令,以给出其所要执行通道程序首址和要访问I/O设备,通道接到该指令后,经过执行通道程序便可完成CPU指定I/O任务。,57,设备管理方法与信息化课程,第57页,5.4.1 I/O设备资源分配,计算机系统各类I/O 设备及其控制部件含有不一样连接方式和接口,需要使用和占据系统一些资源,这些资源是 I/O 设备正常工作必不可少,也是由设备所共享。,操作系统应该检测和确认哪些 I/O 设备使用哪些系统资源,怎样分配协调这些资源以防止冲突。下面介绍这些资源含义。,58,设备管理方法与信息化课程,第58页,1I/O 地址,I/O 地址是 I/O 设备或控制卡所在位置,,处理器经过这个地址找到对应 I/O 部件和设备存放器,并对它进行控制和数据传输操作。,因为很多设备共享某个 I/O 地址,这么就会产生 I/O 地址冲突。所以,需要在系统开启时进行正确 I/O 地址设置,或者在应用软件运行时进行I/O地址重新设置,59,设备管理方法与信息化课程,第59页,2I/O 中止请求,每个 I/O 设备在工作过程中都会向处理器发出各种 I/O 中止请求,比如数据就绪、数据抵达、发送结束、纸张用完、操做犯错等。,处理器接收这些 I/O 请求后将转入 I/O 中止处理程序,完成对应 I/O 处理。然而,系统拥有 I/O 中止请求号是有限,其中一些已经用于系统标准功效性中止,如时钟中止、除零中止、系统异常中止等。I/O 设备可能争用剩下中止请求,也会产生冲突。所以,这也是I/O资源分配主要问题。,60,设备管理方法与信息化课程,第60页,3DMA 数据传输通道,直接存放器访问(DMA)通道提供了I/O设备与系统间有效数据传输机制,在设备与主存放器之间进行直接数据传输,而无需处理器干预。由硬件组成DMA 通道数是有限,对争用同一个DMA通道I/O设备需要进行协调和重新配置。,61,设备管理方法与信息化课程,第61页,4I/O 缓冲区,输入输出缓冲区是为了加紧I/O 设备数据传输、协调快速处理器和慢速设备间一个有效机制。缓冲区设置要占用主存放器一定空间,各种 I/O 设备开设缓冲区大小和位置可能不一样,也可能一样,这个系统资源也是 I/O 设备争用。系统必须确保各个 I/O设备开辟缓冲区不相互冲突,并不影响主存放器使用。,62,设备管理方法与信息化课程,第62页,5.4.2 I/O 通道技术,I/O 通道是一个硬件设施,带有专用处理器、有很强 I/O 处理功效智能部件,它能够独立地完成系统处理器交付 I/O 操作任务,此时,I/O 总线直接与通道相连而不与处理器相连。,通道含有自己专门指令集,即通道指令,用于与连接到总线上 I/O 控制器通信,在设备与存放器之间传送数据。采取这种方式,系统主处理器只需进行I/O操作委托,其后全部I/O操作均由通道自己进行。通道执行来自主处理器通道程序,完成后只需向系统处理器发出中止,请求结束。可见,这种方式能够形成系统处理器与I/O设备之间并行操作。,63,设备管理方法与信息化课程,第63页,I/O 设备与系统数据交换通常采取程序查询、I/O 中止和直接存放器存取(DMA)方式,这3种控制方式也一样适合用于通道机制。,依据信息交换方式,通道能够分成3种类型:,字节多路通道,、,数据选择通道,和,成组多路通道,。,64,设备管理方法与信息化课程,第64页,通道类型,1)字节多路通道(Byte Multiplexor Channel),这是一个按字节交叉方式工作通道。它通常都含有许多非分配型子通道,其数量可从几十个到数百个,每一个子通道连接一台I/O设备,并控制该设备I/O操作。这些子通道按时间片轮转方式共享主通道。,这么,只要字节多路通道扫描每个子通道速率足够快,而连接到子通道上设备速率不是太高时,便不致于丢失信息。,65,设备管理方法与信息化课程,第65页,66,设备管理方法与信息化课程,第66页,2)数据选择通道(Block Selector Channel),字节多路通道不适于连接高速设备,这推进了按数组方式进行数据传送,数据选择通道,形成。这种通道即使能够连接多台高速设备,但因为它只含有一个分配型子通道,在一段时间内只能执行一道通道程序,控制一台设备进行数据传送,致使当某台设备占用了该通道后,便一直由它独占,即使是它无数据传送,通道被闲置,也不允许其它设备使用该通道,直至该设备传送完成释放该通道。可见,这种通道利用率很低。,67,设备管理方法与信息化课程,第67页,3)成组多路通道(Block Multiplexor Channel),数据选择通道虽有很高传输速率,但它却每次只允许一个设备传输数据。成组多路通道是将数据选择通道传输速率高和字节多路通道能使各子通道(设备)分时并行操作优点相结合而形成一个新通道。它含有多个非分配型子通道,先为一台设备执行一条通道指令,然后自动转接,为另一台设备执行一条通道指令。因而这种通道既含有很高数据传输速率,又能取得令人满意通道利用率。也正所以,才使该通道能被广泛地用于连接多台高、中速外围设备,其数据传送是按数组方式进行。,68,设备管理方法与信息化课程,第68页,5.4.3 I/O缓冲技术,提升中央处理器与外设并行程度另一项技术办法是缓冲技术。,降低了 I/O 设备对处理器中止请求次数;,简化了中止机制;,节约了系统开销;,提升了处理机与外设并行程度,69,设备管理方法与信息化课程,第69页,图 利用缓冲存放器实现缓冲,70,设备管理方法与信息化课程,第70页,5.4.3 I/O缓冲技术,缓冲技术能够采取,硬件缓冲,和,软件缓冲,两种方式。,硬件缓冲,是利用专门硬件存放器作为缓冲器。,而,软件缓冲,是借助操作系统管理,采取内存中一个或者多个区域作为缓冲区。,当前采取最多是软件缓冲,它由缓冲区和对缓冲区管理两部分组成。软件缓冲能够改变缓冲区大小和数量,但也占据了一定存放空间。,71,设备管理方法与信息化课程,第71页,5.4.4 设备驱动,为了将设备硬件复杂性与用户隔离,也为了建立一个通用I/O 接口,操作系统采取,设备驱动程序,来完成设备驱动。,设备驱动程序惯用汇编语言编写,它向上与高级 I/O 操作系统调用相对应,向下与 I/O 硬件设备相对应,完成二者间相互通信。普通每一类设备有一个对应驱动程序,能控制同一类中多台设备工作。,每个设备生产厂商和软件开发商都必须按照设备驱动程序标准结构编写独立设备驱动程序,当系统需要时,再将它安装配置到系统中。,72,设备管理方法与信息化课程,第72页,5.4.4 设备驱动,当前,设备驱动程序是作为操作系统所提供选择项,用户能够依据需要配置设备,灵活地选择、装载、卸载驱动程序,从而极大地增强了系统开放性和可扩展性。,设备驱动程序普通不由用户执行,也不能被用户进程直接执行,只能经过I/O 请求和调用方式,由系统或者I/O处理器执行。,73,设备管理方法与信息化课程,第73页,5.5 设备管理数据结构,操作系统提供了若干高级I/O系统调用,它包含了对I/O设备操作请求、响应、处理、控制、缓冲、恢复等,从而用这些抽象I/O操作把用户与复杂I/O设备操作隔离开来。,将抽象I/O 操作映射到专门设备驱动程序,由此隐藏设备操作细节,有利于编写与设备无关程序。,要完成抽象到实际映射,操作系统通常采取一个数据结构来完成,称为,设备控制表,(DCT),简称设备表。,它统计每一个抽象设备描述、对应实际设备地址和所使用设备驱动程序等参数。用户和进程对设备调用经过设备表映射到物理设备,使I/O操作与设备无关,与硬件接口和硬件地址无关。,5.5.1 设备控制表,74,设备管理方法与信息化课程,第74页,设备表,设备表有多个表项,每个表项对应一个设备;表项内容包含,设备标识符,、,设备地址,、,设备属性,、,设备状态,、,设备驱动程序地址,、,设备等候队列指针,等。图 5-4 给出了设备表一个简单示例。表中包含了若干抽象 I/O 操作系统调用,每个调用以函数指针形式映射到实际I/O处理程序,再经过对应设备驱动程序对物理设备进行操作。,75,设备管理方法与信息化课程,第75页,76,设备管理方法与信息化课程,第76页,Struct devtab,int dvid;,int dvadd;,int*dvec;,int*dvbuf;,int*dvque;,int(*dvinit)();,int(*dvopen)();,int(*dvclose)();,int(*dvread)();,int(*dvwrite)();,int(*dvseek)();,int(*dvcntl)();,int(*dvgetc)();,int(*dvputc)();,dct;,77,设备管理方法与信息化课程,第77页,设备读read抽象操作,read,(dvcrp,buf,size)/*系统调用接收3个传递来参数*/,int,dvcrp,size;/*参数为设备标识符、数据块大小和缓冲区指针,char,*buf;,struct devtab,*devptr;/*定义一个指向设备表指针*/,if,(isbaddev(dvcrp)/*确认设备标识符是否有效*/,return,(SYSERR);/*无效,系统返回犯错*/,devptr=/*有效,找到对应设备表项*/,return,(*devptr-dvread)(devptr,buf,size);,/*将参数传向设备驱动程序并返回*/,78,设备管理方法与信息化课程,第78页,5.5.2 设备开关表,针对各类设备不一样物理特征,系统为它们各自设置了一套子程序,它们包含打开、关闭和开启子程序。,系统为每类设备又设置了一数据结构,存放这些程序入口地址,该数据结构称为,设备开关,。,各类设备开关组成设备开关表。为使设备开关表与设备控制表建立联络,在设备开关表中还设置了该设备控制表指针或设备控制表在系统中编号,即设备号。,79,设备管理方法与信息化课程,第79页,5.6 磁盘调度,磁盘特点是存放容量大,存取速度快,而且能够次序或随机存取。,磁盘系统硬件可分为两大部分:,一部分是,磁盘驱动器,,它是机械部分,包含驱动电机、读写磁头和对应逻辑电路;,另一部分是,磁盘控制器,,实现与计算机逻辑接口。磁盘控制器接收来自CPU指令,命令盘驱动器执行该指令。这么,一个磁盘控制器就能够控制多个磁盘驱动器工作,80,设备管理方法与信息化课程,第80页,磁盘结构示意图,每个盘片有正反两个盘面,若干个盘片组成一个磁盘组。,每个盘面有一个读写磁头,全部读写磁头被固定在移动臂上,同时进行内、外运动。,81,设备管理方法与信息化课程,第81页,硬盘俯视图,82,设备管理方法与信息化课程,第82页,硬盘磁头臂,83,设备管理方法与信息化课程,第83页,数据组织和格式,磁盘设备可包含一或多个盘片,每片分两面,每面可分成若干条磁道(500-),各磁道之间留有必要间隙。,每条磁道上可存放相同数目标二进制位。,每条磁道又分成若
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服