依据顾恺之吃甘蔗的理论,我们从易到难,越吃越有味。
第五章 进程调度
缩写:FCFS、SJF、SRTF(看到这个就不得不说SSTF是什么)、RR、priority、多级队列、多级队列带反馈。抢占or非抢占。
比如出一道题,给了到达时间、CPU brust、优先级。让用抢占式SJF调度算法,那么要知道,这就是考SRTF,不要看见抢占就想到优先级。此题给的优先级在混淆视听——此为“考概念是否理解”。
甘特图的画法。第二问来个等待时间和周转时间。
先算周转,就是进程完成时间-到达时间
等待时间=周转时间-brust时间
普通考题大致面貌如下:
(2021期中)
此外,也有可能不给具体的调度算法,让你自己设计调度算法。那就要根据给的进程的brust time情况枚举法找出最优的。试数法。
(2017期中)
如果跟第六章同步来结合,就会有点难度。但是原话是“不考太难”,故下题仅为参考。
(2021期中13-14,17-18班)
第十二章 磁盘调度
又是题目明确且缩写云集的一章内容。FCFS、SSTF最短寻道时间优先(SRTF是谁?)、SCAN、C-SCAN、LOOK、C-LOOK
最后四个的记法:
SCAN代表扫描,从头到尾,从尾到头……。
LOOK是不到头尾,只到最远请求就回头。就是要边走边看的嘛。
不带C的,两个方向都能扫。
带C的,C是循环的意思。一个方向扫,扫完猛甩头。
题目都长这样,四位以内加减法问题,没见过变样:
第七章 死锁检测、死锁避免(银行家)
上来给个表格。要么考检测要么考避免。
二者不同点:
检测 | 避免(银行家算法) |
---|---|
没有安全序列的概念,出现该字眼则扣分 | 有安全序列、安全状态的概念 |
没有max、need矩阵,只有allocation、request矩阵 | 没有request矩阵,有max、need矩阵 |
初始化,如果allocation=0,那么finish=true,即该进程不占有资源,必不参与死锁 | 初始化,finfish均为false |
work跟request比 | work跟need比 |
相同点:
相同点 |
---|
初始化 work=available |
更新work,work+=allocation[i] |
银行家算法
方法论:
例题: