操作系统5设备-09

上传人:ahu****ng1 文档编号:146152694 上传时间:2020-09-27 格式:PPTX 页数:75 大小:1.01MB
返回 下载 相关 举报
操作系统5设备-09_第1页
第1页 / 共75页
操作系统5设备-09_第2页
第2页 / 共75页
操作系统5设备-09_第3页
第3页 / 共75页
操作系统5设备-09_第4页
第4页 / 共75页
操作系统5设备-09_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《操作系统5设备-09》由会员分享,可在线阅读,更多相关《操作系统5设备-09(75页珍藏版)》请在金锄头文库上搜索。

1、第五章 I/O设备管理,5.1 I/O设备,5.2 I/O控制方式,5.3 设备分配,5.4 缓冲管理,5.5 I/O处理过程,5.6 磁盘存储管理器,5.1 I/O设备,OS设备管理中的设备指外部设备,包括输入设备与输出设备,即除主机(CPU+内存)之外的所有设备。 I/O性能经常成为整个系统性能的瓶颈,CPU性能并不等于系统性能,CPU性能越高,与I/O差距越大。 OS庞大复杂的原因之一就是外设资源多而杂,种类繁多,结构各异,速度差异很大。,5.1 I/O设备,外存设备:软硬盘、光盘 输入:键盘、鼠标、话筒 计算机 人机通信 、扫描仪 外部设备 设备 数码相机、数字摄像机 输出:显示器、打

2、印机、喇叭 输入输出设备 绘图仪 计算机与计算机间的通信设备: 机机通信 Modem、路由器、网卡 设备 计算机与非计算机间的通信设备: 数据采集设备,自动控制设备,一、计算机设备的分类,5.1 I/O设备,基于设备的工作特性: 外部存储设备(长期保存信息,可随时访问,如磁盘、磁带) 输入/输出设备(字符设备,以单个字符为单位存储、传输信息,如显示器、键盘、打印机等),5.1 I/O设备,基于设备的从属关系: 系统设备(一般是标准设备)(OS生成时就配置在系统中的标准设备,如:键盘、鼠标、显示器、终端等) 用户设备(一般为非标准设备)(设备的处理程序由用户提供,需另外安装,如:扫描仪、A-D/

3、D-A转换设备等),5.1 I/O设备,基于设备的分配特性: 独占设备(使用具有排它性,低速I/O设备) 共享设备(可由多个用户程序交替使用,如硬盘) 虚拟设备 ( 模拟独占设备为共享设备,即将慢速的独占设备经软件技术改造成为多个进程可以共享的设备,典型如SPOOLing技术 ),5.1 I/O设备,基于信息组织和处理的方式: 字符设备(信息以字符为单位来组织和分配的;系统中大部分均属此类,如打印机、键盘、显示器等;特点是速度慢,也称慢速设备) 块设备(信息以块为单位来组织和分配的;如磁盘、磁带等;特点是速度快,也称快速设备),二、设备管理的目标与功能,5.1 I/O设备,1. 设备管理目标:

4、 提高系统资源利用率 多道程序环境下,资源数总是少于进程数。 需合理分配设备资源,并使外设与外设、外设与CPU并行工作,使设备尽可能处于忙碌状态。,方便用户使用 对于各种各样的外设,为用户提供便利、统一的使用界面。 OS把各种外设的物理特性隐藏起来,把各种外设的具体操作方式隐藏起来,由OS面对;而让用户面对的是使用方便的设备,这样就可使用户摆脱繁琐的编程负担。,5.1 I/O设备,2. 设备管理的功能: 提供用户接口:提供一组I/O命令,即用户使用外设的接口,用户在程序中通过这些命令使用外设。 进行设备的分配与回收:OS中I/O管理程序负责接受用户使用外设的请求、分配设备、回收设备。 实现真正

5、的I/O操作:OS依据用户的请求,通过具体的设备驱动程序,启动外设,进行实际的I/O操作;操作完毕就通知用户进程,由设备中断服务程序完成善后工作。 其它功能:管理缓冲区,CPU与I/O设备通过缓冲区传送数据,以解决高速CPU与慢速外设之间矛盾。OS有专门软件管理缓冲区的分配与回收。,5.2 I/O控制方式,一、设备控制器,每种I/O设备都要通过设备控制器与CPU相连。 设备控制器是CPU与I/O设备间的接口,处于CPU与外设之间。,设备控制器的基本功能,接收和识别命令 2) 数据交换 3) 标识和报告设备的状态 4) 地址识别 5) 数据缓冲 6) 差错控制,5.2 I/O控制方式,设备控制器

