操作系统综合练习(教师版)

更新时间:2024-05-13 23:40:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

操作系统综合练习

一、单项选择题(答案白字隐藏)

1.以下描述与操作系统无关的是 。 A. 方便用户的程序集合

B. 控制和管理计算机系统的硬件和软件资源 C. 计算机系统的硬件和软件资源的集合 D. 合理地组织计算机工作流程 D

2.计算机操作系统的功能是 。 A. 把源程序代码转换为目标代码 B. 实现计算机用户之间的相互交流

C. 完成计算机硬件与软件之间的转换

D. 控制、管理计算机系统的资源和程序的执行 D

3. 操作系统可为用户提供三种界面,分别是 。 A. 硬件接口、软件接口和GUI B. 字符命令接口、GUI和系统调用 B C. 硬件接口、字符命令接口和GUI D. 硬件接口、命令接口和程序接口

4.用户程序请求操作系统服务是通过 。 A. 用户发送子程序调用指令 B. 用户发送API(或系统调用) B C. 用户发送中断指令 D. 以上三种都不可以

5.采用多道程序设计能 。 A. 增加平均周转时间 B. 发挥并提高并行工作能力 B C. 缩短每道程序的执行时间 D. 降低对处理器调度的要求

操作系统综合练习 第 2 页 共 28 页

6.多道程序的引入主要是为了 。 A. 提高CPU的速度

B. 提高内存的存取速度

C. 提高计算机的使用效率 C D. 减少CPU处理作业时间

7.以下关于操作系统作用的叙述中,不正确的是 。 A. 管理系统资源 B. 控制程序执行 C. 改善人机界面

D. 提高用户软件运行速度 d

8.下面系统中, 最可能具有硬实时特性。 A. 火车订票系统 B. 网络对战游戏

C. 生产流水线使用的工业机器人 c D. 可在线播放的流式多媒体(如Real)

9. 操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。 A. 网络 B. 分布式

C. 分时 c D. 实时

10.在下列操作系统的各个功能组成部分中, 不需要硬件的特别支持。

A. 进程调度 a B. 时钟管理 C. 地址影射 D. 中断系统

操作系统综合练习 第 3 页 共 28 页

11.特权指令 执行。 A. 只能在目态下

B. 只能在管态下 b C. 在目态或管态下均能 D. 在目态或管态下均不能

12. 下列叙述中,正确的叙述是 。 A. 实现多道程序设计的目的是提高程序员编程的效率

B. 在有虚拟存储器的系统中,可以运行比主存容量还大的程序C. 操作系统的目的是为了提高计算精度 D. 操作系统必须支持分时功能

13.在下列操作系统中,对响应时间要求最高的是 。 A.批处理系统 B. 分时系统

C. 实时系统 c D. 网络操作系统

14.对出现的中断事件是由 进行处理的。 A. 硬件

B. 操作系统 b C. 用户程序 D. 解释程序

15. 进程和程序的本质区别是 。 A. 存储在内存和外存

B. 顺序和非顺序执行机器指令 C. 分时使用和独占使用计算机资源 D. 动态和静态特征 d

b 操作系统综合练习 第 4 页 共 28 页

16.有关进程的下列叙述中, 是正确的。 A. 进程是静态的文本

B. 进程与程序是一一对应的 C. 进程运行的数据都在栈中

D. 多个进程可以在单个CPU上并发执行 d

17. 一个进程是 。

A. 由处理器执行的一个程序 B. 一个独立的程序 + 数据集

C. PCB结构、程序和数据的集合 c D. 一个独立的程序

18.下面叙述中正确的是 。 A. 操作系统的一个重要概念是进程,不同进程所执行的代码一定不同 B. 为了避免发生死锁,各进程只能逐个申请资源

C. 操作系统用PCB管理进程,从PCB中可读出与进程运行状态有关

的信息 c

D. 进程存在互斥与同步问题,而线程则没有此类问题。

19. 已获得除CPU以外的所有所需资源的进程处于 状态。 A. 运行 B. 就绪 b C. 自由 D. 等待

20.下列的进程状态变化中, 的变化是不可能发生的。 A. 运行→就绪 B. 运行→等待

