操作系统(处理机调度与死锁)

 

1、在单处理器的多进程系统中,进程什么时候占有处理器以及决定占用时间的长短是由(B)决定的。 

A、进程运行时间                                    B、进程的特点和进程调度策略

C、进程执行的代码                                 D、进程完成什么功能

进程调度的策略以及进程的特点决定进程什么时候占用·处理机以及占用多长时间的的处理机。

2、时间片轮转算法是为了(A )

A、多个用户能及时干预系统                   B、优先级较高的进程能得到及时响应

C、使系统变得更为高效                          D、需要CPU时间最少的进程最先执行

时间片轮转的特点:使每个用户能够得到及时的响应,使得用户以为独占计算机的使用。

B:优先级调度算法

D:短进程优先调度(SPF)

3、(B)有利于CPU繁忙型的作业,而不利于I/O繁忙型的作业。

A、时间片轮转算法                                 B、先来先服务调度算法

C、短作业优先算法                                 D、优先级调度算法

(1)IO繁忙型:运行过程中要频繁地访问IO端口,也就是说会频繁放弃CPU。

(2)CPU繁忙型:一旦占有CPU就会运行很长时间。

4、为了照顾短作业用户应采用(B)调度算法;为了能实现人机交互应采用( D)调度算法;既能使短作业用户满意又能使长作业用户满意应采用(C)调度算法。

A、FCFS                            B、SJF                 C、HRRN                           D、RR

A:FCFS对长作业有利,对短作业不利。(忽视了作业的运行时间)

B:SJF对短作业有利,对长作业不利。(忽视了作业的等待时间)

C:HRRN既考虑了作业的等待时间,又考虑了作业的运行时间。既照顾了短作业,又不致使长作业的等待时间过长。

Rp=(等待时间+要求服务的时间)  /   要求服务的时间=响应时间  /  要求服务的时间=周转时间   /  要求服务的时间

D:RR多个用户能及时干预系统

5、有三个作业分别为J1、J2、J3,其运行时间分别为2h、5h、3h,假定它们能同时达到,并在同一台处理器上以单刀方式运行,则平均周转时间最小的执行顺序为(J1、J3、J2)

周转时间:作业被提交给系统开始到作业完成为止的这段时间间隔。

因为他们同时到达系统,因此应该让短作业优先,不会是后面的作业等待太长的时间。

6、关于优先权大小的论述中,正确的是(D)

A、资源要求多的作业优先权应高于资源要求少的作业优先权

B、用户进程的优先权,应高于系统进程的优先权

C、在动态优先权中,随着作业等待时间的增加,其优先权将随之下降

D、在动态优先权中,随着作业执行时间的增加,其优先权将随之下降

优先级的类型:

静态优先级:

(1)进程类型:系统进程>用户进程

(2)进程对资源的要求:对资源少的优先级高

(3)用户要求:进程的紧迫程度和用户所付的费用

优点:简单易行、系统开销小

缺点:优先级低的进程可能长期得不到调度

动态优先级:

其值会随进程的推进或等待时间增长而改变。

7、进程调度算法采用固定时间片轮转调度算法,当时间片过大时,就会从时间片轮转算法转化为( B )调度算法。

A、HRRN                           B、FCFS                  C、SPF                       D、优先级

长进程到达的话会长时间占用处理机。

8、在调度算法中,对短进程不利的是(B)调度算法。

A、SPF                B、FCFS                            C、HRRN                           D、多级反馈队列

长进程在前的话短进程长时间等待。

9、下列选项中,满足短任务优先且不会发生饥饿现象的调度算法是(B),最有利于提高系统吞吐量的调度算法是(D)

A.FCFS                            B. HRRN           C. RR                       D.SJ(P)F

吞吐量:单位时间内系统所完成的作业数量,短作业能够在单位时间内完成的更多。

提高系统吞吐量:尽量多的选择短作业。

提高处理机利用率:尽量多的选择计算量大的作业。

10、下列调度算法中,下列选项中,不可能导致饥饿现象的调度算法是(A)。

A.RR                                                     B.静态优先数调度

C.非抢占式短作业优先                          D.抢占式短作业优先

时间片轮转的特点:使每个用户能够得到及时的响应,使得用户以为独占计算机的使用。

11、一个进程的读磁盘操作完成后,操作系统针对该进程必做的是(A)。

A.修改进程状态为就绪态                      B.降低进程优先级

C.给进程分配用户内存空间                   D.增加进程时间片大小

等待IO完成:将自身阻塞,进入阻塞状态。

