(操作系统题目题型总结)第五章:设备管理

文章目录

  • 费翔林课本习题
    • 思考题
    • 应用题

费翔林课本习题

思考题

1.试述设备管理的基本功能(★★★)

【答案】

  • 克服由于设备和CPU速度不匹配所引起的问题,使主机和设备能够并行工作,提高设备使用效率
  • 将所有设备抽象为文件,将其统一在文件系统下,赋予文件属性,对设备的操作就类似于对文件的操作
  • 对各种设备进行抽象,配置设备驱动程序,屏蔽物理细节和操作过程,提供统一使用界面

基本功能有

  • 设备中断处理
  • 缓冲区管理
  • 设备分配和回收
  • 设备驱动管理
  • 实现虚拟设备

2.试述各种I/O控制方式的优缺点(★★★)

【答案】

①轮询方式

  • 特点:CPU与I/O串行工作
  • 优点:接口设计简单,设备量少
  • 缺点:CPU在信息传送过程中药花费很多时间用于查询和等待,而且一段时间内只能和一台外设交换信息,效率大大降低

②中断方式

  • 优点:I/O由于不必轮询设备的准备情况,CPU和设备可实现部分并行操作,资源利用更加充分
  • 缺点:如果中断次数太多,会耗费大量CPU时间

③DMA方式

优点

  • 它使主存与CPU的固定联系脱钩,主存既可以被CPU访问,又可以被外设访问
  • 在数据块传送时,主存地址的确定、传送数据的计数都由硬件电路直接实现
  • 主存开辟专门的数据缓冲区,及时供给和接受外设的数据
  • DMA传送块,CPU和外设并行工作,提高了系统效率
  • DMA在传送开始前要通过程序进行预处理,结束之后采用中断方式进行后处理

缺点

  • 每发出一次I/O指令,只能读写一个数据块。如果希望一次能够读写读个离散数据块,并把他么传送到不同的内存区域,则需要CPU发出多条指令以及多次中断才能完成

④:通道方式

优点:

  • 可以再次减少CPU对I/O操作的的干预
  • 由通道来管理和控制I/O操作,大大减少设备和CPU之间的逻辑联系,将CPU从琐碎的I/O的操作中解放了出来,实现了CPU和设备的并行操作、通道之间的并行操作、设备之间的并行操作,提高了整个系统的效率

3.试述DMA传输信息的工作原理

【答案】

分为预处理、数据传送、后处理这三个过程

①预处理

由CPU完成一些必要的准备工作

首先,CPU执行几条I/O指令,用以测试I/O设备状态,再向DMA控制器的有关寄存器置初值、设置传送方向,启动该设备等等。然后CPU继续执行原来的程序,直到I/O设备准备好发送的数据(输入情况)或接受的数据(输出情况)时,I/O设备向DMA控制器发送DMA请求,再由DMA控制器向CPU发送总线请求,用以传输数据

  • 主存起始地址->AR
  • I/O设备地址->DAR
  • 传送数据个数->WC
  • 启动I/O设备

③后处理

DMA控制器向CPU发出中断请求,CPU执行中断服务程序做DMA结束处理,包括校验送入主存的数据是否正确,测试传送过程中是否出错(如果出错则转入诊断程序)以及决定是否继续使用DMA传送其他数据块等等

①:I/O中断处理程序

  • 当进程请求I/O操作时,通常被挂起,直到数据传输结束并产生I/O中断时,操作系统接管CPU后转向中断处理程序执行
  • 当设备向CPU提出中断请求时,CPU先响应请求并转入中断处理程序,它需要做的工作有:检查设备状态寄存器内容,判断产生中断原因,根据I/O操作的完成情况进行相应处理;若数据传输有错误,应该向上层软件 告设备出错信息;若正常结束,应该唤醒等待传输的进程,使其转换为就绪态

