LRU 的核心是最近最久未使用
LRU 页面置换不要看页面编号大小,也不要看谁最早进入内存,而是看谁距离当前时刻最久没有被访问。题目给访问序列时,最好在草稿纸上维护一个“小内存框”,每访问一次就更新最近使用顺序。
很多错题不是不会 LRU,而是中途没有把被访问页面的位置更新。命中页面虽然不缺页,但它的最近使用时间已经变了,这一步漏掉,后面就会全错。
时间片轮转看队列,不看谁任务短
时间片轮转调度的关键词是公平。每个就绪进程轮流获得一个时间片,时间片用完还没执行完,就回到就绪队列末尾等待下一轮。
它不是最短作业优先,也不是优先级调度。题目如果强调“交互式系统”“响应时间”“每个进程轮流获得 CPU”,通常就往时间片轮转方向想。
| 考点 | 判断抓手 | 易错点 |
|---|---|---|
| LRU | 最近最久未使用 | 命中后也要更新最近使用顺序 |
| 时间片轮转 | 轮流获得 CPU 时间片 | 不要按作业长短直接排序 |
| PV 操作 | 信号量、互斥、同步 | P 是申请资源,V 是释放资源 |
| 死锁 | 四个必要条件同时成立 | 破坏任一条件即可预防死锁 |
PV 和死锁题要回到资源关系
PV 操作本质上是在控制资源访问。P 操作通常表示申请或等待资源,V 操作通常表示释放资源或发送信号。看到临界区、互斥访问、信号量,就不要只背字母,要想清楚资源什么时候被占用,什么时候被释放。
死锁题则常考四个必要条件:互斥、请求并保持、不剥夺、循环等待。预防死锁并不是把系统停掉,而是破坏其中一个必要条件。
相关题目解析
下面这些题目和本专题的判断方法关联较强,适合读完概念后回到具体题干里校验理解。
- LRU 页面置换算法淘汰的是哪一页?操作系统 / 页面置换
- 时间片轮转调度适合解决什么问题?操作系统 / 进程调度
- PV 操作中的 P 操作和 V 操作分别表示什么?操作系统 / PV 操作
- 操作系统死锁产生需要哪些必要条件?操作系统 / 死锁