OS复习——进程管理习题

OS复习——进程管理习题

1. 一个线程是否会被时钟中断剥夺 CPU 使用权?请分线程实现类型讨论。

​ 用户级线程不会直接被时钟中断剥夺CPU使用权,可能会剥夺其所属进程的CPU使用权,从而间接剥夺其所属进程的CPU使用权,从而间接剥夺用户级线程的CPU使用权;内核级线程可能被时钟中断剥夺CPU使用权。

2. 一个软实时系统中有 4 个周期性进程,其周期分别为:50、100、200、250,每次 CPU 运行时长分别为 35、20、10、x,求使得这些进程可调度的最大 x 取值。

实时系统任务集可调度的充分必要条件,这个本人也不了解…

35/50+20/100+10/200+x/250<=1,得x<=12.5

3. 有五个进程 P1、P2、P3、P4、P5,它们同时依次进入就绪队列,它们的优先数和需要的处理器时间如下表

进程 处理器时间 优先级(数小优先级高)
P1 10 3
P2 1 1
P3 2 3
P4 1 4
P5 5 2

忽略进行调度等所花费的时间,回答下列问题:

(1)写出采用“先来先服务”、“短作业(进程)优先”、“非抢占式的优先数”和“轮转法”等调度算法,进程执行的次序。(其中轮转法的时间片为 2)

(2)分别计算上述算法中各进程的周转时间和等待时间,以及平均周转时间。

本题主要考察进程调度算法,以及周转时间的概念。

在这里插入图片描述

短作业优先:

在这里插入图片描述

非抢占式的优先数:

在这里插入图片描述

轮转法:

在这里插入图片描述

4. 一个系统有4个进程和5个可分配资源,当前分配和最大需求如下:

已分配资源 最大需求量 可用资源
进程A 10211 11213 00x12
进程B 20110 22210
进程C 11010 21310
进程D 11110 11221

若保持该状态时安全状态,那么x的最小值是多少?

本题主要考察银行家算法。

​ 需求矩阵如下:A—01002、B—02100、C—10300、D—00111。

​ 如果x为0,我们会立刻死锁。如果x是1,进程D可以分配资源运行,当它结束时,可用资源向量为11222,这时候进程A可以分配资源执行,当A结束时,可用资源向量为21433。这时候进程C可以被满足,当C执行结束后,可用资源向量为32443。最后进程B运行完毕。所以x的最小值为1。

1433。这时候进程C可以被满足,当C执行结束后,可用资源向量为32443。最后进程B运行完毕。所以x的最小值为1。

以上部分内容引自课件,如有侵权,请及时联系我删除!

猜你喜欢

转载自blog.csdn.net/NickHan_cs/article/details/106556153
今日推荐