没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
35页
A、本课程设计要求学生在阅读Linux操作系统源代码的基础上完成如下三个主要Project(包括A、B、C三类): 1、在Linux2.4的内核中添加新的系统调用,以理解系统调用的工作机制,掌握扩展内核功能的技术。 2、在Linux2.4中修改调度程序的代码,扩展一个新的调度算法 B、在Java虚拟机上完成如下Project: 1、用C语言模仿“生产者—消费者问题。 2、用C语言模仿实现“吃水果”问题 C、方向命题必作题目; D、自主命题。
资源详情
资源评论
资源推荐
1
《操作系统课程设计》
指导教师:
班级:
学号:
姓名:
2
操作系统课程设计
任 务 书
一、题目:
在阅读 Linux 操作系统源代码的基础上完成三个主要 Project。题目可在 A 类或者 B
类中任性其一,C 类必作,或者自主命题。
二、设计目的和要求:
操作系统原理是计算机专业的核心课程。本课程设计的目的旨在加深学生对计算机操
作系统内核的理解,提高对操作系统内核的分析与扩展能力。在课程理论教学中,较多地
是讲解操作系统理论和实现原理。本课程设计提供两类难度相当的实验,学生可按照自己
的兴趣选做 A 类和 B 类或 C 类或 D 类:
A、本课程设计要求学生在阅读 Linux 操作系统源代码的基础上完成如下三个主要
Project(包括 A、B、C 三类):
1、 在 Linux2.4 的内核中添加新的系统调用,以理解系统调用的工作机制,掌握
扩展内核功能的技术。
2、 在 Linux2.4 中修改调度程序的代码,扩展一个新的调度算法
B、在 Java 虚拟机上完成如下 Project:
1、用 JAVA 语言模仿“生产者—消费者问题。
2、用 JAVA 语言模仿实现“吃水果”问题
C、方向命题必作题目;
D、自主命题。
为将来在基于 Linux 的嵌入式系统开发或在 Java 虚拟机上的软件开发工作奠定基础。
三、工作内容及工作计划:1 周(17 周,其中课内 20 学时,课外
20 学时)
A 类:
序
号
实验项目
名称
内 容 提 要
实验
性质
实验种
类
学时
分配
每组
人数
备注
1
Linux 内
核代码分
析(部
分)
1、 Linux 内核代码的层次分析
2、 调度程序代码段的分析
3、 系统调用内部数据结构以及执行过
程的分析
4、 内核调试基本技术
专业
基础
基本型 20 1 必做
2
新增系统
调用
1、编写一个新系统调用的响应函数,函
数的名称和功能由实验者自行定义。把
新的系统调用函数嵌入到 Linux 内核中
2、编写应用程序以测试新的系统调用并
输出测试结果
专业
基础
综合型 20 1
必做
(2、3
选一)
3
3
进程调度
的扩展
1、 分析 Linux 进程调度模块
2、 扩展调度模块,使得新创建的普通
进程获得的优先级比一个曾经运行
过的优先级高
专业
基础
综合型 20 1
必做
(2、3
选一)
B 类:
序号 实验项目
名称
内 容 提 要
实验
性质
实验
种类
学时
分配
每组
人数
备注
1
用 JAVA 语
言模仿“生
产者—消费
者问题”
1. 通过 Java 语言中的 wait()
和 notify()命令模拟操作
系统中的 P/V 操作;
2. 为每个生产者/消费者产生
一个线程,设计正确的同步
算法
3. 每个生产者和消费者对有界
缓冲区进行操作后,即时显
示有界缓冲区的当前全部内
容、当前指针位置和生产者
/消费者线程的自定义标识
符。
4. 生产者和消费者各有两个以
上。
5. 多个生产者或多个消费者之
间须共享对缓冲区进行操作
的函数代码。
专业
基础
综合
型
20 1
必做
(1、
2 选
一)
2 用 JAVA 语
言模仿实现
“吃水果”问
题
1. 实现多进程的创建、进程间
同步与互斥解决具体问题。
2. 问题描述:桌上有一盘子,
桌上有一个空盘,允许存放
一只水果,爸爸可向盘内放
苹果,妈妈可向盘内放桔
子,儿子专等吃盘内的桔
子,女儿专等吃盘中的苹
果。
3. 桌上有一盘子,桌上有一个
空盘,允许存放一只水果,
爸爸可向盘内放苹果,妈妈
可向盘内放桔子,儿子专等
吃盘内的桔子,女儿专等吃
专业
基础
综合
型 20
1 必做
(1、
2 选
一)
4
盘中的苹果。
C 类:
序
号
实验
项目
名称
内 容 提 要 实验种类 每组人数 备注
1
文件
系统
设计一个多用户文件系统,理解文件系统的层次结构,完
成基本的文件系统 create、open、close、read/write 等
基本功能,并实现文件保护操作。实现以此为基础加入自
己设计功能的小型文件系统 。
综合型
1
必做
D 类:
或者自由发挥,必须与操作系统相关题目(如自编小型操作系统,可从 u 盘自启动)且跟
老师沟通确认后自主命题,最多允许 3 人组合,要求在第二次上课时确定题目。
四 实验要求:
1、多人合作项目要求分别上交课程设计报告,且在课程设计报告中明确任务分工情
况,若无体现,成绩无效。
2、设计到编程部分对实验步骤要求如下:
(1)需求分析:了解基本原理,确定程序的基本功能,查找相关资料,画出基
本的数据流图,设计各类测试数据,并对各类测试数据拟测试加以详细说明;
(2)概要设计:确定程序的总体结构、模块关系和总体流程;
(3)详细设计:确定模块内部的流程和实现算法;
(4)上机编码和调试;
(5)运行测试,并利用各类测试数据证明算法的稳定性;
(6)编写实验报告。注:实验心得要真情实感,做到人人有感而发,而不是类
似“通过这次实验收益良多”之类的范范之谈。
3、文件命名规则:班级操作实验课程设计+姓名+点名册中的序号
五、实验参考资料
1.Gray Nutt.Kernel Projects for Linux(影印版).北京:机械工业出版社,2002
2.李善平,郑扣根.Linux 操作系统计实验教程.北京:机械工业出版社,1999
3. 印旻.Java 语言与面向对象程序设计.北京:清华大学出版社,2000
六、考核成绩评定标准
本课程设计的评价由两部分组成,包括答辩(50%)(包括程序演示(30%),回答教
师提问(20%))和 课程设计报告(50%)。指导教师根据每个学生小组必做实验和选
做完成情况、实验结果的正确性、选做实验的数量和完成情况,进行小组评分,作为
该小组成员的最高得分。对组内各个成员评分,结合学生小组分工情况和组内评价进
行评分,并将成绩记录在册。
1、 程序演示:
(1) 优 功能完善,全部测试正确,并且能够对局部进行完善,能
够对不同测试数据进行正确分析。
5
(2) 良 功能完善,但测试欠缺。
(3) 中 功能基本完善,但程序尚有部分错误。
(4) 及格 完成一定功能。
(5) 不及格 功能不完善,且程序错误较多,无法运行。
2、 课程设计报告:
(1) 优 包括设计内容,设计思想,已经完成的任务及达到的目标,
设计思路清晰、书写条理清楚,源程序结构合理、清晰,
注
释说明完整,有对本次课程设计的心得体会。
(2) 良 包括设计内容,设计思想,已经完成的任务及达到的目标,
设计思路基本清晰、书写条理基本清楚,源程序结构合理、
清晰,注释说明基本完整,有对本次课程设计的心得体会。
(3) 中 课程设计报告内容基本完整,思路较清晰,书写基本清楚,
源程序结构尚可,有注释说明但不完整。
(4) 及格 课程设计报告内容基本完整,思路较差,书写尚清楚。
(5) 不及格 课程设计报告内容不完整,书写没有条理。
3、 回答教师提问:
(1) 优 能回答教师提出的所有问题,并完全正确,思路清晰。
(2) 良 基本能回答教师提出的所有问题,有些小错误。
(3) 中 基本能回答教师提出的问题,少数问题回答错误或不清楚。
(4) 及格 能回答教师提出的问题,但较多问题回答错误或不能回答。
(5) 不及格 基本不能回答教师提出的问题。
剩余34页未读,继续阅读
假如困境有解
- 粉丝: 3
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1