一. 简答题
高级调度与低级调度的主要任务是什么?为什么引入中级调度?(1)高级调度的主要任务是将外存的作业调入内存,又称作业调度。
低级调度的主要任务数为内存中处于就绪态的作业分配处理机。
(2)为了提高内存的利用率与系统吞吐量。
ps:(中级调度是将作业调出掉回,高级调度是掉入,作业一次掉入,多次掉回,所以中级调度频次更高)何谓作业和JCB?
作业是一组程序与数据和作业说明书,是高级调度的基本单位。
JCB是作业控制块,是作业存在的表示,包含管理,调度所需的全部信息。
ps:(对作业的控制是JCB和作业说明书一起的)在什么情况下需要使用JCB?JCB通常包含了哪些内容?
(1)作业进入系统。
(2)包含系统对作业调度,管理的全部信息。在作业调度中应如何确定接纳多少作业和接纳哪些作业?
取决于多道程序度和调度算法。试说明低级调度的主要功能?
从就绪队列中根据调度算法选择一个进程分配处理机。简述引起进程调度的原因?
时间片完了
阻塞了
运行完了
被抢占了在抢占式调度算法中,应遵循的原则?
优先级
短进程优先
时间片原则在选择调度算法时应该遵循哪些规则?
公平性
资源利用率
平衡性
强制执行何谓静态优先级?何谓动态优先级?确定优先级的依据是什么?
(1)静态优先级创建进程时就确定,动态优先级随着时间与环境变化而改变。
(2)用户要求,进程对cpu io等资源的要求, 进程类型。比较先来先服务和短进程优先。
先来先服务周转时间长,对短进程不利,不能实现交互,紧急作业得不到处理但进程无饿死。
短进程优先要先知道作业运行时间,且对长进程不利,没有考虑进程的紧迫性,并且容易饿死。在基于时间片的轮转调度算法中,应如何确定时间片大小?
一次时间片的大小要略大于一次典型交汇所需的时间。为什么说多级反馈队列能较好的满足各方面用户的需求?
多级反馈队列算法每个队列可以设置不同的调度算法,使得短进程在第一队列完成,而长队列也得到了处理,不会出现长时间得不到处理现象。为什么实时系统需要系统有较强的处理能力?
在实时系统中,若同一时间段要完成的任务多,就会造成处理机来不及处理,任务完不成造成灾难性后果。按照调度方式可将实时性调度算法分为几类?
抢占式和非抢占式。实时调度算法有哪些,分别介绍他们?
最早截止时间:截止时间越早,优先级越高,可以是抢占式,也可以是非抢占式。
最低松弛度优先:截止时间减去当前时间,减去所需时间为松弛度,松弛度越低优先级越高,松弛度为0,优先级最高。在批处理系统,分时系统和实时系统,分别采用哪几种进程调度算法?
批处理系统:先来先服务,短进程优先,优先级调度。
ps:没有轮转和多级反馈队列算法。
ps:高响应比优先是一种优先级调度算法。
分时系统:只有轮转。
实时系统:轮转和优先级调度算法。什么是死锁?产生死锁的原因和必要条件是什么?如何预防死锁?
(1)死锁是多个进程持有别的进程需要的资源而自己无法获得需要的资源而处于僵持阻塞状态。
(2)不可剥夺,请求与保持,互斥访问,循环等待。
(3)破坏死锁产生的四个条件。在解决死锁问题的几个方法中,哪个方法最容易实现?哪个方法可使资源利用率最高?
预防死锁
避免死锁
二.计算题
48.1/5FCFS:(10+11+13+14+19)/5 (1+11+6.5+14+3.8)/5RR: (19+2+8+4+14)/5 (1.9+2+4+4+2.8)/5
SJF:(19+1+4+2+9)/5 (1.9+1+2+2+1.8)/5
非抢占式优先级调度算法:(11+19+13+1+18)/5 (1.1+19+6.5+1+3.6)/5
ps:括号内五个数按照先后顺序为1-5号作业优先级4进程内部的P1P2P3进程先使用时间片轮转算法先运行完,然后以此运行剩余优先级内部进程。(1)安全 P1-P0-P2-P3-P4
(2)安全 P0-P3-P4-P1-P2
(3)不安全
(4)不安全
三.综合应用题
不会看不懂题会发生死锁原因:当p1 和p2都运行了第一步,则会相互阻塞
必要条件:互斥,请求与保持,循环等待,不可剥夺。