②:设备驱动程序

  • 设备驱动程序包括与设备密切相关的所有代码,其任务是把用户提交的逻辑I/O请求转化为物理I/O操作的启动和执行,同时监督设备是否正确执行,管理数据缓冲区,进行必要的纠错处理
  • 三个功能:设备初始化、执行涉笔驱动例程、调用和执行中断处理程序

③:独立于设备的I/O软件

  • 基本功能是执行适用于所有设备的常用I/O功能,并向用户层软件提供一致性接口
  • 功能:设备命名和保护、提供与设备无关的块尺寸、缓冲技术、设备分配和状态追走、错误 告

④:用户层软件

  • 用户层软件实现了与用户交互的接口,用户可以直接使用该层提供的、与I/O操作相关的库函数对设备进行操作
  • 接着,用户层软件就会负责将用户的请求翻译为等价的系统调用

总结:

I/0软件分为4层:设备中断处理程序、设备驱动程序独立于设备的I/0软件、用户空间的I/O软件。设备中断处理程序通常是设备驱动程序的组成部分,置于底层,其主要工作有分析中断类型以做出相应的处理,检查和修改进程状态等,它的任务要尽量少,以便提高性能;设备驱动程序中包括与设备相关的所有代码,其工作是把用户提交的逻辑I/O请求转化为物理I/O操作的启动和执行,如设备名转化为端口地址、逻辑记录转化为物理记录、逻辑操作转化为物理操作等,它为上层软件屏蔽所有硬件细节;独立于设备的I/O软件的基本功能是实现适用于所有设备的常用I/O0 操作并向上层软件提供一致性接口,如设备命名、设备保护缓冲管理、存储块分配等;用户空间的I/O软件包括在用户空间运行的I/O库函数和SPOOLing程序

7.外部设备与CPU并行工作的基础是什么

【答案】

通道

8.什么是通道命令字(CCW)和通道程序

【答案】

通道是一个具有特殊功能的处理器,它有自己的指令和程序,专门负责数据输入输出的传输控制 (CPU把传输控制的功能下放给通道)。通道受CPU的I/O指令启动、停止或改变其工作状态。通道的基本功能是按I/O指令要求启动I/O设备,执行通道指令,组织I/O设备和主存进行数据传输,向CPU 告中断等

  • ?通道指令:又叫通道控制字 (CCW),它是通道用于执行I/O操作的指令,它可以由管理程序存放在主存的任何地方,由通道从主存取出并执行

  • ?通道程序:由通道指令组成,它完成某种外围设备与主存传送信息的操作,如将磁带记录区的部分内容送到指定地址的主存缓冲区内

9.什么是通道地址字(CAW)和通道状态字(CSW)

  • CAW:用来存放通道程序首地址的主存固定单元称为“通道地址字”。

  • CSW:用于记录通道和设备执行情况的主存单元

10.试述采用通道技术时I/O操作的全过程

【答案】

具有通道装置的计算机系统的主机、通道、控制器和设备之间采用四级连接,实施
三级控制。一个CPU通常可以连接若干通道,一个通道可以连接若干控制器,一个控制器可以连接若干设备。CPU通过执行I/O指令对通道实施控制,通道通过执行通道命令对控制器实施控制,控制器发出动作序列对设备实施控制,设备执行相应I/O操作。采用I/O通道设计后,I/O操作过程如下:CPU在执行主程序时遇到I/O请求,启
动在指定通道上选址的设备,一旦启动成功,通道开始控制设备进行操作,这时CPU就可以执行其他任务并与通道并行工作,直到I/0操作完成;当通道发出I/O操作结束中断时,处理器才响应并停止当前工作,转而处理I/0操作结束事件

11.为什么要引入缓冲技术,基本思想是什么(★★★)

【答案】

引入原因

  • 解决CPU与设备之间速度不匹配的矛盾与协调逻辑记录大小与物理记录大小不一致的问题
  • 提高CPU和设备的并行性
  • 减少I/O操作对CPU的中次数
  • 放宽对CPU中断响应时间的要求

基本思想:实现缓冲技术的基本思想如下:当进程执行写操作输出数据时.先向系统申请一个输出缓冲区然后将数据送至缓冲区,若是顺序写请求.则不断地把数据填人缓冲区,直到装满为止,此后进程可以继续计算,同时,系统将缓冲区的内容写到设备上。当进程执行读操作输人数据时,先向系统申请一个输 人缓冲区,系统将设备上的一条物理记录读至缓冲区,根据要求把当前所需要的逻辑记录从缓冲区中选出并传送给进程

12.试述常用的缓冲技术(★★★)

【答案】

单缓冲:采用该策略,操作系统会在主存中为其分配一个缓冲区(一个缓冲区大小一般就是一个块)。具体来说:

  • 当缓冲区数据非空时,不能向缓冲区冲入数据,只能从缓冲区中把数据传出
  • 当缓冲区数据为空时,可以向缓冲区冲入数据,但必须把缓冲区冲满以后,才能从缓冲区中传出数据

双缓冲:采用该策略,操作系统会在主存中为其分配两个缓冲区(一个缓冲区大小一般就是一个块)

循环缓冲区:有时单缓冲和双缓冲并不能满足条件,所以可以将多个大小相等的缓冲区链接成一个循环队列

缓冲池:和线程池等概念类似,它由系统中共用的缓冲区组成。这些缓冲区按照使用状况可以分为

  • 空缓冲队列
  • 装满输入数据的缓冲队列
  • 装满输出数据的缓冲队列

13.什么是驱动调度哪些常用的驱动调度技术

【答案】

在繁重的I/O负载下,同时会有若干传输请求来到并等待处理,系统必须采用一种调度策略,能够按照最佳次序执行要求访问的诸多请求,这叫做驱动调度,所使用的的算法叫做驱动调度算法

14.外部设备分为哪些类型,各类设备的物理特点是什么★★★)

【答案】

  • 存储型设备:如磁盘机等,以存储大量信息和快速检索为目标,在系统中存储持久性信息,它作为内存的扩充,又叫做外存
  • I/O型设备:如显示器等,他们把外界信息输入计算机,把计算结果从计算机中输出,完成计算机之间的通信或人际交互

15.什么是设备独立性(★★★)

【答案】

用户通常不指定物理设备,而是指定逻辑设备,使得用户作业和物理设备分离开来,再通过其他途径建立逻辑设备和物理设备之间的映射,设备的这种特性叫做设备独立性

在具有设备独立性的系统中,用户编写的程序可以访问任何设备而无需事先指定物理设备 ,也即程序中所指定的设备与物理设备无关,逻辑设备名是用户命名的,是可以更改的,物理设备名是系统规定的,不能更改。设备管理功能之一就是把逻辑设备名转换为物理设备名

16.解释设备类、设备相对 和设备绝对

【答案】

实现设备分配,系统中应该建立设备分配数据结构:设备类表和设备表。

  • 系统拥有一张设备类表,每类设备对应于设备类表的一个表项,其中包括设备类、总台数、空闲台数和设备表起始地址
  • 每类设备有各自的设备表,用来登记该类设备中的每台物理设备,所包含的内容有物理设备 ,逻辑设备 ,占有设备的进程 ,已分配/未分配

17.解释静态分配与动态分配

【答案】

  • 静态分配:在作业执行前,将所需要的设备全部分配给它,当作业在执行过程中不再需要使用这类设备或者作业结束将要撤销时再收回设备
  • 动态分配:在作业执行过程中要求输出一批信息时,系统才把打印机分配给作业,当一个文件输出完毕要关闭时,系统就收回分配给此作业的打印机

18.什么是井、输入井、输出井/p>

【答案】

输入井和输出井是指在磁盘上开辟出的连个存储区域

  • 输入井模拟脱机输入时的磁盘,用于收容I/O设备输入的数据
  • 输出井模拟脱机输出时的磁盘,用于说荣用户程序的输出数据

19.井管理程序有什么功能是如何工作的

【答案】

作业执行过程中要求启动某台设备进行I/O操作时,作业控制程序截获这个要求并调用井管理程序控制从相应输入井读取信息,或将信息传送至输出井

