操作系统导论 | 第 9 - 12 章笔记

144 阅读2分钟

第9章 调度:比例份额

一种不同类型的调度程序——比例份额 (proportional-share)

比例份额的基本想法:调度程序的最终目标,是确保每个工作获得一定比例的CPU时间,而不是优化周转时间和响应时间。

9.1 基本概念:彩票数表示份额

彩票调度最精彩的地方在于利用了随机性。

概率上满足期望的比例,但不能确保。运行时间越长其得到的CPU比例就会越接近期望。

9.2 彩票机制

彩票货币:500 A's currency to A1 -> 50 global currency

彩票转让:一个进程可以临时将自己的彩票交给另一个进程

彩票通胀:一个进程可以临时提升或降低自己拥有的彩票,用于进程间相互信信用的环境

9.3 实现

只需:随机数生成器,列表(数据结构),彩票总数

image.png

9.4 一个例子

image.png

9.5 如何分配彩票

如何为工作分配彩票?给每个工作分配多少彩票没有特定的解决方式。

9.6 为什么不是确定的

步长调度——一个确定性的公平分配算法。

用一个大数除以票数得到每个进程的步长。

步长调度算法可以在每个调度周期后做到完全正确。

image.png

彩票调度的优势:不需要对每个进程记录全局状态。

因此彩票调度算法可以更合理地处理新进入的进程。

9.7 小结

彩票调度和步长调度。

都没有被广泛使用——不能很好适合I / O;以及票数分配问题没有确定的解决方式。

第 10 章 多处理器调度(高级)

第11章 关于CPU虚拟化的总结对话

陷阱和陷阱处理程序,时钟中断以及操作系统和硬件在进程间切换时如何谨慎保持和恢复状态。

受限直接执行

SJF、RR——MLFQ

第12章 关于内存虚拟化的对话

虚拟内存很复杂,需要我们理解关于硬件和操作系统交互方式的更多复杂细节

虚拟化——操作系统为什么要提供这种假象?——主要是为了easy of use

隔离 (isolation) 和保护 (protection) 也是大事,我们不希望一个错误的程序能够读取或者覆写其他程序的内存。

“开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 20 天,点击查看活动详情