基本设备管理ppt课件.ppt
《基本设备管理ppt课件.ppt》由会员分享,可在线阅读,更多相关《基本设备管理ppt课件.ppt(105页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统操作系统设备管理设备管理2设备管理功能设备管理功能设备管理:设备管理:I/O管理,负责管理设备和控制管理,负责管理设备和控制I/O传输传输操作操作功能:功能:1 设备分配与回收设备分配与回收2 设备控制设备控制3 设备状态跟踪设备状态跟踪3设备分类设备分类 按传输速率分:按传输速率分: 低速设备(几个字节低速设备(几个字节-数百个字节数百个字节/秒)秒) 键盘、鼠标等键盘、鼠标等 中速设备(数千个字节中速设备(数千个字节-数万个字节数万个字节/秒)秒) 打印机等打印机等 高速设备高速设备 磁盘磁盘 光盘机等光盘机等4按设备的使用特性按设备的使用特性存储设备存储设备输入输入/输出设备输出
2、设备5 按信息交换的单位分:按信息交换的单位分: 块设备(数据的存取以数据块为单位)块设备(数据的存取以数据块为单位) 磁盘磁盘块设备在输入输出时常采用块设备在输入输出时常采用DMA方式方式 字符设备(数据的存取以字符为单位)字符设备(数据的存取以字符为单位) 键盘键盘 打印机等打印机等字符设备在输入输出时常采用中断方式字符设备在输入输出时常采用中断方式6 按设备的共享属性:按设备的共享属性: 独占设备独占设备 临界资源临界资源 共享设备共享设备 磁盘磁盘 虚拟设备虚拟设备 将一台设备变换为若干台逻辑设备将一台设备变换为若干台逻辑设备 虚拟光驱、虚拟网卡虚拟光驱、虚拟网卡7设备控制器设备控制器
3、(1)设备并非直接与设备并非直接与CPU通信,之间经通信,之间经过设备控制器过设备控制器(2)设备与设备控制器之间的连接:设备与设备控制器之间的连接:数据信号线:传送数据信号数据信号线:传送数据信号(中间缓冲区)(中间缓冲区)状态信号线:传送设备当前状态状态信号线:传送设备当前状态控制信号线:规定了设备将要执的控制信号线:规定了设备将要执的动作动作输出:输出:先到缓冲,再到转换器先到缓冲,再到转换器(信信号号/数据数据)输入:输入:先到转换器,再到缓冲先到转换器,再到缓冲控制信号:控制信号:读操作,写操作,磁读操作,写操作,磁头移动等头移动等状态:状态:正在读或写,读写完成等正在读或写,读写完
4、成等缓冲转换器控制逻辑信号数据数据信号线状态信号线控制信号线至设备控制器I/O 设备8设备控制器功能设备控制器功能控制一个或多个控制一个或多个I/O设备,以实现设备,以实现I/O设备和计算机之间的数据交换。设备和计算机之间的数据交换。功能:功能: 接收和识别命令接收和识别命令-cpu可向设备控制器发送多种指令,设备控制器能识别可向设备控制器发送多种指令,设备控制器能识别接收这些指令,如:磁盘读写等。接收这些指令,如:磁盘读写等。 数据交换数据交换-实现实现cpu与控制器之间、控制器与设备之间的数据交换。与控制器之间、控制器与设备之间的数据交换。 标识和报告设备状态标识和报告设备状态记下设备状态
5、供记下设备状态供cpu了解。例如:只有当设备处于发了解。例如:只有当设备处于发送就绪状态时,送就绪状态时,cpu才能启动控制器从设备中读取数据。才能启动控制器从设备中读取数据。 地址识别地址识别每个设备都有一个地址,控制器能够识别它所控制的每个设备每个设备都有一个地址,控制器能够识别它所控制的每个设备的地址。的地址。 数据缓冲数据缓冲I/o设备的低速与设备的低速与cpu高速之间的缓冲。高速之间的缓冲。9设备控制器的组成 数据寄存器控制/状态寄存器数据线I/O 逻辑控制器与设备接口1控制器与设备接口 i数据状态控制数据状态控制地址线控制线CPU 与控制器接口控制器与设备接口10三部分组成:三部分
6、组成:1、设备控制器与处理器的接口、设备控制器与处理器的接口三类信号线:数据线、地址线、控制线三类信号线:数据线、地址线、控制线两类寄存器:数据寄存器、控制两类寄存器:数据寄存器、控制状态寄存器状态寄存器2、设备控制器与设备的接口、设备控制器与设备的接口一个控制器可接多个设备,一个接口接一个设备一个控制器可接多个设备,一个接口接一个设备3、IO逻辑逻辑实现对设备的控制,实现对设备的控制,CPU启动设备过程:发送控制命令和地址给控制启动设备过程:发送控制命令和地址给控制器,器,IO逻辑接收命令并译码逻辑接收命令并译码 I/O控制方式控制方式 程序程序I/O方式方式-忙则等待方式忙则等待方式 利用
7、利用I/O测试指令测试设备的忙闲,若设备忙则继续测试指令测试设备的忙闲,若设备忙则继续测试,不忙则进行输入输出测试,不忙则进行输入输出 在程序I/O方式中,由于CPU的高速性和I/O设备的低速性, 致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中, 造成对CPU的极大浪费。在该方式中,CPU之所以要不断地测试I/O设备的状态,就是因为在CPU中无中断机构, 使I/O设备无法向CPU报告它已完成了一个字符的输入操作。 1112 中断驱动中断驱动I/O控制方式控制方式 当启动当启动I/O设备时,设备时,CPU向设备控制器发出向设备控制器发出I/O指令,指令,然后返回执行原来指
8、令。由设备控制器控制设备,当设备然后返回执行原来指令。由设备控制器控制设备,当设备完成完成I/O操作时,中断方式通知操作时,中断方式通知CPU处理。处理。 在I/O设备输入每个数据的过程中,由于无须CPU干预,因而可使CPU与I/O设备并行工作。仅当输完一个数据时,才需CPU花费极短的时间去做些中断处理。可见,这样可使CPU和I/O设备都处于忙碌状态,从而提高了整个系统的资源利用率及吞吐量。 例如例如,从终端输入一个字符的时间约为100 ms, 而将字符送入终端缓冲区的时间小于 0.1 ms。 若采用程序I/O方式,CPU约有 99.9 ms的时间处于忙等待中。 采用中断驱动方式后,CPU可利
9、用这 99.9 ms的时间去做其它事情,而仅用 0.1 ms的时间来处理由控制器发来的中断请求。 可见,中断驱动方式可以成百倍地提高CPU的利用率。 1314 直接存储器访问直接存储器访问DMA I/O控制方式控制方式 1. DMA(Direct Memory Access)控制方式的引入控制方式的引入 中断传输仍是以字为单位的,即传输完一个字后进行一次中断。中断传输仍是以字为单位的,即传输完一个字后进行一次中断。不利于操作大量数据。为了进一步减少不利于操作大量数据。为了进一步减少CPU的干预,引入了直接存储器的干预,引入了直接存储器访问方式。访问方式。 数据传输的基本单位是数据传输的基本单位
10、是数据块数据块; 所传送的数据是从设备所传送的数据是从设备直接送入内存直接送入内存的,或者相反;的,或者相反; 仅在传送一个或多个仅在传送一个或多个数据块数据块的开始和结束时,才需的开始和结束时,才需CPU干预,干预, 整块数据的传送是在整块数据的传送是在控制器控制器的控制下完成的。的控制下完成的。 可见,可见,DMA方式成百倍地减少了方式成百倍地减少了CPU对对I/O的干预。的干预。 152. DMA控制器的组成控制器的组成 DMA控制器的组成 DRMARDCCRI/O控制逻辑主机控制器接口控制器与块设备接口count内存CPU命令系统总线DMA控制器16 为了实现在主机与控制器之间成块数据
11、的直接交换, 必须在DMA控制器中设置如下四类寄存器: (1) 命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息, 或设备的状态。 (2) 内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。 (3) 数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。 (4) 数据计数器DC。 存放本次CPU要读或写的字(节)数。 173. DMA工作过程工作过程 设置AR和DC初值启动DMA传送命令挪用存储器周期传送数据字存储器地址增1字计数寄存器减1DC0?请求中断在继续执行用户程序的同时,准备又一次传送否是1
12、819 I/O通道控制方式通道控制方式 1. I/O通道通道控制方式的引入控制方式的引入 I/O通道方式是DMA方式的发展,它可进一步减少CPU的干预,即把对一个数据块的读(或写)为单位的干预,减少为对一组数据块的读(或写)及有关的控制和管理为单位的干预。 同时,又可实现CPU、通道和I/O设备三者的并行操作,从而更有效地提高整个系统的资源利用率。 例如,当CPU要完成一组相关的读(或写)操作及有关控制时,只需向I/O通道发送一条I/O指令,以给出其所要执行的通道程序的首址和要访问的I/O设备,通道接到该指令后,通过执行通道程序便可完成CPU指定的I/O任务。 202. 通道程序通道程序 (1
13、)操作码。 (2) 内存地址。 (3) 计数。 (4) 通道程序结束位P。 (5) 记录结束标志R。 21操作 PR计数内存地址WRITE 0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE112507202223I/O通道1. I/O通道通道(I/O Channel)设备的引入设备的引入 实际上,实际上,I/O通道是通道是一个用来控制外部设备的硬件机制,是一个用来控制外部设备的硬件机制,是一种特殊一种特殊的处理机。它具有执行的处理机。它具有执行I/O指令的能力,并通过执行通道指令的能力,并通过执行通道(I/O
14、)程序来程序来控制控制I/O操作。操作。 IO通道的目的使原来由通道的目的使原来由CPU执行的执行的IO任务承担下来任务承担下来 但但I/O通道又与一般的处理机不同,主要表现在以下两个方面:通道又与一般的处理机不同,主要表现在以下两个方面: 一是其指令类型单一,这是由于通道硬件比较简单,一是其指令类型单一,这是由于通道硬件比较简单, 其所能执行的其所能执行的命令,主要局限于与命令,主要局限于与I/O操作有关的指令;操作有关的指令; 再就是通道没有自己的内存,通道所执行的通道程序是放在主机的再就是通道没有自己的内存,通道所执行的通道程序是放在主机的内内存中的,存中的, 换言之,是通道与换言之,是
15、通道与CPU共享内存。共享内存。2. 通道类型通道类型 1) 字节多路通道(Byte Multiplexer Channel) 字节多路通道不适于连接高速设备控制器A控制器B控制器C控制器D控制器NA1A2A3子通道AB1B2B3子通道BC1C2C3子通道CN1N2N3子通道NA1B1C1A2B2C2设备242) 数组选择通道数组选择通道(Block Selector Channel) 可以连接多台高速设备可以连接多台高速设备只含有只含有一个一个分配型分配型子通道子通道,在,在一段时间一段时间内只能控制内只能控制一台一台设设备进行数据传送,并备进行数据传送,并独占独占该通道。该通道。这种通道的
16、利用率很低。这种通道的利用率很低。 25 3) 数组多路通道数组多路通道(Block Multiplexer Channel)数组多路通道是以上二种通道数组多路通道是以上二种通道结合结合而形成的一种新通道而形成的一种新通道数据传送是按数据传送是按数组方式数组方式进行进行有有多个多个非分配型非分配型子通道子通道,数据传输速率很高,通道利用率也高数据传输速率很高,通道利用率也高广泛地用于连接多台广泛地用于连接多台高、中高、中速的外围设备速的外围设备263. “瓶颈瓶颈”问题问题 设备1设备2设备3设备4设备5设备6设备7控制器1控制器2控制器3控制器4通道1通道2存储器27I/O设备控制器1控制器
17、2通道1通道2存储器I/O设备I/O设备I/O设备28 缓缓 冲冲 管管 理理 缓冲的引入缓冲的引入 (1)缓和CPU与I/O设备间速度不匹配的矛盾。 (2) 减少对CPU的中断频率, 放宽对CPU中断响应时间的限制。 (3) 提高CPU和I/O设备之间的并行性。 29图 5-10 利用缓冲寄存器实现缓冲 1位缓冲9.6 Kb/s8位缓冲寄存器送内存9.6 Kb/s8位缓冲寄存器9.6 Kb/s送内存(b)(a)(c)30单缓冲和双缓冲单缓冲和双缓冲 1. 单缓冲单缓冲(Single Buffer) 工作区处理(C)缓冲区传送(M)输入(T)I/O设备(a)T1M1C1T2M2C2T3M3C3
18、T4t(b)用户进程312. 双缓冲双缓冲(Double Buffer) 工作区用户进程缓冲区1缓冲区2I/O 设备T1(缓冲1)M1C1M2C2M3C3T2(缓冲2)T3(缓冲3)M4C4T4(缓冲4)(a)(b) 32 缓冲区缓冲区A机B机(a) 单缓冲发送缓冲区接收缓冲区接收缓冲区发送缓冲区A机B机(b) 双缓冲33 循环缓冲循环缓冲 1. 循环缓冲的组成循环缓冲的组成 RGGGRG165423NextiNextgRGGGRC165423NextiNextgcurrent342. 循环缓冲区的使用循环缓冲区的使用 (1)Get过程。(2) Release过程。 353. 进程同步进程同步
19、 (1)Next指针追赶上Next指针。输入进程速度大于输出进程(2) Next指针追赶上Nexti指针。输出进程速度大于输入进程 36 缓冲池缓冲池(Buffer Pool) 1. 缓冲池的组成缓冲池的组成 对于既可用于输入又可用于输出的公用缓冲池, 其中至少应含有以下三种类型的缓冲区: 空(闲)缓冲区; 装满输入数据的缓冲区; 装满输出数据的缓冲区。 为了管理上的方便,可将相同类型的缓冲区链成一个队列,于是可形成以下三个队列: (1) 空缓冲队列em。 (2) 输入队列inq。 (3) 输出队列outq。 372. Getbuf过程和过程和Putbuf过程过程 Procedure Getb
20、uf(type) begin Wait(RS(type); Wait(MS(type); B(number)=Takebuf(type); Signal(MS(type); end Procedure Putbuf(type, number) begin Wait(MS(type); Addbuf(type, number); Signal(MS(type); Signal(RS(type); end 383. 缓冲区的工作方式缓冲区的工作方式 hinsoutsinhout收 容 输 入提 取 输 出用 户程 序提 取 输 入收 容 输 出缓 冲 池1、收容输入、收容输入:输入进程需要输入数据
21、时,:输入进程需要输入数据时,调调用用Getbuf(emq)在在emq中摘下中摘下一空区一空区,作为收容输入缓冲区,作为收容输入缓冲区hin,并并装满数据装满数据,再调用,再调用Putbuf(inq,hin),将将缓冲区挂缓冲区挂到到inq中。中。2、提取输入、提取输入:输入进程需要输入数据时,输入进程需要输入数据时,调调用用Getbuf(inq)从从inq摘一区摘一区,作为提取输入缓冲区作为提取输入缓冲区sin,计算进程从中计算进程从中提提取取数据。计算进程数据数据用完数据。计算进程数据数据用完后,后,再调用再调用Putbuf(emq,sin),将缓冲区挂到将缓冲区挂到emq。393、收容输
22、出:收容输出:当计算进程需要输出时,调用当计算进程需要输出时,调用Getbuf(emq)从从emq中摘一区,作为收容输出缓冲区中摘一区,作为收容输出缓冲区hout.当装满输出数据,又调用当装满输出数据,又调用Putbuf(outq,hout),将缓冲区挂在将缓冲区挂在outq。4、提取输出:提取输出:由输出进程调用由输出进程调用Getbuf(outq)从从out中摘一满区,中摘一满区,作为提取输出缓冲区作为提取输出缓冲区sout提取数据。数据提取完后,调用提取数据。数据提取完后,调用Putbuf(emq,sout),并挂入并挂入emq。hinsoutsinhout收 容 输 入提 取 输 出用
23、 户程 序提 取 输 入收 容 输 出缓 冲 池40设备分配(1)先来先服务。先来先服务。 (2) 优先级高者优先。优先级高者优先。4142设备独立性设备独立性 设备独立性设备独立性 引入逻辑设备和物理设备两个概念。引入逻辑设备和物理设备两个概念。 在应用程序中使用逻辑设备名来请求使用某类设备,而系在应用程序中使用逻辑设备名来请求使用某类设备,而系统在实际执行时,还需物理设备名。统在实际执行时,还需物理设备名。 系统需要具有将逻辑设备名转换为物理设备名的功能。系统需要具有将逻辑设备名转换为物理设备名的功能。 43 例如:系统拥有例如:系统拥有A、B两台卡片输入机,现有作业两台卡片输入机,现有作
24、业J2申请一申请一台卡片输入机,如果它指定使用台卡片输入机,如果它指定使用A,那么作业,那么作业J1已经占用已经占用A或者设备或者设备A坏了,虽然系统还有同类设备坏了,虽然系统还有同类设备B是好的且未被是好的且未被占用,但也不能接受作业占用,但也不能接受作业J2,显然这样做很不合理。,显然这样做很不合理。 为了解决这一问题,通常用户不指定特定的设备,而指为了解决这一问题,通常用户不指定特定的设备,而指定逻辑设备,使得用户作业和物理设备独立开来,再通过定逻辑设备,使得用户作业和物理设备独立开来,再通过其它途径建立逻辑设备和物理设备之间的对应关系,我们其它途径建立逻辑设备和物理设备之间的对应关系,
25、我们称这种特性为称这种特性为“设备独立性设备独立性”。设备管理的功能之一就是。设备管理的功能之一就是把逻辑设备名转换成物理设备名把逻辑设备名转换成物理设备名44优点优点:设备分配时的灵活性设备分配时的灵活性45逻辑设备名到物理设备名的映逻辑设备名到物理设备名的映射射逻辑设备表:逻辑设备表:逻辑设备名逻辑设备名物理设备名物理设备名设备驱动程序入口设备驱动程序入口逻辑设备名物理设备名驱动程序入口地址/dev/tty/dev/printer3510242046逻辑设备名/dev/tty/dev/printer系统设备表指针35( a )( b )46SPOOLING技术技术 回顾:操作系统的回顾:操
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基本 设备管理 ppt 课件
限制150内