20.什么是虚拟技术现虚拟设备的主要条件是什么(★★★)

【答案】

虚拟技术:在一台共享设备上模拟若干台独享设备的操作,把独占设备变成逻辑上的共享设备,这种技术叫做虚拟设备技术

实现虚拟设备的条件是硬件要有大容量的缓冲区,软件要有预输入程序和缓输出程序,井管理程序

21.试述SPOOLing系统和作业调度之间的关系

【答案】

SPOOLing系统是用一类物理设备模拟另一类物理设备的技术,能使独占式设备变为共享式设备。作业调度程序根据预定的调度算法选择收容状态的作业运行作业表示作业调度程序运行作业调度的依据,是SPOOLing系统和作业调度程序共享的数据结构

22.为什么SPOOLing技术又叫做假脱机技术

【答案】

所谓脱机指的就是脱离主机的控制进行输入/输出操作,SPOOLing的意思是外部设备同时联机操作,是一种用软件模拟的脱机技术

23.SPOOLing是如何把独占式设备改造成共享式设备的(★★★)

【答案】

由于现代计算机有较强的并行操作能力,处理器在执行计算的同时可进行联机外
部设备操作,操作系统将一批作业从输入设备上预先输人至磁盘的输人缓冲区中暂存,这称为“预输人”。此后,由作业调度程序调度作业执行,作业使用数据时不必再启动输入设备,只要从磁盘的输人缓冲区中读人即可;类似地,作业执行过程中不必直接启动输出设备,只要将作业的输出数据暂时保存到磁盘的输出缓冲区,当作业执行完毕后,由操作系统组织信息成批输出,这称为“缓输出”。这样,不但设备利用率提高,作业运行时间也缩短了,因为作业执行时需要1/0数据时不再和低速设备联系,而是与高速磁盘交互。可见,操作系统提供外部设备联机操作功能后,不但系统效率会有很大提高,而且使得每个作业感觉各自拥有所需的独古型设备。例如,虽然系统只有两台物理打印机,但是运行的5个作业都感到各自拥有一台速度如同磁盘样快的打印机,可以说采用这种技术的操作系统提供了虚拟设备。SPOOLing 技术是用类物理设 备模拟另一类物理设备的技术,是使独古型设备变成共享设备的种技术

应用题

【答案】

按照次序5、3、2、1、4进行调度可以使磁盘的旋转圈数最少。平均用1/2周定位,再加上1/4周读出记录。总处理时间为 1 2 + 1 4 + 1 2 + 1 4 + 1 + 1 2 + 1 4 + 1 = 4.25 frac{1}{2} +frac{1}{4}+frac{1}{2}+frac{1}{4}+1+frac{1}{2}+frac{1}{4}+1=4.25 21?+41?+21?+41?+1+21?+41?+1=4.25

【答案】

  • 对位于当前柱面的新请求,只要–到达就可得到服务,但对其他柱面的服务则不然。如SST下算法,一个离当前柱面远的请求,可能其后不断有离当前柱面近的请求到达而得不到服务(饥饿)
  • 可划定一个时间界限,把这段时间内尚未得到服务的请求强制移到队列首部,并标记任何新请求不能插到这些请求前。对于SSTF算法来说,可以重新排列这些老请求,以优先处理
  • 可避免分时进程等待时间过长而拉长响应时间

【答案】

(1)如果不成组,那么一个逻辑记录就会占用一个物理块,而0.6英寸就是480个字符。所以利用率为160/(480+160)=25%

  • 这里假如以5个逻辑记录为一组:此时每5个逻辑记录会构成一个物理块,所以利用率就是(160×5)÷(480+160×5)=62.5%

(2)不成组,此时1500×((480+160)/800)=1200

(3)假定为x,那么就要满足不等式160X÷(480+160X)>=0.5,所以至少为3块

【答案】

(操作系统题目题型总结)第五章:设备管理

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月22日
下一篇 2022年2月22日

相关推荐