C. 等待→运行 c D. 等待→就绪

操作系统综合练习 第 5 页 共 28 页

21. 某进程所要求的一次打印输出结束,该进程被唤醒,其进程状态将从 。

A. 就绪状态到运行状态

B. 等待状态到就绪状态 b C. 运行状态到等待状态 D. 运行状态到就绪状态

22. 进程调度是从 选择一个进程投入运行。 A. 就绪队列 a B. 等待队列 C. 栈型队列

D. 先进先出队列

23.多道程序系统中,当 时,进程必从执行状态转变为就绪状态。

A. 进程被进程调度程序选中 B. 时间片到 b C. 等待某一事件 D. 等待的事件已发生

24.下述各项中, 不是引起进程切换的直接原因。 A. 运行进程的时间片用完 B. 运行进程出错

C. 运行进程要等待某一事件发生 D. 有新进程进入就绪状态 d

25.进程调度算法有多种, 不是进程调度算法。 A. 先来先服务调度算法

B. 最短查找时间优先调度算法 b C. 静态优先数调度算法 D. 时间片轮转调度算法

操作系统综合练习 第 6 页 共 28 页

26. 在下列进程调度算法中,可能引起进程饥饿的算法是 。 A. FCFS算法

B. 短作业优先算法 b C. 循环轮转算法

D. 动态优先数调度算法

27.在下列进程调度算法中,不会引起进程饥饿的算法是 。 A.短作业优先算法 B. 长作业优先算法 C.静态优先数算法

D. 前三项算法都会造成饥饿 d

28.以下关于处理机抢占式调度,不正确的说法是 。 A. 循环轮转算法是抢占式的

B. 优先数算法可以是抢占式的也可以是非抢占式的 C. 优先数算法一定是抢占式的 c

D. 短作业优先算法可以是抢占式的也可以是非抢占式的

29.对于有两个并发进程的系统,设初值为1的互斥信号量为mutex,若mutex=0,则 。

A. 表示没有进程进入与mutex相关的临界区

B. 表示有一个进程进入与mutex相关的临界区 b

C. 表示有一个进程进入与mutex相关的临界区,另一个进程等待进入 D.表示有两个进程进入与mutex相关的临界区

30. 在多道程序系统中,为了保证公共变量的完整性,各进程应互斥进入相关临界区。所谓临界区是指 。 A. 一个缓冲区

B. 一段数据区 C. 同步机制

D. 一段程序 d

操作系统综合练习 第 7 页 共 28 页

31.某个进程从等待状态进入就绪状态可能是由于 。 A. 现运行进程运行结束

B. 现运行进程执行了P操作

C. 现运行进程执行了V操作 c D. 现运行进程时间片用完

32.若信号量S的初值为2,当前值为-1,则表示有 个等待进程。 A. 0

B. 1 b C. 2 D. 3

33.操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列的条件是 。 A. S≠0 B. S<0 b C. S=0 D. S>0

34.为了使两个进程能够相互合作,最少需要 个信号量。 A. 1

B. 2 2 C. 3 D. 4

35. 以下思想和技术不能解决进程间互斥问题的是 A. 关中断/开中断 B. 临界区思想 C. 硬件TS指令 D. 面包店算法

E. 原语和原子操作思想 F. 互斥锁思想

G.上述全可用于解决互斥问题 g

操作系统综合练习 第 8 页 共 28 页

36. 解决进程间互斥问题的基本指导思想是 A. 硬件解决 B.软件解决

D. 信号量及PV操作 E.临界区思想

37.在操作系统中,所谓“死锁”是指 。 A. 程序死循环

B. 多个进程彼此等待资源而不能前进的状态 b C. 硬件故障

D. 时间片太短,进程的调进调出太频繁而效率太低

38. 系统出现死锁的原因是 。 A.计算机系统出现了重大故障 B.有多个等待态的进程同时存在

C.若干进程因竞争资源而无休止地等待着它方释放已占有的资源 c D.资源数大大少于进程数或进程同时申请的资源数大大超过资源总数

39.在解决死锁问题的方法中,属于“死锁避免”策略的是 。 A. 银行家算法 c B. 死锁检测算法 C. 资源有序分配法 D. 资源分配图化简法

40.在下列解决死锁的方法中,不属于死锁预防策略的是 。 A. 资源的有序分配法 B. 资源的预先分配法 C. 已分配的资源可剥夺法 D. 银行家算法 d

41.以下 不属于死锁的必要条件。 A. 互斥使用资源 B. 占有并等待资源 C. 不可抢夺资源

D. 静态分配资源 c

操作系统综合练习 第 9 页 共 28 页

42.采用资源剥夺法可以解除死锁,还可以采用 方法解除死锁。 A. 执行并行操作 B. 撤消进程 b C. 拒绝分配新资源 D. 修改信号量

43.假设有3个进程竞争同类资源,如果每个进程最大需要2个该类资源,则至少需要提供该类资源_ 个,才能保证不会发生死锁。 A. 3

B. 4 b C. 5 D. 6

44.系统中有4个并发进程,如果每个进程最大需要3个该类资源。试问该类资源最少为 个时,不会因竞争该资源而发生死锁。 A. 9 a B. 10 C. 11 D. 12

因为每个进程最多申请3个资源,设想在最坏情况下4个进程各自申请了3个资源,而致得到2个,再有1个多余资源就可“解套”。题目小结:

43-44题,在考研、软件工程师水平考试、操作系统自学考试都考过这个题或其变种。比如下面的题:

假设有2个进程共享3个资源,每个进程最多申请几个资源,才能保证系统不死锁?答:2个。

45.信箱通信是一种 通信方式。 A. 直接 B. 间接 b C. 低级 D. 信号量

操作系统综合练习 第 10 页 共 28 页

46. 非对称消息传递模式是一种 通信方式, 它就是常见的C/S (客户/服务器) 模式。 A. 直接 a B. 间接 C. 低级 D. 信号量

47.在段式存储管理的地址转换时,若段内地址大于段表中该段的长度,则发生 。 A. 缺页中断 B. 溢出中断 C. 硬件故障中断

D. 地址越界中断 d

48. 在段式存储管理中, 。

A. 以段为单位分配,每一段是一个连续存储区 d B. 段与段之间必定不连续 C. 段与段之间必定连续 D. 每段是等长的

49.很好地解决了“零头(碎片)”问题的存储管理方法是 。 A. 页式存储管理 a B. 段式存储管理 C. 可变分区存储管理

D. 可重定位分区存储管理

50.与连续内存分配相比,采用页式内存管理使访存的速度总体上 。 A. 提高 B. 降低 b

C. 有时提高有时降低 D. 不受影响

操作系统综合练习 第 11 页 共 28 页

51.在一虚拟存储系统中,设主存的容量为32MB,辅存(硬盘)的容量为2GB,而地址寄存器和地址总线的位数是32位,在这样的系统中,虚存的最大容量是 。 A. 1GB B. 16MB

C. 1GB+16MB D. 4GB d

52.采用段页式存储管理的系统中,若地址用32位表示,其中10位表示段号,页的大小为4KB(用12位表示),则允许每段的最大页号是 。 A. 1024

B. 1023 10位页号 C. 4096 D. 4095

53. 在下列存储管理方式中,不要求将进程全部装入, 并不要求一个连

续存储空间的管理方式是 。 A. 固定分区存储管理 B. 可变分区存储管理 C. 页式存储管理

D. 页式虚拟存储管理 d

54. 页式虚拟存储管理中,当访问的页不在 时,产生缺页中断。 A. 内存 d B. 外存 C. 虚存 D. 缓存

55.在虚拟存储的实现中,需要页面淘汰的原因是 。 A. 产生缺页中断时内存中没有空闲帧 a

B. 内存空间太大

C. 页面换出、换入太频繁 D. 进程要被封锁

操作系统综合练习 第 12 页 共 28 页

56.虚拟存储器的最大容量 。 A. 为内外存容量之和

B. 由计算机的地址结构决定 d C. 是任意的

D. 由进程的地址空间决定

57.系统“抖动(颠簸)”现象的发生不是由 引起的。 A. 页面置换算法选择不当 B. 分配给进程的帧过少 C. 程序局部性差 D. CPU速度慢 c

58.虚拟存储管理系统的理论基础之一是程序的 原理。 A. 局部性 c B. 全局性 C. 动态性 D. 虚拟性

59.按文件的物理组织结构可将文件分成 。 A. 数据文件,命令文件,文本文件

B. 命令文件,库文件,索引文件

C. 连续文件,链式文件,索引文件 c D. 输入文件,输出文件,随机文件

60.采用直接存取(随机存取)方法来读写磁盘上的物理记录时,效率最低的是 。 A. 连续结构文件 B. 索引结构文件

C. 链接结构文件 c D. 索引连续结构文件

操作系统综合练习 第 13 页 共 28 页

61. 为解决文件重名问题,操作系统的文件系统必须采用 目录。

A. 分段

B. 二级或多级 c C. 分块存取 D. 标识名

62.从用户观点看,文件系统的主要目的是 。 A. 实现对文件的按名存取 a B. 实现虚拟存储

C. 提高外存的读写速度 D. 用于存储系统文件

63.一个文件的绝对路径是从 开始,逐步沿着每一级子目录向下追溯。 A.当前目录

B.根目录 b C.二级目录

D.用户当前目录

64. 文件系统中,索引文件结构中的索引表是用来 。 A. 指示逻辑块逻辑地址的 B. 存放部分数据信息的

C. 存放查找关键字项内容的 D. 指示逻辑块和物理块之间对应关系的 d 65.不包含在文件控制块(又称文件目录项)中的信息是 。 A. 存储介质 a B. 文件名

C. 存取控制信息 D. 文件的物理结构

操作系统综合练习 第 14 页 共 28 页

66.在文件的物理结构中, 结构不利于文件长度的动态增长。 A. 顺序 a B. 链接 C. 索引 D. Hash

67.以下 不是磁盘存储空间的常用管理方法。 A. 位示图

B. 记录的成组操作 b C. 空闲块表 D. 空闲块链

68. 用磁带作为文件存储介质时,文件只能组织成 。 A. 顺序文件 a B.链接文件 C.索引文件 D.随机读写文件

69.以下 不属于磁盘的驱动调度。 A. 最高响应比优先调度算法 a B. 先来先服务调度算法 C. 电梯调度算法

D. 单向扫描调度算法

70. 磁盘上的文件以 为基本单位读写 A.块 a B.记录 C.柱面 D.磁道

操作系统综合练习 第 15 页 共 28 页

71.在采用SPOOLing技术的系统中,用户作业的打印结果首先被送到 。

A. 硬盘固定区域 a B. 终端

C. 内存固定区 D. 打印机

72. 操作系统采用SPOOLing技术提高了 利用率。 A. 独占设备 a B. 文件 C. 主存储器 D. 共享设备

73.通过硬件和软件的功能扩充,把原来的独占设备改造成能为若干用户共享的设备,这种设备称为 设备。 A. 用户 B. 系统

C. 虚拟 c D. 临界

74.在操作系统中, 指的是一种硬件机制。 A. 缓冲池

B. 通道技术 b C. SPOOLing技术 D. 内存覆盖技术

75.在操作系统中,用户在使用I/O设备时,通常采用 。 A. 物理设备名 B. 虚拟设备名

C. 逻辑设备名 c D. 绝对设备号

操作系统综合练习 第 16 页 共 28 页

76.为了使多个进程能有效地同时处理输入和输出,最好使用 _____________结构的缓冲技术。 A. 单缓冲区 B. 双缓冲区 C. 单缓冲区环

D. 缓冲池 该题答B或D均可。

77. 如果I/O设备与存储设备进行数据交换不经过CPU来完成, 这种数据交换方式是 。 A.轮询方法 B.DMA B C.中断方法 D.自陷方法

78. 中断向量是指 。

A.中断处理程序入口地址 A B.中断向量表起始地址 C.中断的类型 D.中断号

79. 编写现代操作系统内核主要使用 。 A.汇编语言 B.C语言 C C.C++语言 D.JAVA语言

