1、全国自考操作系统(设备管理)模拟试卷 1 及答案与解析一、单项选择题1 是操作系统采用的以空间换取时间的技术。(A)Spooling(B)通道(C)虚拟存储器(D)动态重定位2 用共享设备去模拟独占设备,从而达到共享、快速的效果的设备称为_。(A)模拟设备(B)系统设备(C)共享设备(D)虚拟设备3 中断和 DMA 在操作过程中_嵌套。(A)都不可以(B)中断可以,但 DMA 不可以(C)都可以(D)中断不可以,但 DMA 可以4 UNIX 操作系统在中断处理返回后,将_。(A)选择刚被中断的进程执行(B)选择就绪队列中的一个进程执行(C)等待下一个中断的发生(D)按预定策略选择进程执行5 通
2、道又称 IO 处理机,它能实现之间的信息传输。(A)主存和外设(B) CPU 和外设(C)外存和外设(D)主存和 CPU6 存取盘块中的信息一般可分几部分时间,其中花费最多的是_。(A)等待时间(B)寻道时间(C)传送时间(D)访问时间7 在 UNIX 中,若一个缓冲控制块 buf 处于设备队列,则它还可能位于_。(A)NODEV 队列或 IO 请求队列(B)自由队列或 IO 请求队列(C)另一设备队列或 NODEV 队列(D)NODEV 队列或自由队列8 操作系统对于带有预读的字符块读入采用_方式。(A)同步读(B)延迟读(C)异步读(D)重复读二、填空题9 从设备的管理模式分类,可以分为_
3、和_。10 Spooling 是指_ 的意思。操作系统用它实现 _的功能。11 在 UNIX 中要知道哪些目录是安装在哪些设备上可用 _命令。12 能影响中断响应和响应次序的技术是_和_。13 移臂调度算法中除了先来先服务算法外,其余三种调度算法都是根据欲访问者的_来进行调度的。14 UNIX 采用_以减少对块设备的访问次数,从而提高系统的 _。三、简答题15 什么是物理设备? 什么是逻辑设备 ?两者有什么区别与联系 ?16 设备管理应包括哪些功能?17 时钟中断有什么功能?18 列举和比较磁盘调度的几种主要算法。19 说明 UNIX 缓存管理采用的主要算法及实施方法。20 在 UNIX 系统
4、的缓冲区管理中,设置设备队列和自由队列的目的各是什么 ?21 字符设备管理时采用什么缓冲技术?四、判断题22 操作系统对磁盘上的普通文件以扇区为单位读写。( )(A)正确(B)错误23 发生中断时,进程就一定从用户态转换成核心态。( )(A)正确(B)错误24 在时钟中断处理时,没有任何进程占用 CPU。( )(A)正确(B)错误25 采用预读策略,减少了进程对磁盘的读操作次数。( )(A)正确(B)错误全国自考操作系统(设备管理)模拟试卷 1 答案与解析一、单项选择题1 【正确答案】 A【知识模块】 设备管理2 【正确答案】 D【知识模块】 设备管理3 【正确答案】 B【知识模块】 设备管理
5、4 【正确答案】 D【试题解析】 在操作系统中,中断处理都是在核心态下进行的。如果中断前处理机状态为核心态,则在执行完设备处理子程序后就恢复现场,然后用中断返回指令回到中断前状态,继续执行被中断的操作系统程序。非 A:如果中断前为用户态,则在执行完设备处理子程序后,先要检查重新调度标志 runrun 是否设置。如若已经设置,则调用进程切换调度程序进行进程调度,中断时被保护的现场就不必立即恢复。如果 runrun 标志没有设置,则恢复保护在堆栈中的现场,然后用中断返回指令恢复 pc、ps,继续在用户态下执行被中断的程序。【知识模块】 设备管理5 【正确答案】 A【知识模块】 设备管理6 【正确答
6、案】 B【知识模块】 设备管理7 【正确答案】 B【试题解析】 当一个读写操作完成后,就要求立即释放对应的释放缓冲控制块,并加入自由 buf 队列的队尾,表示它可以被考虑移作他用。这个 buf 仍留在原设备buf 队列中,也就是说一个缓冲区的 buf 处于空闲状态时,总是同时存在于两个队列中,一是自由 buf 队列,二是相应的设备 buf 队列。当对某一设备提出 IO 请求,必须用缓冲控制块 buf 先形成 IO 请求块,系统把它挂在相应设备的 IO 请求队列的队尾,同时也位于该设备 buf 队列中。【知识模块】 设备管理8 【正确答案】 C【试题解析】 对于一般读,进程需要同步等待欲读入的数
7、据,以便作下一步的处理,系统采用了同步读的方式。当一个进程顺序读取文件时,为了减少等待时间,核心还提供了预读盘块操作。对于预读的信息,由于进程当前并不立即要用,甚至有可能不用,故系统采用了异步读的方法,进程不等待读操作的结束。【知识模块】 设备管理二、填空题9 【正确答案】 物理设备、逻辑设备【知识模块】 设备管理10 【正确答案】 联机的外围设备同时操作、虚拟设备【知识模块】 设备管理11 【正确答案】 mount【知识模块】 设备管理12 【正确答案】 中断屏蔽、中断优先级【知识模块】 设备管理13 【正确答案】 柱面位置【知识模块】 设备管理14 【正确答案】 缓冲技术、吞吐率【知识模块
8、】 设备管理三、简答题15 【正确答案】 物理设备和逻辑设备是根据设备的管理模式来分类的。物理设备指计算机系统硬件配置的实际设备,这些设备在操作系统内具有一个唯一的符号名称,系统可以按照该名称对相应的设备进行物理操作。逻辑设备是指一种在逻辑意义上存在的设备,在未加以定义前,它不代表任何硬件设备和实际设备,它也是独立于物理设备而进行输入输出操作的一种“虚拟设备” 。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统执行时,是使用物理设备名称。系统是通过逻辑设备表映射到物理设备的。【知识模块】 设备管理16 【正确答案】 设备管理应包括的功能有:(1)动态地记录设备的状态。在有通道的系统中,
9、还应掌握通道、控制器的工作状态。(2)为满足进程的 IO 请求,按某种调度算法分配和回收设备和其他资源。(3)针对不同的设备请求,完成相应的 IO 中断和设备控制器操作,通过设备处理程序或设备驱动程序完成对设备的直接控制和实际的 IO 物理操作过程。【知识模块】 设备管理17 【正确答案】 时钟中断具有如下功能:(1)系统时钟主要用于控制系统处理器执行指令的速度。(2)日历时钟产生一个精确的时间计数,程序对此进行转换,给出与日历相符的日期和时间,它与处理器是否工作和停止无关。(3)实时时钟每秒提供若干个脉冲信号,每个脉冲信号产生一个时钟中断,时钟中断提醒处理器有重要的事情要做,需要暂停当前操作
10、。【知识模块】 设备管理18 【正确答案】 磁盘调度的几种主要算法有:(1)先来先服务调度算法(BCBS)。根据进程请求访问磁盘的先后次序进行调度,其优点是公平、简单且每个进程的请求都能依次得到处理。这种调度法产生的磁头移动幅度太大,寻道时间也较长。此外,磁头频繁地大幅度变向移动,容易产生机械振动和误差,对使用寿命也有损害。(2)最短寻道时间优先调度算法(SSAB)。磁头总是先移到距当前磁道最近的磁道上去。本算法具较好的寻道性能,但其并不能保证平均寻道时间最短。这种调度的缺点是可能导致某些请求长期得不到服务,即导致进程饥饿现象。(3)扫描算法(SCAN)( 又称为电梯调度算法 )。读写头从磁盘
11、的一端出发,向另一端移动,遇到所需的磁道时就进行服务,直至到达磁盘的另一端的最后一个请求服务的磁道。在另一端上,磁头移动方向倒过来,继续做请求队列中所需的服务,这样磁头就连续地从盘的一端扫到另一端。该方法不考虑欲访问磁道与磁头当前所在磁道的间距,优先考虑的是磁头当前移动的方向上的服务请求。该方法既能获得较好的寻道性,又能防止进程饥饿,磁头也不会频繁改变移动方向,对延长磁盘的寿命也极为有利,故被广泛地采用。(4)循环扫描算法(CSCAN)。规定磁头单向扫描服务请求,当到达磁盘的另一端的最后一个请求服务的磁道时,“开空车” 回到最靠近起始端的请求服务的磁道。这个方法可使等待时间变得更均匀,避免了扫
12、描算法导致的某些进程磁盘请求(在靠近起始段,刚巧落在磁头前进方向的后面的请求)的严重延迟。【知识模块】 设备管理19 【正确答案】 缓存管理采用的主要算法及实施方法为:当进程需要读写某一设备块时,首先搜索相应的设备 buf 队列,如该块已在设备buf 队列中,就直接读写队列中的缓存块信息,避免了磁盘物理 IO 。当欲读写的设备块不在设备缓存队列中时,就要在空闲缓存队列中分配一个缓冲区用于某个设备的读写操作。与空闲队列相关的最关键的是淘汰算法,UNIX 系统中采用了 LRU 算法。具体实现方法是:当要求分配一个空闲缓冲区时,系统从自由buf 队列的队首取出,并把 buf 的标志位 b_flags
13、 置为“ 忙”,因为 buf 同时存在于某个设备 buf 队列中,这时要从原设备的 buf 队列中取出这个 buf,将其插入申请该缓冲区的设备 buf 队列中。所以,当一个缓冲区刚被分配用于读、写某块设备上某字符块时,它的 b_flags 标志位被置为 “忙”,它一定位于相应的设备 buf 队列中,而不在自由 buf 队列中。当读写操作完成后,就要求立即释放所占用的缓冲区,把这个缓冲区 buf 的b_flags 标志位置为 “空闲”,并加入自由 buf 队列的队尾。这个 buf 仍留在原设备buf 队列中,也就是说一个缓冲区的 buf 处于空闲状态时,总是同时存在于两个队列中,一是自由 buf
14、 队列,二是相应的设备 buf 队列。当一次写操作未写满缓冲区时,就采用“延迟写” ,即不急于写到设备上去,而是把这个缓冲区的标志位置上延迟写的标志,并把这个 buf 挂到自由 buf 队尾,同时留在这个设备的 buf 队列中。缓冲区既留在原设备的 buf 队列中,又同时留在自由 buf 队列中的好处有如下两点。其一,若再次需使用设备队列这个缓冲区的信息时,只需简单地从自由 buf 队列中抽出相应的 buf,仍按原状使用缓冲区的信息,从而减少了对设备的 IO 操作。其二,若将一个缓冲区移作他用,则只需从自由 buf 队列和原设备 buf 队列中同时抽出,插入新的设备 buf 队列。这就实现了进
15、程对有限缓冲区的共享。为了使释放的缓冲区尽可能长地保留原来的使用信息,每次释放缓冲区时总是将其buf 插入到自由 buf 队列的队尾。分配缓冲区时,总是从自由 buf 队列队首抽出一个空闲的 buf。并且当一个 buf 在自由队列内移动时,只要有再次读写的需要时,就立即从自由 buf 队列中抽出,使用完毕后释放该缓冲区,又将其 buf 插入到自由buf 队列队尾。这就保证了在所有自由缓冲区中被重新分配的是最久未使用的。已经设置“延迟写 ”标志的缓存,虽然已经在自由 buf 队列中,实际上其内容尚未写到相应设备上。当它已经移到自由 buf 队列队首准备移作他用时,不能立即对它进行重新分配,而是要
16、提出 IO 请求,以便将其内容写到相应设备的指定字符块上。为此将它从自由 buf 队列中抽出,而只留在原设备 buf 队列中。写操作结束后,这种缓存又被释放进入自由 buf 队列的末尾(也有插到队列首),同时仍保留在原设备buf 队列中。【知识模块】 设备管理20 【正确答案】 设置设备队列是为了尽量重复使用已读入缓存的块设备的字符块内容,在对设备执行写操作时,就把信息写入相应的缓存块中,以减少对实际设备IO 的次数。设置自由队列的目的是实现对有限的缓冲资源的共享。对已读写完成的缓冲,实施LRU 淘汰算法,使经常读写的缓存保持尽可能长的时间,要淘汰缓存总是最长时间不用的。【知识模块】 设备管理
17、21 【正确答案】 字符设备管理时采用缓冲区较小、易管理的字符缓冲区技术。字符设备也采用多缓冲技术,但缓冲区的规模较小,容量大约为 64 个字符。由若干缓冲区构成共享的缓冲池,管理方式比较简单。UNIX 对字符缓冲区采用单链结构,系统初始启动时,所有的字符缓冲区都链在空闲缓冲区队列中,每次分配和释放缓冲区都在队首进行。【知识模块】 设备管理四、判断题22 【正确答案】 B【试题解析】 尽管对于磁盘本身,扇区是最基本的读写单位,但操作系统为了提高数据传输的效率,是以块为单位进行读写,一块一般等于 1、2、4、8 或 16 个扇区。【知识模块】 设备管理23 【正确答案】 B【试题解析】 在核心态发生中断时,就不是属于这种情况。【知识模块】 设备管理24 【正确答案】 B【试题解析】 在时钟中断时,尽管处理工作与现运行进程没有关系,但也没有进行进程切换,所以现运行进程不变,在 UNIX 系统中,时钟中断中所涉及的时间计数等也记人现运行进程的系统时间。【知识模块】 设备管理25 【正确答案】 B【试题解析】 预读是为了减少进程同步等待读操作完成的时间,预读读入的盘块不一定有用,采用预读策略,反而可能增加了进程对磁盘的读操作次数。【知识模块】 设备管理
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1