1、某系统采用基于优先权的非抢占式进程调度策略,完成一次进程调度和进程切换的系统时间开销为1us。在T时刻就绪队列中有3个进程 P 1 P_1 P1、 P 2 P_2 P2和 P 3 P_3 P3,其在就绪队列中的等待时间、需要的CPU时间和优先权如下表所示。若优先权值大的进程优先获得CPU,从T时刻起系统开始进程调度,则系统的平均周转时间为()。
进程 | 等待时间 | 需要的CPU时间 | 优先权 |
---|---|---|---|
P 1 P_1 P1 | 30us | 12us | 10 |
P 2 P_2 P2 | 15us | 24us | 30 |
P 3 P_3 P3 | 18us | 36us | 20 |
- A:54us
- B:73us
- C:74us
- D:75us
解析
由优先权可知,进程的执行顺序为 P 2 P_2 P2-> P 3 P_3 P3> P 1 P_1 P1。 P 2 P_2 P2的周转时间为1+15+24=40us; P 3 P_3 P3的周转时间为18+1+24+1+36=80us; P 1 P_1 P1的周转时间为30+1+24+1+36+1+12=105us;平均周转时间为(40+80+105)/3=225/3=75us,因此选D。
答案:D
2、 系统采用二级反馈队列调度算法进行进程调度。就绪队列 Q 1 Q_1 Q1采用时间片轮转调度算法,时间片为10ms;就绪队列 Q 2 Q_2 Q2采用短进程优先调度算法;系统优先调度 Q 1 Q_1 Q1队列中的进程,当 Q 1 Q_1 Q1为空时系统才会调度 Q 2 Q_2 Q2中的进程;新创建的进程首先进入 Q 1 Q_1 Q1; Q 1 Q_1 Q1中的进程执行一个时间片后,若未结束,则转入 Q 2 Q_2 Q2。若当前 Q 1 Q_1 Q1, Q 2 Q_2 Q2为空,系统依次创建进程 P 1 P_1 P1, P 2 P_2 P2后即开始进程调度, P 1 P_1 P1, P 2 P_2 P2需要的CPU时间分别为30ms和20ms,则进程 P 1 P_1 P1, P 2 P_2 P2在系统中的平均等待时间为()。
- A:25ms
- B:20ms
- C:15ms
- D:10ms
解析
进程 P 1 P_1 P1, P 2 P_2 P2依次创建后进入队列 Q 1 Q_1 Q1,根据时间片调度算法的规则,进程 P 1 P_1 P1, P 2 P_2 P2将依次被分配10ms的CPU时间,两个进程分别执行完一个时间片后都会被转入队列 Q 2 Q_2 Q2,就绪队列 Q 2 Q_2 Q2采用短进程优先调度算法,此时 P 1 P_1 P1还需要20ms的CPU时间, P 2 P_2 P2还需要10ms的CPU时间,所以 P 2 P_2 P2会被优先调度执行,10ms后进程 P 2 P_2 P2执行完成,之后 P 1 P_1 P1再调度执行,再过20ms后 P 1 P_1 P1也执行完成。运行图表如下所示。
进程
P
1
P_1
P1,
P
2
P_2
P2的等待时间分别为图中的虚横线部分,平均等待时间=(
P
1
P_1
P1等待时间+
P
2
P_2
P2等待时间)/2=(20+10)/2,因此答案选C。
答案:C
3、在下列内核的数据结构或程序中,分时系统实现时间片轮转调度需要使用的是()。
Ⅰ、进程控制块
Ⅱ、时钟中断处理程序
Ⅲ、进程就绪队列
Ⅳ、进程阻塞队列
- A:仅Ⅱ、Ⅲ
- B:仅Ⅰ、Ⅳ
- C:仅Ⅰ、Ⅱ、Ⅲ
- D:仅Ⅰ、Ⅱ、Ⅳ
解析
在分时系统的时间片轮转调度中,当系统检测到时钟中断时,会引出时钟中断处理程序,调度程序从就绪队列中选择一个进程为其分配时间片,并且修改该进程的进程控制块中的进程状态等信息,同时将时间片用完的进程放入就绪队列或让其结束运行。Ⅰ、Ⅱ、Ⅲ正确。
阻塞队列中的进程只有被唤醒并进入就绪队列后,才能参与调度,所以该调度过程不适用阻塞队列。
答案:C
4、下列对临界区的论述中,正确的是()。
- A:临界区是指进程中用于实现进程互斥的那段代码
- B:临界区是指进程中用于实现进程同步的那段代码
- C:临界区是指进程中用于实现进程通信的那段代码
- D:临界区是指进程中用于访问临界资源的那段代码
解析
多个进程可以共享系统中的资源,一次仅允许一个进程使用的资源称为临界资源。访问临界资源的那段代码称为临界区。
答案:D
5、若一个信号量的初值为3,经过多次PV操作后当前值为-1,这表示等待进入临界区的进程数是()。
- A:1
- B:2
- C:3
- D:4
解析
信号量是一个特殊的整形变量,只有初始化和PV操作才能改变其值。通常,信号量分为互斥量和资源量,互斥量的初值一般为1,表示临界区只允许一个进程进入,从而实现互斥。当互斥量等于0时,表示临界区已有一个进程进入,临界区外尚无进程等待;当互斥量小于0时,表示临界区中有一个进程,互斥量的绝对值表示在临界区外等待进入的进程数。同理,资源信号量的初值可以是任意整数,表示可用的资源数,当资源数小于0时,表示所有资源已全部用完,而且还有进程正在等待使用该资源,等待的进程数就是资源量的绝对值。
答案:A
6、P操作可能导致()。
- A:进程就绪
- B:进程结束
- C:进程阻塞
- D:新进程创建
解析
P操作即wait操作,表示等待某种资源直到可用。若这种资源暂时不可用,则进程进入阻塞态。注意,执行P操作时的进程处于运行态。
答案:C
7、用V操作唤醒一个等待进程时,被唤醒进程变为()态。
- A:运行
- B:等待
- C:就绪
- D:完成
解析
只有就绪进程能获得处理器资源,被唤醒的进程并不能直接转换为运行态。
答案:C
8、在用信号量机制实现互斥时,互斥信号量的初值为()。
- A:0
- B:1
- C:2
- D:3
解析
互斥信号量的初值设置为1,P操作成功则将其减1,禁止其他进程进入;V操作成功则将其加1,允许等待队列中的一个进程进入。
答案:B
9、用P、V操作实现进程同步,信号量的初值为()。
- A:-1
- B:0
- C:1
- D:由用户确定
解析
与互斥信号量初值一般置1不同,用P,V操作实现进程同步时,信号量的初值应根据具体情况来确定。若期望的消息尚未产生,则对应的初值应设为0;若期望的消息已存在,则信号量的初值应设为一个非0的正整数。
答案:D
10、用来实现进程同步与互斥的PV操作实际上是由()过程组成的。
- A:一个可被中断的
- B:一个不可被中断的
- C:两个可被中断的
- D:两个不可被中断的
解析
P操作和V操作都属于原语操作,不可被中断。