适用专业:计算机科学与技术、通信工程、信息管理与信息系统 课程设计时间:4周
一、课程设计目的
本课程设计是学生学习完《计算机操作系统》课程后,进行的一次全面的综合训练,通过课程设计,让学生更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强学生的动手能力。
二、课程设计要求
从课程设计的目的出发,通过设计工作的各个环节,达到以下教学要求: 每位同学从所给题目中任选一个(如自拟题目,需经教师同意),且必须完成课程设计,不能相互抄袭。
设计完成后,将所完成的作品交由老师检查。 要求写出一份详细的设计报告。
三、课程设计内容:(任选其一)
课题一 处理机调度模拟程序:选择一个调度算法,实现处理机调度。
设计目的:在多道程序和多任务系统中,系统内同时处于就绪状态的进程可能有若干个。也就是说能运行的进程数大于处理机个数。为了使系统中的进程能有条不紊地工作,必须选用某种调度策略,选择一进程占用处理机。要求学生设计一个模拟处理机调度算法,以巩固和加深处理机调度的概念。
设计要求:
1)进程调度算法包括:时间片轮转法,短作业优先算法,动态优先级算法。 2)可选择进程数量
3)本程序包括三种算法,可用C语言实现,执行时在主界面选择算法(可用函数实现),进入子页面后输入进程数及每个进程的运行时间,每个进程的优先数由随机函数产生且优先数随等待时间而变化,执行,显示结果。
课题二 用多进程同步方法解决生产者-消费者问题
设计目的:通过研究Linux 的进程机制和信号量,实现生产者消费者问题的并发控制.
说明:有界缓冲区内设有20个存储单元,有界缓冲区可用数组实现,缓冲区中的内容自定。 设计要求:(1)每个生产者和消费者对有界缓冲区进行操作后,即时显示有界缓冲区的全部内容,当前指针位置和生产者/消费者进程标识符.(2)生产者和消费者至少各有两个以上.(3)多个生产者或多个消费者之间须有对缓冲区进行共享操作的函数代码(注意互斥与同步).
课题三 设计一个虚拟存储区和内存工作区,编程序演示下述置换算法的具体实现过程,并计算访问命中率:
要求从主界面选择某算法,且以下算法都要实现 1、先进先出算法(FIFO)
2、最近最久未使用算法(LRU)
3、随机淘汰算法
课题四 编程模拟多进程共享临界资源:
要求产生至少3个进程:
1、两个进程模拟需要进入临界区的用户进程,当需要进入临界区时,显示:“进程x请求进入临界区…”,同时向管理进程提出申请;在临界区中等待一段随机时间,并显示:“进程x正在临界区…”;当时间结束,显示:“进程x退出临界区…”,同时向管理进程提出退出申请。
2、一个进程作为原语级管理进程,接受其他进程的临界区进入请求:如果允许进入,则设置相应变量,然后返回;如果不允许进入,则进入循环等待,直到允许为止;
3、对临界区的访问应遵循空闲让进、忙则等待、有限等待、让权等待的准则。 4、进程间通信可以采用信号、消息传递、管道或网络通信方式。 课题五 编程演示三种存储管理方式的地址换算过程: 1、分页方式的地址换算 2、分段方式的地址换算 3、段页式的地址换算
要求演示正确、清晰,编程所用工具不限,考虑虚拟存储技术。 课题六 设计并实现一个(单用户)文件系统程序
设计目的: 系统了解操作系统的文件系统的作用和实现原理与技术。 设计要求:系统能够实现 1、文件创建/删除 2、目录的创建/删除 3、显示目录内容 课题七 多线程编程
设计目的:学习掌握多线程编程技术。
设计要求:创建一个进程,同时该进程创建多个(至少3个以上)线程,使得线程去完成各自的任务,在主线程中等待每个子线程的结束(注意同步与互斥)。
该进程完成的总任务、各个线程完成的任务,由同学们结合自己实际情况来确定,以解决一个实际的问题。
四、课程设计考核方式
课程设计成绩评定的依据有设计文档资料、具体实现设计方案的程序及课程设计考勤登记表,最后的评定成绩是由:过程评价50%,平时表现评价20%,课程设计报告评价30%。
评定成绩时考虑: 1 出勤情况;
2 学生在课程设计过程中表现:
(1)巩固和加深对基本知识的理解,提高综合运用本课程所学知识的能力。
(2)根据课题需要选取参考书籍,查阅手册、图表和文献资料的能力。通过思考,自主学习,深入钻研有关问题,学会自己分析解决问题的方法。
(3)严肃认真的工作作风和科学态度,具有团结协作精神,勇于战胜困难解决问题。通过课程设计实践,初步建立正确的科研意识。
3 有完整的符合标准的文档,文档有条理、文笔通顺,格式正确;内容详实,与所完成的软件作品一致,并有较深入的分析。
提交的电子文档和软件必须是由学生自己完成,雷同者教师有权视其情况扣分或记零分。
五、提交的材料
(一)提交电子文档,文件夹名用:学号+姓名,文件夹中包括以下三个文档:
1)软件作品
软件需提供源程序,并能正常运行。
注:对于程序中未能实现的部分需要加以说明。
对于程序中所参考的部分代码需要加以声明,并说明出处。 2)设计报告
提交设计报告,设计报告中应包括:[设计任务],[设计的功能目标],[设计的思想、方法和技术](含数据结构、算法),[设计的主要代码及注释],[结果分析](含实现中出错原因分析),[设计小结](即收获和体会)。
3)参考资料:将设计所需的参考资料整理并以文档形式存放在该文件夹中,注意只收集所参考的资料文献,并注明资料文献的出处。
(二)正确填写《操作系统课程设计评定表》中个人信息项(姓名,学号,专业,设计题目),并用A4纸打印一份。
操作系统课程设计评定表见附件二。
六、课程设计报告格式
见附件一。
附件一:课程设计报告封面格式
内蒙古师范大学计算机与信息工程学院
《操作系统》课程设计报告
设计题目 指导教师 姓 名 学 号 日 期 职称 格式要求:
标题(如[设计任务]等):采用样式库中的标题1(宋体小四加粗);
正文:宋体五号常规,首行缩进2字符,如果其中需要设置多级标题,则各级标题使
用1.1,1.1.1 格式编排序号(序号与内容之间以一个空格分隔),各级标题顶格编排,字体为宋体小四号;
页面设置:纸型统一使用A4纸,页面上、下、左、右页边距均定义为2厘米; 填加页眉:“操作系统课程设计(居中),学号+姓名(靠右)”;页脚:页码(居中)。 主要内容要求: 1 设计任务
填入设计题目
2 设计的功能目标
填入设计题目具体要求
3 设计的思想、方法和技术(含数据结构、算法)
详细地阐述设计的总体思想及所用到的数据结构,算法可用流程图描述
4 设计的主要代码及注释
列出设计的主要代码及注释
5 结果分析(含实现中出错原因分析
对所设计题目的运行结果给出尽可能全面的分析,包括可能出现的各种情况及出现的原因
6 设计小结(即收获和体会)
写出本次课程设计的收获及体会
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务