80.对于驻留在手机、掌上电脑等设备上的操作系统,最贴切的称呼是 。

A.智能卡操作系统 B.通用操作系统

C.嵌入式操作系统 C D.多媒体操作系统

操作系统综合练习 第 17 页 共 28 页

二、简答题(答案应简明扼要,每题答案超过百字不得分)

1.并发程序与并行程序在概念有何区别?

答:并发从宏观上看来程序是同时向前推进的,程序并行要求微观上的同时。在算法研究范畴常使用并行这个术语。

2.进程控制块PCB的作用是什么?PCB有很多数据项,列出你所知道的其中5项? 答:PCB可使OS感知进程的存在并对它进行控制和管理。PCB是进程存在的唯一标志。 PID(进程唯一标识符),Process state,Program counter,CPU registers,CPU scheduling information

Memory-management information,Accounting information,I/O status information。。。。。。

3. 什么是进程上下文?有人说对同一机器,单位时间内上下文切换次数越多,并发性越好。你是否支持这一观点?为什么? 答:进程上下文是进程运行的物理环境。 不支持。上下文切换是纯开销,次数过多反而会造成并发性下降。 4.写出你所知道的三种进程高级通信机制的名字?

答:(每举出一种得1分)答案见教材4.4和9.7。有消息通信(分直接和间接两种)、

SOCKET通信、RPC、JAVA的PMI、.NET的remoting等 5. 何谓进程的忙式等待 ? 进程是否还有其它方式的等待?

答:进程不进入等待状态(waiting state)的等待称为忙式等待。另一种等待方式是阻塞式等待(比如记录型信号量)。

6.采用资源有序分配方法预防死锁,破坏了死锁的必要条件中的 条件。

采用资源预先分配方法预防死锁,破坏了死锁的必要条件中的 条件。

采用剥夺资源的方法解除死锁,破坏了死锁的必要条件中的 条件。

操作系统综合练习 第 18 页 共 28 页

答:循环等待,保持申请,不可剥夺

7. 为什么说银行家算法是保守的?

答:银行家算法的保守性是指银行家算法基于死锁的必要条件而非充分条件,如不存在安全序列也不一定死锁。它只给出了进程需要资源的最大量,而所需资源的具体申请和释放顺序仍是未知的,因而银行家只能往最坏处设想。

8. 存储管理的主要功能是内存的分配及回收、地址变换, , , 。 答:存储扩充,存储保护,存储共享

9. 分别说出段式存储管理与页式存储管理各两项的特点.

答:页式存储管理特点:(1)有效地解决了内存碎片问题;(2)共享和保护不够方便;(3)对用户透明。

段式存储管理特点: (1) 存在段内碎片问题;(2) 共享与保护方便;(3) 可以实现动态链接和动态扩展;(4)方便程序员。

10.对于四级页表,假定快表TLB的命中率为98%,快表与内存的访问时间分别为20ns和100 ns ,计算其有效访问时间(要求简单解释计算思路):

答:EAT=98%*(20+100)+2%*(20+500)=128 ns

当访问快表命中,则由快表可直接访问内存(进行逻辑—物理页地址转换),故每次访存时间为20ns+100 ns

当访问快表不命中,则再在内存中找页表,因页表为4级,故页表总计访存4*100=400 ns,再加上访问快表不命中时间20ns和直接访问内存(进行逻辑—物理页地址转换)100 ns,故每次通过页表访存时间为400+20+100=520 ns

11. 一个虚地址空间为32bit的系统,页块大小为4KB(2^12),每个页表项占4B(32 bit),

操作系统综合练习 第 19 页 共 28 页

问:(1)使用一级页表时页表占多少空间?(2)使用二级页表时页表占多少空间?

(要求简单解释计算思路) 答:

(1)假如采用单级页表,则每个进程页表最大占用的内存为: 2^32/2^12=2^20约1百万条目,乘4B,约4MB。

(2)假如采用二级页表,每级为2^10(1024), 每个页表项占

4B/2=2B,则每个进程页表最大占用的内存为: 一级页表:2^10*2B,约为2KB,

