第一章
一、 选择题
1. 在计算机系统中配置操作系统的主要目的是( ),操作系统的主要功能是管理计算机系统中的( ),其中包括( )管理和( )管理,以及设备管理和文件管理。这里的( )管理主要是对进程进行管理。 (1)A.增强计算机系统的功能; B.为了使用系统的资源; C.提高系统的运行速度;
D.提高系统使用效率,合理地组织系统的工作流程,以提高系统吞吐量。 (2)A.程序和数据;B.进程;C.资源;D.作业;E.任务。
(3)(4)A.存储器;B.虚拟存储器;C.运算器;D.处理机;E.控制器。
2.操作系统有多种类型:(1)允许多个用户以交互方式使用计算机的操作系统,称为( );(2)允许多用户将若干个作业提交给计算机系统集中处理的操作系统称为( );(3)在( )的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应。 A.批处理操作系统;B.分时操作系统;C.实时操作系统; D.微机操作系统;E.多处理机操作系统。
3.在下列性质中,哪一个不是分时系统的特征。( ) A.交互性 B.多路性 C.成批性 D.独占性 4.实时操作系统追求的目标是( )。
A.高吞吐率 B.充分利用内存 C.快速响应 D.减少系统开销 5. 现代操作系统的两个基本特征是( )和资源共享 A.多道程序设计 B.中断处理
C.程序的并发执行 D.实现分时与实时处理 6.引入多道程序的目的在于( )。
A.有利于代码共享,减少主、辅存信息交换量。 B.提高实时响应速度。 C.充分利用CPU,减少CPU等待时间 D.充分利用存储器 7.操作系统是一组( ).
A.文件管理程序 B.中断处理程序 C.资源管理程序 D.设备管理程序 8.( )不是操作系统关心的主要问题.
A.管理计算机裸机 B.设计、提供用户程序与计算机硬件系统的界面 C.管理计算机系统资源 D.高级程序设计语言的编译器
9.用户在一次计算机过程中,或者一次事物处理中,要求计算机完成所做的工作的集合,这是指( ).
A.进程 B.程序 C.作业 D.系统调用
10.订购机票系统处理各自各个终端的服务请求,处理后通过终端回答用户,所以它是一个( )。
1
操作系统引论
A.分时系统 B.多道批处理系统 C.计算机网络 D.实时信息处理系统 11.多道程序设计是指( )。 A.在实时系统中并发运行多个程序 B.在分布系统中同一时刻运行多个程序 C.在一台处理机上同一时刻运行多个程序 D.在一台处理机上并发运行多个程序
12.( )操作系统允许多个用户在其终端上同时交互地使用计算机。 A.批处理 B.实时 C.分时 D.多道批处理 13.设计批处理多道系统时,首先要考虑的是( )。 A.灵活性和可适应性 B.系统效率和吞吐量 C.交互性和响应时间 D.实时性和可靠性
14.在分时系统中,为使多个用户能够同时与系统交互,最关键的问题是系统能及时接受多个用户的输入,当用户数为100时,为保证响应时间不超过2秒,此时的时间片最大应为( )。
A.10ms B.20ms C.40ms D.100ms
15.UNIX操作系统最初是由Bell实验室推出的,它属于( )操作系统。 A.单用户多任务 B.单用户单任务 C.多处理机 D.多用户多任务 16.在下列系统中( )是实时控制系统。 A.民航售票系统 B.办公室自动化系统 C.激光照排系统 D.火箭飞行控制系统
17.在多道系统中,为了充分利用各种资源,系统总是优先选择( )的多个作业投入运行。
A.适应于内存容量的 B.计算量大的 C.I/O量大的 D.计算型和I/O型均衡的
18.作业调度程序应从处于( )状态的队列中选取适当的作业投入运行。 A.就绪 B.提交 C.等待 D.后备
19.下列进程状态转换中,绝对不可能发生的状态转换是( )。 A.由就绪到执行 B.由执行到就绪 C.由就绪到阻塞 D.由阻塞到就绪
20.( )不是设计实时操作系统主要的追求目标。
A.安全可靠 B.资源利用率 C.及时响应 D.快速处理 二、 填空题
1.操作系统的主要设计目标是( )和( )。
2.网络操作系统把计算机网络中的各台计算机有机地联结起来,实现各台计算机之间的( )及网络中各种资源的( )。
3.操作系统的主要功能是( )、( )、( )、( )。 三、 简答题:
2
1. 操作系统具有哪几大特征?它的最基本特征是什么?
答:操作具有四个特征:1.并发性,即宏观上在一段时间内有多道程序在同时运行。2.共享性,即系统中的资源可供内存中多个并发执行的进程共同使用。3.虚拟性,即通过某种技术把一个物理实体虚拟为多个逻辑上的对应物。4.异步性,即每道程序每一次在内存中的执行方式都是不可预知的。并发和共享是操作系统两个最基本的特征,它们又是互为存在条件。一方面,资源共享是以程序(进程)的并发执行为条件的,若系统不允许程序并发执行,自然不存在资源共享问题;另一方面,若系统不能对资源共享实施有效管理, 协调好诸进程对共享资源的访问,也必然影响到程序并发执行的程度,甚至根本无法并发执行。
试述缺页中断与一般中断的区别。P84
4、操作系统有哪几种基本类型,各自特点是什么?
第二章 处理机管理
一、选择题
1.在下列叙述中,错误的一条是( )。 A.操作系统是用户与计算机之间的接口。
B.程序的并发执行,使程序失去了顺序执行时具有的封闭性和可再现性。 C.进程从一个状态到另一个状态的转换,都是靠使用不同的源语来实现的。
D.在单CPU的系统中,任何时刻处于就绪状态的进程有多个,而且只有处于就绪状态的进程经调度程序选中后才可进入运行状态。 2.进程调度是从( )选择一个进程投入运行。
A.就绪队列 B.等待队列 C.作业后备队列 D.提交队列 3.下列叙述中,正确的一条是( )。 A.分时系统中,时间片越小,响应时间越长
B.多道程序的引入,主要是为了提高CPU及其它资源的利用率 C.飞机票机票系统是分时系统
D.PCB是进程存在的唯一标志,而程序是系统感知进程存在的唯一实体 4.一个进程被唤醒,意味着( )。
A.改进程重新占有了CPU B.进程状态变为就绪 C.它的优先权变为最大 D.其PCB移至就绪队列的队首 5.进程和程序的本质区别是( )。
A.存储在内存和外存 B.程序是进程的一部分 C.分时使用和独占使用计算计资源 D.动态和静态特征 6.系统感知进程的唯一实体是( )。
A.JCB B.FCB C.PCB D.SJT 7.一进程在某一时刻具有( )。
A.一种状态 B.二种状态 C.三种状态 D.四种状态 8.进程从运行状态变为等待的原因可能是( )。
3
A.输入/输出事件发生 B.时间片用完 C.输入/输出事件完成 D.某个进程被唤醒 9.进程创建原语的任务是( )。
A.为进程编制程序 B.为进程建立PCB表
C.为进程分配CPU D.为进程分配所需的各种资源 10.进程被创建后即进入( )排队。
A.阻塞队列 B.就绪队列 C.缓冲队列 D.运行队列 5.在分时操作系统中,进程调度经常采用( )算法。
A.先来先服务 B.最高优先权 C.时间片轮转 D.随机 11.( )是作业存在的惟一标志。
A.作业名 B.进程控制块 C.作业控制块 D.程序名
12.作业调度算法的选择常考虑因素之一是使系统有最高的吞吐率,为此应( )。 A.不让处理机空闲 B.能够处理尽可能多的作业 C.使各类用户都满意 D.不使系统过于复杂 13.进程从运行状态进入就绪状态的原因可能是( )。 A.被选中占有处理机 B.等待某一事件 C.等待的事件已发生 D.时间片用完
14.( )是指从作业提交系统到作业完成的时间间隔。 A.周转时间 B.响应时间 C.等待时间 D.运行时间 15.由各作业JCB形成的队列称为( )。 A.就绪作业队列 B.阻塞作业队列 C.后备作业队列 D.运行作业队列
16.作业调度选中一个作业后,按作业控制说明书中第一个作业步的要求创建该作业的进程,并使进程的状态为( )。 A.就绪
B.运行
C.等待
D.收容
17.一种既有利于短小作业又兼顾到长作业的作业调度算法是( )。 A.先来先服务 B.轮转 C.最高响应比优先 D.均衡调度 18.作业调度程序是从处于( )状态的作业中选取一个作业并把它装入主存。 A.输入 B.后备 C.执行 D.完成
19.在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,取决于
( )。
A.进程相应的程序段的长度 B.进程总共需要运行时间多少 C.进程自身和进程调度策略 D.进程完成什么功能
20.既考虑作业等待时间,又考虑作业执行时间的作业调度算法是( )。 A.响应比高者优先 B.短作业优先 C.优先级调度 D.先来先服务 21.文件控制块的英文缩写符号是( )。
A.PCB B.DCB C.FCB D.JCB
4
22.下列算法中,( )只能采用非抢占调度方式。 A.高优先权优先 B.时间片轮转法 C.FCFS调度算法 D.短作业优先 23.下面对进程的描述中,错误的是( )。
A.进程是动态的概念 B.进程的执行需要处理机 C.进程具有生命周期 D.进程是指令的集合 24.在分时系统中导致进程创建的典型事件是( )。
A.用户注册 B.用户登录 C.用户记帐 D.用户通信 25.在进程管理中,当( )时,进程从阻塞状态变为就绪状态。 A.进程被调度程序选中 B.进程等待某一事件的发生 C.等待的事件出现 D.时间片用完 二、填空题:
1.所谓( ),就是用户程序要调用操作系统提供的一些子功能。 2.操作系统通过( )来感知进程的存在。 3.进程调度程序具体负责( )的分配。
4.当一个进程完成了特定的任务后,系统收回这个进程所占的( )和取消该进程的( )就撤消了该进程。
5.特权指令只能在( )态下执行,若在( )态下执行则被认为是非法指令。 6.将作业相对地址空间的相对地址转换成内存中的绝对地址的过程称为( )。 7.OS向用户提供的接口有多种,通过( )方式用户可从终端键入DIR并按回车键来显示当前目录的内容。
8.在批处理系统、分时系统和实时系统中,都设置了( )调度,在批处理系统中还应设置( )调度。
9.从静态的角度看,进程是由PCB、程序段和( )组成的。 10.总的来说进程调度有两种方式,即( )方式和( )方式。
11.( )把进程的调度单位与资源分配单位两个特性分开,从而使得一个进程的多个( )也可以并发。 三、简答题
1. 试从动态性、并发性和独立性上比较进程和程序。
答:(1)进程是程序的一次执行过程,因此是动态的;动态性还表现在进程由创建而产生、由调度而执行、由撤消而消亡,即它具有一定的生命周期。而程序则只是一组指令的有序集合,并可永久地存放在某种介质上,其本身不具有运动的含义,因此是静态的。 (2)多个进程实体可同时存放在内存中并发地执行,其实这正是引入进程的目的。而程序(在没有为它创建进程时)的并发执行具有不可再现性,因此程序不能正确地并发执行。
(3)进程是一个能够独立运行、独立分配资源和独立接受调度的基本单位。而因程序(在没有为它创建进程时)不具有PCB,所以它是不可能在多道程序环境下独立运行的。 2. 试说明进程在三个基本状态之间转换的典型原因。
5
答:(1)就绪状态→执行状态:当CPU空闲,进程调度程序从就绪队列中选取一个进程投入运行。
(2)执行状态→就绪状态:正在执行的进程的时间片用完而被暂停执行或被其他更重要的进程抢占CPU;
(3)执行状态→阻塞状态:进程等待某事件(如进程进行I/O请求); (4)阻塞状态→就绪状态:进程所等待的事件发生(如I/O操作完成)。 P24,图2.4 进程的各个状态及其转换 3.
在批处理系统、分时系统和实时系统中,各采用哪几种进程(作业)调度算法? 答:批处理系统中可采用先来先服务进程(作业)调度算法、短作业(进程)优先调度算法、最高优先权优先作业调度算法、多级反馈队列调度算法;分时系统中可采用时间片轮转调度算法、多级反馈队列调度算法;实时系统中可采用最早截止时间优先算法、最低松驰度优先算法。
第三章 存储器管理
一、 选择题
1、动态重定位技术依赖于( )
A.装入程序 B.重定位寄存器 C.目标程序 D.编译程序
2、在请求分页系统中若未装入过内存的页都应从( )调入。已运行过的页主要从( )调入。
A、系统区、文件区 B、文件区、对换区 C、对换区、文件区 D、系统区、文件区
3、虚拟存储管理系统的理论依据是程序的( )原理 A、静态性 B、局部性 C、创造性 D、可变性
4、在以下存储管理方案中,不适用于多道程序设计系统的是( ) A、单用户连续分配 B、固定式分区分配 C、可变式分区分配 D、页式存储管理
5、在可变式分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是( ) A、无上邻空闲区,也无下邻空闲区 B、有上邻空闲区,但无下邻空闲区 C、有下邻空闲区,但无上邻空闲区 D、有上邻空闲区,也有下邻空闲区 6、下面的( )页面淘汰算法有时会产生异常现象。
A、先进先出 B、最近最少使用 C、最不经常使用 D、最佳 7、下面所列的存储方案中,( )实行的不是动态重定位。
A、固定分区 B、可变分区 C、分页式 D、请求分页式 8、系统出现抖动现象的主要原因是由于( )引起的。 A、置换算法选择不当 B、交换的信息量太大 C、内存容量不足 D、采用页式存储管理策略 9、虚拟存储器的最大容量是由( )决定的。
6
A、内外存容量之和 B、计算机系统的地址结构 C、作业的相对地址空间 D、作业的绝对地址空间
10、在请求分页系统的页表中增加了若干项,其中修改位供( )时参考。 A、分配页面 B、置换算法 C、程序访问 D、换出页面 11、( )内存管理方法更有利于文件的共享与保护。 A、分页 B、分段 C、可变分区 D、段页式 12、实现虚拟存储器的目的是( )。 A、进行存储保护 B、允许程序浮动 C、允许程序移动 D、扩充主存容量
13、在实行分页式存储管理的系统中,分页是由( )完成的。 A、程序员 B、用户 C、操作员 D、系统
14、在下面所列的诸因素中,不对缺页中断次数产生影响的是( )。 A、内存分块的尺寸 B、程序编制的质量 C、作业等待的时间 D、分配给作业的内存块数
15、在以进程为单位进行对换时,并不将整个进程换出,其中( )总是部分或全部驻留内存的。
A、PCB B、程序段 C、数据段 D、进程
16、在请求分页系统的各种置换算法中,( )是最容易实现的置换算法。 A、先进先出FIFO B、最近最久未使用LRU C、最佳置换算法OPT D、最少使用置换算法LFU
17、从下列关于存储器管理功能的论述中,选出一条正确的论述。
A、即使在多道程序设计的环境下,用户也能设计用物理地址直接访问内存的程序。 B、为了提高内存保护的灵活性,内存保护通常由软件实现。 C、虚拟存储器是物理上对内存容量的扩充。
D、地址映射是指将程序空间中的逻辑地址变为内存空间的物理地址。
18、内存分配的基本任务是为每道程序分配内存,使每道程序能在不受干扰的环境下运行,主要是通过( )功能实现的。
A、内存分配 B、内存保护 C、对换 D、内存扩充
19、在动态分区式内存管理中,倾向于优先使用低址部分空间的算法是( )。 A、最佳适应算法 B、最坏适应算法 C、首次适应算法 D、循环首次适应算法
20、在首次适应算法中,要求空闲分区按( )形成空闲分区链。 A、空闲区起始地址递增 B、空闲区起始地址递减 C、空闲区大小递增 D、空闲区大小递减 21、在页式存储管理中,其虚拟地址空间是( )的。 A、一维 B、二维 C、层次 D、模块
22、通常情况下,在下列存储管理方式中,( )支持多道程序设计,管理最简单,但内存碎片多。
7
A、段式 B、页式 C、固定分区 D、可变分区
23、在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起( )。
A、输入/输出中断 B、时钟中断 C、越界中断 D、缺页中断
24、在请求调页系统中,若所需页不在内存,则会引起( )。 A、输入/输出中断 B、时钟中断 C、越界中断 D、缺页中断 二、 填空题
1、在分页式存储管理的页表里,主要应该包含( )和( )两个信息。
2、某系统采用固定分区分配存储管理,内存空间为640K,其中地址0到40K被系统占用,其他空间按分区大小相等的方法划分为4个分区,则当有大小分别为7KB、90KB、30KB、20KB的作业进入内存时,浪费的内存为( )。
3、将作业相对地址空间的相对地址转换成内存中的绝对地址的过程称为( )。 4、在请求分页的页表中,主要包含的信息有页号、块号、( )、( )和外存地址。 5、在请求调页系统中,若逻辑地址中的页号超过页表寄存器中的页表长度,则会产生( )。
6、在请求分页系统中,内存块分配中有( )和( )策略。 7、静态重定位在程序( )时进行,动态重定位在程序( )时进行。
8、存储管理中,对存储空间的浪费是以( )和( )两种形式表现出来的。 9、连续分配方式是指为一个用户程序分配一段连续的内存空间,它又可分为单一连续分配,( )和( )。
11、对外存对换区的管理应以( )为主要目标,对外存文件区的管理应以( )为主要目标。
12、虚拟存储器最基本的特征是( ),该特征主要是基于程序的( )。 13、在请求调页系统中,凡未装入过内存的页都应从( )调入,已运行过的页主要是从( )调入。 三、问答题
1、 可变分区存储管理中,回收内存时,可能出现哪几种情况?应怎样处理这些情况?
可能出现四种情况:
A、 回收区与插入点的前一空闲分区相邻接,此时应将回收区与插入点的前一分区
合并,不必为回收分区分配新表项,只需修改其前一分区的大小。
B、 回收和分区与插入点的后一空闲分区相邻接,此时可将其与后一分区合并,用
回收区的首址作为新空闲区的首址,大小为两者之和。
C、 回收区同时与插入点的前、后两个分区邻接,此时将三个分区合并,使用前一
分区的表项和首址,取消后一分区的表项,大小为三者之和。
D、 回收区既不与前空闲分区相邻,也不与后一空闲分区相邻,这时应为回收区单
独建立一新表项,填写回收区的首址和大小,并根据其首址插入到空闲链中的
8
适当位置。
2、 分页和分段存储管理有何区别? 分页和分段的主要区别是:
A、 页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外碎片,提
高内存的利用率;段则是信息的逻辑单位,它含有一组其意义相对完整的信息,分段的目的是为了能更好地满足用户的需要。
B、 页的大小固定且由系统决定,由系统把逻辑地址划分页号和页内地址两部分,
是由机器硬件实现的,因而在系统中只能有一种大小的页面;而段的长度却不固定,决定于用户所编写的程序,根据信息的性质来划分。
C、 分页的作业地址空间是一维的,即单一的线性地址空间,程序员只需利用一个
记忆符,即可表示一个地址,而分段的作业地址空间则是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。
什么是内部碎片,什么是外部碎片,各种分配策略会产生何种碎片? 3、 虚拟存储器有哪些特征?其中最本质的特征是什么?
多次性:一个作业被分成多次调入内存运行,作业运行时不必将其全部装入,只需将当前要运行的那部分程序和数据装入内存即可。
对换性:允许在作业的运行过程中进行换进换出,能有效地提高内存利用率。 虚拟性:虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量。
虚拟性是以多次性和对换性为基础的,而多次性和对换性,又必须建立在离散分配的基础上。 五、 综合题
1、 在一个请求分页系统中,采用LUR页面置换算法时,假如一个作业的页面走向为1、
3、2、1、1、3、5、1、3、2、1、5,当分配给该作业的物理块数M分别为3和4时,试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。 解:
1 3 2 1 1 3 5 1 3 2 1 5 1 3 1 2 3 1 5 3 1 2 3 1 2 5 1 当物理块数为3时,缺页为6,缺页率为1/2
1 3 2 1 1 3 5 1 3 2 1 5 1 3 1 2 3 1 5 2 3 1 当物理块数为4时,缺页为4,缺页率为1/3
9
2、 若在一分页存储管理系统中,某作业的页表如下所示。已知页面
大小为1K字节,试将逻辑地址1011,2148,3000,5012转化为相应的物理地址。
解:为了描述方便,设页号为P,页内位移为W,逻辑地址为A,页面大小为L,则:P=int(A/L) ; W=A mod L 对逻辑地址1011:P=int(1011/1024)=0 W=1011 mod 1024=1011
页号 0 1 2 3 块号 2 3 1 6 根据页表,第0页在第2块,所以1011对应的物理地址为2*1024+1011=3059。 对逻辑地址2148:P=int(2148/1024)=2 W=2148 mod 1024=100
根据页表,第2页在第1块,所以2148对应的物理地址为1*1024+100=1124。 对逻辑地址3000:P=int(3000/1024)=2 W=3000 mod 1024=952
根据页表,第2页在第1块,所以3000对应的物理地址为1*1024+952=1976。 对逻辑地址5012:P=int(5012/1024)=4 W=5012 mod 1024=916
根据页表,第4页因页号超过页表长度,所以该逻辑地址为非法,会导致越界错误。 3、 在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096字节,现有一
逻辑地址为2F6AH,且第0,1,2页依次放在物理块5,10,11中,问相应的物理地址为多少?
解:由题目所给条件,本页式系统的逻辑地址结构为:0~11位为页内位移,12~15为页号。
逻辑地址2F6AH的二进制表示为:0010 1111 0110 1010
由此得到这一逻辑地址的页号为0010对应为2,页号2对应的块号为11,用十六进制表示为B,所以逻辑地址2F6AH相应的物理地址为BF6AH。
4、在采用页式存储管理的系统中,作业J的逻辑地址空间为4页,每页2048字节,且已知该作业的页面映象表,试借助地址变换图求出有效逻辑地址4865所对应的物理地址。
解:已知一页大小为2048字节,则逻辑地址4865的页号及页内位移为:
页号:P=int(4865/2048)=2 页内位移:W=4865mod2048=769
通过页表知道页号2对应的物理块号为6,将物理块号与页内位移拼接,形成物理地址为:
6*2048+769=13057 其地址变换过程如图:
10
页号 0 1 2 3 块号 2 4 6 8 页表寄存器 越界中断 逻辑地址
页表始址 页表长度 页号 0 1 2 3 >页号 页内地址 + 块号 2 4 6 8 6 物理地址 769 页表 6、在可变分区存储管理中,按地址法组织当前的空闲分区,其大小分别为10KB、4KB、20KB、18KB、7KB、9KB、12KB、15KB,现在依次有3个存储请求为12KB、10KB和9KB。试问使用最先适应算法的分配情况如何?那么最佳适应呢? 解:使用最先适应算法时,空闲分区按地址由低到高形成如下链: 10K—4K—20K—18K—7K—9K—12K—15K
分配时从链首开始,请求1从20K的空闲区中划出12K余下8K,请求2将10K的第一个空闲区划出,请求3从18K空闲区划出9K余下9K,完成后形成的空闲区链为:4K—8K—9K—7K—9K—12K—15K
使用最佳适应算法时,空闲分区按大小形成如下空闲链: 4K—7K—9K—10K—12K—15K—18K—20K
分配时从链首开始,请求1得到12K空闲区,请求2得到10K的空闲区,请求3得到9K空闲区,完成后形成的空闲区链为:4K—7K—15K—18K—20K
7、系统内存被划分成8块,每块4KB。某作业的虚拟地址空间共划分成16个页面,当前在内存的页与内存块的对应关系如下,未列出的页表示不在内存。试指出对应于下列虚拟地址的绝对地址:1)20; 2)4100; 3)8300
页号 0 1 2 3 解:a)20
对应的页号为:int(20/4096)=0,按页表则其对应的物理块号为2 对应的页内位移为:mod(20/4096)=20
则虚拟地址20对应的绝对地址为2X4096+20=8212 b)4100
对应的页号为:int(4100/4096)=1,按页表则其对应的物理块号为1
11
块号 2 1 6 0 页号 4 5 9 11 块号 4 3 5 7 对应的页内位移为:mod(4100/4096)=4
则虚拟地址20对应的绝对地址为1X4096+4=4100 c)8300
对应的页号为:int(8300/4096)=2,按页表则其对应的物理块号为6 对应的页内位移为:mod(8300/4096)=108
则虚拟地址20对应的绝对地址为6X4096+108=24684
8、某请求分页式存储管理系统,接收一个共7页的作业。作业运行时的页面走向如下:1、2、3、4、2、1、5、6、2、1、2、3、7、6、3、2、1、2、3、6。采用最近最久未使用页面淘汰算法,作业在得到2块和4块内存空间时,各会产生多少次缺页中断?采用先进先出页面淘汰算法时情况又如何呢?
解:采用最近最久未使用页面淘汰算法,作业得到2块时
1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6 2 2 4 4 1 1 6 6 1 3 3 6 6 2 2 2 7 7 3 3 1 2 6 3 3 1 1 3 3 2 2 5 5 2 2 当作业得到2块时,缺页次数为18次。
采用最近最久未使用页面淘汰算法,作业得到4块时
1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6 4 4 6 5 5 2 2 1 1 6 7 7 3 3 3 2 2 2 1 1 6 1 3 2 6 3 3 2 2 2 1 1 1 1 当作业得到2块时,缺页次数为10次。
采用先进先出的页面淘汰算法的情况请同学们自己完成。
第四章
一、 选择题
1、通道用于实现( )之间信息传输
A.内存与外设 B.cpu与外设 C.外存与外设 D.用户进程与外设 2、一般地,缓冲池位于( )中。
A.设备控制器 B.辅助存储器 C.主存储器 D.寄存器
3、按照设备的( )分类,可将系统中的设备分为字符设备与块设备两种。 A、从属关系 B、分配特性 C、操作方式 D、工作特性 4、磁盘属于一种块设备,磁盘的I/O控制方式采用( )方式。 A、程序I/O方式 B、程序中断 C、DMA方式 D、SPOOLing技术 5、从下面关于设备独立性的论述中选择一条正确的论述。 A、独立性是指I/O设备具有独立执行I/O功能的一种特性 B、设备独立性是指用户程序独立于具体使用的物理设备的一种特性
12
设备管理
C、设备独立性是指能独立实现设备共享的一种特性
D、设备独立性是指设备驱动程序独立于具体使用的物理设备的一种特性 6、在CPU启动通道后,由( )执行通道程序。
A、通道 B、CPU C、设备 D、设备控制器
8、在一般大型计算机系统中,主机对外围设备的控制可通过通道、控制器和设备三个层次来实现,从下面的叙述中选出一条正确的叙述。 A、控制器可控制通道,设备在通道的控制下工作 B、通道控制控制器,设备在控制器的控制下工作 C、通道和控制器分别控制设备 D、控制器控制通道和设备
9、在程序I/O方式中,对于输出设备,准备就绪是指( )。 A、输出缓冲区已空 B、输出缓冲区已有数据 C、输出设备已开始工作 D、输出设备已收到I/O指令 10、为了实现设备分配,应为每个设备设置一张( )。 A、设备控制表 B、控制器控制表 C、系统设备表 D、设备分配表
11、从下列关于驱动程序的论述中选择一条正确的。
A、驱动程序与I/O设备的特性紧密相关,因此应为每一设备配备一个专门的驱动程序 B、驱动程序与I/O控制方式紧密相关,因此对DMA方式应以字节为单位去启动设备 C、驱动程序与I/O设备的特性紧密相关,因此应全部用汇编语言编写
D、对于一台多用户机,配置了相同的八个终端,此时可只配置一个由多个终端共享的驱动
12、SPOOLing系统提高了( )的利用率。
A、独占设备 B、辅助设备 C、共享设备 D、主存储器 13、通道是一种特殊的( ),具有有执行I/O指令的功能。 A、I/O设备 B、设备控制器 C、处理机 D、I/O控制器
14、在I/O设备控制的发展过程中,最主要的推动因素是减少主机对I/O控制的干预,提高I/O速度的设备利用率,这在OS中主要依靠的是( )。 A、设备分配 B、缓冲管理 C、设备管理 D、虚拟设备
15、在操作系统中采用缓冲技术的目的是为了增强系统的并行操作,为了使多个进程能有效地同时处理输入和输出,最好使用( )。
A、缓冲池 B、单缓冲 C、双缓冲 D、循环缓冲 17、从下列关于SPOOLing系统的论述中,选择一条正确的。 A、构成SPOOLing系统的基本条件是具有外围输入机和外围输出机。 B、SPOOLing系统是在用户程序要读取数据时启动输入进程输入数据。 C、SPOOLing是脱机的输入输出。
D、在SPOOLing系统中,用户程序可随时将输出数据送到输出井中,待输出设备空闲时再执行数据输出操作。
13
18、磁盘高速缓冲设在( )中,其目的是为了提高磁盘I/O的速度。 A、磁盘控制器 B、内存 C、磁盘 D、Cache
19、在对磁盘进行读写操作时,下面给出的参数中,( )是不正确的。 A、柱面号 B、磁头号 C、盘面号 D、扇区号 20、( )是直接存取的存储设备。
A、磁盘 B、磁带 C、打印机 D、显示器 21、下列算法中用于磁盘移臂调度的是( ) A.时间片轮转法 B.LRU算法 C.电梯算法 D.优先级高者优先算法 二、 填空题
1、设备独立性是指( )独立于( )。
2、虚拟设备是通过( )技术把( )设备变成能为若干个用户( )设备。 3、操作系统中采用缓冲技术的目的是为了增强系统的( )能力,为了使多个进程能有效地同时处理输入和输出,最好使用( )来实现。
4、SPOOLing系统由磁盘上的( )和( ),内存中的输入缓冲区和输出缓冲区及输入进程和输出进程构成。
5、根据用户作业发出的磁盘I/O请求的柱面位置,来决定请求执行顺序的调度,被称为( )调度。
6、磁盘访问时间由( )、( )和数据传输时间组成。
7、DMA控制器在获得总线控制权的情况下能直接与( )进行数据交换,无须CPU介入。
8、I/O控制方式有程序I/O方式、中断驱动I/O方式、( )方式和( )方式。 9、磁盘调度的目标是使多个进程访问磁盘的( )最短。 三、 问答
1、 瓶颈产生的原因?如何解决因通道不足而产生的瓶颈问题?
由于通道价格昂贵,致使机器中所设置的通道数量势必较少,这往往又使它成了I/O的瓶颈,进而千成整个系统吞吐量的下降。解决瓶颈问题的有效方法是增加设备到主机间的通路而不增加通道。即把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。
2、 有哪几种I/O控制方式?各适用于何种场合?
程序I/O方式——即在处理机向控制器发出一条指令后要对设备状态进行循环测试。它是在没有引入中断之前的早期计算机系统中使用的。
中断驱动I/O控制方式——当某个进程要启动某个I/O设备工作时,便由CPU向相应的设备控制器发出一条I/O命令,然后立即继续执行原来的任务,CPU与I/O设备并行工作。在现代计算机系统中,都毫无例外地引用了中断机构。
直接存储器访问DMA I/O控制方式——用于块设备的I/O控制方式,能更加提高CPU与I/O并行操作程度。
I/O通道控制方式——CPU只需进行一次干预,可以读取多个数据块且将它们分别传
14
送到不同的区域,实现CPU、通道和I/O设备三者的并行操作。适用于一次读多个块且分别传送到不同区域或者相反的大型系统中。 3、 试说明DMA的工作流程。
DMA方式下进行数据输入的过程如下:(以从磁盘读入数据为例来说明)
当CPU要从磁盘读入一个数据块时,便向磁盘控制器发送一条读命令。该命令被送到其中的命令寄存器CR中。同时还须发送本次要将数据读入的内存起始目标地址,该地址被送入内存地址寄存器MAR中;本次要读数据的安节数则送入数据计数器DC中,还须将磁盘中的源地址直接送至DMA控制器的I/O控制逻辑上。然后,启动DMA控制器进行数据传送,以后,CPU便可去处理其它任务。此后,整个数据传送过程便由DMA控制器进行控制。当DMA控制器已从磁盘中读入一个字节的数据并送入数据寄存器DR后,再挪用一个存储器周期,将该字节传送到MAR所批示的内存单元中。接着便对MAR内容加1,将DC内容减1,若减1后DC内容不为0,表示传送未完,便继续传送下一个字节;否则,由DMA控制器发出中断请求。 4、 引入缓冲的主要原因是什么?
A、 缓和CPU与I/O设备间速度不匹配的矛盾。
B、 减少对CPU的中断频率,放宽对CPU中断响应时间的限制。 C、 提高CPU和I/O设备之间的并行性。
5、 为何要引入设备独立性?如何实现设备的独立性?在考虑到设备的独立性时,应如
何分配独享设备?
设备独立性是指应用程序独立于具体使用的物理设备。引入设备独立性可带来以下好处:设备分配时的灵活性,易于实现I/O重定向。
为了实现设备独立性,必须再在驱动程序之上设置一层软件,称为设备独立性软件,其主要功能有以下两方面:执行所有设备的公共操作,包括对独立设备的分配与回收,将逻辑设备名映射为物理设备名,对设备进行保护等;另一功能是向用户层软件提供统一接口。
6、 何谓设备虚拟?实现设备虚拟时所依赖的关键技术是什么?
通过SPOOLing技术将一台物理I/O设备虚拟为多台逻辑I/O设备,从而允许多个用户共享一台物理I/O设备。实现设备虚拟时所依赖的关键技术是SPOOLing技术。 7、 试说明SPOOLing系统的组成。
由三部分组成:输入井和输出井、输入缓冲区和输出缓冲区、输入进程SPi和输出进程SPo。
8、 设备中断处理程序通常需完成哪些工作? 设备中断处理程序的处理过程为: A、 唤醒被阻塞的驱动进程 B、 保护被中断进程的CPU环境 C、 转入相应的设备处理程序 D、 中断处理
E、 恢复被中断进程的现场
15
9、 磁盘访问时间由哪几部分组成? 由三部分组成:
A、 寻道时间Ts:指把磁臂移动到指定磁道上所经历的时间。 B、 旋转延迟时间Tr:指定扇区移动到磁头下面所经历的时间。
C、 传输时间Tt:指把数据从磁盘读出或向磁盘写入数据所经历的时间。 10、 设备分配时的数据结构?如何分配?
A、 设备控制表DCT:系统为每一个设备都配置一张设备控制表,用于记录本设备的情况。 B、 控制器控制表COCT:为每一个控制器设置了一张用于记录本控制器情况的控制器控
制表。
C、 通道控制表CHCT:每个通道都配有一张通道控制表,用以记录通道的状态及与通道
相连的控制器及队列的情况。
D、 系统设备表SDT:这是系统范围的数据结构,其中记录了系统中全部设备的情况,每
个设备占一个表目。 系统分配设备可按下述步骤进行:
A、 分配设备:首先根据I/O请求的物理设备名,查找系统设备表SDT,从中找出该设备
的DCT,再根据DCT中的设备状态字段,可知该设备是否正忙。若忙,便将请求I/O的进程的PCB挂在设备队列上;否则,便按照一定的算法来计算本次设备分配的安全性。如果不会导致系统进入不安全状态,便将设备分配给请求进程;否则仍将其PCB插入设备等待队列。
B、 分配控制器:在系统把设备分配给请求I/O的进程后,再到其DCT中找出与该设备
连接的控制器的COCT,从COCT的状态字段中可知该控制器是否忙碌。若忙,便将请求I/O的进程的PCB挂在该控制器的等待队列上;否则,便将该控制器分配给进程。 C、 在该COCT中又可找到与该控制器连接的通道的CHCT,再根据CHCT内的状态信息,
可知该通道是否忙碌。若忙,便将请求I/O的进程挂历在该通道的等待队列上;否则,将该通道分配给进程。只有在设备、控制器和通道三者都分配成功时,这次的设备分配才算成功。然后,便可启动I/O设备进行数据传送。 六、 综合题
1、 假设磁盘有200个磁道,磁盘请求队列中是一些随机请求,它们按照到达的次序分
别处于55、58、39、18、90、160、150、38、184号磁道上,当前磁头在100号磁道上,并向磁道号增加方向移动。请给出先来先服务FCFS、最短寻道时间优先SSTF和扫描算法SCAN进行磁盘调度时满足请求的次序,并计算出它们的平均寻道长度。
16
解:
先来先服务FCFS 被访问的下一个磁道号 55 58 39 18 90 160 150 38 184 移动的磁道数 45 3 19 21 72 70 10 112 146 最短寻道时间优先SSTF 被访问的下一个磁道号 90 58 55 39 38 18 150 160 184 移动的磁道数 10 32 3 16 1 20 132 10 24 扫描算法SCAN 被访问的下一个磁道号 150 160 184 90 58 55 39 38 18 移动的磁道数 50 10 24 94 32 3 16 1 20 平均寻道长度:55. 3 平均寻道长度:27. 6 平均寻道长度:27. 8 2、 磁盘磁盘请求以10、22、20、2、40、6、38柱面的次序到达磁盘驱动器。移动臂移
动一个柱面需要6ms,衽以下磁盘调度算法时,各需要多少总的查找时间?假定磁臂起始时定位于柱面20。 解:a)先来先服务算法
作业调度的顺序是:10—22—20—2—40—6—38,则磁臂移动的柱面数为: 10+12+2+18+38+34+32=146,需要的时间为146X6ms=876ms b)最短寻道时间优先
作业调度顺序为:20—22—10—6—2—38—40,则磁臂移动的柱面数为: 0+2+12+4+4+36+2=60,需要的时间为60X6ms=360ms c)电梯算法
作业调度的顺序是:20—10—6—2—22—38—40,则磁臂移动的柱面数为: 0+10+4+4+20+18+2=58,需要的时间为58X6ms=348ms
第五章
一、 选择题
1、文件系统采用多级目录结构后,对于不同用户的文件,其文件名( ) A.应该相同 B.应该不同 C.可以相同,也可以不同 D.受系统约束 2、下面的( )不是文件的存储结构。
A、索引文件 B、记录式文件 C、串联文件 D、连续文件 3、文件控制块的英文缩写符号是( )。 A、PCB B、DCB C、FCB D、JCB
4、用户可以通过调用( )文件操作,来归还文件的使用权。
17
文件管理
A、建立 B、打开 C、关闭 D、删除 5、文件系统最基本的目标是( )。
A、按名存取 B、文件共享 C、文件保护 D、提高文件的存取速度
6、操作系统为文件开辟一个存储区,在它的里面记录着该文件的有关信息,这就是所谓的( )。
A、进程控制块 B、文件控制块 C、设备控制块 D、作业控制块 7、从用户角度看,引入文件系统的主要目的是( )。 A、实现虚拟存储 B、保存用户和系统文档 C、保存系统文档 D、实现对文件的按名存取
8、在文件系统中是利用目录来管理文件的,为了允许不同用户的文件使用相同的文件名,通常文件系统采用( )。
A、文件控制块 B、多级目录 C、文件名到物理文件地址映射表 D、索引表
9、在create处理过程中,若未检索到指定的文件的索引结点,此时属于( )。 A、出错 B、修改文件 C、文件重命名 D、创建新文件 10、在下列方法中( )与文件的保护无关。 A、口令机制 B、数据加密技术
C、访问控制表 D、访问之前执行open操作,访问之后执行close操作 11、假定盘块大小为1K,对于1.2MB的软盘,FAT需占用( )存储空间。 A、1KB B、1.5KB C、1.8KB D、2.0KB 12、对文件空闲空间的管理,UNIX采用( )法。
A、空闲表 B、文件分配表 C、位示图 D、成组链接法 13、文件系统最基本的目标是( )。
A、按名存取 B、文件共享 C、文件保护 D、提高文件的存取速度
14、有一磁盘,共有10个柱面,每个柱面20个磁道,每个盘面要成16个扇区。采用位示图对其存储空间进行管理。如果字长是16个二进制位,那么位示图共需( )字。 A、200 B、128 C、256 D、100 15、一个文件的绝对路径总是以( )打头。
A、磁盘名 B、字符串 C、分隔符 D、文件名
16、一个文件的绝对路径名是从( )开始,逐步沿着每一级子目录向下,最后到达指定文件的整个通路上所有子目录名组成的一个字符串。
A、当前目录 B、根目录 C、多级目录 D、二级目录 17、按文件逻辑结构划分,文件主要有两类:( ) A、流式文件和记录式文件 B、索引文件和随机文件 C、永久文件和临时文件 D、只读文件和读写文件 18、位示图用于( )。
A、文件目录查找 B、磁盘空间管理 C、主存空间共享 D、文件的保护与保密
18
19、从下面关于顺序文件和链接文件的论述中,先出一条正确的。 A、顺序文件适合于建立在顺序存储设备上,而不适合于建立在磁盘上。
B、显式链接文件将分配给文件的下一个物理盘块的地址登记在该文件的前一个物理盘块中。
C、顺序文件必须采用连续分配方式,而链接文件和索引文件则可采用离散分配方式。 D、在职MS—DOS中采用的是隐式链接文件结构。
20、在文件系统中是利用目录来管理文件的,为了允许不同用户的文件使用相同的文件名,通常文件系统采用( )。
A、索引表 B、多级目录 C、重名翻译 D、文件名映射表 二、 填空题
1、每个索引文件都至少有一张索引表,其中的每一个表项应包括能标识该记录的( )和该记录的( )。
2、根据在辅存上的不同存储方式,文件可以有顺序、( )、和索引三种不同的物理结构。
3、文件存储空间的管理有空闲表法、空闲链表法( )法和( )法。 4、一个文件的文件名在( )时给出的。
5、所谓文件系统,由与文件管理有关的( )、被管理的文件以及管理文件所需的数据结构三部分组成。
6、( )是辅助存储器与内存之间进行信息传输的单位。
7、在用位示图管理磁盘存储空间时,位示图的尺寸由磁盘的( )决定。
8、采用空闲区表法管理磁盘存储空间,类似于存储管理中采用( )方法管理内存储器。
9、操作系统是通过( )感知一个文件的存在的。
10、按用户对文件的存取权限将用户分成若干组,规定每一组用户对文件的访问权限。这样,所有用户组存取权限的集合称为该文件的( )。
11、如果把文件视为有序的字符集合,有其内部不再对信息进行组织划分,那么这种文件的逻辑结构被称为( )。
12、如果把文件划分成一个个记录,存取时以记录为单位进行,那么这种文件的逻辑结构被称为( )。 三、
问答
1、 什么是索引文件?为什么要引入多级索引?
索引文件得文件系统为每个文件另外建立一张指示逻辑记录和物理块之间的对应关系表,此表称为索引表,文件本身和索引表组成的文件称为索引文件。
对于一个非常大的文件,为找到一个记录而查找的记录数目非常多,为了进一步提高检索效率,可以为顺序索引文件建立多级索引,即为索引文件再建立一张索引表,形成两级索引,再为两级索引文件建立索引,形成三级索引,依次类推,形成多级索引。 2、 对目录管理的主要要求是什么?
A、 实现按名存取。即用户只需向系统提供所要访问文件的名字,便能快速准确地找到
19
指定文件在外存上的存储位置。
B、 提高对目录的检索速度。通过合理地组织目录结构的方法,可加快对目录的检索速
度,从而提高对文件的存取速度。
C、 文件共享。在多用户系统中,应允许多个用户共享一个文件,这样就须在外存中保
留一份该文件的副本,供不同用户使用,以节省大量的存储空间,并方便用户和提高文件利用率。
D、 允许文件重名。系统应允许不同用户对不同文件采用相同的名字,以便于用户按照
自己的习惯给文件命名和使用文件。 四、 综合
1、 在MS—DOS中有两个文件A和B,A占用11、12、16和14四个盘块;B占用13、18
和20三个盘块。试画出在文件A和B中各盘块间的链接情况及FAT的情况。 解:
FAT FCB A 11 FCB B 13 2、假定盘块的大小为1KB,对于540MB的硬盘FAT需占用多少存储空间?当硬盘容量为1.2GB时,FAT需占用多少存储空间?
解:如果盘块大小为1KB,540MB的硬盘有540MB/1KB=540K个盘块,表示540K个盘块至少需要20位的二进制,即需要2.5个字节,540K个盘块则需540K*2.5B=1350K个字节的空间。
如果硬盘的大小为1.2GB,共有1.2M个盘块,表示1.2M个盘块至少需要22位的二进制,因此一个FAT项要用3个字节,1.2GB硬盘的FAT需占用1.2M*3=3.6MB的空间。
20
…… 12 16 18 EOF 15 14 17 20 19 EOF …… 11 12 13 14 15 16 17 18 19 20
3、假如盘块大小为4KB,每个盘块号占4个字节,在两级索引分配时,允许的最大文件是多少?
解:由题目给定,盘块大小为4K,每个盘块号占4个字节,则1个块中可有1K个块号,1K个块最大容量为1K*4KB=4MB;
即在一级索引中可以允许的最大文件大小为4MB。
在二级索引中,最多可包含的存放文件的盘块的盘块号总数为1K*1K=1M个,每个盘块大小为4KB,则两级索引允许的最大文件是1M*4KB=4GB。
5、有如下请示磁盘服务的队列,要访问的磁道分别是98、183、37、122、14、124、65、67。现在磁头在53道上,若按最短寻道时间优先法,磁头的移动道数是多少? 解:最短寻道时间优先法总是让查找时间最短的那个请求先执行,而不考虑请示访问者到来的先后时间。即靠近当前移动臂位置的请示访问者将优先执行,当前磁头在53道上,则总的移动顺序为:53—65—67—98—122—124—183—37—14。 移动道数为:12+2+30+23+84+24+2+59=236。
6、若磁头的当前位置为100磁道,磁头正向磁道号增加方向移动,现有一磁盘读写请求队列:23、376、205、132、19、61、190、398、29、4、18、40。若采用我来先服务、最短寻道时间优先和扫描算法,试计算出平均寻道长度各为多少? 解:采用先来先服务方法:
磁道移动数目为:77+353+171+73+113+42+129+208+369+25+14+22=1596,平均寻道长度为1596/12=133。
采用最短寻道时间优先磁盘调度算法,进行调度的情况为:
32+58+15+144+21+11+6+4+1+14+372+22=700,平均寻道长度为700/12=58.3。 采用扫描算法,进行调度时,从100道开始,磁头向磁道号增加的方向移动,磁道移动总数为:32+58+15+171+22+337+21+11+6+4+1+14=692,平均寻道长度为:692/12=57.7。
第六章
也可能产生死锁。
A.进程优先权 B.资源的线性分配 C.进程推进顺序 D.分配队列优先权
2.采用资源剥夺法可解除死锁,还可以采用( )方法解除死锁。 A.执行并行操作 B.撤消进程 C.拒绝分配新资源 D.修改信号量 3.产生死锁的四个必要条件是:互斥、( )、循环等待和不剥夺。 A.请求与阻塞 B.请求与保持 C.请求与释放 D.释放与阻塞
4.发生死锁的必要条件有四个,要防止死锁的发生,可以破坏这四个必要条件,但破坏( )条件是不太实际的。
A.互斥 B.不可抢占 C.部分分配 D.循环等待 6.资源的按序分配策略可以破坏( )条件。
A.互斥使用资源 B.占有且等待资源
21
进程间的制约关系
1.在为多道程序所提供的可共享的系统资源不足时,可能出现死锁。但是,不适当的( )
C.非抢夺资源 D.循环等待资源 7.在( )的情况下,系统出现死锁。
A.计算机系统发生了重大故障 B.有多个封锁的进程同时存在 C.若干进程因竞争资源而无休止地相互等待他方释放已占有的资源 D.资源数大大小于进程数或进程同时申请的资源数大大超过资源总数 8.银行家算法是一种( )算法。
A.死锁解除 B.死锁避免 C.死锁预防 D.死锁检测 9.当进程数大于资源数时,进程竞争资源( )会产生死锁。 A.一定 B.不—定
10.在非剥夺调度方式下,运行进程执行V原语后,其状态( )。 A.不变 B.要变 C.可能要变 D.可能不变 11.两个进程争夺同一个资源( )。
A.一定死锁 B.不一定死锁 C.不死锁 D.以上说法都不对 12.可以被多个进程在任一时刻共享的代码必须是( )。
A.不能自身修改的代码 B.顺序代码 C.无转移指令的代码 D.汇编语言编制的代码
13.当对信号量进行V原语操作之后( )。
A.当S<0,进程继续执行 B.当S>0,要唤醒一个就绪进程 C.当S<=0,要唤醒一个等待进程 D.当S<=0,要唤醒一个就绪进程
14.正在运行的进程在信号量S上操作P操作之后,当S<0,进程将进入信号量的( )。 A.等待队列 B.提交队列 C.后备队列 D.就绪队列 15.如果发现系统有( )的进程队列就说明系统有可能发生死锁了。 A.互斥 B.可剥夺 C.循环等待 D.同步
16.某个信号量S初值为3,当前值为-2,则等待在该信号量上的进程数为( )个。 A.1 B.2 C.3 D.4
17.预先静态分配算法是通过破坏( )条件,来达到预防死锁的目的。 A.互斥使用资源/循环使用资源 B.非抢占式分配/互斥使用资源 C.占有且等待资源/循环等待资源 D.循环等待资源/互斥使用资源
18. 设系统中有N(N>2)个进程,则系统中最不可能的是有( )个进程处于死锁状态。
A.0 B.1 C.2 D.M(2 A.两条低级进程通信原语 B.两条高级进程通信原语 C.两条系统调用命令 D.两条特权指令 22.进程的并发是指若干个进程( )。 22 A.共享系统资源 B.在执行的时间上是重叠的 C.顺序执行 D.相互制约 23.下列解决死锁的方法中,属于死锁预防策略的是( )。 A.银行家算法 B.资源有序分配 C.资源分配图化简法 D.撤消进程法 24.使用mail命令的进程通信属于( )通信。 A.共享存储器 B.实时通信 C.消息缓冲通信 D.非实时通信 25.从下面对临界区的叙述中选出一条正确的( )。 A.临界区是指进程中用于实现进程互斥的那段代码。 B.临界区是指进程中用于实现进程同步的那段代码。 C.临界区是指进程中用于实现进程通信的那段代码。 D.临界区是指进程中访问临界资源的那段代码。 27.若两个并发进程相关临界区的互斥信号量mutex现在的取值为0,则正确的描述就该是( )。 A.没有进程进入临界区 B.有一个进程进入临界区 C.有一个进程进入临界区,另一个在等待 D.不定 28.信箱通信是进程间的一种( )通信方式。 A.直接 B.间接 C.低级 D.信号量 二、填空题 1.每个进程中访问( )的程序段称为临界区,两个进程同时进入相关的临界区会造成错误。 2.在操作系统中进程间的通信可以分为( )通信与( )通信两种。 3.产生死锁的四个必要条件是( )、( )、( )和循环等待条件。 4.在银行家法中,当一个进程提出资源请求将会导致系统从( )状态进入( )状态时,就暂时拒绝这一请求。 5.信号量的物理意义是当信号量大于零时表示( )。当信号量小于零时,其绝对值为( )。 6.进程是一个( )态概念,而程序是一个( )态概念。 7.对待死锁,一般应考虑死锁的预防、避免、检测和解除四个问题。典型的银行家算法是属于( ),破坏环路等待条件是属于( ),而剥夺资源是( )的基本方法。 三、简答题 1. 同步机构应遵循哪些基本准则?为什么? 答:(1)空闲让进:当无进程处于临界区时,应允许一个请求进入临界区的进程立即进入,以有效地利用临界资源。(2)忙则等待:当已有进程进入临界区时,其他试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。(3)有限等待:对要求访问临界资源的进程,应保证在有限时间内使其进入自己的临界区,以免陷入“死等”状态。(4)让权等待:当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”。 2. 产生死锁的原因和必要条件是什么? 23 答:产生死锁的原因包括竞争资源和进程间推进顺序非法。产生死锁的必要条件是互斥条件、请求和保持条件、不剥夺条件、环路等待条件。 3. 不安全状态是否必然导致系统进入死锁状态? 答:不安全状态不一定导致系统进入死锁状态。因为,安全性检查中使用的向量Max是进程执行前提供的,而在实际运行过程中,一进程需要的最大资源量可能小于Max,如一进程对应的程序中有一段进行错误处理的代码,其中需要n个A种资源,若该进程在运行过程中没有碰到相应错误而不需调用该段错误处理代码,则它实际上将完全不会请求这n个A种资源。 4. 有相同类型的5个资源被4个进程所共享,且每个进程最多需要2个这样的资源就可以运行完毕。试问该系统是否会由于对这种资源的竞争而产生死锁。 答:该系统不会由于对这种资源的竞争而产生死锁。因为在最坏情况下,每个进程都需要2个这样的资源,且每个进程都已申请到了1个资源,那么系统中还剩下1个可用资源。无论系统为了满足哪个进程的资源申请而将资源分配给该进程,都会因为该进程已获得了它所需要的全部资源而确保它运行完毕,从而可将它占有的2个资源归还给系统,这就保证了其余三个进程能顺利运行。由于可知,该系统不会由于对这种资源的竞争而产生死锁。 五、综合题 1. 试从物理概念上说明记录型信号量P和V。 答:P意味着进程请求一个单位的资源,即对S.value进行减1操作(S.value的初值表示系统中某类资源的数目),当S.value<0时,表示资源已分配完毕,此时该进程进行自我阻塞,放弃CPU,插入到信号量链表S.L中;否则表示请求成功,进程可继续执行。V表示执行的进程释放一个单位的资源,即对S.value进行加1操作,当S.value≤0时,表示在该信号量表中仍有等待该资源的进行被阻塞,此时应调用唤醒原语,将S.L链表中的第一个等待进程唤醒;否则不进行其他操作。 2. 在生产者——消费者问题中,如果缺少了V(full)或V(empty),对执行结果有何影响? 答:如果缺少了V(full),则full信号量的值总是0,消费者执行P(full)时就会阻塞,而且永不会被唤醒,而生产者生产消息装满缓冲池后也会阻塞,此后缓冲池一直是满状态。如果缺少了V(empty),生产者生产了n个消息后就会阻塞,此后empty信号量的值一直为0,而消费者消费完后也会一直阻塞,缓冲池以后一直是空的。 3. 在测量控制系统中的数据采集任务时,把所采集的数据送往一单缓冲区;计算任务从该单缓冲区中取出数据进行计算。试写出利用信号量机制实现两任务共享单缓冲区的同步算法。 答:var empty,full:semaphore:=1,0 var buffer:b begin parbegin gather: begin 24 repeat …….. gather an item in x; P(empty); b:=x; V(full); until false; end compute: begin repeat …….. P(full); y:=b; V(empty); compute the item in y; until false; end parend end 4. 桌上有一空盘,允许存放一只水果。爸爸可向盘中放苹果或桔子,儿子专等吃桔子,女儿专等吃苹果。规定当盘空时一次只能放一只水果供吃者取用,请用P、V操作实现爸爸、儿子、女儿三个并发进程的同步。 答:var s,sa,s0:semaphore:=1,0,0 begin parbegin father:begin repeat P(s); 将水果放入盘中; if(放的是桔子) then V(s0); else V(sa); until false end son: begin repeat P(s0); 从盘中取桔子; V(s); 25 吃桔子; until false end daughter: begin repeat P(sa); 从盘中取苹果; V(s); 吃苹果; until false end parend end 8.完成下表:分别按三种调度算法填写出下列作业的完成时间、周转时间、带权周转时间和执行序列。 进程名 到达时间 服务时间 完成时间 FCFS 周转时间 带权周转时间 完成时间 SJF 周转时间 2 2 A 0 2 2 2 1 3 2 2 3 2 2 B 1 1 3 2 2 8 5 1 13 10 2 C 3 5 8 5 1 D 4 3 11 7 7/3 13 9 3 12 8 8/3 E 5 2 13 8 4 10 5 5/2 9 4 2 ABCDECDC ABCED ABCDE 执行序列 带权周转时间 1 完成时间 RR q=2 5. 周转时间 2 2 带权周转时间 1 在银行家算法中,若出现下述资源分配情况: Allocation A B C D Need ABCD 0 0 1 2 1 7 5 0 2 3 5 6 0 6 5 2 0 6 5 6 Available ABCD 1 7 2 2 Process P0 P1 P2 P3 P4 0 0 3 2 1 0 0 0 1 3 5 4 0 0 3 2 0 0 1 4 试问:(1)该状态是否安全? (2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它? 26 答:(1)对该状态进行安全性检查: 资源情况 进程 P0 P3 P4 P1 P2 1 7 2 2 1 7 5 4 1 7 8 6 1 7 9 10 2 7 9 10 0 0 1 2 0 6 5 2 0 6 5 6 1 7 5 0 2 3 5 6 0 0 3 2 0 0 3 2 0 0 1 4 1 0 0 0 1 3 5 4 1 7 5 4 1 7 8 6 1 7 9 10 2 7 9 10 3 10 14 14 True True True True True Work A B C D Need A B C D Allocation A B C D Work+Allocation A B C D Finish 利用安全性算法对上面的状态进行分析,找到了一个安全序列{P0,P3,P4,P1,P2},故系统是安全的。 (2)P2提出请求Request(1,2,2,2)后,系统按银行家算法进行检查: ① Request2(1,2,2,2)≤Need2(2,3,5,6); ② Request2(1,2,2,2)≤Available(1,7,2,2) ③ 系统先假定为P2分配资源,并修改各向量的值: Available=(0,5,0,0);Allocation2=(2,5,7,6);Need2=(1,1,3,4) ④ 进行安全性检查:此时对所有的进程,条件Needi≤Available(0,4,0,0) 都不成立,即Available不能满足任何进程的请求,故系统进入不安全状态。因此,当P2提出请求Request(1,2,2,2),系统不能将资源分配给它。 27 因篇幅问题不能全部显示,请点此查看更多更全内容