




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2.5 设备管理,2.5.1 设备管理概述,外部设备:,计算机系统中除了中央处理机和主存储器外的其它设备称为外部设备。,设备管理就是对外部设备进行统一的管理,向用户提供简单而一致的方式访问各种I/O设备。,一、设备分类,按工作特点:,按资源分配方式:,按信息交换单位:,二、设备管理的任务与功能,按照设备类型和系统分配策略进行设备分配与回收,向用户提供统一的接口,实现设备驱动真正的I/O操作,缓冲区管理,实现虚拟设备管理,CPU,存储器,高速I/O设备,共享总线,低速I/O设备,设备控制器,微机I/O系统的结构,基于主存和通道的I/O系统,CPU,主存,通道,通道,通道,通道,某I/O 设备,磁 盘,磁带,通信 设备,主存,可同时进行,控制,通道与CPU共享主存 通道代替CPU完成与设备控制器的通信,1、什么是设备控制器,位于CPU与设备之间,接收CPU下达的输入、输出命令 并控制具体设备实现操作。 一个控制器可控制一个或多个I/O设备。 存在形式为各种接口卡。,设备控制器,2、设备控制器功能,接收和识别命令;数据暂存、缓冲;监测设备状态。,数据接口、控制接口、状态接口,3、设备控制器与设备的接口,4、设备控制器组成,控制器与CPU的接口单元,控制器与设备接口单元,I/O逻辑单元,2.5.2 数据传送控制方式,设备管理的主要任务就是控制设备与CPU间的数据传递,主要有以下数传控制方式:,一、程序查询方式,由程序循环查询外部设备的状态,在外设进行数据处理时CPU只能等待。,二、中断控制方式,外部设备与CPU之间传递数据通过专门的中断请求信号来进行。 I/O操作由程序发起,在操作完成时(如数据可读或已经写入)由外设向CPU发出中断,CPU完成数据的读写。,要求:专门的中断请求线、专门的中断标志位,优点:在外设进行数据处理时,CPU不必等待实现了让权等待。 缺点:CPU每次处理的数据量少(通常以字节为单位),适于数据传输率较低的设备。,进程利用中断实现输入、输出流程:,三、直接内存访问方式(DMA),引入思想:减少CPU在数据传递过程中的干预, DMA控制器完成内存与外设的成批数据交换。 优点:CPU只需干预I/O操作的开始和结束,而其中的一批数据读写无需CPU控制,适于高速设备。,由程序设置DMA控制器中的若干寄存器值(如内存始址,传送字节数),然后发起I/O操作; 数据直接在DMA控制器控制下通过总线传递到内存中; 在完成指定量的数据接收后,DMA控制器才向CPU产生中断; 通过中断处理程序唤醒等待数据的进程; 等待数据的进程经过调度处理输入的数据。,DMA过程:,不再每个字符传递后发中断,实现了块传递再中断,减少了CPU的占用时间,中断控制方式与DMA方式,CPU,总线,I/O设备,内存,中断,CPU,I/O设备,内存,DMA,中断:通知 已传输完毕,四、通道方式,通过执行通道程序并行完成一系列输入输出过程,通道:,通道是一种特殊的处理机,具有执行I/O指令的能力,通过执行通道程序来控制I/O操作。,1、通道程序有自己的指令系统,是一个相对完整的过程。CPU只需向通道发出一条指令,通道便从内存中取出本次执行的通道程序并执行。 2、通道之间可以并行执行,进一步减少了CPU对输入输出过程的干预。提高CPU与设备之间的并行性,提高资源利用率。 3、主机具有一个或多个通道,一个通道可管理一个或多个设备控制器;通道和CPU共享一个主存,特点:,通道,设备控制器,设备控制器,设备,设备,设备,通道,设备控制器,设备,设备,主存,CPU,2.5.3 缓冲技术,作用:,解决CPU与I/O设备速度匹配问题,基本思想:,在内存中开辟一定的专用区域,作为CPU和I/O设备之间进行信息交流的工作区,缓冲区,缓冲区的组织,专用缓冲区:,为某台设备专门设置的,单独使用的缓冲区,公用缓冲区:,为多台或者全部设备设置的,共享的缓冲区,按使用方式划分:,按数量划分:,单缓冲区,双缓冲区,多缓冲区 循环缓冲,缓冲池:,由多个大小相等的缓冲区连接起来构成缓冲池,1. 单缓冲区,在CPU和设备之间设置一个缓冲区,速度1,速度2,注意:,1. 单缓冲区是临界资源,读写必须互斥访问。,2. 单缓冲区只能实现匹配速度,不能实现并行操作。,2. 双缓冲区,在CPU和设备之间设置两个缓冲区,设备1,设备2,CPU,提高了CPU与设备之间的并行度,多个缓冲区循环使用,类似循环队列,next_in,next_out,CPU,设备输入,3. 循环缓冲,4. 缓冲池,可供多个对象共享的公用缓冲区组成的缓冲池,缓冲区 1,缓 冲 区,缓 冲 体,缓 冲 区 首 部,数 据,缓冲池中的缓冲区根据使用情况划分为3种队列:,inq:满输入缓冲区队列,outq:满输出缓冲区队列,emptyq:空缓冲区队列,从设备输入的数据缓冲区队列,准备向设备输出的数据缓冲区队列,缓冲池操作(四种操作),设备输入数据到缓冲池,get empty buffer; fill data in buffer; put buffer in inq;,收容输入,用户从缓冲池读入数据,get buffer from inq; calculet data in buffer; put buffer back to emptyq,提取输入,用户向数据缓冲池输出数据,get buffer from outq; Send data; put buffer in emptyq;,收容输出,设备从缓冲池中读出输出数据 并完成输出,get buffer from emptyq; fill data in buffer; put buffer outq;,提取输出,缓冲池,设备,CPU,缓冲池的组成,emptyq,inq,outq,收容输入,提取输出,提取输入,收容输出,设备,CPU,数据到达,取走数据,发送数据,取走发送,2.5.4 设备分配技术,设备分配:,按一定策略和原则为申请设备的进程分配设备, 包括对设备、设备控制器、通道的分配。,分配原则:,1、保证申请设备的进程能分配到设备。,2、保证设备分配给该进程是安全的。,一、设备分配的数据结构,1、设备控制表DCT (Device Control Table),记录设备信息及设备的控制器表,每个设备一张,可动态更改,2、系统设备表SDT (System Device Table),记录系统中所有设备情况,一个系统只有一张 每个设备在SDT中占一个表项,3、控制器表COCT (Controller Control Table),4、通道控制表CHCT (Channel Control Table),记录 I/O 控制器信息及通道控制表,记录通道信息,设备名,设备控制表,设备名,设备控制表,设备名,设备控制表,设备名,设备控制表,SDT,设备名,设备控制器,设备名,设备控制器,状态,状态,控制器名,通道控制表,状态,控制器名,通道控制表,状态,DCT,COCT,通道标识,状态,通道标识,状态,CHCT,申请,SDT,DCT,COCT,CHCT,P.149 图2.53,设备的分配过程:,二、设备分配应考虑的因素,1、设备的固有属性:独占(静态分配)、共享(动态分配),2、分配的算法:当申请设备的进程有多个、可用设备有多个时,3、设备分配的安全性:死锁,先申请的进程先满足FIFO;,按进程的优先级分配,安全分配:非请求和保持,CPU与设备串行工作,不安全分配:分配设备时应该进行安全性状态检测,4、逻辑设备与物理设备的独立性,用户使用逻辑设备,由系统控制具体的物理设备;,系统能根据用户提供的逻辑设备名找到相应的物理设备,2.5.5 虚拟设备技术(Spooling),其它,输入井,输出井,高速,高速,脱机:输入、输出是脱离主机完成的。,靠外围机的控制输入、输出设备与磁盘交换数据。,CPU只与高速磁盘(磁带)交换数据,,脱离主机进行,脱离主机进行,技术要点:,(1)多道程序并发执行,(2)一道程序模拟外围机的输入,将数据从设备输入到磁盘,(3)一道程序模拟外围机的输出,将数据从磁盘输出到设备,(4)其它程序与设备的通信和脱机方式一样:读写高速磁盘,(5)主机仍要控制外围设备“假脱机”,SPOOLing技术伪脱机技术,其它,输入井: 外围计算机,输出井: 外围计算机,高速,高速,用户程序,其它,硬盘,高速,高速,用户程序获得: 高速输入 高速输出,模拟,模拟,2.5.6 I/O管理与控制,功能:,在分配程序完成设备分配之后进行,实现方式:,(1)为每一类设备设置一个I/O进程,灵活,(2)在整个系统中设置一个I/O进程,统一管理,(3)不设置进程而是提供模块以供用户及系统调用,减少进程数量,设备驱动的特性:,中转数据和控制: 不是数据和控制的源端和目的端 (应用程序和设备) 与硬件特性密切相关: 通常由硬件厂商提供 向上屏蔽设备细节: 不同类型设备通常其设备驱动程序接口不同,同类设备的接口相同。因此,同类设备的不同型号,只要更换设备驱动程序则可由OS使用。,设备驱动处理过程:,(1)解释CPU的I/O要求,检查合法性,(2)检测设备状态,(3)启动执行:填写设备控制器的寄存器,(4)启动I/O操作后阻塞,输出:等待设备发送结束中断,输入:等待设备数据到达中断,(5)中断处理,保护被中断进程CPU现场,转入对中断事件处理的程序,唤醒被阻塞的驱动程序,恢复被中断进程现场并继续执行,I/O系统层次模型体现设备独立性,UNIX的设备管理,UNIX的外设与特殊文件对应,由文件系统按文件管理方式进行管理,向上提供一个与文件系统统一的接口。,1. UNIX的I/O结构,无缓存I/O:在进程I/O区域与系统I/O模块间直接进行数据交换; 有缓存I/O:有缓存I/O要经过系统的缓冲区管理机构;它分成系统缓冲区(system buffer caches)和字符队列(character queues)两种。,按设备I/O的不同情况,UNIX系统的I/O分成2种:,2. 设备开关表(switch table),UNIX设备驱动程序通过相应的块设备开关表和字符设备开关表描述向上与文件系统的接口。开关表是每个设备驱动程序的一系列接口过程的入口表,给出了一组标准操作的驱动程序入口地址,文件系统可通过开关表中的各函数入口地址转向适当的驱动程序入口。,Windows NT的设备管理,NT的I/O系统结构,I/O子系统:实现文件化的I/O函数; 通常的打开、关闭和读写函数; 异步I/O:应用进程在发出I/O请求后,不需等待I/O完成,可继续其它工作; 映射文件I/O:把文件作为进程虚拟空间的一部分进行直接访问; 快速I/O:不通过I/O管理器,直接向驱动程序发出I/O请求; I/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二手房交易资金监管及配套服务协议
- 影视动画角色形象授权及衍生品生产合作协议
- 子女海外留学经费分担与教育支持协议
- 绿色环保物流配送站运营管理委托协议
- 海外留学生医疗保险直付医院合作协议
- 智能制造工业厂房租赁及智能制造系统协议
- 拼多多品牌店铺代运营服务协议涵盖仓储物流与配送
- 市场代理区域市场调研报告补充协议
- 耕地规模化种植与现代农业合作管理协议
- 教育机构教材管理及派遣专业团队服务合同
- 学校实验室危险化学品安全工作检查记录表
- 暖心晚安寄语(30句)
- 浙江省2024年全国中学生奥林匹克数学竞赛初赛试题 含解析
- 医疗器械监督管理条例知识竞赛考试题及答案
- 分层施工安全协议书范本
- 2024管网数据库表结构与标识符标准及外业数据采集提交规范
- 服务基层行治疗(3.5.4消毒与灭菌工作管理)
- 2023年二级注册计量师考试题目及答案
- 2021年6月高考英语试题(浙江卷)
- 武汉武昌区五校联考2023-2024学年中考五模英语试题含答案
- 2024年湖南省长沙市中考数学试题
评论
0/150
提交评论