版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章设备管理主要内容:
I/O硬件概念,设备控制器,I/O控制方式,缓冲技术,设备使用方法,I/O层次结构,磁盘管理。重点:I/O控制方式,缓冲区种类,设备分配。难点:磁盘调度策略。1第1页6.1I/O硬件概念6.1.1常见I/O设备分类
人-机交互设备(字节设备,发送接收以字节方式);存放类型设备(块设备,读写以数据块方式);网络通信设备(网络接口,调制解调器)。I/O设备特点:数据传输速率不一样;数据传输单位不一样;控制复杂性不一样;设备使用目标不一样。2第2页6.1.2设备控制器(I/O部件)
I/O设备通常包含一个机械部件和一个电子部件。电子部件被称做I/O部件或设备控制器(当控制多设备时:又叫总线控制器,通道控制器)。操作系统普通只与控制器打交道,而非设备本身。早期CPU是直接控制外部设备,在引入I/O部件之后,才将CPU逐步从与外设交互细节中解放出来。3第3页PCI总线控制器处理机(CPU)主存显卡
SCSI控制器外设控制器控制器控制器连接CPU、主存、设备控制器和I/O设备模型
磁带磁盘外设SCSI总线主板总线设备控制器功效:1、接收和识别来自CPU各种命令;2、实现CPU与设备控制器、设备控制器与设备之间数据交换;3、统计设备状态供CPU查询;4、识别控制器每个设备地址;4第4页
控制器任务是在外部设备与CPU(内存)之间完成比特流(外部信号)和字节流(块)之间转换。磁盘控制器主存比特流字节块转换、校验CRT控制器主存显示信号字节流转换5第5页每个控制器都有一些用来与CPU通信I/O存放器。操作系统经过向这些存放器写命令字来执行I/O功效。键盘060-063硬盘320–32F打印机378–37F软盘3F0–3F7彩色显示器3D0–3DFIBMPCI/O地址内存0kn控制器存放器6第6页6.1.3I/O控制方式
(1)程序直接控制方式CPU直接控制I/O操作全过程,包含测试设备状态、发送读写命令、传输数据。处理机指令集应包含下述指令:控制类测试类读写类I/O。示例:从外存读数据块到内存(见下一页)7第7页向I/O部件发读命令读I/O部件状态存放器从I/O部件读字数据将该字写入内存未OKOK犯错OK下一指令未OK检验状态该块读完?8第8页(2)中止控制方式优点:
CPU无须重复测试,节约了时间。缺点:依然消耗大量CPU时间9第9页(3)DMA方式DMA方式思想:DMA(直接内存存取)负责完成整个I/O操作,无需再经CPU存放器转发,并在全部传输结束后向CPU发中止信号。给DMA命令中应包含:操作类别I/O设备地址读写数据在内存中首地址字数。向DMA部件发读命令读取DMA部件状态中止中止后续处理注意:DMA功效能够以独立DMA部件在系统I/O总线上完成,也可整合到I/O部件中完成。缺点:DMA部件需与CPU竞争控制总线。10第10页CPU直接控制外部设备引入I/O部件,CPU直接控制I/O部件引入中止驱动方式引入DMAI/O通道或I/O处理机输入/输出控制方式发展过程11第11页
6.2设备输入/输出子系统6.2.1设备使用方法
一、设备相关系统调用1.申请设备。有参数说明要申请设备名称,操作系统处理该系统调用时,会按照设备特征(独占还是分时共享)及设备占用情况来分配设备,返回申请是否成功标志。2.将数据写入设备。3.从设备读取数据。4.释放设备。这是申请设备逆操作。
说明:主要用于对人-机交互类慢速外设使用。对于存放类外设,用户程序普通经过文件访问。12第12页在UNIX中,能够用以下系统调用将数据直接写入软盘中:fd=open(“/dev/fd0”,O_RDRW);申请软盘,/dev/fd0代表软盘。lseek(fd,1024,0);将软盘当前I/O位置定位到1024字节位置。Write(fd,buffer,36);将用户缓冲区buffer中36个字节写入软盘1024~1059字节。……close(fd);释放软盘。13第13页二、独占式使用设备如打印机申请空闲吗?独占使用等候释放14第14页三、分时式共享使用设备独占式使用设备时,设备利用率很低。分时式共享:以一次I/O为单位分时使用设备,不一样进程I/O操作请求以排队方式分时地占用设备进行I/O。注:针对一个逻辑上完整数据I/O操作。如:终端设备,磁盘设备。15第15页请求设备请求I/O释放设备P1请求设备请求I/O释放设备P2请求请求设备图6.6排队使用设备16第16页产生条件:I/O中止;通道;磁盘。SPOOLing(并发外部设备联机操作)基本思想:用磁盘设备作为主机直接输入/输出设备,即主机从磁盘选取作业并运行,结果也存在磁盘中。对应通道则负责磁盘与慢速外设传输。利用通道和中止机制,作业输入/输出与作业在处理机上运行可很好地并行起来。四、以SPOOLing方式使用外设17第17页通道主机通道通道卡片机打印机SPOOLing系统图示磁盘18第18页比如:全部输出数据已经写到文件当中,并排到打印输出队列,打印进程申请占用打印机后,成批读出文件中数据,并送打印机打印出去。打印请求队列(含要打印文件)打印daemon进程打印机19第19页6.2.2I/O层次结构
通常,操作系统将设备管理系统划分并组织成三个层次:用户层I/O;设备无关I/O;设备驱动及中止处理;用户层I/O设备驱动及中止处理硬件系统调用接口,设备无关操作系统软件20第20页用户进程用户层I/O设备无关I/O设备驱动及中止处理硬件设备管理子系统逻辑结构图21第21页一、用户层I/O与设备控制细节无关。将全部设备看做逻辑资源,为用户进程提供各类I/O函数。用户以设备标识符和一些简单函数来使用设备,如打开、关闭、读、写等。如C库中函数fopen(),fread(),fwrite(),fclose()等。22第22页二、设备无关I/O基本功效:执行适合用于全部设备公共I/O功效,并向其上层提供统一系统调用接口。任务包含:1.设备名及与设备驱动程序映射。在UNIX中,如/dev/tty00惟一地确定了一个i-node数据结构,其中包含了主设备号,经过主设备号能够找到对应设备驱动程序。2.设备保护:许可权限保护。3.缓冲I/O:块设备、字符设备。4.错误汇报:汇报驱动程序产生错误信息。5.分配及释放独占型设备:申请、关闭。23第23页三、设备驱动与中止处理1.设备驱动程序包含了全部与设备相关代码,其功效是从与设备无关软件中接收I/O请求,排入请求队列或执行之;执行时,将请求转化为更详细形式。2.中止处理当进程进行I/O操作时,将其阻塞至I/O操作结束并发生中止。中止发生时,由中止处理程序开启请求排队下一请求并解除等I/O进程阻塞状态,使其能够继续执行。
24第24页6.2.3设备驱动程序
一.设备驱动程序接口函数驱动程序初始化函数:做一些针对驱动程序本身初始化工作,如向操作系统登记该驱动程序接口函数,该初始化函数在系统开启时或驱动程序安装入内核时执行。驱动程序卸载函数:在支持驱动程序可动态加载卸载系统中才需要。申请设备函数:申请一个驱动程序所管理设备,按照设备特征进行独占式占用或者分时共享式占用。释放设备函数I/O操作函数:实现对设备I/O。对独占型设备:包含了开启I/O指令;分时共享型设备:将I/O请求形成一个请求包,将其排到设备请求队列。中止处理函数:在设备I/O完成时向CPU发中止,然后被调用。该函数对I/O完成做善后处理。25第25页二、设备管理相关数据结构描述设备、控制器等部件表格:系统中经常为每一个部件、每一台设备分别设置一张表格,常称为设备表或部件控制块。这类表格详细描述设备类型、标识符、进行状态,以及当前使用者进程标识符等。建立同类资源队列:通常在设备表基础上经过指针将相同物理属性设备连成队列(称设备队列)。面向进程I/O请求动态数据结构:每当进程发出块I/O请求时,系统建立一张表格(称I/O请求包)。将此次I/O请求参数填入表中,同时也将该I/O相关系统缓冲区地址等信息填入表中。I/O请求包伴随I/O完成而被删除。建立I/O队列:如请求包队列。26第26页设备表设备表设备表请求包请求包设备管理相关数据结构关系27第27页引入原因:(1)能够改进进程运行速度与I/O传输速度之间速差矛盾。(2)降低中止CPU次数。(3)提升CPU和I/O设备之间并行性。6.2.4缓冲技术28第28页块设备字符设备:一次一行方式:打印机,显示器一次一字节方式:传感器,控制杆一、单缓冲
当用户进程发出I/O请求时,操作系统在主存系统空间为该操作分配一个缓冲区,能够实现预先读和延迟写。操作系统I/O设备输入用户进程移动29第29页二、双缓冲
能够实现用户数据区与缓冲区之间交换数据和缓冲区与外设之间交换数据并行。操作系统I/O设备输入用户进程移动30第30页三、循环缓冲
引入系统缓冲池,采取有限缓冲区生产者/消费者模型对缓冲池中缓冲区进行循环使用。缓冲区结合预先读和延迟写技术对含有重复性及阵发性I/O进程、提升I/O速度很有帮助。操作系统I/O设备输入用户进程移动…31第31页6.3存放设备6.3.1常见存放外设
磁盘数据组织一个磁盘由多个盘面组成,盘面有同心圆磁道组成,磁道有扇区组成,扇区为基本传输单位。物理特征单磁头,多磁头。32第32页存取装置主轴动臂盘片柱面磁道读写头多磁头活动头盘示意图
33第33页
光学存放设备
CD-ROM;CD-R,CD-RW。34第34页6.3.2磁盘调度磁盘地址:台号+柱面号+盘面号+扇区号读写一次磁盘信息所需时间可分解为:寻找时间(寻道时间)、延迟时间、传输时间。为提升磁盘传输效率,软件应着重考虑降低寻找时间和延迟时间。35第35页一、降低寻找时间(寻道时间)方法降低寻找时间是提升磁盘传输效率关键。因为“寻找时间”在几十毫秒时间量级。操作系统磁盘驱动程序能够经过对磁盘访问请求次序合理调度多道进程,到达降低磁盘平均服务时间目标。36第36页磁盘调度策略1、先来先服务FCFS(FirstComeFirstServer):这是最简单磁盘调度策略,它依据进程请求访问磁盘时间次序进行调度。2、最短寻道时间优先SSFT(ShortestSeekTimeFirst):它是依据磁头当前位置,选择请求队列中距离磁头最短请求响应。3、SCAN:也称电梯策略,要求磁头臂仅仅沿一个方向移动,并在途中满足全部未完成请求,直到它抵达这个方向最终一个磁道,或这个方向没有别请求为止(Look算法),然后倒转服务方向,一样按次序完成有请求。4、C-SCAN:是循环扫描法,当抵达最终一个磁道时,磁头臂返回到磁头另一端,并再次开始扫描。(无需抵达端点,称C-Look算法)37第37页其它调度策略为防止磁头臂粘性,磁盘请求队列被分成段,一次只有一个段被完全处理1、N-Step-SCAN:它是把磁盘请求分成长度为N子队列,每次用SCAN处理一个子队列。当N比较大时性能与SCAN相近,当N=1时退化为FCFS2、FSCAN:使用两个子队列,当扫描开始时,全部请求都在一个队列中,而另一个队列为空。在扫描过程中,全部新到请求都被放入另一个队列。所以,对新请求服务延迟处处理完全部老请求以后。38第38页假设磁盘有200个磁道,磁盘请求队列中是一些随机请求。被请求磁道按接收次序分别为:55、58、39、18、90、160、150、38、184,当前磁头在100磁道处
FCFS策略磁头臂移动轨迹以下:
18383955589015016018410039第39页假设磁盘有200个磁道,磁盘请求队列中是一些随机请求。被请求磁道按接收次序分别为:55、58、39、18、90、160、150、38、184,当前磁头在100磁道处SSTF策略磁头臂移动轨迹以下:
18383955589015016018410040第40页假设磁盘有200个磁道,磁盘请求队列中是一些随机请求。被请求磁道按接收次序分别为:55、58、39、18、90、160、150、38、184,当前磁头在100磁道处SCAN策略磁头臂移动轨迹以下:
18383955589015016018410020041第41页假设磁盘有200个磁道,磁盘请求队列中是一些随机请求。被请求磁道按接收次序分别为:55、58、39、18、90、160、150、38、184,当前磁头在100磁道处C-SCAN策略磁头臂移动轨迹以下:
18383955589015016018410020042第42页调度
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理沟通障碍与解决策略
- 2026届高考语文押题作文6篇
- 护理团队压力管理与应对
- 护理实践:临床案例分享
- 胃肠间质瘤诊疗指南
- 基于大数据的柔性电子产品市场分析报告
- 快手研发岗位面试技巧培训
- 快消品市场部经理面试全攻略
- 零售业品牌建设与管理的实践案例
- 客户服务专员面试攻略与解答技巧
- 服装产业园项目规划设计方案
- 湖北省武汉市2025年中考物理真题(含答案)
- 村干部考事业编制试题及答案
- 中医学介绍讲课件
- 副食品配送卫生管理制度
- 新疆神火煤电有限公司电解铝大修渣无害化处理综合利用项目环评报告
- 单兵战术动作低姿匍匐前进教案
- 2025新人教版七年级下册英语 Unit 8知识点梳理及语法讲义(答案版)
- 水库安全管理培训
- 工程劳务外包合同范本大全
- 统编版语文四年级下册 第一单元基础过关卷(试题)
评论
0/150
提交评论