第三章考研真题讲解
1、【2018年全国统考真题,第25题】属于同一进程的两个线程thread1和 thread2并发执行,共享初值为0的全局变量x。thread1和thread2实现对全局变量x加1的机器级代码描述如下。
| thread1 | thread2 |
mov R1, x //(x)→ R1 inc R1 //(R1)+1 → R1 mov x, R1 //(R1)→ x | mov R2, x //(x)→ R2 inc R2 //(R2)+1 → R2 mov x, R2 //(R2)→ x |
在所有可能的指令执行序列中,使x的值为2的序列个数是( )。
A.1 B. 2 C. 3 D.4
【知识点】线程并发、全局变量。
【真题解析】点击查看
2、【2020年全国统考真题,第45题】现有5个操作A、B、C、D和E,操作C必须在A和B完成后执行,操作E必须在C和D完成后执行,请使用信号量的wait()和signal()操作(P、V操作)描述上述操作之间的同步关系,并说明所用信号量及其初值。
【知识点】进程同步、进程前趋图、PV原语。
【真题解析】点击查看
3、【2019年全国统考真题,第24题】下列选项中,可能会将进程唤醒的事件是( )
I.I/O结束
II.某进程退出临界区
III.当前进程的时间片用完
A. 仅 I
B. 仅 III
C. 仅 I、 II
D. I、 II、 III
【知识点】进程唤醒、时间片、临界区、阻塞状态。
【真题解析】点击查看
4、【2020年全国统考真题,第32题】下列准则中,实现临界区互斥机制必须遵循的是( )
I、 两个进程不能同时进入临界区
II、允许进程访问空闲的临界资源
III、进程等待进入临界区的时间是有限的
IV、不能进入临界区的执行态进程立即放弃CPU
A、I,IV B、 II,III
C、 I,II,III D、 I,III,IV
【知识点】进程互斥、临界区。
【真题解析】点击查看
5、【2009年全国统考真题,第45题】三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用geteven()从该缓冲区中取出一个偶数并用counteven()统计偶数个数。请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。
【知识点】进程互斥、进程同步、奇数偶数问题。
【真题解析】点击查看
6、【2013年全国统考真题,第45题】某博物馆最多可容纳500人同时参观,有一个出入口,该出入口一次仅允许一个人通过。参观者的活动描述如下,用P、V实现该操作过程中的互斥与同步。
cobegin
参观者进程i:
{…
进门;
…
参观;
…
出门;
…}
coend
【知识点】进程互斥、进程同步、博物馆参观问题。
【真题解析】点击查看
7、【2015年全国统考真题,第25题】下列选项中,会导致进程从执行态变为就绪态的事件是( )
A、 执行P(wait)操作 B、申请内存失败
C、 启动I/O设备 D、 被高优先级进程抢占
【知识点】进程三状态图、PV原语、抢占。
【真题解析】点击查看
8、【2010年全国统考真题,第26题】下列选项中,降低进程优先级的合理时机是( )
A、进程的时间片用完
B、进程刚完成I/O,进入就绪队列
C、进程长期处于就绪队列中
D、进程从就绪态转为运行态
【知识点】进程三状态图、优先级、时间片、就绪队列。
【真题解析】点击查看
9、【2010年全国统考真题,第27题】进程P0和P1的共享变量定义及其初值为
booleanflag[2]; int turn= 0;
flag[0]= FALSE; flag[1]= FALSE;
若进程P0和P1访问临界资源的类C伪代码实现如下:

则并发执行进程P0和P1时产生的情形是( )
A、不能保证进程互斥进入临界区,会出现“饥饿"现象
B、不能保证进程互斥进入临界区,不会出现“饥饿"现象
C、能保证进程互斥进入临界区,会出现“饥饿"现象
D、能保证进程互斥进入临界区,不会出现“饥饿"现象
【知识点】进程互斥、临界资源、临界区、饥饿。
【真题解析】点击查看
10、【2016年全国统考真题,第30题】进程P1和P2均包含并发执行的线程,部分伪代码描述如下所示。
| //进程P1 int x=0; Thread1 ( ) { int a; a=1; x+=1; } Thread2 ( ) { int a; a=2; x+=2; } | //进程P2 int x=0; Thread3 ( ) { int a; a=x; x+=3; } Thread4 ( ) { int b; b=x; x+=4; } |
下列选项中,需要互斥执行的操作是
A. a=1与a=2 B.a=x与b=x
C. x+=1与x+=2 D.x+=1与x+= 3
【知识点】进程互斥、并发执行、临界区。
【真题解析】点击查看
11、【2018年全国统考真题,第27题】下列选项中,可能导致当前进程P阻塞的事件是( )
Ⅰ. 进程 P 申请临界资源
Ⅱ. 进程 P 从磁盘读数据
Ⅲ. 系统将 CPU 分配给高优先权的进程
A. 仅Ⅰ B.仅Ⅱ C. 仅Ⅰ、Ⅱ D.Ⅰ、Ⅱ、Ⅲ
【知识点】进程阻塞、状态图、临界资源。
【真题解析】点击查看
12、【2011年全国统考真题,第45题】某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。顾客和营业员的活动过程描述如下,请添加必要的P、V操作,实现该操作过程中的互斥与同步。
cobegin
process顾客i {
从取号机获得一个号码;
等待叫号;
获得服务;
}
process营业员 {
while (TRUE) {
叫号;
为顾客服务;
}
}
coend
【知识点】进程互斥、进程同步、银行职员顾客问题。
【真题解析】点击查看
13、【2019年全国统考真题,第43题】有n( n≥3)位哲学家围坐在一张圆桌边,每位哲学家交替地就餐和思考。在圆桌中心有m(m≥1)个碗,每两位哲学家之间有一根筷子。每位哲学家必须取到一个碗和两侧的筷子后,才能就餐,进餐完毕,将碗和筷子放回原位,并继续思考。为使尽可能多的哲学家同时就餐,且防止出现死锁现象,请使用信号量的P、V操作[wait()、signal()操作]描述上述过程中的互斥与同步,并说明所用信号量及初值的含义。
【知识点】进程互斥、进程同步、哲学家就餐问题。
【真题解析】点击查看
14、【2014年全国统考真题,第47题】系统中有多个生产者进程和多个消费者进程,共享一个能存放 1000 件产品的环形缓冲区(初始为空)。 当缓冲区未满时,生产者进程可以放入其生产的一件产品, 否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。 要求一个消费者进程从缓冲区连续取出 10 件产品后,其他消费者进程才可以取产品。请使用信号量 P, V (或 wait(), signal())操作实现进程间的互斥与同步,要求写出完整的过程, 并说明所用信号量的含义和初值。
【知识点】进程互斥、进程同步、生产者消费者问题。
【真题解析】点击查看
15、【2021年全国统考真题,第27题】下列事件中,可能引起进程调度程序执行的是( )。
I. 中断处理结束 II.进程阻塞
III. 进程执行结束 IV. 进程的时间片用完
A.仅I、III B.仅II、IV C.仅III、IV D.I、II、III和IV
【知识点】进程状态图、进程调度。
【真题解析】点击查看
16、【2011年全国统考真题,第25题】在支持多线程的系统中,进程P创建的若干个线程不能共享的是( )
A.进程P的代码段 B.进程P中打开的文件
C.进程P的全局变量 D.进程P中某线程的栈指针
【知识点】进程与线程、多线程、共享资源。
【真题解析】点击查看

