操作系统第9章_第1页
操作系统第9章_第2页
操作系统第9章_第3页
操作系统第9章_第4页
操作系统第9章_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1第九章、设备管理9.1、引言9.2、数据传送方式9.3、中断技术9.4、缓冲技术9.5、设备分配9.6、I/O进程控制29.1、引言存储设备: 用来存放各种信息的设备称为存储设备 软盘、硬盘、光盘和磁带等;I/O设备: 用来向计算机输入和输出信息的设备,

键盘、鼠标、显示器、打印机等。3外部设备特性1.速度 传输速度的差别大,如键盘的传输速度不过几十,上百个字符,而磁盘的传输速度则是几十万字节/每秒。2.传输单位 字节:键盘、打印机、显示器;LPT1、LPT2

字符块:软盘、硬盘、磁带等; 位:个人计算机中的串口,COM1、COM2,USB接口3.操作特性 设备完成的操作种类各不相同,如打印机只允许写操作,键盘只能做读操作,而磁盘既可读,也可写。4.出错条件 不同的设备,其出错条件也不相同,即数据传输失败的原因各种各样,如打印机有缺纸错,磁盘I/O有奇偶校验错等。4设备管理:对计算机输入输出系统的管理。一、实现任务:

1、为用户提供方便、友好的、透明的接口;

2、选择并分配任务给外设,以进行数据传输;

3、控制外设和CPU之间传递信息;

4、提高并行程度,提高系统资源的利用率。5二、设备管理功能:1、提供与进程管理系统的接口;9.62、进行设备分配;9.53、实现输入输出(I/O)操作; 数据传送方式9.2、缓冲技术9.4、驱动9.74、通过各种技术实现CPU与外设、外设之间的并行、均衡操作。(通道、中断、缓冲)9.2、9.36三、设备的分类使 存储设备用 输入/输出设备特 终端设备性 脱机设备从 系统设备属关系 用户设备资 独享设备源 共享设备分 虚拟设备配 (SPOOLing技术用硬盘模拟输入输出设备。)

信 字符设备息

织 块设备7虚拟设备技术-Spooling系统

指通过共享设备来模拟独占型设备的动作,使独占型设备成为共享设备,从而提高了设备利用率和系统的效率的技术。实现虚拟设备技术的硬件和软件系统称为Spooling系统(假脱机系统)。

是对脱机输入、输出工作的模拟,它必须有高速随机外存的支持,这通常是采用磁盘。

特点:

1、提高了I/O速度;

2、将独占设备改造为共享设备;

3、实现了虚拟设备功能。8输入井和输出井:磁盘上的存储空间,模拟脱机输入和输出时的磁盘。输入缓冲区和输出缓冲区:这两个缓冲区是在内存中开辟的,输入缓冲区用于暂存由输入设备送来的数据,以后再传送到输入井。输出缓冲区用于暂存从输出井送来的数据,以后再传送给输出设备。输入进程SPi和输出进程SPo:模拟脱机输入和输出时的外围控制机。Spooling系统主要有以下三部分:9例:进程要求打印机;在某共享设备上的输出SPOOL存储区中为其分配一块存储空间;并为该进程的输出数据建立一个文件——相当于虚拟的行式打印机。各进程的输出都以文件形式暂时存放在输出SPOOL存储区中并形成了一个输出队列。输出SPOOL控制打印机进程,依次将输出队列中的各进程的输出文件最后实际地打印出来。10特点

1、用户进程并未真正分得打印机,即打印机未分给某个进程独占;

2、用户进程实际被分得的是共享设备中的一个存储区(或文件),即虚拟设备。实际的打印机由SPOOL调度依次逐个地打印SPOOL存储区中的数据。

3、独享设备使用效率提高了,因而系统效率也提高了。11设备独立性

用户在编制程序时,使用逻辑设备名,由系统实现逻辑设备到物理设备(实际设备)的转换,用户能独立于具体物理设备而方便使用。1.一个程序应独立于分配给它的某类设备的具体设备。即在用户程序中只指明I/O使用的设备类型即可。如在系统中配备了两台打印机,用户要打印时只要告诉系统要将信息送到打印机即可。程序要尽可能地与它使用的设备类型无关。即在用户程序中只要指出要输入或输出信息,至于信息输入或输出使用的设备不需用户指明。如果打印机、显示器和文件。3.

在UNIX系统中,把设备与文件统一处理。12设备独立性的优点1.方便用户编程2.使用程序运行不受具体的机器环境的限制3.便于程序移植13外围接口

计算机主机与I/O设备之间设置的逻辑控制部件,CPU与外设之间的接口,接受CPU发来的I/O命令,由它去控制外设工作。功能:1、实现数据的缓冲,使主机与外设的工作速度达到匹配;2、实现数据格式的变换;3、实现CPU与I/O设备之间的通信控制。组成:1、寄存器集合2、控制逻辑线路3、链接主机与接口、接口与外设的总线14控制流程 1、通过控制线接收和识别CPU发来的命令,控制I/O设备按CPU命令工作;

2、用状态控制寄存器记录设备的状态;

3、把计算机的数据格式转换成I/O设备所要求的格式或反之;

4、通过数据线和数据缓冲寄存器实现CPU与控制器之间的数据交换,为I/O设备提供数据缓冲;

5、发送中断请求并接受处理机发来的中断响应回答;159.2、数据传送方式四种方式:

1、程序直接控制方式

2、中断控制方式

3、DMA方式

4、通道方式选择和衡量的原则:

1、数据传送速度高,安全;

2、系统开销小,处理控制程序少;

3、提高系统利用率。16一、程序直接控制方式

由用户进程或CPU直接控制CPU或内存与外设之间的数据传递。NYI/O控制器17程序直接控制方式优点:

控制简单,不需要额外的硬件支持。缺点:

1、CPU与外设之间串行,CPU测试等待外设,利用率低;

2、不能实现外设之间的并行工作,设备利用率低;

3、测试设备标志触发器状态,无法发现并修正外设或硬件产生的错误。CGZ-是否忙,CJS-是否完成适用于:

CPU速度慢、外设少的系统。18二、中断控制方式并行设备控制器控制状态寄存器中断允许位CPU与设备控制器之间的中断请求线1920中断控制方式优点:

1、提高CPU利用率;

2、提高系统并行工作程度。缺点:

1、中断频繁发生时耗去CPU大量处理时间;

2、对高速外存,可能由于CPU来不及响应中断造成数据丢失。21三、DMA方式(直接存取DirectMemoryAccess)

在外设与内存之间开辟直接的数据交换通路,减少CPU的介入。22DMA控制器由三部分组成:主机与DMA控制器的接口;DMA控制器与块设备的接口;I/O控制逻辑;命令/状态寄存器CR内存地址寄存器MAR

数据寄存器DR

数据计数器DC23周期窃取24关于周期窃取1、CPU频繁访问内存,数据总线归CPU所有,传输一次需要一个总线周期;2、有DMA请求时,CPU暂停一下,把现行总线周期的下一个总线周期借给DMA请求者使用,CPU在该周期可进行除访问内存之外的其他操作;3、DMA控制器利用借来的总线周期,控制进行数据传送,传完后把总线使用权归还给CPU。25中断请求与DMA请求比较对CPU的打扰程度响应时刻优先级中断请求

让CPU停下来执行中断服务程序,保护断点、进行I/O传送;

在一条指令执行完后的最后一个周期采样;低DMA请求CPU暂停一下转让总线使用权,不现场保护和传送,DMA只借用CPU时间,CPU可以进行其它的操作;

每条指令执行的各阶段的周期末采样,有DMA请求,把下一个读写周期让给DMA使用;高26DMA方式中断方式:数据传送过程由CPU控制,一批数据可中断多次;DMA方式:CPU发启动指令做预置工作,数据传完的善后工作;优点:

进一步提高CPU的利用率。缺点:

1、高速外设增多,配置多个DMA控制器,开销大;

2、CPU仍要进行预置和中断处理。

27四、通道方式

一个独立于CPU的专门进行输入输出控制的处理机,控制外设与内存之间的数据交换; 有用于传送的通道指令,只在传送开始前受CPU启动,传送结束后向CPU发中断信号。

I/O处理机: 由运算和控制逻辑,累加器,寄存器构成,有指令系统,由通道程序控制。

28

通道指令: 在进程要求传送数据时由系统自动生成,存放在内存;

包含:被交换数据在内存或外设的地址、传送方向、数据块长度、外设的特征信息。

通道程序:由通道指令组成;其在内存中的起始地址通知I/O处理机:大型机:主存中一固定单元——通道地址字CAW;微型机:CPU与IO处理机通信区;每一条通道指令称为通道命令字CCW。

通道状态字CSW:

IO处理机的状态,包含有该通道及与之相连的控制器和设备的状态。29通道运算控制部件通道地址字CAW:记录通道程序在内存中的地址通道命令字CCW:保存正在执行的通道指令通道状态字CSW:存放通道执行后的返回结果通道数据字CDW:存放传输数据命令格式一般包括: 操作码、数据传输内存地址、特征位、计数器30通道控制方式的传送过程1、进程要求传递数据时,CPU发Start指令启动通道,指明I/O操作、设备号、对应通道;CPU随后调度另一个进程执行;2、通道被启动后,从内存读取通道指令,设置对应外设的I/O控制器中的控制状态寄存器;3、设备根据指令要求传送数据;4、传送完毕,I/O控制器通过中断请求线发出中断信号请求CPU进行中断处理;5、中断处理完后CPU返回段点继续执行。31CPU与通道的配合目态(目态程序)管态(I/O管理程序)通道(运行通道程序)请求I/O转管指令编制通道程序启动通道组织I/O操作I/O操作结束向CPU发出中断请求响应I/O中断请求登记或例外情况处理32CPU管理程序保护现场组织通道程序保存通道程序的始址于CAW启动I/O指令分析条件码启动成功使P阻塞,另选程序q运行保护程序q的现场分析中断原因处理I/O中断选择可运行程序请求启动程序程序q程序P用户程序判断状态执行通道程序控制I/O设备操作,执行情况记录在CSW出现中断事件CSW=>主存通道号,设备号送特定寄存器通道程序执行规定的操作设备控制器和设备123456I/O的操作全过程33通道的实现和管理-大型机

专门用来负责I/O工作的处理机,比CPU功能弱,速度慢,价格便宜,多个。I/O处理机和CPU共享内存。为各IO处理机和CPU规定不同优先次序;发生竞争时,存储器控制逻辑按优先次序予以响应;IO处理机从CPU那里“挪用”存储周期。34通道的实现和管理-微型机

芯片组中专门I/O处理的芯片,称为IOP(IOProcessor),发挥通道的作用。 与DMA控制器或I/O控制器相连设备的单纯数据传输通路。

IO处理器和CPU共享总线:CPU控制总线使用权;当CPU响应某IO处理机发出的请求总线信号,把总线使用权暂时转让给IO处理器—“挪用”总线周期。

35与DMA方式比较与DMA方式相同之处: 外设与内存间直接开辟数据传送通道,不用CPU介入;与DMA方式不同之处:

DMA:硬件控制,一个DMA控制器只控制一台(类)外设;

通道:软件控制,一个通道可控制多台不同类型的外设。36与中断方式的比较中断方式:

CPU执行程序控制传送,在此期间CPU不能做其他事;通道方式: 通道执行通道指令,与CPU无关,CPU执行正常程序,与通道程序并行。37通道的类型传送方式传送单位适用于字节多路通道多个子通道轮流传送以字节为单位交叉传送低速外设(打印机)选择通道一个外设以独占方式成块传送以块位单位传送高速外设(磁盘)数组多路通道多个子通道,子通道之间轮流传送,每个子通道上设备独占传送以块为单位交叉传送中速外设(磁带)383940通道方式优点:

1、减少CPU的介入,提高了CPU的利用率;

2、开销较DMA方式小,软件控制更独立、灵活;

3、并行程度高:

CPU与通道并行 通道之间并行 设备之间并行

41四种数据传送方式比较以CPU为中心以内存为中心程序直接控制方式中断方式DMA方式通道方式CPU连续介入准备和传送过程主机和外设不能并行接口少CPU在数据准备好外设中断请求时介入传送过程免去连续介入中断控制器CPU进行启动和收尾工作,不介入传送过程大多数时间并行,CPU利用率高DMA控制器硬件实现开销大通道指令软件实现开销较小429.3、中断技术一、基本概念:

1、中断

2、中断源、中断请求、中断响应、中断优先级

3、开中断与关中断

4、中断屏蔽

5、外中断与内中断

6、硬中断与软中断43中断

在进程执行期间,由于系统内发生非寻常或非预期的急需处理的事件,使CPU暂停当前进程的执行,转而去执行针对发生事件的处理程序,处理完后又返回被中断的进程继续执行或调度新进程执行。44中断源:

引起中断发生的事件(设备、部件、条件)。中断请求: 中断源向CPU发出的请求中断服务信号。中断响应:

CPU收到中断请求信号后转入对应处理程序的执行。中断优先级:

根据中断源的轻重缓急设定,同时发生比较后选择高优先级的先响应。 注意,中断优先级要高于当前进程PSW中的优先级才响应。45开中断与关中断开中断:

对PSW中的中断允许位置1,表示允许当前进程被中断。关中断:

对PSW中的中断允许位置0,表示不允许当前进程在执行期间被中断,保证其“原子性”。46中断屏蔽

用软件方式有选择地封锁部分中断,没有被屏蔽的中断仍能得到响应; 方式:在每类中断源设置一个中断屏蔽触发器,其状态决定其能否发出中断请求或得到中断响应,1—可以,0—不行;

47外中断与内中断外中断(狭义中断):

来自CPU和内存之外的中断,由与现行进程无关的中断源引起,不为当前进程服务,在两条指令之间响应,在系统级上下文中进行中断处理。内中断(陷入/异常):

CPU和内存内部产生的中断,由当前进程执行中发生的错误引起为当前进程服务,在一条指令的执行期间响应,在进程级上下文中进行陷入处理。48硬中断与软中断硬中断:

由CPU以外的I/O设备产生的中断,硬件中断可分为不可屏蔽中断NMI和可屏蔽中断INTR:NMI用于紧急情况的故障处理,如掉电、RAM奇偶校验错等INTR则用于外部依靠中断来工作的硬件设备

软中断: 由程序员事先安排,在通信进程之间用软件模拟硬中断的一种信号通信方式,收到软中断信号的进程在获得CPU后再进行中断响应。49二、

程中断请求判断是否响应关中断中断优先级判断保护被中断进程现场执行中断处理子程序恢复现场开中断返回中断点509.4、缓冲技术缓冲器:在CPU与外设之间起缓冲作用的存储设备或内存区。一、缓冲的引入:

1、缓和CPU与外设速度不匹配的矛盾;

2、减少中断次数,放宽对中断响应速度的要求;

3、提高CPU、通道和外设之间的并行程度,提高数据传送率。51二、缓冲的种类缓冲器的设置:

硬件缓冲器:I/O控制器中数据缓冲器

软件缓冲器:在内存划出若干单元作缓冲区根据缓冲单元的个数:

单缓冲:放数取数不能并行。

双缓冲:向其中一个放数时,同时从另一个取数。

多缓冲:一部分用于输入,一部分用于输出。

缓冲池:多个缓冲区统一管理,缓冲区可被进程共享, 用于输入和输出。52环形缓冲

在系统中设置若干缓冲区,并把这些缓冲区链接起来,这样若干个缓冲区就形成了一个环,故称环形缓冲区。53环形缓冲技术的使用

系统初始时,strat=in=out。 输入时,in与out若相等,则等待。否则,将信息送入in指向的缓冲区,填满后,in指向下一个缓冲区。

