南京工程学院
课程设计任务书
课 程 名 称 操作系统 院(系、部、中心) 计算机工程学院 专 业 计算机科学与技术 班 级 K多媒体101
起 止 日 期 2012/12/24-2012/12/28 指 导 教 师 徐金宝
1.课程设计应达到的目的 本课程是在学完《操作系统及其安全》课程之后,让学生在掌握基本原理和方法的基础上,运用熟悉的开发工具,在计算机上模拟实现操作系统课程中介绍的操作和算法。以帮助同学切身体验各种操作的过程及效果,同时加深同学对基本原理的理解,提高同学的编程能力、综合应用知识的能力和分析解决问题的能力,初步培养研制简单系统程序开发的能力。 2.课程设计题目及要求 1)课程设计题目 原则上本课程所讲授的各种原理和算法均可作为选题选做。这里主要推荐如下课题: (1) 多线程编程解决进程间同步和互斥问题-XX问题的实现 掌握并发进程中同步与互斥的机制,基于线程的编程技术开发类似生产者—消费者问题的演示程序。 (2) 固定分区/可变分区管理算法的模拟 掌握简单实存管理技术的原理,理解固定分区/可变分区管理的算法,设计合适的数据结构和算法,模拟实现固定分区/可变分区管理算法。 (3) 页面置换算法的模拟 掌握虚拟存储管理中页面置换算法的原理,设计恰当的数据结构和算法,模拟实现页面置换算法。 (4) 银行家算法的模拟 掌握死锁相关的概念和解决方案,理解银行家算法的工作原理,设计合适的数据结构和算法,模拟实现银行家算法。 (5) 移动臂调度算法的模拟 掌握操作系统的设备管理功能,熟悉移动臂调度算法,设计恰当的数据结构和算法,模拟实现移动臂调度算法。 (6) 一个简单文件管理器的实现 掌握操作系统关于文件管理的各种原理,熟悉常用的文件操作,编写程序实现文件的常规操作。 (7)公开加密算法的编程机制实现模拟(掌握当前安全问题的一些解决方法和思路) 2)课程设计要求 要求学生只要实现一个算法。模拟程序的开发不但要正确体现原算法的基本原理,还要精心设计,充分体现学生自身在演示过程设计中的独特性,使模拟程序演示过程清晰、准确,演示的效果直观、图文并茂,达到能够帮助学生更深入的理解算法的目的。如页面更换,可以模拟FIFO、LRU和clock,最好用图形界面甚至动画展示,对于模拟结果,可以进行统计、分析、比较,画出统计曲线。软件系统没有最好,只有更好,不断精益求精。