1、软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷 79及答案与解析 1 以下描述中,不正确的是 (1)。 ( A)固定分区支持多道程序设计,算法简单,但存储器碎片多 ( B)可重定位分区能消除碎片,但用于存储器紧缩处理的时间长 ( C)分页式存储允许动态链接和装入,能消除碎片,支持虚拟存储 ( D)分页式存储支持虚拟存储,但不能以自然的方式提供存储器的共享和存取保护机制 2 从静态角度看,进程由程序段、进程控制块 (PCB)和数据空间三部分组成。通常,用户进程被建立后, (2)。 ( A)便一直存 在于系统中,直到被操作人员撤销 ( B)随着作业运行正常或不正常结束而撤销 ( C)随
2、着时间片轮转而撤销与建立 ( D)随着进程的阻塞或唤醒而撤销与建立 3 从下列给出的 4个叙述中,正确是 (3)。 ( A)唤醒:就绪 运行 ( B)超时:运行 挂起 ( C)用户进程可激发调度进程 ( D)进程具有引用局部性时,可降低页面出错的频率 4 以下关于进程和程序的描述中,不正确的是 (4)。 ( A)进程是一个程序关于某个数据集的一次运行 ( B)进程是系统分配资源的基本单位,而程序不是 ( C)进程和程序是 一种一一对应的关系 ( D)一个程序可以包含多个进程 5 在一单处理机系统中,若有 8个用户进程,在非管态的某一时刻,处于就绪状态的用户进程最多、最少分别有 (5)个。 (
3、A) 8和 0 ( B) 7和 0 ( C) 8和 1 ( D) 7和 1 6 在有一台处理机 CPU和两台输入输出设备 IO1和 IO2,且能够实现抢先式多任务并行工作的多道程序内,投入运行优先级由高到低 P1, P2, P3三个作业。它们使用设备的先后顺序和占用设备时间分别是: 作业 P1: IO2(30 ms), CPU(10 ms),IO1(30 ms), CPU(10 ms)。 作业 P2: IO1(20 ms), CPU(20 ms), IO2(40 ms)。 作业P3: CPU(30 ms), IO1(20 ms)。 在对于其他辅助操作时间可以忽略不计的假设下,作业 P1, P2
4、, P3从投入到完成, CPU的空闲时长为 (6)。假定在系统中仅有这三个作业投入运行。 ( A) 10 ( B) 20 ( C) 30 ( D) 40 7 操作系统的主要作用是 (7)。 ( A)管理设备 ( B)提供操作命令 ( C)管理文件 ( D)为用户提供使用计算机的接口,管理计算机的资源 8 如果分时系统的时间片一定,那么 (8)则响应时间越长。 ( A)用户数越多 ( B)用户数越少 ( C)内存越小 ( D)内存越大 9 在一段时间内,只允许一个进程访问的资源称为 (9)。 ( A)共享资源 ( B)独占资源 ( C)临界资源 ( D)共享区 10 下述 (10)不属于多道程序
5、运行的特征。 ( A)多道 ( B)运行速度快 ( C)宏观上并行 ( D)实际上多道程序是穿插运行的 11 (11)调度算法有利于 CPU繁忙型的作业,而不利于 I O繁忙型的作业 (进程 )。 ( A)时间片轮转调 度算法 ( B)先来先服务调度算法 ( C)短作业 (进程 )优先算法 ( D)优先权调度算法 12 若信号量的初值为 2,当前值为负 3,则表示有 (12)个等待进程。 ( A) 1 ( B) 2 ( C) 3 ( D) 5 13 某计算机系统中有 8台打印机,由 K个进程竞争使用,每个进程最多需要 3台打印机。该系统可能会发生死锁的 K的最小值是 (13)。 ( A) 2
6、( B) 3 ( C) 4 ( D) 5 14 进程间的同步是指进程间在逻辑上的相互 (14)关系。 ( A)联接 ( B)制约 ( C)继续 ( D)调用 15 某仓库有两名发货员,一名审核员。当顾客提货时,只要发货员空闲,允许顾客进入仓库提货,顾客离开时;审核员检验顾客提货是否正确。其工作流程如图3-1所示。为了利用 PV操作正确地协调他们之间的工作,设置了两个信号量 S1和S2,且 S1的初值为 2, S2的初值为 1。图中的 a、 b、 c和 d应分别填写 (15)。( A) P(S1)、 P(S2)、 V(S2)和 V(S1) ( B) P(S2)、 P(S1)、 V(S1)和 V(
7、S2) ( C) P(S1)、 V(S1)、 P(S2)和 V(S2) ( D) P(S1)、 V(S2)、 P(S1)和 V(S1) 16 进程 P1、 P2、 P3和 P4的前趋图如图 3-2所示: 若用 PV操作控制进程 P1 P4并发执行的过程,则需要设置 4个信号 S1、 S2、 S3和 S4, 且信号量 S1-S4的初值都等于零。图 3-3中 a、 b、 c、 d处应分别填写 (16)。( A) V(S1)V(S2)、 V(S4)、 P(S2)和 P(S3)、 P(S4) ( B) V(S1)V(S2)、 V(S4)、 P(S3)和 P(S2)、 P(S4) ( C) V(S1)V
8、(S4)、 V(S2)、 P(S2)和 P(S3)、 P(S4) ( D) V(S1)V(S4)、 V(S2)、 P(S3)和 P(S2)、 P(S4) 17 使用 Spooling系统的目的是为了提高 (17)的使用效率。 ( A)操作系统 ( B)内存 ( C) CPU ( D) I O设备 18 某软盘有 100个磁道,磁头从一个磁道移至另一个磁道需要 2ms。文件在磁盘上非连续存放,逻辑上相邻数据块的平均距离为 20个磁道,每块的旋转延迟时间及传输时间分别为 50ms和 10ms,则读取一个 10块的文件需要 (18)时间。 ( A) 1000ms ( B) 1200ms ( C) 1
9、400ms ( D) 2000ms 19 假设系统中有三类互斥资源 R1, R2, R3,可用资源数分别是 9, 8, 5。在 T0时刻系统中有 P1, P2, P3, P4和 P5五个进程,这些进程对资源的最大需求量和已分配资源数如表 3-1所示,如果进程按 (19)序列执行,那么系统状态是安全的。( A) P1 P2 P4 P5 P3 ( B) P2 P1 P4 P5 P3 ( C) P2 P4 P5 P1 P3 ( D) P4 P2 P4 P1 P3 20 通过撤销进程可以进行死锁恢复,还可以采用 (20)方法解除死锁。 ( A)阻塞进程 ( B)资源剥夺 ( C)提高进程优先级 ( D
10、)降低进程优先级 21 虚拟内存是 (21)。 ( A)可提高计算机运算速度的设备 ( B)容量扩大了的主存实际空间 ( C)通过 SPOOLING技术实现的 ( D)可以容纳总和超过主存容量的多个作业同时运行的一个地址空间 22 在分页式虚拟存储管理系统中,页面的大小与可能产生的缺页中断次数的关系是 (22)。 ( A)页面的大小与缺页中断次数成正比 ( B)页面越大,则缺页中断次数就越低 ( C)页面越大,则缺页中断次数就越高 ( D)页面的大小与缺页中断次数是一个固定的比值 23 假设磁头当前位于第 105道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序列为 35, 45, 12
11、, 68, 110 1 180, 170, 195,采用 SCAN调度 (电梯调度 )算法得到的磁道访问序列是 (23)。 ( A) 110, 170, 180, 195, 68, 45, 35, 12 ( B) 110, 68, 45, 35, 12, 170, 180, 195 ( C) 110, 170, 180, 195, 12, 35, 45, 68 ( D) 12, 35, 45, 68, 110, 170, 180, 195 24 设备与 CPU之间数据传送控 制方式有 4种,下面的选项中不属于这 4种的是(24)。 ( A)程序直接控制方式 ( B)设备控制方式 ( C)直接内
12、存访问 (DMA)方式 ( D)通道控制方式 25 设文件索引结点中有 7个地址项,其中 4个地址项为直接地址索引, 2个地址项是一级间接地址索引, 1个地址项是二级间接地址索引,每个地址项大小为 4字节,若磁盘索引块和磁盘数据块大小均为 256字节,则可表示的单个文件最大长度是 (25)。 ( A) 33KB ( B) 519KB ( C) 1057KB ( D) 16513KB 26 设置当前目录的主要原 因是 (26)。 ( A)节省主存空间 ( B)加快文件查找速度 ( C)节省辅存空间 ( D)便于打开文件 27 在页式存储器管理中,页表内容如表 3-2所示。若页的大小为 2K,则地
13、址转换机构将逻辑地址 9888转换成的物理地址为 (27)。( A) 20485 ( B) 7840 ( C) 18080 ( D) 13984 28 某文件管理系统为了记录磁盘的使用情况,在磁盘上建立了位示图 (bitmap)。若系统中字长为 32位,磁盘上的物理块依次编号为 -0, 1, 2, ,那么 6912号物理块的使用情况在位示图中的 第 (28)个字中描述。 ( A) 216 ( B) 217 ( C) 432 ( D) 433 29 某系统采用请求页式存储管理方案,假设某进程有 6个页面,系统给该进程分配了 3个存储块,其页面变换表如表 3-3所示,表中的状态位等于 1 0分别表
14、示页面在内存不在内存。当该进程访问的页面 1不在内存时,应该淘汰表中页号为(29)的页面。 ( A) 0 ( B) 3 ( C) 4 ( D) 5 30 某进程页面访问序列为 4, 2, 3, 1, 2, 4, 5, 3, 1, 2, 3, 5,且开始执行时内存中没有页面,分配给该进程的物理块数是 3, 则采用 FIFO页面置换算法和采用 LRU(最近最久未使用 )页面置换算法时的缺页率分别是 (30)。 ( A) 75和 75 ( B) 75和 83 ( C) 83和 83 ( D) 83和 75 软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷 79答案与解析 1 【正确答案】
15、C 【试题解析】 此题考查存储管理方面的知识点,侧重各种存储管理方法的优缺点。要正确解答此题,必须把这些存储管理方法的特点搞清楚。下面逐一分析各种存储方式。 (1)连续分区把所有用户区都分配给唯一的用户作业, 当作业被调度时,进程全部进入内存,一旦完成,所有主存恢复空闲,因此它不支持多道程序设计。 (2)固定分区存储管理。这是支持多道程序设计的最简单存储管理方法,它把主存划分成若干个固定的和大小不同的分区,每个分区能够装入一个作业,分区的大小是固定的,算法简单,但是容易生成较多的存储器碎片。 (3)可重定位分区存储管理。这是克服固定分区碎片问题的一种存储分配方法,它能够把相邻的空闲存储空间合并
16、成一个完整的空区,还能够整理存储器内各个作业的存储位置,以达到消除存储碎片和紧缩存储空间的目的。紧缩工作需 要花费大量的时间和系统资源。 (4)非请求分页式存储管理。非请求分页式是将存储空间和作业的地址空间分成若干个等分部分的分页式,要求把进程所需要的页面全部调入主存后作业方能运行。因此,当内存可用空间小于作业所需的地址空间时,作业无法运行。它克服了分区存储管理中碎片多和紧缩处理时间长的缺点,支持多道程序设计,但不支持虚拟存储。 (5)请求分页式存储管理。非请求分页式是将存储空间和作业的地址空间分成若干个等分部分的分页式,当进程需要用到某个页面时将该页面调入主存,把那些暂时无关的页面留在主存外
17、。它 支持虚拟存储,克服了分区存储管理中碎片多和紧缩处理时间长的缺点,支持多道程序设计,但是它不能实现对最自然的以段为单位的共享与存储保护 (因为程序通常是以段为单位划分的,所以以段为单位最自然 )。 (6)段页式存储管理。这是分段式和分页式结合的存储管理方法,充分利用了分段管理和分页管理的优点。作业按逻辑结构分段,段内分页,内存分块。作业只需部分页装入即可运行,所以支持虚拟存储,可实现动态链接和装配。 【知识模块】 操作系统 2 【正确答案】 B 【试题解析】 本题主要考核进程管理的基本概 念、进程控制及作业管理与进程管理的关系等知识点。 进程是操作系统中可以并发运行和分配系统资源的基本单位
18、。进程是运行中的程序,是程序在某个数据集合上的一次执行过程,具有并发性和动态性。从静态的角度看,进程实体是由进程控制块 (PCB)、程序段和数据空间等三部分组成的。从进程的运行来看,进程可并发运行程序在其数据集合上的运行过程。 进程控制是通过进程控制原语来实现的。用户可以通过系统调用接口调用进程控制原语实现进程的建立与撤销、阻塞与唤醒等控制。但是,进程的控制通常是由系统自动完成的,这就是用户作 业管理的功能。作业管理通过三级调度 (作业、均衡、进程 )实现用户进程的创建与撤销等控制。时间片轮转、阻塞或唤醒只会引起进程的状态改变,而不能控制进程的产生与终止。运行的进程会随着作业运行正常或不正常结
19、束而撤销。 【知识模块】 操作系统 3 【正确答案】 D 【试题解析】 进程就是系统进行分配和调度的最小单位。它有三种基本状态。 就绪状态:进程已得到运行所需资源,只等待 CPU的调度便可运行。 运行状态:进程已得到运行所需资源,并且得到了 CPU的调度。 挂起状态:不具备运行条件、等待时机的状态。 进程 的状态是可变化的,其变化如图 3-4所示。 就绪 运行的条件是被调度程序选中。 运行 就绪的条件是时间片到了 (超时 ),或被更高优先级的进程剥夺。 运行 挂起的条件是不具备运行条件,等待某一事件的发生。挂起 就绪的条件是等待的事件已发生,具备了运行条件。 从图中可以看出,在状态转换中不能由
20、挂起态直接进入运行态,也不能由就绪态进入挂起态。 操作系统对存储的管理主要是对内存的分配、保护和扩充。内存分配管理办法之一就是分页式管理。由于分配的内存太低,页面淘汰算法选择不当或程序存储空间跨度太大等原因,可能引起页面缺 页率的增加,故 D正确。 【知识模块】 操作系统 4 【正确答案】 C 【试题解析】 本题考查进程与程序的区别。 程序是一个在时间上按严格次序顺序执行的操作序列。 进程是一个程序关于某个数据集的一次运行,是系统进行资源分配和调度的基本单位。也就是说,进程是运行中的程序,是程序的一次运行活动。相对于程序,进程是一个动态的概念,而程序是静态的概念,是指令的集合。因此,进程具有动
21、态性和并发性。同时进程是系统进行资源分配和独立运行的基本单位。 而进程和程序并不是一一对应的关系, 一个程序执行在不同的数据集上就成为不同的进程,可以用进程控制块来唯一地标识每个进程。而程序无法做到,由于程序没有和数据产生直接的联系,即使是执行不同的数据的程序,他们的指令的集合依然是一样的。所以,一个进程肯定有一个与之对应的程序,而且只有一个。而一个程序有可能没有与之对应的进程 (没执行 ),也有可能有多个进程与之对应。 另外,要理解进程这个概念,还应掌握以下几个方面的内容。 (1)为什么要引入进程。引入进程是为了使内存中的多道程序能够正确地并发执行。 (2)进程具有哪些基本特征。进程 具有动
22、态性、并发性、独立性、异步性和结构特征。 (3)进程有哪些基本状态。进程具有就绪、执行和阻塞三种基本状态,现代操作系统中还加入了挂起状态。 【知识模块】 操作系统 5 【正确答案】 B 【试题解析】 处理机有两个状态,一个是管态,即系统态,另一个是非管态,即目态或用户态。当 CPU处理系统程序的时候, CPU会转为管态, CPU在管态下可以执行指令系统的全集,包括特权指令与非特权指令;当 CPU处理一般用户程序的时候, CPU的状态又由原来的管态转为目态,这个时候程序只能执行非特权指令。 在一个单处理机中,处理器只有一个,非管态 (即用户进程执行状态 )的某一时刻,处于运行态的进程最多只有一个
23、,系统中处于就绪态或阻塞的进程可能有多个,这样处于就绪态的进程数最多只能是进程总数减 1,本题为 8-1=7,因此最多可以有 8个就绪进程。如果除了运行态的一个进程外,其余进程均处于阻塞态,则就绪态进程个数为 0。 【知识模块】 操作系统 6 【正确答案】 B 【试题解析】 在多任务系统中,多任务在宏观上是并行的,微观上是串行的。从宏观上看,多任务并行使用系统资源 (如处理器、 I O设备 );微观 上,大部分资源是在串行地为这些任务服务。因此,系统必须进行调度,使系统资源有效合理地为任务提供服务。调度的算法有先来先服务法、优先数法、短作业优先法、响应比高者优先法等。优先数法调度时,根据作业的
24、优先级别,级别高者先调度。在抢先式多任务系统中, CPU是可抢先的,即任何时刻 CPU总是分配给需要CPU的优先级最高的作业。 根据题意, P1, P2, P3的运行优先级由高到低,在抢先式并行工作方式下,作业的执行时序图如图 3-5所示。有些考生不能理解此图。这个时序图应这么看: P1前 30 ms使用 IO2,所以时序图中, IO2第一段 30 ms标记为 P1。 P2前 20 ms使用: IO1, IO1第一段 20 ms标记为 P2; P3前 20 ms使用 CPU, CPU第一段20 ms标记为 P3;还有一点要注意, CPU资源是可以抢占的,从 30 40看得出来, P2本来要用
25、20 ms CPU,但还只用了 10 ms就被 P1抢去了。所以从图中可知,三个作业从投入到完成总的运行时间为 90 ms。 CPU, IO11, IO2的有效工作时间均为 70 ms,因此 CPU有 20 ms时间是空闲的。 【知识模块】 操作系统 7 【正确答案】 D 【试题 解析】 操作系统是计算机系统中最重要、最基本的系统软件,位于硬件和用户之间,一方面,它能向用户提供接口,方便用户使用计算机;另一方面,它能管理计算机软硬件资源,以便合理充分地利用它们。操作系统应具有以下几个主要功能。 (1)处理机管理:对处理器的管理可以归结为对进程和线程的管理,包括:进程控制和管理;进程同步和互斥;
26、进程通信;进程死锁;处理器调度,又分高级调度,中级调度,低级调度等;线程控制和管理。 (2)存储管理:存储管理的主要任务是管理存储器资源,为多道程序运行提供有力的支撑。存储管理的 主要功能包括:存储分配;存储共享;存储保护;存储扩充。 (3)设备管理:设备管理的主要任务是管理各类外围设备,完成用户提出的 I O请求,加快 I O信息的传送速度,发挥 I O设备的并行性,提高 I O设备的利用率;设备管理应该具有以下功能:提供外围设备的控制与处理;提供缓冲区的管理;提供外围设备的分配;提供共享型外围设备的驱动;实现虚拟设备。 (4)文件管理:上述三种管理是针对计算机硬件资源的管理。文件管理则是对
27、系统的信息资源的管理。文件管理要完成以下任务:提供文件逻辑组织方法;提供文件物理组织 方法;提供文件的存取方法;提供文件的使用方法;实现文件的目录管理;实现文件的存取控制;实现文件的存储空间管理。 (5)网络与通信管理:联网操作系统至少应具有以下管理功能:网上资源管理功能;数据通信管理功能;网络管理功能。 (6)用户接口:为了使用户能灵活、方便地使用计算机和操作系统,操作系统还提供了一组友好的用户接口,包括程序接口,命令接口,图形接口等。 【知识模块】 操作系统 8 【正确答案】 A 【试题解析】 分时操作系统的工作方式是:一台主机连接了若干个终端,每个终端有 一个用户在使用。用户交互式地向系
28、统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据上步结果发出下道命。分时操作系统将 CPU的时间划分成若干个片段,称为时间片。操作系统以时间片为单位,轮流为每个终端用户服务。每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。分时系统具有多路性、交互性、 “独占 ”性和及时性的特征。多路性指,同时有多个用户使用一台计算机,宏观上看是多个人同时使用一个 CPU,微观上是多个人在不同时刻轮流使用 CPU。交互性 是指,用户根据系统响应结果进一步提出新请求 (用户直接干预每一步 )。 “独占 ”性是指,用户感觉不到计算机
29、为其他人服务,就像整个系统为他所独占。及时性指,系统对用户提出的请求及时响应。 响应时间指用户从提交到调度运行所需时间,用户多则轮到执行的时间就会往后延长。因此,如果时间片一定,那么用户数越多,则响应时间越长。 分时系统的响应时间 T可以表达为 TQN,其中 Q是时间片,而 N是用户数。当时间片一定,用户数越多 (即 N越大 ), T就越大。 【知识模块】 操作系统 9 【正确答案】 C 【试题解析】 系统中的某些资源,如打印机、磁带机,虽然它们可以提供给多个进程 (线程 )使用,但为使所打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程 (线程 )访问该资源。 为此,当一个进程
30、A访问某资源时,必须先提出请求,如果此时该资源空闲,系统便可将之分配给请求进程 A使用,此后若再有其他进程也要访问该资源时 (只要 A未用完 )则必须等待。仅当 A进程访问完并释放该资源后,才允许另一进程对该资源进行访问。把这种资源共享方式称为互斥式共享,而把在一段时间内只允许一个进程访问的资源称为临界资源或独占资 源。计算机系统中的大多数物理设备,以及某些软件中所用的栈、变量和表格,都属于临界资源,它们要求被互斥地共享。 【知识模块】 操作系统 10 【正确答案】 B 【试题解析】 多道程序技术是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的运行。多道程序的运
31、行特征: 多道:计算机内存中同时存放多道相互独立的程序。 宏观上并行:同时进入系统的几道程序都处于运行状态,但都未运行结束。 微观上串行运行:各作业交替使用 CPU。 【知识模块】 操作 系统 11 【正确答案】 B 【试题解析】 目前存在着多种调度算法,有的算法适合作业调度;有的算法适用于进程调度;但也有些调度算法,既可用于作业调度,也可用于进程调度。 其中,先来先服务 (FCFS)调度算法是一种最简单的调度算法。当在作业调度中采用该算法时,每次 调度是从后备作业队列中,选择一个或多个最先进入该队列的作用,将它们调入内存,为它们分配资源、创建进程,然后放入就绪队列。 在进程调度中,采用 FC
32、FS调度算法时,则每次调度就是从就绪队列中选择一个最先进入该队列的进程,把处理机分配给它,使之投入运行。该进程一直运行到完成或发生某事件而阻塞后,才放弃处理机。 FCFS算法比较有利于长作业 (进程 ),而不利于短作业 (进程 ),表 3-4所示为 A、 B、 C、 D四个作业分别到达系统的时间、要求服务的时间、开始执行时间及各自的完成时间,并计算各自的周转时间和带权周转时间。 从 表3-4中可以看出,其中短作业 C的带权周转时间竟高达 100,而长作业 D的带权周转时间仅为 1 99。 由此可见, FCFS调度算法有利于 CPU繁忙型的作业,而不利于 I O繁忙型的作业 (进程 )。 CPU
33、繁忙型作业,是指该类作业需要大量的CPU时间进行计算,而很少请求 I O。通常的科学计算便属于 CPU繁忙型作业。 I O繁忙型作业是指 CPU进行处理时,又需频繁地请求 I O,而每次 I O的操作时间却很短,目前大多数的事物处理,都属于 I O繁忙型作业。 可以通过一个例子来说明采用 FCFS调度算法的调度性能,表 3-5中有 5个进程 A、 B、C、 D和 E,它们到达的时间分别是 0、 1、 2、 3和 4,所要求的服务时间分别是4、 3、 5、 2和 4,由表中还可以看出, A、 B、 C、 D和 E的完成时间分别是 4、7、 12、 14和 18,从每个进程的完成时间中减去其到达时
34、间,即得到每个进程的周转时间,进而可以算出每个进程的带权周转时间。【知识模块】 操作系统 12 【正确答案】 C 【试题解析】 当信号量控制互斥问题时,其初值往往代表资源的个数。本题初值为 2,说明该种资源数量 2个。当进程将 2个资源全部占有之后,信号量值减至0,此时若再有进 程要求申请该资源,则必须在此信号量上等待,具体表现为:将信号量的值减 1,导致信号量的取值为负。此时有几个进程申请该资源,信号量便被减几次;因此 S的值为负 3,则表示有 3个进程在等待该资源。 【知识模块】 操作系统 13 【正确答案】 C 【试题解析】 发生死锁的现象就是占有并等待,并且等待的资源不会被释放。可假设
35、死锁已发生,进而讨论进程个数。肯定发生死锁的最小进程数是这样得到的:假设 K个进程,每个进程需要 M个资源,而每个进程已占有 M-1个,都在等待最后一个资源,于是死锁发生;此时,只要再多一个 资源,死锁便可解除, K便是所求值。根据题目条件, M=3, K(M-1)=8,得 K=4。 【知识模块】 操作系统 14 【正确答案】 B 【试题解析】 某些进程为完成同一任务需要分工协作,由于合作的每一个进程都是独立地以不可预知的速度推进,这就需要相互协作的进程在某些协调点上协调各自的工作。为了解决进程间协作关系 (直接制约关系 ),因此引入了进程同步。 进程同步主要源于进程合作,是进程间共同完成一项
36、任务时,直接发生相互作用的关系,为进程之间的直接制约关系。在多道环境下,这种进程间在执行次 序上的协调是必不可少的。 进程互斥主要源于资源共享,是进程之间的间接制约关系。在多道系统中,进程互斥就是保证每次只有一个进程使用临界资源。 【知识模块】 操作系统 15 【正确答案】 C 【试题解析】 首先要理解好 PV操作的含义。假设信号量为 Sem,则 P原语的主要操作是: (1)Sem减 1。 (2)若 Sem减 1后仍大于或等于零,则该进程继续执行。 (3)若 Sem减 1后小于零,则该进程被阻塞,在相应队列中排队,然后转向系统的进程调度。 V原语的 主要操作是: (1)Sem加 1。 (2)若
37、相加结果大于零,则进程继续执行。 (3)若相加结果小于或等于零,则唤醒一阻塞在该信号量上的进程,然后再返回原进程继续执行或转进程调度。 当信号量 S小于 0时,其绝对值表示系统中因请求该类资源未被满足而被阻塞的进程数目, S大于 0时表示可用的临界资源数。 对于 V操作有一些说明,以纠正理解偏差。 Sem大于 0时表示有临界资源可供使用,而且这个时候没有进程被阻塞在这个资源上,也就是说,没有进程因为得不到这类资源而阻塞,所以没有被 阻塞的进程,自然不需要唤醒。有人可能会问:当 Sem小于 0时表明没有临界资源可供使用,为什么还要唤醒进程 ?这是因为 V原语操作的本质在于:一个进程使用完临界资源
38、后,释放临界资源,使 Sem加 1,以通知其他的进程,这个时候如果Sem0,则表明有进程阻塞在该类资源上,因此要从阻塞队列里唤醒一个进程来“转手 ”该类资源。比如,有 2个某类资源, 4个进程 A、 B、 C、 D要用该类资源,最开始 Sem=2,当 A进入时 Sem=1;当 B进入时 Sem=0,表明该类资源刚好用完,当 C进入时 Sem=-1,表明有一个进程被阻塞了;当 D进入时 Sem=-2。当A用完该类资源时,进行 V操作, Sem=-1,释放该类资源,而这时 Sem0,表明有进程阻塞在该类资源上,于是唤醒一个。 有了上述对 PV操作的正确理解,那这道题就很好解决了。 S1的初值为 2
39、,显然表明最开始有两个 “发货员 ”这种资源,当顾客去提货时要用去一个这样的资源,于是 a显然填 P(S1)。当提货完了之后,顾客进程要释放“发货员 ”资源,于是 b显然填 V(S1)。从图中可以看出,接着审核员要审核提货是否正确;同理,顾客要用去一个 “审核员 ”资源,于是 c应该填 P(S2)。最后, d显然填 V(S2)了。 值得一提的是,很多考生记不清是 P操作加 1还是 V操作加 1,这里给大家提供一个小窍门。大家看字母 “V”,从下往上看其水平宽度是逐渐变大的,这 “表明 ”V操作是对信号量进行加 1操作。 【知识模块】 操作系统 16 【正确答案】 C 【试题解析】 本题主要考查
40、用 PV操作控制进程的并发执行。首先需要弄清楚前驱图中给出的各进制的执行顺序。从图中不难看出进程 P1没有前驱,也就是可以首先并发执行,而进程 P2的前驱是 P1,进程 P3的前驱是 P2, P4的前驱是 P1和P3。那么怎么理解前驱呢 ?其 实前驱就是指只有在前驱进程完成后,该进程才能开始执行。 在本题的前驱图中不难看出,有 4条路径,分别是 P1P2 , P1P4 , P2P3 , P3P4 。而且题目也告诉我们分别有 4初值为 0个信号量 (S1-S4),要用 PV操作来控制进程 P1 P4的并发执行。对于这类试题,笔者提醒大家要注意:一条路径对应一个信号量,在路径的源端进程中,应该对与
41、该路径对应的信号量做 V操作,而在路径的终端进程中,应该对与该路径对应的信号量做 P操作。 下面具体来求解这个题目。 a空处,是在进程 P1执行完成以后,那么根据题目的前驱图我们可以知道,这个时候它应该唤醒它的后继进程 P2和 P4,因此需要执行两个 V操作,同样的道理, b空处也需要执行一个 V操作。又由于进程 P2在执行前对信号量 S1进行了 P操作,根据图可知, P1P2 的路径对应信号量 S1。 至于 C空处,它是在进程 P3执行前进行的处理。根据前驱的意义,可以知道执行 P3要在 P2完成后,因此这个时候,它首先需要判断 P2进程是否完成,如果完成的话,会分别执行唤醒 P3的 V操作
42、 (换句话说就是会给相应的信号量进行加 1操作 ),那么这时也可以通过同样的信号量来判断,即对相应的信号量进行 减 1操作,判断它是否大于 0,如果大于等于 0,则执行 P3。结合题目给出的答案来看,这个信号量应该是 S2。那么执行完 P3后,它也需要唤醒它的后继进程 P4,因此执行 V(S3)操作。同样的道理,可知 D空处应该是两个 P操作,其操作的信号量分别是 S3和 S4。综上所述,可以知道本题的答案选 C。 其实做这类题也不难,首先需要对 PV操作要有一个透彻的理解,另外就是能分析出题目各路径对应的信号量。 【知识模块】 操作系统 17 【正确答案】 D 【试题解析】 SPOOLing
43、技术是低速输入输出设备与主机 交换的一种技术,通常也称为 “假脱机真联机 ”,其核心思想是以联机的方式得到脱机的效果。低速设备经通道和设在主机内存的缓冲存储器与高速设备相联,该高速设备通常是辅存。为了存放从低速设备上输入的信息,或存放将要输出到低速设备上的信息 (来自内存 ),在辅存分别开辟一固定区域,叫 “输出井 ”(对输出 ),或 “输入井 ”(对输入 )。简单来说就是在内存中形成缓冲区,在高级设备形成输出井和输入井,传递的时候,从低速设备传入缓冲区,再传到高速设备的输入井,再从高速设备的输出井,传到缓冲区,再传到低速设备。 SPOOling技 术也是一种用一类物理设备模拟另一类物理设备的
44、技术,是使独占使用的设备变成多台虚拟设备的一种技术,其目的是为了提高 I O设备的利用率以及使独占设备共享化。 【知识模块】 操作系统 18 【正确答案】 C 【试题解析】 本题主要考查从磁盘读取数据的过程。 从磁盘存取数据,主要包括三个部分的时间,其分别是寻道时间、定位时间 (旋转延迟 )和传输时间,其中后两个又统称为等待时间。寻道时间也称为查找时间,为磁头移动到目标磁道所需的时间,定位时间为等待读写的扇区旋转到磁头下方所用的时间,而传输时间就 是读写数据所需要的时间。 在本题中,题目把每个数据都交代得很清楚了,只需根据其原理计算就能得出结论。由于逻辑上相邻数据块的平均距离为 20个磁道,且
45、磁头从一个磁道移至另一个磁道需要 4ms,所以当磁头读完一个数据块再读另一个时,需要 80ms的时间才能将磁头定位到目标磁道,定位到磁道后,需要旋转盘片,以查找需要的数据块。题目已给出每块的旋转延迟时间及传输时间分别为 50ms和 10ms,所以读取10块的文件需要时间为 (4*20+50+10)*10=1400ms 所以此题应选 C。 【知识模块】 操作系统 19 【正确答案】 C 【试题解析】 本题主要考查银行家算法,是考试中的一个重要考点。 所谓安全状态,是指系统能按某种进程顺序 (P1, P2, , Pn)为每个进程 Pi分配其所需资源,直到满足每个进程对资源的最大需求,使每个进程都可
46、以顺利完成。如果无法找到这样的一个安全序列,则称系统处于不安全状态。 本题已经给出序列,只需将4个选项按其顺序执行一遍,便可以判断出现死锁的三个序列。 首先求剩下的资源数: R1=9-(1+2+2+1+1)=2 R2=8-(2+1+1+2+1)=1 R3=5-(1+1+3)=0 由于 R3已分配的资源为 0,系统不能再分配 R3资源,所以不能一开始就运行需要分配 R3资源的进程。所以, A和 D显然是不安全的。 其次,求序列 P2P 4P 5P 1P 3是否安全。进程运行分析如表 3-6所示。显然,该序列是安全的。 最后,求序列 P2P 4P 5P 1P 3是否安全。进程运行分析如表 3-7所
47、示。这时,发现进程 P1需要 R1资源为 5,我们能提供的 R1资源为4,所以序列无法进行下去,为不安全序列。【知识模块】 操作系统 20 【正确答案】 B 【试题解析】 本题主要考查死锁的解决 办法,其最主要的办法就是破坏死锁的条件。 死锁是指各并发进程彼此互相等待对方所拥有的资源,且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源。从而造成大家都想得到资源而又都得不到资源,各并发进程不能继续向前推进的状态。 产生死锁的根本原因在于系统提供的资源个数少于并发进程所要求的该类资源数。产生死锁有 4个必要条件: (1)互斥条件:即一个资源每次只能被一个进程使用,在操作系统中这是真实存在的
48、情况。 (2)保持和等待条件:有一个进程已获得了一些资源,但因请求其他资源被阻 塞时,对已获得的资源保持不放。 (3)不剥夺条件:有些系统资源是不可剥夺的,当某个进程已获得这种资源后,系统不能强行收回,只能由进程使用完时自己释放。 (4)环路等待条件:若干个进程形成环形链,每个都占用对方要申请的下一个资源。 解除死锁的方法就是要破坏死锁的条件,强行将死锁的进程撤销,其实本质上也是破坏死锁的条件 (强行剥夺死锁进程的资源 ),在题目提供的 4个选项中,资源剥夺法,是可以解除死锁的。 【知识模块】 操作系统 21 【正确答案】 D 【试题解析】 虚拟内存是 利用操作系统本身的一个其容量比主存大得多
49、的存储器,实际上是一个地址空间。 基于局部性原理,应用程序在运行之前并不必全部装入内存,仅需要将当前运行到的那部分程序和数据装入内存便可启动程序的运行,其余部分仍驻留在外存上。当要执行的指令或访问的数据不在内存时,再由操作系统通过请求调入功能将它们调入内存,以使程序能继续执行。如果此时内存已满,则还需通过置换功能,将内存中暂时不用的程序或数据调至盘上,腾出足够的内存空间后,再将要访问的程序或数据调入内存,使程序继续执行。 这样便可使一个大的用户程序能在 较小的内存空间中运行,也可在内存中同时装入更多的进程使它们并发执行。从用户的角度看,该系统具有的内存容量比实际的内存容量大得多,将这种具有请求调入功能和置换功能,并能从逻辑上对内存容量加以扩充的存储器系统称为虚拟内存。 总而言之,虚拟内存实际上就是将内存和外存统一管理,虚拟内容的容量取决于计算机的地址结构和外存容量。 【知识模块】 操作系统 22 【正确答案】 B 【试题解析】 实现虚拟存储器能给用户提供一个容量很大的存储器,但当主存空间已装满而又要装入新页时,必须按一定的算法把已在 主存的一些页调出去,这个工作称页面调度。所以,页面调度算法实际上就是用来确定应该淘汰哪页的算法。算