1、软件水平考试(中级)软件设计师上午(基础知识)历年真题试卷汇编 10 及答案解析(总分:50.00,做题时间:90 分钟)一、选择题(总题数:16,分数:50.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。_2.假设某分时系统采用简单时间片轮转法,当系统中的用户数为 n、时间片为 q 时,系统对每个用户的响应时间 T=(23)。(分数:2.00)A.nB.qC.nqD.n+q3.在支持多线程的操作系统中,假设进程 P 创建了若干个线程,那么(24)是不能被这些线程共享的。(分数:2.00)A.该进程的代码段B
2、.该进程中打开的文件C.该进程的全局变量D.该进程中某线程的栈指针4.假设系统采用 PV 操作实现进程同步与互斥,若有 n 个进程共享一台扫描仪,那么当信号量 S 的值为一3 时,表示系统中有(23)个进程等待使用扫描仪。(分数:2.00)A.0B.n 一 3C.3D.n5.某系统中仅有 5 个并发进程竞争某类资源,且都需要 3 个该类资源,那么至少有(23)个该类资源,才能保证系统不会发生死锁。(分数:2.00)A.9B.10C.11D.156.在某企业的营销管理系统设计阶段,属性“员工”在考勤管理子系统中被称为“员工”,而在档案管理子系统中被称为“职工”,这类冲突称为(51)冲突。(分数:
3、2.00)A.语义B.结构C.属性D.命名7.如果系统采用信箱通信方式,当进程调用 Send 原语被设置成“等信箱”状态时,其原因是(23)。(分数:2.00)A.指定的信箱不存在B.调用时没有设置参数C.指定的信箱中无信件D.指定的信箱中存满了信件8.若在系统中有若干个互斥资源 R,6 个并发进程,每个进程都需要 2 个资源 R,那么使系统不发生死锁的资源 R 的最少数目为(24)。(分数:2.00)A.6B.7C.9D.12进程资源图如图 33 中(a)和(b)所示,其中:图(a)中(25);图(b)中(26)。 (分数:4.00)(1).(25)(分数:2.00)A.Pl 是非阻塞节点,
4、P2 是阻塞节点,所以该图不可以化简、是死锁的B.Pl、P2 都是阻塞节点,所以该图不可以化简、是死锁的C.P1、P2 都是非阻塞节点,所以该图可以化简、是非死锁的D.P1 是阻塞节点,P2 是非阻塞节点,所以该图不可以化简、是死锁的(2).(26)(分数:2.00)A.P1、P2、P3 都是非阻塞节点,该图可以化简、是非死锁的B.P1、P2、P3 都是阻塞节点,该图不可以化简、是死锁的C.P2 是阻塞节点,P1、P3 是非阻塞节点,该图可以化简、是非死锁的D.P1、P2 是非阻塞节点,P3 是阻塞节点,该图不可以化简、是死锁的假设系统中有三类互斥资源 R1、R2 和 R3,可用资源数分别为
5、10、5 和 3。在 T 0 时刻系统中有P1、P2、P3、P4 和 P5 五个进程,这些进程对资源的最大需求量和已分配资源数如表 31 所示,此时系统剩余的可用资源数分别为(27)。如果进程按(28)序列执行,那么系统状态是安全的。 (分数:4.00)(1).(27)(分数:2.00)A.1、1 和 0B.1、1 和 1C.2、1 和 0D.2、0 和 1(2).(28)(分数:2.00)A.P1P2P4P5P3B.P5P2P4P3P1C.P4P2P1P5P3D.P5P1P4P2P3某企业生产流水线 M 共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出
6、继续加工。假设半成品箱可存放 n 件半成品,采用 PV 操作实现生产者甲和生产者乙的同步可以设置三个信号量 S、S1 和 S2,其同步模型如图 35 所示。 (分数:4.00)(1).(22)(分数:2.00)A.0B.1C.nD.任意正整数(2).(23)(分数:2.00)A.n、0B.O、nC.1、nD.n、1系统中有 R 类资源 m 个,现有 n 个进程互斥使用。若每个进程对 R 资源的最大需求为 w,那么当 m、n、w分别取表 32 中的值时,对于表 32 中的种情况,(25)可能会发生死锁。若将这些情况的 m 分别加上(26),则系统不会发生死锁。 (分数:4.00)(1).(25)
7、(分数:2.00)A.B.C.D.(2).(26)(分数:2.00)A.1、1 和 1B.1、1 和 2C.1、1 和 3D.1、2 和 1某进程有 5 个页面,页号为 04,页面变换表如下所示。表 33 中状态位等于 0 和 1 分别表示页面不在内存或在内存。若系统给该进程分配了 3 个存储块,当访问的页面 3 不在内存时,应该淘汰表中页号为(25)的页面。假定页面大小为 4K,逻辑地址为十六进制 2C25H,该地址经过变换后,其物理地址应为十六进制(26)。 (分数:4.00)(1).(25)(分数:2.00)A.0B.1C.2D.4(2).(26)(分数:2.00)A.2C25HB.40
8、96HC.4C25HD.8C25H假设内存管理采用可变式分区分配方式,系统中有五个进程 P1P5,且某一时刻内存使用情况如下图所示(图 312 中空白处表示未使用分区)。此时,若 P5 进程运行完并释放其占有的空问,则释放后系统的空闲区数应(27);造成这种情况的原因是(28)。 (分数:4.00)(1).(27)(分数:2.00)A.保持不变B.减 1C.加 1D.置零(2).(28)(分数:2.00)A.无上邻空闲区,也无下邻空闲区B.有上邻空闲区,但无下邻空闲区C.有下邻空闲区,但无上邻空闲区D.有上邻空闲区,也有下邻空闲区若某企业拥有的总资金数为 15,投资 4 个项目 P1、P2、P
9、3、P4,各项目需要的最大资金数分别是6、8、8、10,企业资金情况如图 34(a)所示。P1 新申请 2 个资金,P2 新申请 1 个资金,若企业资金管理处为项目 P1 和 P2 分配新申请的资金,则 P1、P2、P3、P4 尚需的资金数分别为(23),假设 Pl 已经还清所有投资款,企业资金使用情况如图 34(b)所示,那么企业的可用资金数为(24)。若在图 34(b)所示的情况下,企业资金管理处为 P2、P3、P4 各分配资金数 2、2、3,则分配后 P2、P3、P4 已用资金数分(分数:6.00)(1).(23)(分数:2.00)A.1、3、6、7,可用资金数为 0,故资金周转状态是不
10、安全的B.2、5、6、7,可用资金数为 1,故资金周转状态是不安全的C.2、4、6、7,可用资金数为 2,故资金周转状态是安全的D.3、3、6、7,可用资金数为 2,故资金周转状态是安全的(2).(24)(分数:2.00)A.4B.5C.6D.7(3).(25)(分数:2.00)A.3、2、3,尚需资金数分别为 5、6、7,故资金周转状态是安全的B.5、4、6,尚需资金数分别为 3、4、4,故资金周转状态是安全的C.3、2、3,尚需资金数分别为 5、6、7,故资金周转状态是不安全的D.5、4、6,尚需资金数分别为 3、4、4,故资金周转状态是不安全的进程 P1、P2、P3、P4 和 P5 的前
11、趋图如图 36: 若用 PV 操作控制进程 P1 一 P5 并发执行的过程,则需要设置 6 个信号 Sl、S2、S3、S4、S5 和 S6,且信号量 s1 一 s6 的初值都等于零。图 37 中 a 和 b处应分别填写(23);c 和 d 处应分别填写(24),e 和 f 初应分别填写(25)。 (分数:6.00)(1).(23)(分数:2.00)A.P(S1)P(S2)和 P(S3)P(S4)B.P(S1)V(S2)和 P(S2)V(S1)C.V(S1)V(S2)和 V(S3)V(S4)D.P(S1)P(S2)和 V(S1)V(S2)(2).(24)(分数:2.00)A.P(S1)P(S2)
12、和 V(S3)V(S4)B.P(S1)P(S3)和 V(S5)V(S6)C.V(S1)V(S2)和 P(S3)P(S4)D.P(S1)V(S3)和 P(S2)V(S4)(3).(25)(分数:2.00)A.P(S3)P(S4)和 V(S5)V(S6)B.V(S5)V(S6)和 P(S5)P(S6)C.P(S2)P(S5)和 P(S4)P(S6)D.P(S4)V(S5)和 P(S5)V(S6)软件水平考试(中级)软件设计师上午(基础知识)历年真题试卷汇编 10 答案解析(总分:50.00,做题时间:90 分钟)一、选择题(总题数:16,分数:50.00)1.选择题()下列各题 A、B、C、D 四
13、个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。_解析:2.假设某分时系统采用简单时间片轮转法,当系统中的用户数为 n、时间片为 q 时,系统对每个用户的响应时间 T=(23)。(分数:2.00)A.nB.qC.nq D.n+q解析:解析:在时间片轮转法中,系统将所有的就绪进程按先来先服务的原则排成一个队列,每次调度时,把 CPU 分配给队首进程,并令其执行一个时间片。当执行的时间片用完时,中断请求,将该程序送往就绪队列的队尾,并把处理机分配给新的队首进程,同时让它也执行一个时间片。这样就保证就绪队列中的所有进程在一给定的时间内均能获得一时问片的处理机执行时
14、间。按照这样的思想,每个用户就是一个进程,这样每个用户的响应时间为 nq。3.在支持多线程的操作系统中,假设进程 P 创建了若干个线程,那么(24)是不能被这些线程共享的。(分数:2.00)A.该进程的代码段B.该进程中打开的文件C.该进程的全局变量D.该进程中某线程的栈指针 解析:解析:线程共享的环境包括:进程代码段、进程的公有数据(利用这些共享的数据,线程很容易地实现相互之间的通信)、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户 ID 与进程组ID(选项 C,即:进程的全局变量)。但该线程中某线程的栈指针不能被这些线程所共享。4.假设系统采用 PV 操作实现进程同步与互斥,
15、若有 n 个进程共享一台扫描仪,那么当信号量 S 的值为一3 时,表示系统中有(23)个进程等待使用扫描仪。(分数:2.00)A.0B.n 一 3C.3 D.n解析:解析:本题考查操作系统的设备管理。PV 操作中 Pv 操作与信号量的处理相关,P 表示通过的意思,V 表示释放的意思。执行 P 操作时信号量 S 的值减 1,若结果大于等于 0,则 P(S)执行完毕,否则执行 P操作的进程暂停以等待释放,S 为一 3 时,有 3 个进程等待扫描。5.某系统中仅有 5 个并发进程竞争某类资源,且都需要 3 个该类资源,那么至少有(23)个该类资源,才能保证系统不会发生死锁。(分数:2.00)A.9B
16、.10C.11 D.15解析:解析:要保证不会发生死锁,至少有一个进程能申请到 3 个资源,其他进程都申请到 2 个资源,这是需要 11 个资源。当占用 3 个资源的进程完成后,释放资源,其他进程便可以申请到更多的资源。如果只有 10 个资源,可能每个进程申请到 2 个资源,此时便发生了死锁。6.在某企业的营销管理系统设计阶段,属性“员工”在考勤管理子系统中被称为“员工”,而在档案管理子系统中被称为“职工”,这类冲突称为(51)冲突。(分数:2.00)A.语义B.结构C.属性D.命名 解析:解析:题目中,“员工”和“职工”有着相同的意义,但在不同的子系统中有着不同的命名,这种冲突,为命名冲突。
17、如果是同一实体在不同的子系统中有不同的属性,即为结构冲突。如果同一属性“员工”在不同的子系统中,属性的类型、取值范围或者数据单位等不一致,即为属性冲突。7.如果系统采用信箱通信方式,当进程调用 Send 原语被设置成“等信箱”状态时,其原因是(23)。(分数:2.00)A.指定的信箱不存在B.调用时没有设置参数C.指定的信箱中无信件D.指定的信箱中存满了信件 解析:解析:为了实现进程间的通信,可以设立一个通信机构信箱,以发送信件以及接收回答信件为进程间通信的基本方式。采用信箱通信的最大好处是,发送方和接收方不必直接建联系,没有处理时间下的限制。发送方可以在任何时间发信,接收方也可以在任何时间收
18、信。为了实现信箱通信,必须提供相应的原语,如创建信箱原语、撤消信箱原语、发送信件原语和接收信件原语等。Send 原语是发送原语,当进程调用 Send 原语被设置成“等信箱”状态时,意味着指定的信箱存满了信件,无可用空间。8.若在系统中有若干个互斥资源 R,6 个并发进程,每个进程都需要 2 个资源 R,那么使系统不发生死锁的资源 R 的最少数目为(24)。(分数:2.00)A.6B.7 C.9D.12解析:解析:若资源 R 的数目为 6,6 个进程并发执行,操作系统为每个进程分配 1 个资源 R,此时已无可供分配的资源 R,而每个进程还都需要 1 个资源 R,则这 6 个进程由于请求的资源 R
19、 得不到满足而死锁。对于选项 B,操作系统为每个进程分配 1 个资源 R 后,系统还有 1 个可供分配的资源 R,能满足其中的 1个进程的资源 R 要求并运行完毕释放占有的资源 R,从而使其他进程也能得到所需的资源 R 并运行完毕。进程资源图如图 33 中(a)和(b)所示,其中:图(a)中(25);图(b)中(26)。 (分数:4.00)(1).(25)(分数:2.00)A.Pl 是非阻塞节点,P2 是阻塞节点,所以该图不可以化简、是死锁的B.Pl、P2 都是阻塞节点,所以该图不可以化简、是死锁的 C.P1、P2 都是非阻塞节点,所以该图可以化简、是非死锁的D.P1 是阻塞节点,P2 是非阻
20、塞节点,所以该图不可以化简、是死锁的解析:(2).(26)(分数:2.00)A.P1、P2、P3 都是非阻塞节点,该图可以化简、是非死锁的B.P1、P2、P3 都是阻塞节点,该图不可以化简、是死锁的C.P2 是阻塞节点,P1、P3 是非阻塞节点,该图可以化简、是非死锁的 D.P1、P2 是非阻塞节点,P3 是阻塞节点,该图不可以化简、是死锁的解析:解析:由(a)图可知,R1 资源共有两个,都被进程 P1 和 P2 所占用,R2 资源有三个,都被进程 P2所占用,而此时进程 P1 在请求 R2 资源,P2 在请求 R1 资源,而 R1 和 R2 已经没有资源可用了,导致两个进程都进入了死锁状态。
21、由(b)图可知,R1 的两个资源已经分别被 P1 和 P3 所占用,R2 的三个资源已经占用了两个,当进程 P1 和 P3 请求资源 R2 的时候,无论分配给任一方都可以使两个进程满足所需的资源,从而可以化简,使得 P2 也能满足对资源 R1 的需求。因此 P1 和 P3 是非阻塞节点,P2 是阻塞节点,但最终可以化简。假设系统中有三类互斥资源 R1、R2 和 R3,可用资源数分别为 10、5 和 3。在 T 0 时刻系统中有P1、P2、P3、P4 和 P5 五个进程,这些进程对资源的最大需求量和已分配资源数如表 31 所示,此时系统剩余的可用资源数分别为(27)。如果进程按(28)序列执行,
22、那么系统状态是安全的。 (分数:4.00)(1).(27)(分数:2.00)A.1、1 和 0B.1、1 和 1C.2、1 和 0D.2、0 和 1 解析:(2).(28)(分数:2.00)A.P1P2P4P5P3B.P5P2P4P3P1 C.P4P2P1P5P3D.P5P1P4P2P3解析:解析:可用资源数减去已分配资源数就是可用资源数,所以答案选 D;由 R1,R2,R3 可用资源数为 2,0,1,如果执行 P1,需要 R1 资源数为 5 一 1=42,所以答案 A 错,执行 P5 后会将己分配的资源数还给 R1,R2,R3,此时 R1,R2,R3 可用资源数为 3,1,1。在执行 Pl
23、时仍然会出现死锁即 R1 资源数 5一 1=43,所以答案 D 错,同理分析刚执行 P4 时需要 R3 的资源数 1 一 0=10,所以答案 C 错。某企业生产流水线 M 共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出继续加工。假设半成品箱可存放 n 件半成品,采用 PV 操作实现生产者甲和生产者乙的同步可以设置三个信号量 S、S1 和 S2,其同步模型如图 35 所示。 (分数:4.00)(1).(22)(分数:2.00)A.0B.1 C.nD.任意正整数解析:(2).(23)(分数:2.00)A.n、0 B.O、nC.1、nD.n、1解析:解析:P
24、 操作表示申请一个资源,V 操作表示释放一个资源。P 操作的定义为:S:=S1,若 S=0,则执行 P 操作的进行继续。本题中,S 是一个互斥信号量,初值为 1,因为半成品箱是一个互斥资源,所以要进行互斥控制;S1 表示是否可以将半成品放入半成品箱,初值为 n;S2 表示半成品箱是否存有半成品,初值为 0。系统中有 R 类资源 m 个,现有 n 个进程互斥使用。若每个进程对 R 资源的最大需求为 w,那么当 m、n、w分别取表 32 中的值时,对于表 32 中的种情况,(25)可能会发生死锁。若将这些情况的 m 分别加上(26),则系统不会发生死锁。 (分数:4.00)(1).(25)(分数:
25、2.00)A.B.C. D.解析:(2).(26)(分数:2.00)A.1、1 和 1B.1、1 和 2C.1、1 和 3D.1、2 和 1 解析:解析:对于第种情况,资源数为 3,在最坏的情况下,2 个进程对 R 资源的需求都为 2,有一个进程占用 2 个 R 资源,另一个进程占用 1 个 R 资源,占用 2 个 R 资源的进程运行完,释放资源,另一个便会获得所需的资源,不会出现死锁。对于第种情况,资源数为 3,在最坏的情况下,3 个进程对 R 资源的需求都为 2,每个进程都占用 1 个 R 资源,发生死锁。对于第种情况,资源数为 5,在最坏的情况下,2 个进程对 R 资源的需求都为 3,一
26、个进程占用 3 个 R 资源,一个进程占用 2 个 R 资源,不会出现死锁。对于第种情况,资源数为 5,在最坏的情况下,3 个进程对 R 资源某进程有 5 个页面,页号为 04,页面变换表如下所示。表 33 中状态位等于 0 和 1 分别表示页面不在内存或在内存。若系统给该进程分配了 3 个存储块,当访问的页面 3 不在内存时,应该淘汰表中页号为(25)的页面。假定页面大小为 4K,逻辑地址为十六进制 2C25H,该地址经过变换后,其物理地址应为十六进制(26)。 (分数:4.00)(1).(25)(分数:2.00)A.0 B.1C.2D.4解析:(2).(26)(分数:2.00)A.2C25
27、HB.4096HC.4C25H D.8C25H解析:解析:页面变换表中状态位等于 0 和 1 分别表示页面不在内存或在内存,所以 0、2 和 4 号页面在内存。当访问的页面 3 不在内存时,系统应该首选淘汰未被访问的贞面,因为根据程序的局部性原理,最近为被访问的页面下次被访问的概率更小;如果页面最近都被访问过,应该先淘汰未修改过的页面。因为未修改过的页面内存与辅存一致,故淘汰时无需写回辅存,使系统页面置换代价小。经上述分析,0、2和 4 号页面都是最近被访问过的,但 2 和 4 号页面都被修改过而 0 号页面未修改过,故应该淘汰 0 号页面。根据题意,页面大小为 4KB,逻辑地址为十六进制 2
28、C25H,其假设内存管理采用可变式分区分配方式,系统中有五个进程 P1P5,且某一时刻内存使用情况如下图所示(图 312 中空白处表示未使用分区)。此时,若 P5 进程运行完并释放其占有的空问,则释放后系统的空闲区数应(27);造成这种情况的原因是(28)。 (分数:4.00)(1).(27)(分数:2.00)A.保持不变B.减 1 C.加 1D.置零解析:(2).(28)(分数:2.00)A.无上邻空闲区,也无下邻空闲区B.有上邻空闲区,但无下邻空闲区C.有下邻空闲区,但无上邻空闲区D.有上邻空闲区,也有下邻空闲区 解析:解析:可变分区是一种动态分区方式,在作业执行前并不建立分区,而是在处理
29、作业过程中按需要建立分区。当 P5 运行完后释放空间时,发现其释放的空间上下方都有空闲区,故将两个空闲区与自身要释放的空闲区合并,从而形成一个空闲区,导致系统的空闲区数量上减 1。而造成这种现象的直接原因就是要释放的空闲区相邻的上下方空闲区。若某企业拥有的总资金数为 15,投资 4 个项目 P1、P2、P3、P4,各项目需要的最大资金数分别是6、8、8、10,企业资金情况如图 34(a)所示。P1 新申请 2 个资金,P2 新申请 1 个资金,若企业资金管理处为项目 P1 和 P2 分配新申请的资金,则 P1、P2、P3、P4 尚需的资金数分别为(23),假设 Pl 已经还清所有投资款,企业资
30、金使用情况如图 34(b)所示,那么企业的可用资金数为(24)。若在图 34(b)所示的情况下,企业资金管理处为 P2、P3、P4 各分配资金数 2、2、3,则分配后 P2、P3、P4 已用资金数分(分数:6.00)(1).(23)(分数:2.00)A.1、3、6、7,可用资金数为 0,故资金周转状态是不安全的B.2、5、6、7,可用资金数为 1,故资金周转状态是不安全的C.2、4、6、7,可用资金数为 2,故资金周转状态是安全的 D.3、3、6、7,可用资金数为 2,故资金周转状态是安全的解析:(2).(24)(分数:2.00)A.4B.5C.6D.7 解析:(3).(25)(分数:2.00
31、)A.3、2、3,尚需资金数分别为 5、6、7,故资金周转状态是安全的B.5、4、6,尚需资金数分别为 3、4、4,故资金周转状态是安全的C.3、2、3,尚需资金数分别为 5、6、7,故资金周转状态是不安全的D.5、4、6,尚需资金数分别为 3、4、4,故资金周转状态是不安全的 解析:解析:由图 a 可知,之前已经给 4 个项目分配了 2+3+2+3=10 个资金。P1 新申请了 2 个资金,P2 新申请 1 个资金,则可用资金为 15102 一 1=2,P1、P2、P3、P4 已用的资金数分别为 4、4、2、3,尚需的资金数为 2、3、6、7。故空(23)选 C。由图 b 可知,已用资金数为
32、 3+2+3=8,可用资金数为 15-8=7,故空(24)选 D。在图 b 所示的情况下,企业资金管理处为 P2、P3、P4 各分配资金数 2、2、3,则P2、P3、P4 已用的资金数分别为 3+2、2+2、3+3,即 5、4、6。尚需资金为 3、4、4,而此时总进程 P1、P2、P3、P4 和 P5 的前趋图如图 36: 若用 PV 操作控制进程 P1 一 P5 并发执行的过程,则需要设置 6 个信号 Sl、S2、S3、S4、S5 和 S6,且信号量 s1 一 s6 的初值都等于零。图 37 中 a 和 b处应分别填写(23);c 和 d 处应分别填写(24),e 和 f 初应分别填写(25
33、)。 (分数:6.00)(1).(23)(分数:2.00)A.P(S1)P(S2)和 P(S3)P(S4)B.P(S1)V(S2)和 P(S2)V(S1)C.V(S1)V(S2)和 V(S3)V(S4) D.P(S1)P(S2)和 V(S1)V(S2)解析:(2).(24)(分数:2.00)A.P(S1)P(S2)和 V(S3)V(S4)B.P(S1)P(S3)和 V(S5)V(S6) C.V(S1)V(S2)和 P(S3)P(S4)D.P(S1)V(S3)和 P(S2)V(S4)解析:(3).(25)(分数:2.00)A.P(S3)P(S4)和 V(S5)V(S6)B.V(S5)V(S6)和 P(S5)P(S6)C.P(S2)P(S5)和 P(S4)P(S6) D.P(S4)V(S5)和 P(S5)V(S6)解析:解析:利用 PV 操作实现进程的同步时,进程可以通过 P 操作测试消息是否到达,调用 v 操作通知消息已经准备好。根据题意,将信号量标在图 3-8,为: