操作系统常用算法

本章要求

  1. 了解操作系统中常用的页面置换算法。
  2. 掌握FIFO页面置换算法的实现。
  3. 掌握LRU页面置换算法的实现。
  4. 理解并实现时间片轮转调度算法。

主要内容

注意

本章节为习题前置知识,而非正式课程内容,但建议先学习本章节内容再进行相关习题。

参考文献

页面置换算法

  1. Tanenbaum, A. S., & Bos, H. (2014). Operating Systems: Design and Implementation. - 这本书详细介绍了操作系统的设计与实现,包括页面置换算法的原理和实现。
  2. Silberschatz, A., Galvin, P. B., & Gagne, G. (2012). Operating System Concepts. - 作为操作系统的经典教材,涵盖了页面置换算法的基本概念和实现方法。
  3. Stallings, W. (2014). Operating Systems: Internals and Design Principles. - 这本书提供了操作系统的内部机制和设计原则的深入讨论,包括页面置换策略。

FIFO页面置换算法

  1. FIFO Page Replacement Algorithm. - 通常作为操作系统内存管理章节的一部分,在上述推荐的书籍中有所介绍。

LRU页面置换算法

  1. Belady, L. A. (1966). A study of replacement algorithms for a virtual storage computer. - 这是LRU算法的原始论文,详细介绍了算法的设计和评估。
  2. LRU Cache Implementation. - 可在多个算法和数据结构的在线资源中找到,例如GeeksforGeeks或LeetCode。

时间片轮转调度算法

  1. Time Slice Scheduling. - 通常包含在操作系统的调度章节中,上述推荐的书籍有详细的讨论和示例。
  2. Kanetkar, Y. (2012). Unix System Programming. - 虽然主要关注UNIX系统编程,但也提供了对时间片轮转调度算法的实用视角。

在线资源和教程

  1. Operating System Tutorials on GeeksforGeeks. - 提供了操作系统概念的详细教程,包括页面置换和调度算法。
  2. MIT OpenCourseWare. - 麻省理工学院的公开课资源,可能包含操作系统课程的讲义和实验,涵盖本章要求的算法。