操作系统课程设计2014教学大纲
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《操作系统课程设计》大纲
一、设计目的和要求
目的:本课程设计是为配合计算机相关专业的重要专业课《操作系统》而开设的,其主要内容是让学生实际进行操作系统功能模块的设计和编程实现。通过本课程设计的实施,使学生能将操作系统的概念具体化,并从整体和动态的角度去理解和把握操作系统,以巩固和补充操作系统的原理教学,提高学生解决操作系统设计及实现过程中的具体问题的能力。
要求:通过本课程设计的实施,要求培养学生以下能力:
(1)培养学生在模拟条件下与实际环境中实现功能模块和系统的能力:课程设计要求学生实际进行操作系统功能模块的设计和编程实现,具体包括:基于线程的多任务调度系统的设计与实现;一个简单文件系统的设计与实现。
(2)培养学生设计和实施工程实验的能力,合理分析试验结果的能力:学生在完成项目的过程中,需要进行实验设计、程序调试、错误分析,从而熟悉实验设计方法及实验结果的分析方法。
(3)培养学生综合运用理论和技术手段设计系统和过程的能力:学生需根据设计项目的功能要求及操作系统原理的相关理论提出自己的解决方案,需考虑项目实现的软硬件环境,设计相关数据结构及算法,在实现过程中发现解决方案的问题并进行分析改进。
(4)培养学生分析并清楚阐述设计合理性的能力:要求学生在项目上机验收和实验报告中分析阐述设计思路的合理性和正确性。
(5)培养学生的组织管理能力、人际交往能力、团队协作能力:课程设计分小组进行,每个小组有一个组长,负责组织本组成员的分工及合作。
二、设计学时和学分
学时:32 ;学分:1
三、设计的主要内容
以下三个题目中:1、2中选做一题,第3题必做。
1、基于线程的多任务调度系统的设计与实现
(1)线程的创建、撤消和CPU切换。
掌握线程的定义和特征,线程的基本状态,线程的私有堆栈,线程控制块TCB,理解线程与进程的区别,实现线程的创建、撤消和CPU切换。
(2)时间片轮转调度
理解各种调度算法、调度的原因,完成时钟中断的截取,具体实现调度程序。
(3)最高优先权优先调度
理解优先权的概念,并实现最高优先权优先调度策略。
(4)利用记录型信号量实现线程的同步
理解同步的相关概念,掌握记录型信号量的概念及应用,并用记录型信号量实现生产者和消费者问题。
(5)消息缓冲队列通信机制
理解进程(线程)通信的基本概念,并用消息缓冲队列实现线程间的通信。
2、linux进程管理的应用编程:
以linux下的gcc为编译器,调用linux提供的多种系统调用,实现进程管理相关功能,包括:(1)进程创建及撤销
实现多个进程的创建、执行及撤销。
(2)进程同步
利用linux的信号量集机制,实现生产者—消费者问题。
(3)进程通信
创建两个以上进程,实现多个进程之间的管道通信(无名管道及有名管道)、消息队列通信、共享存储器通信三种通信机制。
3、简单文件系统的设计与实现
内容包括虚拟盘的格式化、文件存储空间的管理和分配算法、多级目录的设计与实现
(1)基本文件命令行操作的实现
通过命令行的方式,实现对文件的读写等基本交互式操作,要求能够创建与删除目录、创建与删除文件、读与写文件的内容。
(2)文件系统的挂载与卸载
程序退出时,卸载文件系统,将内存中虚拟盘文件系统映像以磁盘文件的形式保存在文件中。程序启动时从映像文件中挂载文件系统,恢复上次结束时状态。
四、设计的进行方式
上机编程
五、设计的时间安排
本课程共32学时,其中课堂讲授4学时,上机28学时,具体安排如下:
六、设计的考核方式
本课程为综合性设计课程,考核通过程序验收的方式进行,成绩评价结果采用5分制:优秀、良好、中等、及格、不及格。总成绩(满分100分)由程序验收成绩、课程设计报告成绩和上机表现成绩三部分组成,各部分成绩占比如下:
程序验收成绩:满分70分;
课程设计报告成绩:满分15分;
上机表现成绩:满分15分。
最后由总成绩给出成绩评价结果:90—100:优秀;80—90:良好;70—80:中等;60—70:及格;60分以下:不及格。
七、教材与参考书
1.梁红兵等:《操作系统实验与课程设计指导书》,(自编讲义)。
2.汤小丹等:《计算机操作系统(第三版)》,西安电子科技大学出版社,2007。
3.胡明庆等:《操作系统教程与实验》,清华大学出版社,2007。
4.赵敏哲:《64位Linux操作系统与应用实例》,机械工业出版社2000。