一.实验目的
操作系统课程设计的主要任务是研究计算机操作系统的基本原理和算法,掌握操作系统的进程管理、存储管理、文件管理和设备管理的基本原理与主要算法。目的是使学生掌握常用操作系统(如DOS、Windows或Linux)的一般管理方法,了解它是如何组织和运作的,对操作系统的核心概念和算法有一个透彻的理解,并对系统运行的机制有一个全面的掌握,从而充分理解系统调用与程序设计之间的关系。
使用c++语言实现OPT、FIFO、LRU、LFU四种置换算法。更高层次的追求还要有较为完善的初始化界面、登陆界面、退出界面。并且还应该有相应的报错、纠错系统。以保证程序可以正常运行。
在完成操作系统各部分实验的基础上,对操作系统的整体进行一个模拟,通过实践加深对各个部分的管理功能的认识,还能进一步分析各个部分之间的联系,最后达到对完整系统的理解。同时,可以提高运用操作系统知识解决实际问题的能力;锻炼实际的编程能力、创新能力及团队组织、协作开发软件的能力;还能提高调查研究、查阅技术文献、资料以及编写软件设计文档的能力。
算法的几大功能基本思想:
OPT:在分配内存页面数小于进程页面数时,先运行的几个页面放入内存中。有需要处理的新页面,则将原来内存中的几个页面中将来不再使用的调出,然后将新页面放入。
FIFO:在分配内存页面数小于进程页面数时,先运行的几个页面放入内存中。这时有需要处理的新页面,则将原来内存中的几个页面中最先进入的调出,然后将新的页面放入。
LRU:在分配内存页面数小于进程页面数时,先运行的几个页面放入内存中。当需要调页面进入内存,而当前分配的页面全部不空闲时,选择其中最长时间没有使用的页面调出,以空出内存来放置新调入的页面。
LFU:在分配内存页面数小于进程页面数时,先运行的几个页面放入内存中。当需要调页面进入内存,而当前分配的页面全部不空闲时,选择其中最长次数没有使用的页面调出,以空出内存来放置新调入的页面。