6、的组成,5.2 I/O控制方式,设备控制器通过自己内部的寄存器与CPU通信 数据寄存器 存放传输来的数据 状态寄存器 存放外设的状态,供CPU测试 控制寄存器 存放CPU发出的操作命令与参数 OS把命令以及参数写入控制寄存器,外设据此实现I/O 设备控制器接受CPU的I/O命令后,就独立于CPU控制外设去完成命令指定的任务,这时外设与CPU并行,即在外设I/O的同时,CPU在运行其它进程。,5.2 I/O控制方式,外设完成所要求的I/O任务后,要通知CPU。 I/O控制方式有四种:,早期采用“被动式”,控制器设置一个完成标志,等待CPU来查询,即程序直接控制方式。 现在采用“主动式”,即通过中

7、断方式主动通知CPU,让CPU来进行处理,即中断控制方式。 直接存储器存取方式(DMA)和通道控制方式也是基于中断的主动型的数据传输控制方式。,5.2 I/O控制方式,二、程序直接控制方式,向控制器发读命令,读控制器状态,检查状态,从控制器中读入字,向存储器中写字,传送完成?,出错,未就绪,未完成,完成,下条指令,CPUI/O,I/OCPU,I/OCPU,CPU内存,就绪,以读为例,说明程序直接控制I/O方式,5.2 I/O控制方式,评价: 在程序I/O方式中,由于CPU的高速与I/O设备的低速,使得CPU绝大部分时间,都处于等待外设完成数据I/O的循环测试之中,造成CPU的极大浪费。 此外,

8、CPU与I/O设备只能串行工作,整个计算机系统效率低下。,5.2 I/O控制方式,三、中断方式,以读为例,说明中断控制I/O方式,向控制器发读命令,读控制器状态,检查状态,从控制器中读入字,向内存中写字,传送完成?,出错,未完成,完成,下条指令,CPUI/O,I/OCPU,I/OCPU,CPU内存,就绪,CPU做其它事,中断完成信号,5.2 I/O控制方式,中断方式说明: 1.某一进程处于执行状态,通过CPU向外设控制器发出I/O指令; 该进程随即阻塞,等待I/O完成; OS立即将CPU调度给其它进程使用; 而外设控制器得到指令后,就独立于CPU进行指令规定的操作; 如此,CPU与I/O并行工

9、作。 2.当外设I/O操作完成,设备控制器立即向CPU发中断完成信号; CPU接到信号响应该中断,立即转中断处理程序; 由中断处理程序把数据从设备控制器传送到内存。 3.被阻塞进程在I/O完成后,状态即转变为就绪,等待OS调度,以执行余下的程序。,5.2 I/O控制方式,四、直接存储器存取方式,以上介绍的程序控制方式和中断方式,主机与外设进行的数据传送都是以CPU为中心组织的。,CPU,I/O设备,内存,DMA(Direct Memory Access) DMA方式在外设与内存之间开辟了直接交换数据的通路,使用于磁盘等高速I/O设备。 在DMA控制器的控制下,内存和外设直接进行成批数据的快速传

10、送,不需要CPU的加入。形成了以内存为中心组织的数据传送。,内存,CPU,I/O设备,5.2 I/O控制方式,DMA传输数据步骤: 1.一进程请求设备I/O,CPU做如下事: 内存起始地址DMA控制器的地址寄存器 传输字节数 DMA控制器的字节计数器 启动DMA控制器 2.该进程阻塞,等待I/O完成 3.DMA与内存进行数据传输,成批数据传送由字节计数器计算控制 4.传输完,向CPU发中断完成信号 5.CPU接受DMA中断请求,转中断处理程序 6.数据传送完成,唤醒被阻塞进程,5.2 I/O控制方式,5.2 I/O控制方式,五、通道方式,通道介绍: 独立于CPU、专门用作管理I/O的处理机,控