当IO完成后:从阻塞进入就绪。

12、对资源采用按序分配策略能达到(A)的目的。

A、预防死锁               B、避免死锁               C、检测死锁               D、解除死锁

处理死锁的方法:

1、预防死锁:

(1)破坏请求和保持条件

第一种协议:

破坏请求:一次申请在运行过程中的全部资源

破坏保持:只要有一种资源没有满足进程的要求,就让该进程等待,也就是说在进程等待期间未占用任何资源。

缺点:资源浪费;会发生饥饿现象。

第二种协议:

进程只获得运行初期所需要的资源,运行过程中逐步释放已分配给自己的资源。

(2)破坏不可抢占条件

当一个已经保持了某些不可被抢占资源的进程提出新的资源请求而得不到满足时,必须释放已有资源。

(3)破坏循环等待条件

对系统中所有资源类型进行线性排序,并赋予不同的序号。每个进程按照序号递增的顺序请求资源

2、避免死锁

银行家算法

3、死锁的检测与解除

(1)死锁的检验

死锁定理:当且仅当资源分配图是不可完全简化的。

(2)死锁的解除

抢占资源:从其它进程抢占足够数量的资源,分配给死锁进程。

终止进程:终止系统中一个或多个死锁进程,直至打破循环环路。

13、死锁预防是保证系统不进入死锁状态的静态策略,其解决办法是破坏产生死锁的4个必要条件之一,下列办法中破坏了“循环等待”条件的是(D)。

A、银行家算法            B、一次性分配策略     C、剥夺资源法            D、资源有序分配策略

A:避免死锁

B:预防死锁

C:解除死锁

D:预防死锁

14、银行家算法是一种(B)算法。

A、预防死锁               B、避免死锁               C、检测死锁               D、解除死锁

15、在下列解决死锁的方法中,属于死锁预防策略的是(B)。

A、银行家算法                                        B、一次性分配策略

C、资源分配图简化                                 D、死锁检测

A:避免死锁

B:预防死锁

C:检测死锁

16、某系统有n台互斥使用的同类设备,三个并发进程分别需要 3、4、5 台设备,可确保系统不发生死锁的设备数 n 最小为(B)。

A.9                    B.10                   C.11                   D.12

极端条件下,分别分配2、3、4台,共需要9台,再多一台可保证不发生死锁,且设备数最小。

17、某计算机系统中有 8 台打印机,由 K 个进程竞争使用,每个进程最多需要 3 台打印机。该系统可能会发生死锁的 K 的最小值是(C)。

A.2                    B.3                     C.4                     D.5

不发生死锁的最大值为3,此时需要7台。因此,可能发生死锁的最小值为4。

18、死锁与安全状态的关系是(D)。

A.死锁状态有可能是安全状态               B.安全状态有可能成为死锁状态

C.不安全状态就是死锁状态                   D.死锁状态一定是不安全状态

系统处于不安全状态可能进入死锁状态。

系统处于安全状态一定不会进入死锁状态。

19、下列关于死锁的说法正确的是(D)。

  1. 死锁状态一定是不安全状态
  2. 系统资源分配不足和进程推进顺序非法是产生死锁的原因
  3. 资源的有序分配策略可以破坏死锁的循环等待条件
  4. 采用资源剥夺方法可以解除死锁,还可以采用撤销进程方法解除死锁

A.Ⅰ                   B.Ⅰ、Ⅱ                   C.Ⅰ、Ⅲ                   D.Ⅰ、Ⅱ、Ⅲ、Ⅳ

二、综合应用题

1、假设在一个处理机上执行5个作业,作业的到达时间和运行时间分别如表所示:

 分别采用FCFS、SJF和HRRN算法,作业的执行顺序和平均周转时间是多少?

1、FCFS:

执行顺序为:A、B、C、D、E

2、SJF:

(1)A先执行

(2)3秒时B、C等待,但是C运行时间短,所以C执行

(3)5秒时,B、D、E等待, E执行

(4)B执行

(5)D执行

所以执行顺序为:A、C、E、B、D

3、HRRN:

 2、设系统中有三类资源A、B和C, 5个进程P1,P2,P3,P4和P5,在T0时刻系统状态如下:

(1)给出T0时刻各进程的资源需求量NEED。

(2)系统是否处于安全状态?如是,则给出进程安全序列。

(3)在T1时刻如果进程P2申请1个A类资源、1个B类资源,能否实施分配?为什么?

 

 (1)

 (2)

 

 (3)

 

原文地址:https://www.cnblogs.com/zhai1997/p/12019073.html