1、 操作系统课程设计报告操作系统课程设计报告 时间:2010-12-202010-12-31 地点:信息技术实验中心 1 目目 录录 一、课程设计的目的和意义 2 二、进程调度算法模拟. 2 1、设计目的 . 2 2、设计要求 . 2 3、时间片轮转算法模拟 3 实现思想: 3 (1)流程图 3 (2)程序代码 . 3 (3)运行结果 . 5 4、先来先服务算法模拟 6 算法思想. 6 (1)流程图 7 (2)程序代码 . 7 (3)运行结果 11 三、主存空间的回收与分配.11 1、设计目的 11 2、设计要求 . 12 3、模拟算法的实现 . 13 (1)流程图 13 (2)程序代码 . 1
2、3 (3)运行结果 . 28 四、模拟 DOS 文件的建立和使用 . 28 1 设计目的 . 28 2 设计要求 . 28 3、模拟算法实现 31 (1)流程图 31 (2)程序代码 . 31 (3)运行结果 . 36 五、磁盘调度算法模拟. 36 1.设计目的 36 2.实验原理 37 3设计要求 . 37 4、模拟算法的实现 . 38 (1)各算法流程图 38 (2)程序代码 . 39 (3)运行结果 . 45 六、总结 45 2 一、课程设计的目的和意义一、课程设计的目的和意义 本次操作系统课程设计的主要任务是进行系统级的程序设计。 本课程设计是操作系统原 理课程的延伸。通过该课程设计,
3、使学生更好地掌握操作系统各部分结构、实现机理和各种 典型算法,加深对操作系统的设计和实现思路的理解,培养学生的系统设计和动手能力,学 会分析和编写程序。课程设计的实施将使学生在以下几个方面有所收获: (1)加深对操作系统原理的理解,提高综合运用所学知识的能力; (2)培养学生自主查阅参考资料的习惯,增强独立思考和解决问题的能力; (3)通过课程设计,培养严谨的科学态度和协作精神。 二、进程调度算法模拟二、进程调度算法模拟 1 1、设计目的、设计目的 (1)要求学生设计并实现模拟进程调度的算法:时间片轮转及先来先服务。 (2)理解进程控制块的结构。 (3)理解进程运行的并发性。 (4)掌握进程调
4、度算法。 2 2、设计要求、设计要求 在多道程序运行环境下, 进程数目一般多于处理机数目, 使得进程要通过竞争来使用处 理机。这就要求系统能按某种算法,动态地把处理机分配给就绪队列中的一个进程,使之运 行,分配处理机的任务是由进程调度程序完成的。一个进程被创建后,系统为了便于对进程 进行管理,将系统中的所有进程按其状态,将其组织成不同的进程队列。于是系统中有运行 进程队列、 就绪队列和各种事件的进程等待队列。 进程调度的功能就是从就绪队列中挑选一 个进程到处理机上运行。进程调度的算法有多种,常用的有优先级调度算法、先来先服务算 法、时间片轮转算法。 进程是程序在处理机上的执行过程。进程存在的标识是进程控制块(PCB) ,进程控制块 结构如下: typedef struct node char name10; /* 进程标识符 */ int prio; /* 进程优先数 */ int round; /* 进程时间轮转时间片 */ int cputime; /* 进程占