操作系统课程设计任务书--苏州科技学院.doc_第1页
操作系统课程设计任务书--苏州科技学院.doc_第2页
操作系统课程设计任务书--苏州科技学院.doc_第3页
操作系统课程设计任务书--苏州科技学院.doc_第4页
操作系统课程设计任务书--苏州科技学院.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作系统课程设计指导书1 课程的性质和目的“操作系统”是计算机科学与技术专业的核心专业课,“操作系统课程设计”是理解和巩固操作系统基本理论、原理和方法的重要的实践环节。 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握多道程序设计基本技能及灵活运用操作系统提供的系统功能调用。2 课程的内容计算机操作系统是计算机系统中最不可缺少的、最常用的软件,也是核心的、最接近于计算机硬件的软件。计算机操作系统是计算机专业及其相关专业的主要的基础课程之一,其内容综合了各种操作系统的结构、设计思想、方法、技术和理论,其特点是内容繁多、概念抽象,因此造成理解困难、掌握不易。本课程设计的内容利用进程管理、内存管理、设备管理、文件系统等基本概念和原理,运用程序设计工具语言,掌握多道程序及其进程同步和互斥、内存访问、设备驱动、文件系统的设计基本方法,及操作系统API调用的使用方法, 达到能用、会用、巧用的效果。3 学时分配和辅导 (1)基本任务简介、原理讲解 2学时 (2)软件设计 4学时 (3)上机编程、调试 24学时 (4)检查考核 2学时 每小班大约35人,每小班至少配备一名指导教师跟综辅导答疑,解决技术难题。要求指导教师熟悉多道程序间的协同操作、进程同步和互斥、设备管理、文件系统的基本原理,具有C/C+或Java程序设计的经验。4课程设计的任务4.1 基本任务要求题目1:多道程序缓冲区协调操作如下图所示,有10个Put操作要不断循环地向InBuffer送数据,有一个Move操作要不断地将InBuffer的数据取到OutBuffer,有20个GET操作要不断地从OutBuff中取数据。InBuffer的容量是10, OutBuff的容量是20, Put、 Move、 Get每次操作一个数据,为了在操作的过程中要保证数据不丢失,每个Buffer每次只能接受一个Put或一个Move或一个Get,多个操作不能同时操作同一Buffer(即需要互斥操作)。设计一个多道程序完成上述操作。试用、原语(或Wait、Signal)协调Put、 Move、Get的操作,并说明每个信号量的含义、初值和值的范围。 图1 Buffer操作题目2:设计程序,实现银行家算法。银行家算法测试数据如下:某系统有R1、R2和R3共3种资源,在T0时刻P0、P1、P2、P3和P4 5个进程对资源的占用和需求情况见下表,此刻系统的可用资源为(2,1,2)。 进程 最大需求量 已占有量 P0 3 2 2 1 0 0 P1 6 1 3 4 1 1P2 3 1 4 2 1 1 P3 4 2 2 0 0 2 P43 1 3 1 0 3取了4种不同的例子,来测试系统的主要功能是否实现: 进程i Requesti 检测结果a. 1 2 1 2 RequestNeedb. 0 2 2 2 RequestAvailablec. 1 1 0 1 可以分配d. 0 1 0 1 系统不安全题目3:编写一个系统调用,该系统调用实现文件拷贝。编写用户程序测试该调用。题目4:利用GTK 或QT或KDE设计一个程序,对/proc文件系统进行访问,实现一个(类似Windows平台的)任务管理器。题目5:制作软盘上的Linux:通过重构内核等处理,在软盘上建立Linux系统,该软盘可独立启动Linux系统。题目6:设计一个程序,实现Linux系统中提供的“ls -l”的功能。题目7:设计一个程序,实现Linux系统中提供的“cp -r srcFilepath destFilepath”(即文件及子目录拷贝)的功能。4.2 提交的材料(1) 提交软件安装盘;(2) 源程序;(3) 设计说明书(电子版):格式要求见6.9节描述;4.3评分和验收标准 4.3.1评分标准 (1) 软件演示及讲解 45分(2) 设计报告 35分(3) 使用手册 10分(4) 注释及良好的程序设计风格 10分4.3.2验收标准教师根据设计报告、软件的运行演示和学生回答问题的情况评定成绩。 (1)设计报告规范、完整,概念原理论述清楚、软件设计结构合理,独立完成设计,软件运行正常,能够突出表现多道程序运行的特点,回答问题准确明了,可以评为优秀(A)。 (2)设计报告规范、完整,概念原理论述清楚、软件设计结构合理,独立完成、软件基本运行正常,能够表现多道程序运行的特点,回答问题正确,可以评为良(B)。 (3)设计报告规范、概念原理论述基本清楚、软件设计结构合理,基本独立完成,软件基本运行正常,基本能够表现多道程序运行的特点,回答问题部分正确,可以评为中良(C)。 (4)设计报告基本规范、概念原理论述基本清楚、软件设计结构基本合理,部分独立完成,软件基本可以运行,基本能够表现多道程序运行的特点,回答问题部分正确,可以评为及格(D)。 (5)设计报告不规范、概念原理论述不清楚、软件设计结构不合理,大部分不能独立完成,软件基本不能运行,回答问题大部分不正确,可以评为不及格(E)。5设计的基本步骤(1) 需求分析查找相关技术资料,了解基本原理,根据题目要求的功能。.(2) 设计软件的界面程序运行界面要求使用中文或中英文对照.。(3) 总体设计 确定基本的技术路线:面向过程还是面向对象;确定软件的总体结构、模块关系、总体流程;确立要创立的进程或线程;确定开发要使用的语言环境;要解决的关键技术问题。(4) 详细设计确定要使用的函数、API,掌握它们的使用的参数和返回值。确定模块内部的流程和实现算法;确定要设计的过程、构件、类、对象、函数和它们的参数。(5) 编码设计建立设计编程的环境;注意编程的风格的规范。(6) 实际数据运行测试 检查程序是否有错误; 检查界面是否美观; 检查操作是否方便; 检查提供的信息是否清晰; 检查性能是否稳定。6设计说明书内容要求6.1 概述 目的; 主要完成的任务; 使用的开发工具; 解决的主要问题。6.2 使用的基本概念和原理如多道程序;进程;线程;同步和互斥;银行家算法等的概念。6.3 总体设计 确定基本的技术路线:面向过程还是面向对象;确定软件的总体结构、模块关系、总体流程;确立要创立的进程或线程。6.4 详细设计确定要利用的系统API,掌握它们的使用的参数和返回值,要给出具体的名称和参数及其解释;确定模块内部的流程和实现算法;确定要设计的过程、构件、类、对象、函数和它们的参数,要给出具体的名称和参数及其解释。6.5 编码设计开发环境的设置和建立;程序设计时要注意的事项;关键构件/插件的特点和使用;主要程序的代码设计及注释;解决的技术难点、经常犯的错误。6.6 测试时出现过的问题及其解决方法6.7 总结 详细列出已经课程设计的完成情况; 未完成的部分;收获、经验、教训和感受等。6.8参考文献列出你所用的参考文献,包括Web上的资源。6.9 格式要求(1) 论文开本为A4,页边距为设置:上下分别为3cm,左右分别为2.9cm和2.8cm;(2) 报告书标题用小2号黑体字,横向居中排放;(3) 1级标题用小3号黑体;(4) 2级标题用4号黑体;(5) 3级标题用小4号黑体;(6) 正文用5号宋体字,行间距为最小值18磅;(7) 各层次标题均不得置于页面的最后一行,即不允许“背题”;(8) 图下方要有图号和图名,表上方要有表号和表名;(9) 参考文献编写项目和顺序规定如下: 序号 作者.书名.出版地:出版者,出版年:引用部分起止页 序号 作者.文章名.学术刊物名,年,卷(期):引用部分起止页表1 层次代号及说明层次名称示例说明全文标题 XXXX名居中排,章序用阿拉伯数字1级标题1 题序顶格书写,与标题间空一字,下面阐述内容另起一段 2级标题1.1 3级标题1.1.1 7参考资料1李善平,陈文智等编著. 边干边学Linux内核指导,浙江:浙江大学出版社.2 Michael Beck,Harald Bohme,Miko Dzizdzka等,张瑜 杨继萍译. Linux内核编程,北京:清华大学出版社3中国LINUX论坛:/4 LinuxSirBBS: /bbs5 红联Linux110:/6ChinaUnix技术文档中心:http:/doc.chinaun

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论