CPU调度算法相关练习
- 格式:ppt
- 大小:133.50 KB
- 文档页数:15
2.时间片轮转法(RR)3解答①在本例中不会产生死锁,因为它不满足死锁的第3个必要条件,即不剥夺条件。
进程所获得的资源在未使用完毕之前,可以被其他进程剥夺。
这样,系统就不会产生死锁。
②这种方法会导致某些进程无限期的等待。
因为被阻塞的进程的资源可以被剥夺,所以被阻塞的进程所拥有资源数量不会因为进程的推进而逐渐增加。
这样,随着进程的向前推进,,并不能保证进程一定能获得多需要的全部资源。
例如,本题中的进程A申请(2,2,1)后再申请(0,0,1)被阻塞。
此后,进程C又剥夺了进程A的一个资源,使得进程A的资源变为(1,2,1)其需求向量为(1,0,1)。
之后,若再创建的进程总是只申请第1和第3类资源,总是占有系统所剩余的第1和第3类资源的全部,且不被阻塞,那么,进程A将会无限期地等待。
课后习题第21题1)P0发出请求向量Request(0,1,0),系统按银行家算法检查:Request0(0,1,0)≤Need0(7,4,3)Request0(0,1,0)≤Available0(2,3,0)2)系统先假定可为P0分配资源,并修改有关数据,Allocation Need Availablep0 0,2,0 7,3,3 2,2,0p1 3,0,2 0,2,0p2 3,0,2 6,0,0p3 2,1,1 0,1,1p4 0,0,2 4,3,13)进行安全性检查,可发现一个安全序列{P1,P3,P0,P2,P4},系统是安全的,可将 P0所申请的资源分配给它。
work aollcation need work+allocation finishP1 2,2,0 3,0,2 0,2,0 5,2,2 TRUEP3 5,2,2 2,1,1 0,1,1 7,3,3 TRUEP0 7,3,3 0,2,0 7,2,3 7,5,3 TRUEP2 7,5,3 3,0,2 0,2,0 10,5,5 TRUEP4 10,5,5 0,0,2 4,3,1 10,5,7 TRUE。
第三章处理机调度与死锁一.选择题1.下列算法中,操作系统用于作业调度的算法是。
A.先来先服务算法B.先进先出算法C.最先适应算法D.时间片轮转算法2.在批处理系统中,周转时间是指。
A.作业运行时间B.作业等待时间和运行时间之和C.作业的相对等待时间D.作业被调度进入内存到运行完毕的时间3.在作业调度中,排队等待时间最长的作业被优先调度,这是指调度算法。
A.先来先服务B.短作业优先C.响应比高优先D.优先级4.下列算法中,用于进程调度的算法是。
A.最先适应B.最高响应比优先C.均衡资源调度D.优先数调度5.两个进程争夺同一个资源。
A.一定死锁B.不一定死锁C.只要互斥就不会死锁D.以上说法都不对6.下列各项中,不是进程调度时机的是。
A.现运行的进程正常结束或异常结束B.现运行的进程从运行态进入就绪态C.现运行的进程从运行态进入等待态D.有一进程从等待态进入就绪态7.进程调度算法有多种,不是进程调度算法。
A.先来先服务调度算法B.最短查找时间优先调度算法C.静态优先数调度算法D.时间片轮转调度算法8.作业调度程序从状态的队列中选取适当的作业投入运行。
A.就绪B.提交C.等待D.后备9.在实时操作系统中,经常采用调度算法来分配处理器。
A.先来先服务B.时间片轮转C.最高优先级D.可抢占的优先级10.采用时间片轮转调度算法主要是为了。
A.多个终端都能得到系统的及时响应B.先来先服务C.优先权高的进程及时得到调度D.需要CPU时间最短的进程先做11.下面关于优先权大小的论述中,不正确的论述是。
A.计算型作业的优先权,应低于I/O型作业的优先权B.系统进程的优先权应高于用户进程的优先权C.资源要求多的作业,其优先权应高于资源要求少的作业D.在动态优先权时,随着进程运行时间的增加,其优先权降低12.产生死锁的原因是有关。
A.与多个进程竞争CPUB.与多个进程释放资源C.仅由于并发进程的执行速度不当D.除资源分配策略不当外,也与并发进程执行速度不当13.有关产生死锁的叙述中,正确的是。
第三章处理机调度与死锁1、时间片轮转调度算法是为了()。
A、多个用户能及时干预系统B、使系统变得高效C、优先级较高的进程得到及时响应D、需要CPU时间最少的进程最先做2、()有利于CPU繁忙型的作业,而不利于I/O繁忙型的作业。
A、时间片轮转调度算法B、先来先服务调度算法C、短作业(进程)优先算法D、优先权调度算法3、下面有关选择进程调度算法的准则中不正确的是()。
A、尽快响应交互式用户的请求B、尽量提高处理器利用率C、尽可能提高系统吞吐量D、适当增长进程就绪队列的等待时间4、设有4个作业同时到达,每个作业的执行时间均为2h,它们的一台处理器上按单道式运行,则平均周转时间为()。
A、1hB、5hC、2.5hD、8h5、若每个作业只能建立一个进程,为了照顾短作业用户,应采用();为了照顾紧急作业用户,应采用();为了能实现人机交互,应采用();而能使短作业、长作业和交互作业用户都满意,应采用()。
A、FCFS调度算法B、短作业优先调度算法C、时间片轮转调度算法D、多级反馈队列调度算法E、剥夺式优先级调度算法6、()优先级是在创建进程时确定的,确定之后在整个运行期间不在改变。
A、先来先服务B、动态C、短作业D、静态7、现在有三个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2、T3,且T1<T2<T3。
系统按单道方式运行且采用短作业优先调度算法,则平均周转时间是()A、T1+T2+T3 B、(3×T1+2×T2+T3)/3C、(T1+T2+T3)/3D、(T1+2×T2+3×T3)/38、设有三个作业,其运行时间分别是2h、5h、3h,假定它们同时达到,并在同一个处理器上以单道方式运行,则平均周转时间最小的执行顺序是()A、J1,J2,J3B、 J3 ,J2,J1C、J2,J1,J3D、 J1 ,J3 ,J29、采用时间片轮转调度算法分配CPU时,当处于运行状态的进程用完一个时间片后,它的状态是()状态。
第四章处理机调度4.3 习题4.3.1 选择最合适的答案1.某系统采用了银行家算法,则下列叙述正确的是()。
A.系统处于不安全状态时一定会发生死锁B.系统处于不安全状态时可能会发生死锁C.系统处于安全状态时可能会发生死锁D.系统处于安全状态时一定会发生死锁2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。
A.Max[i,j]=Allocation[i,j]+Need[i,j]B.Need[i,j]= Allocation[i,j]+ Max[i,j]C.Max[i,j]= Available[i,j]+Need[i,j]D.Need[i,j]= Available[i,j]+ Max[i,j]3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。
A.非抢占式静态优先权法B.抢占式静态优先权法C.时间片轮转调度算法D.非抢占式动态优先权法4.在下列选项中,属于预防死锁的方法是()。
A.剥夺资源法B.资源分配图简化法C.资源随意分配D.银行家算法5.在下列选项中,属于检测死锁的方法是()。
A.银行家算法B.消进程法C.资源静态分配法D.资源分配图简化法6.在下列选项中,属于解除死锁的方法是()。
A.剥夺资源法 B.资源分配图简化法C.银行家算法 D.资源静态分配法7.为了照顾紧迫型作业,应采用()。
A.先来服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.优先权调度算法8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。
A.先来先服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.长作业优先调度算法9.作业从后备作业到被调度程序选中的时间称为()。
A.周转时间B.响应时间C.等待调度时间D.运行时间10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。
操作系统章节练习第3章处理机调度一、单项选择题题目11.为了使系统中各部分资源得到均衡使用,就必须选择对资源需求不同的作业进行合理搭配,这项工作是由()完成的。
A. 中级调度B. 进程调度C. 作业调度D. 对换题目22.操作系统中必不可少的调度是()。
A. 中级调度B. 作业调度C. 对换D. 进程调度题目33.作业生存期共经历四个状态,它们是提交、后备、()和完成。
a. 等待b. 开始c. 就绪d. 执行题目44.作业调度程序从处于()状态的队列中选取适当的作业调入主存运行。
A. 后备B. 执行C. 提交D. 完成题目55.放在输入井中的作业处于()状态。
A. 完成B. 提交C. 执行D. 后备题目66.在操作系统中,JCB是指()。
A. 作业控制块B. 程序控制块C. 进程控制块D. 文件控制块题目77.作业调度的关键在于()。
A. 选择恰当的进程管理程序B. 有一个较好的操作环境C. 选择恰当的作业调度算法D. 用户作业准备充分题目88.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由()来决定。
A. 驱动调度B. 设备管理C. 作业控制D. 进程调度题目99.在操作系统中,作业处于()状态时,已处于进程的管理之下。
A. 阻塞B. 执行C. 后备D. 完成题目1010.作业一旦进入内存即为执行状态,与之相关的进程在作业进入内存时予以创建,该进程的初始状态为()。
A. 提交态B. 阻塞态C. 就绪态D. 运行态题目1111.进程调度是根据一定的调度算法,从()队列中挑选出合适的进程。
A. 运行B. 就绪C. 等待D. 阻塞题目1212.在批处理系统中,周转时间是()。
A. 作业的相对等待时间B. 作业等待时间和运行时间之和C. 作业运行时间D. 作业被调度进入主存到运行完毕的时间题目1313.从系统的角度出发,希望批处理控制方式下进入输入井的作业()尽可能小。
A. 周转时间B. 等待装入主存时间C. 执行时间D. 平均周转时间题目1414.设某作业进入输入井的时间为S,开始运行的时间为R,得到计算结果的时间为E,则该作业的周转时间T为()。
处理机调度和死锁习题第一部分:处理机的调度一、单项选择题1.时间片轮转调度算法是为了()。
A.多个终端能够得到系统及时响应B.使系统变得高效C.优先级较高的进程得到及时响应D.需要CPU时间最少的进程最先做2.在单处理器的多进程系统中,进程什么时候占用处理器以及决定占用时间的长短是由()决定的。
A.进程相应的代码长度B.进程总共需要运行的时间C.进程特点和进程调度策略D.进程完成什么功能3.()有利于CPU繁忙型的作业,而不利于}/0繁忙型的作业。
A.时间片轮转调度算法B.先来先服务调度算法C.短作业(进程)优先算法D.优先权调度算法4.下面有关选择进程调度算法的准则中不正确的是()。
A.尽快响应交互式用户的请求B.尽量提高处理器利用率C.尽可能提高系统吞吐量D.适当增长进程就绪队列的等待时间5.设有4个作业同时到达,每个作业的执行时间均为2h,它们在一台处理器上按单道运行,则平均周转时间为()。
A.1h B.5h C.2.5h D.8h6.若每个作业只能建立一个进程,为了照顾短作业用户,应采用();为了照顾紧急作业用户,应采用();为了能实现人机交互,应采用();而能使短作业.长作和交互作业用户都满意,应采用()。
A.FCFS调度算法B.短作业优先调度算法C.时间片轮转调度算法D.多级反馈队列调度算法E.剥夺式优先级调度算法7.()优先级是在创建进程时确定的,确定之后在整个运行期间不再改变。
A.先来先服务B.动态C.短作业D.静态8.现在有三个同时到达的作业J1,J2和J3,它们的执行时间分别是T1,T2,T3,且T1 <T2 <T3。
系统按单道方式运行且采用短作业优先调度算法,则平均周转时间是()。
A.T1 + T2 + T3 B.(3 x Tl+2 x T2 + T3)/3C.(T1+T2+T3)/3 D.(TI+2 x T2+3 x T3 )/39.设有三个作业,其运行时间分别是2h,5h,3h,假定它们同时到达,并在同一台处理器上以单道方式运行,则平均周转时间最小的执行顺序是()。
计算机操作系统算法题(最全)计算机操作系统算法题(最全)一、引言在计算机科学和操作系统领域,算法是一项重要的研究内容。
本文将介绍一些计算机操作系统中常见的算法题,从最基础的调度算法到更高级的分布式算法。
二、调度算法1. 先来先服务调度算法(FCFS)先来先服务调度算法是一种简单而常见的调度算法。
它根据作业到达的顺序进行调度,先到先服务。
该算法不具有抢占性,即一旦作业开始执行,就会一直执行直到完成。
2. 最短作业优先调度算法(SJF)最短作业优先调度算法通过预测作业执行时间,选择估计执行时间最短的作业进行调度。
这种算法能够最大限度地减少平均等待时间和响应时间。
3. 时间片轮转调度算法(RR)时间片轮转调度算法将CPU时间划分为固定长度的时间片,每个进程在一个时间片内执行,超过时间片的进程会被暂停,为其他进程让出CPU。
4. 优先级调度算法优先级调度算法根据作业的优先级进行调度。
每个进程被分配一个优先级,优先级高的进程优先获得CPU。
5. 多级反馈队列调度算法多级反馈队列调度算法将进程划分为多个队列,每个队列拥有不同的优先级。
进程首先进入最高优先级的队列,如果执行时间超过了一个时间片,则进入下一优先级队列,以此类推。
这种算法能够兼顾长作业和短作业的调度。
三、内存分配算法1. 静态分区分配算法静态分区分配算法将内存分为固定大小的若干区域,每个进程根据大小分配到相应的区域。
这种算法简单直观,但会造成内存碎片。
2. 动态分区分配算法动态分区分配算法根据进程大小动态分配内存空间,在进程调度时查找合适的内存分区进行分配。
常见的动态分区分配算法有首次适应算法、循环首次适应算法和最佳适应算法。
3. 页面置换算法页面置换算法用于解决虚拟内存系统中的页面置换问题。
常见的页面置换算法有FIFO算法、LRU算法和LFU算法。
四、磁盘调度算法1. 先来先服务磁盘调度算法先来先服务磁盘调度算法按照请求的顺序进行磁盘访问,存在时间片浪费的问题。
第四章处理机调度一. 选择最合适的答案1.某系统采用了银行家算法,则下列叙述正确的是()。
A.系统处于不安全状态时一定会发生死锁B.系统处于不安全状态时可能会发生死锁C.系统处于安全状态时可能会发生死锁D.系统处于安全状态时一定会发生死锁2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。
**[i,j]=Allocation[i,j]+Need[i,j]**[i,j]= Allocation[i,j]+ Max[i,j]**[i,j]= Available[i,j]+Need[i,j]**[i,j]= Available[i,j]+ Max[i,j]3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。
A.非抢占式静态优先权法B.抢占式静态优先权法C.时间片轮转调度算法D.非抢占式动态优先权法4.在下列选项中,属于预防死锁的方法是()。
A.剥夺资源法B.资源分配图简化法C.资源随意分配D.银行家算法5.在下列选项中,属于检测死锁的方法是()。
A.银行家算法B.消进程法C.资源静态分配法D.资源分配图简化法6.在下列选项中,属于解除死锁的方法是()。
A.剥夺资源法 B.资源分配图简化法C.银行家算法 D.资源静态分配法7.为了照顾紧迫型作业,应采用()。
A.先来服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.优先权调度算法8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。
A.先来先服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.长作业优先调度算法9.作业从后备作业到被调度程序选中的时间称为()。
A.周转时间B.响应时间C.等待调度时间D.运行时间10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。
6.2, 6.3, 6.5, 6.7, 6.11, 6.16, 6.23, 6.25, 6.316.2 Explain the difference between preemptive and nonpreemptive scheduling.答:抢占式调度–发生在有比当前进程剩余时间片更短的进程到达时,也称为最短剩余时间优先调度。
非抢占式调度–一旦进程拥有CPU,它的使用权限只能在该CPU 脉冲结束后让出。
6.3 Suppose that the following processes arrive for execution at the times indicated. Each process will run for the amount of time listed. In answering the questions, use nonpreemptive scheduling, and base all decisions on the information you have at the time the decision must be made.Process Arrival Time Burst TimeP1 0.0 8P2 0.4 4P3 1.0 1a. What is the average turnaround time for these processes with the FCFS scheduling algorithm?b. What is the average turnaround time for these processes with the SJF scheduling algorithm?c. The SJF algorithm is supposed to improve performance, but notice that we chose to run process P1 at time 0 because we did not know that two shorter processes would arrive soon. Compute what the average turnaround time will be if the CPU is left idle for the first 1 unit and then SJF scheduling is used. Remember that processes P1 and P2 are waiting during this idle time, so their waiting time may increase. This algorithm could be called future-knowledge scheduling.答:a、average turnaround time = ( 8 + 4 + 1 + (8-0.4) + (12-1))/3 = 10.53b、average turnaround time = (8 + 4 + 1 + (8-1) + (9-0.4))/3 = 9.53c、等待时间为1average turnaround time = (1 + 4 + 8 + (2-0.4)+(6-0))/3 = 6.866.5 Many CPU-scheduling algorithms are parameterized. For example, the RR algorithm requires a parameter to indicate the time slice. Multilevel feedback queues require parameters to define the number of queues, the scheduling algorithm for each queue, the criteria used to move processes between queues, and so on. These algorithms are thus really sets of algorithms (for example, the set of RR algorithms for all time slices, and so on). One set of algorithms may include another (for example, the FCFS algorithm is the RR algorithm with an infinite time quantum). What (if any) relation holds between the following pairs of algorithm sets?a. Priority and SJFb. Multilevel feedback queues and FCFSc. Priority and FCFSd. RR and SJF答:a. SJF是优先级算法的一种特例,在SJF中,执行时间最短的进程具有最高的优先级。