二级页表:每个一级页表项下面有2^10个一级页表项,共有2^10*2^10个一级页表项。 故:(2^10)*(2^10)*2B=1024*2B+1024*1024*2B,约为2MB多一点.

该题可参见P144图6-15。

12.设有 8页逻辑空间,每页1024 字节, 它们被映射到32个页架(帧)的物理内存。

a. 逻辑地址的有效位是? b. 物理地址的有效位是?(要求简单解释计算思路) 答:

a. Logical address: 13 bits。表示8页需3位,表示1024字(页内偏移)需10位,故逻辑地址最少为3+10=13位。 b. Physical address: 15 bits。表示32帧需5位,表示1024字(帧内偏移)需10位,故逻辑地址最少为5+10=15位。

13.文件目录的作用是什么?一个文件的目录项(FCB)包含很多信息,请列出其中5项信息?

答:一个计算机系统中保存着许多文件,用户在使用文件时给出欲访

问的文件名,文件系统应当能够根据文件名找到指定的文件,为此需要为系统中的文件建立目录。

文件名、文件地址、文件长度、文件建立的时间日期和文件访问权限等。

14 FAT16是Windows操作系统支持的一种文件系统的名称,试例举

操作系统综合练习 第 20 页 共 28 页

出其它三种Windows(或UNIX、Linux)操作系统支持的文件系统的名称。 答:比如UNIX的UFS,Windows的FAT32,NTFS等,Linux 的EXT2、EXT3等。

15链接文件结构对于文件的顺序访问较有效,但对随机访问效率很低,请解释其原因。

答:链接文件一般将物理块组织成单链表,在定位一条记录时,要从链表头开始顺序查找,故对随机访问效率很低。

16.RAID的英文全称

是 。 RAID5利用至少 个磁盘(磁盘冗余)提高数据存储的可靠性,这些磁盘可以 工作以提高磁盘存取速度。

答:Redundant of Independent(or Inexpensive) Disks。3个,并行。

17 一个分层体系结构的操作系统,由裸机、用户、CPU调度和PV操

作、文件管理、内存管理、设备管理、命令管理组成,试按层次结构的原则从内到外将各部分重新排列。

答:裸机、CPU调度和PV操作、内存管理、设备管理、文件管理、

命令管理、用户

18.有人说设计PC机的单用户多任务操作系统,CPU的利用率不是主要设计目标,怎么理解此观点?

答:多道程序设计可提高CPU的利用率,但在PC机中操作系统中引入多道程序主要的目地是方便用户同时运行多个任务,及快速响应用户请求。提高CPU利用率只是手段而不是目地。

19 为什么通用操作系统一般不支持硬实时?说明两个理由即可。 答:(1)通用操作系统支持的应用种类很多,内部构造复杂。比如CPU调度,要考虑公平性因素,为各类进程服务,很难以最优先的次序满足硬实时要求。(2)在中断响应机制、进程上下文切换等操作中,时间开销也是无法准确预测的,不能满足硬实时要求。(3)通用操作系统一般为分层设计,这降低了效率,也不能满足硬实时要求。

操作系统综合练习 第 21 页 共 28 页

20.假如你是一个软件工程师,设计一个文字处理程序,该程序可同时对一个文本进行编辑、打印、语法检查等。

(1)对该程序采用多线程模型还是多进程模型好?简单说明理由。 (2)有人说对该设计问题。进(线)程间通信可采用共享内存方式,其优点是速度快。这种通信方式的设计难点在哪几个方面? 答:(1)该程序宜采用线程模式,因为此设计问题“自然的”具有共享数据的特点,与线程的特点自然吻合。 (2)难点在进程互斥、同步、死锁处理。

这是一道开放型的题目,按答案的合理性给分。

21某操作系统提供了连续结构、链接结构、索引结构三种磁盘文件结构,现有一记录型逻辑文件(比如学生学籍文件),假定该文件现有数千条记录,以后将有数万条记录。 问:(1)该逻辑文件最适合上述三种磁盘文件结构的哪一种?请简单说明理由。