输出时,in与out若相等,则等待(意味着系统中没有数据可取)。否则,取出缓冲区中的信息,next指向下一个缓冲区。54三、缓冲池的管理1、缓冲池的结构:由多个缓冲区组成

缓冲区: 缓冲首部(设备号、数据块号、互斥标志位、 缓冲队列指针、缓冲器号) 缓冲体(存放数据)

缓冲区类型:

1)空白缓冲区(队列): F(em)L(em) 2)装满输入数据的缓冲区(队列):F(in)L(in) 3)装满输出数据的缓冲区(队列):F(out)L(out)552、缓冲池的操作

采用FIFO方式对队列中的缓冲区操作,队首出队列,队尾入队列。F(em)L(em)L(in)F(in)L(out)F(out)I/OI/OCPUCPU56申请和释放缓冲区的过程get-buf(type,number)BeginP(RS(type))P(S(type))P_buf=take-buf(type,number)V(S(type))Endput-buf(type,number)Begin P(S(type))

add-buf(type,number) V(S(type)) V(RS(type))End57输入设备输出设备F(em)L(in)F(in)L(em)L(em)F(out)L(out)F(em)CPUhin区lsout区nsin区mhout区z工作缓冲区收容输入提取输入收容输出提取输出589.5、设备分配设备分配任务:对进程提出的I/O请求,按一定策略分配资源,忙则等待。一、数据结构系统设备表SDT(系统一张)表目1设备类型设备标识表目i获得设备的进程DCT指针表目n…设备控制表DCT(每个设备一张)设备类型设备标识设备忙闲状态设备等待队列首尾指针COCT指针设备地址/设备号控制器表COCT(控制器一张)控制器标识控制器忙闲状态CHCT指针控制器等待队列首尾指针…通道表CHCT(通道一张)通道标识通道忙闲状态通道等待队列首尾指针…59二、设备分配1、原则:

1)充分发挥设备使用效率;

2)安全,避免死锁;

3)用户程序与具体设备无关。2、方式:

1)静态分配:作业执行前一次性分配,独占、安全、低效。

2)动态分配:根据申请进行动态分配。3、策略:

1)先请求先分配策略:

2)优先级高者分配策略:604、设备分配算法从SDT查到DCTP选中?按分配策略选占据设备的进程忙否?检查分给P是否安全安全?把设备分给进程P从DCT查COCT控制器忙?分配控制器给P从COCT查CHCT通道忙?分配通道给进程P启动I/O操作进程P发来I/O请求P进程等待TTTTFFFFTF619.7、设备驱动程序

驱动物理设备、DMA控制器、I/O控制器直接进行I/O操作的子程序的集合,是控制设备I/O工作的核心模块。

设备驱动程序的任务是接收来自与设备无关的上层软件的抽象请求,并执行这个请求,负责释放这些命令,并监督它们正确执行。功能:

1、解释用户I/O命令;

2、设置和测试I/O控制器中寄存器的值,指定操作类型和数据流向,启动设备进行I/O操作;

3、接收中断处理,继续传递数据和状态。62发出I/O请求操作类型(设备、读或写)信息地址传送的字节数用户进程输入输出控制进程阻塞调用者验证请求设备分配调用驱动程序校验状态唤醒调用者返回调用者初始化I/O传送数据状态返回控制进程设备驱动程序63设备驱动进程的状态

在系统初启时,系统为每类设备创建一个进程,执行的程序就是该设备的设备驱动程序。每类设备有一个I/O请求队列,在系统初始化时,将系统中所有设备的I/O请求队列置为空。设备驱动进程在该队列上睡眠。 接受到用户的I/O请求命令后,把用户的请求转换成I/O请求块,挂到相应设备的I/O请求队列。 一旦有I/O请求块挂入,唤醒该设备驱动进程。它被调度到时,从队列中取出一个I/O请求块,并按该块的内容执行一次I/O操作,发出I/O完成(或出错)中断信号。然后,检查

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论