11、制设备与内存直接进行数据交换 通道有自己的指令系统,数量不多,仅涉及读、写、查询、控制等功能;用以编写通道程序 采用通道的系统中,主机与通道相连,通道与设备控制器相连,设备控制器与设备相连,5.2 I/O控制方式,CPU,通道,设备控制器,设备控制器,设备,设备,设备,设备,5.2 I/O控制方式,通道方式工作步骤: 一进程提出I/O请求,CPU把数据传输任务交给通道(指明操作方向、设备号、通道号) 该进程阻塞,CPU随即被调度给其它进程 通道按CPU发来的启动命令,调用通道程序执行(这时通道与CPU并行工作),外设在通道程序的规定下,与内存交换数据 数据传输完毕,通道向CPU发中断请求 CP

12、U响应中断,转中断处理程序,对I/O作善后处理,唤醒被阻塞的进程成就绪态。,5.3 设备分配,在OS的统一管理下,用户进程使用设备,须先提出I/O请求,由OS的设备管理程序进行分配。 设备分配与下列因素有关: 设备属性 系统采用的分配算法 与设备无关性原则 设备分配的安全性,5.3 设备分配,一、设备属性,1.独占设备:使用上具有排它性的设备,如打印机。 分配策略:系统一旦将该类设备分配给指定进程,就由它独占使用,直到用毕释放。 2.共享设备:如磁盘,这类设备可由多个进程同时使用,在时间上则是交叉对设备进行存取访问。 系统对共享设备不进行分配,而是对这一类的I/O请求进行调度。,5.3 设备分

13、配,3.虚拟设备:在大容量磁盘的支持下,用软件技术对独占设备进行改造,使得用户在使用独占设备时,感觉上认为不用同其它进程竞争,便可方便地获得独占设备。 Spooling技术就是一个典型的实现虚拟设备的系统。,5.3 设备分配,二、Spooling技术,什么是Spooling: 引入了多道程序技术后,利用其中的一道程序,来模拟脱机输入时的外围控制机功能,把低速I/O设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时外围控制机的功能,把数据从磁盘传送到低速输出设备上。在主机的直接控制下,实现脱机输入、 输出功能,这种在联机情况下实现的同时外围操作称为SPOOLing,或称为假脱机操作。,

14、5.3 设备分配,输入井,输出井,输出设备,SPOOLing系统工作示意,磁盘,输入设备,输入进程,输出缓冲区,输出进程,输入缓冲区,内存,5.3 设备分配,SPOOLing系统由3部分组成: 输入井与输出井 硬盘上2大存储空间 输入井:用于收容I/O设备的输入数据 输出井:用于收容用户程序的输出数据 输入缓冲区与输出缓冲区 内存中开辟的2个缓冲区 输入缓冲区:用于暂存由输入设备送来的数据,以后再传送输入井 输出缓冲区:用于暂存由输出井送来的数据,以后再传送输出设备,5.3 设备分配,输入程序与输出程序 输入进程 将用户要求的输入数据, 从输入设备输入缓冲区输入井, 当CPU需要输入数据时,直

15、接从输入井读入内存。 输出进程 将用户要求输出的数据,从内存 输出井输出缓冲区(当输出设备空闲时)输出设备。,5.3 设备分配,系统对用户请求的处理 当用户请求打印输出时,SPOOLing系统中输出进程做如下2件事: A)在输出井申请一空闲盘块区 将要打印的数据送入其中 B)为用户申请空白的用户请求打印表 将用户的打印请求填入表中 把该表挂到请求打印队列上。 如还有其它进程提出打印请求,系统一概接受请求,同样做上述2件事。,以共享打印机为例说明SPOOLing系统工作过程,5.3 设备分配,系统对具体输出的处理 如打印机空闲,输出进程做以下操作: 从请求打印队列的队首取出请求打印表 将打印数据

16、从输出井送内存输出缓冲区 打印机执行打印操作 打印完即检查打印队列是否还有请求表 ,若有,取出现时队首的请求表,继续上述操作,若无,即打印队列空,输出进程阻塞自己 等再有打印请求才被唤醒,5.3 设备分配,SPOOLing系统的特点 : 将独占设备改造为共享设备,实现了虚拟设备功能。 OS以大容量的共享设备磁盘、多道程序技术为依托,用软件技术来改造独享设备,使用户在感觉上认为他们使用的是共享设备。 宏观上看,多个进程能同时使用一占设备,从每一个进程看,都认为自己独占了一个设备(逻辑设备)。 提高了I/O速度。 从请求打印的进程角度看,其输出数据实质上是送到输出井,极其快速。,5.3 设备分配,三、设备分配方法,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号