(2)假定该逻辑文件起始逻辑块编号为1,该文件已打开,其FCB等所有文件管理信息都已在内存,而文件数据全部在磁盘上, 该文件现位于第1个逻辑块,如要访问第N个逻辑块(N>1),使用你所选择的磁盘文件结构,需从磁盘上读几个物理块? 答:(1)索引结构。文件动态增长性好,数据随机访问速度快。 (2)读1个物理块,从索引表(按题意,索引表为文件管理信息,已在内存)中查找N号逻辑块对应的物理块,从磁盘读出对应的1个物理块。

22 Windows有这样一个功能:当你使用某程序创建一个文件(比如用记事本程序创建一个文本文件),下次打开该文件时,会自动调用创建该文件的程序打开该文件(比如打开一个文本文件时会自动用记事本程序打开该文件)。如果让你完成此功能的设计,你的基本思路是什么?

答:给文件控制块FCB加一个创建者属性,该属性标示创建本文件的程序名,打开文件时从FCB找创建者属性启动相应程序。

操作系统综合练习 第 22 页 共 28 页

三、综合题

1 某就绪队列中已有以下进程等待调度:

Process CPU 阵发期 优先级(数越小优先级越高) P1 24 3 P2 3 2 P3 3 1

(1)在不考虑这些进程到达就绪队列时间先后的前提下(假定它们同时到达),分别画出及计算

短作业优先算法、循环轮转算法(时间片为4)、静态优先数算法的甘特图及平均等待时间。[注:等待时间=周转时间-CPU阵发期] (2)上述三种算法,哪种算法实用性最差?简单说明理由。

(3)上述三种算法,哪些算法肯定是抢占式的?哪些算法既可以是抢占式的也可以是非抢占式的? 答: (1)

短作业优先算法 P2 P3 P1 0 3 6 30 Waiting time for P1 = 6; P2 = 0; P3 = 3 Average waiting time: (6 + 0 + 3)/3 = 3 循环轮转算法(时间片为4) P1 P2 P3 P1 P1 P1 P1 P1 0 4 7 10 14 18 22 26 30 The waiting time is :

P1=30-24=6; P2=7-3=4; P3=10-3=7 The average waiting time is (6+4+7)/3=5.66 静态优先数算法 P3 P2 P1 0 3 6

Waiting time for P1 = 6; P2 = 3; P3 =0 Average waiting time: (6 + 3 + 0)/3 = 3

操作系统综合练习 第 23 页 共 28 页

(2)短作业优先算法实用性最差,因为实际中很难知道进程的CPU阵发时间。

(3)循环轮转算法肯定是抢占式的,其它两种算法既可以是抢占式的也可以是非抢占式的。

操作系统综合练习 第 24 页 共 28 页

2.关于虚拟内存技术的几种页面淘汰算法。

问(1)最佳淘汰算法在实际操作系统中有使用价值吗?为什么?该算法有何意义?

(2)实际操作系统中常用最近最少使用的先淘汰(Least Recently Used,LRU)算法,该算法与最佳淘汰算法有何联系?(无需画出页面置换图)

(3)除了用于虚拟内存的页面淘汰,LRU算法还可用在哪些方面,试举一例。 答:

(1)这种淘汰算法的页故障率最低, 是最理想的淘汰算法。然而它是不能实现的, 这是因为无法准确预期内存页面“将来“的访问情况。尽管如此,该算法仍然是有意义的,它可以作为衡量其它算法优劣的一个标准。

(2)LRU算法使用页面最后一次被访问的时间,是向后看的,这就有了算法实用的可行性。如果设R(S)为页面访问序列S的反序, 可以说明: OPT算法用于S上的page fault trap=LRU算法用于R(S)上的page fault trap。

(3)CACHE和快表(TLB)

操作系统综合练习 第 25 页 共 28 页

3. 试用信号量及PV操作写出有界缓冲区生产者—消费者问题的解 答: 生产者进程: 消费者进程: do { … do { produce an item in nextp wait(full) … wait(mutex); wait(empty); … wait(mutex); remove an item from buffer to … nextc add nextp to buffer … … signal(mutex); signal(mutex); signal(empty); signal(full); … } while (1); consume the item in nextc } while (1);

4. 试用信号量及PV操作写出无界缓冲区生产者—消费者问题的解 答: 生产者进程: 消费者进程: do { … do { produce an item in nextp wait(full) … wait(mutex); wait(mutex); … … remove an item from buffer to add nextp to buffer nextc … … signal(mutex); signal(mutex); signal(full); … } while (1); consume the item in nextc } while (1);

操作系统综合练习 第 26 页 共 28 页

5.有人在读者写者问题,读者优先的解的基础上,增设一初值为1的信号量S,给出了对读者--写者均公平的解: Writer processes: Reader processes: while(1){ while(1){ P(S) P(S) P(r_w_w); P(mutex); … readcount++; writing is performed if (readcount == 1) P(r_w_w ); … V(mutex); V(r_w_w ); V(S) //假如将这一行放在读者进程的V(S) 最后一行 … } reading is performed … P(mutex); readcount--; if (readcount == 0) V(r_w_w ); V(mutex) // 最后一行 } 如果将读者进程中V(S)一行放在读者进程的最后,即将读者进程的V(S) 挪到并替换“// 最后一行”,结果如何?请从正确性、公平性和并发性三方面说明。

答:这是可以的,不会影响公平性。但这会影响读者的并发性,假定连续有多个读者到达而没有写者,将读者进程的signal(S) 放到最后一行会使读者不能同时读。将signal(S) 放在“reading is performed”之前,可尽早释放信号量S,使等待队列中的读者尽早的出队列,与其它读者并发进行读操作。

6. 桌上有一只空盘,只允许放一个水果,爸爸可向盘中放苹果或桔子,儿子只能吃桔子,女儿只能吃苹果,试用信号量和PV操作实现三者同步。

答:设3个信号量S=1,SO=0,SA=0,S表示盘子是否为空,SO表示盘中是否有桔子,SA表示盘中是否有苹果。

操作系统综合练习 第 27 页 共 28 页

Father: Son: Daughter: While(1){ While(1){ While(1){ P(S); P(SO); P(SA); 将水果放到盘中; 从盘中取桔子; 从盘中取苹果; If (放入的是桔子) V(S) V(S) V(SO) 吃桔子 吃苹果 Else V(SA) } } }

7. 有一个二维数组:int a[100][100]; 该矩阵按先行后列次序存储,在一个页式虚拟存储系统中,每页可以存放200个数组元素,采用LRU页面淘汰算法。

设该一个进程分配有3页内存空间(物理页架,或帧),其中第2、3页是数据区,第1页存放程序,假定程序已经在内存且不能被置换。 程序A: 程序B: for (i=0;i<100;i++) for (j=0;j<100;j++) for (j=0;j<100;j++) for (i=0;i<100;i++) a[i][j]=0; a[i][j]=0; (1)如果用程序A给数组赋值,大约会产生多少次缺页(page fault)?简单说明理由。 (2)如果用程序B给数组赋值,大约会产生多少次缺页(page fault)?简单说明理由。

[本题缺页次数统计只需一个估计数即可,不需很精确] 答:(1)约50多次。大约每两个i循环发生一次缺页。

(2)约5000次。在每1个j循环内,每2个i循环发生一次缺页。 9.假如你有一个初中文化程度的朋友,他只会使用计算机上网、文字

处理、游戏娱乐等功能,不懂得操作系统为何物,请你用200字

操作系统综合练习 第 28 页 共 28 页

左右跟他解释一下什么是操作系统,以及为什么操作系统能够做到可以使他能够同时进行计算机上网、文字处理、游戏娱乐等活动。

答:这是一道开放型的题目,按答案的合理性(2分)和通俗易懂(3

分)给分。

10.林纳斯设计Linux时也是大学生。假如让你为PC裸机设计一个全新的X操作系统内核,该内核不包括文件系统和设备管理系统,你应按先后次序完成哪几个最核心的程序?

答:这是一道开放型的题目,答案合理即可给分。参考答案:程序完成顺序可参考操作系统分层模型,先完成主要的中断处理程序、装入程序、再完成最基本的进程管理程序,如进程创建/撤消、CPU调度、信号量原语等。

本文来源:https://www.bwwdw.com/article/6xc7.html

Top