《操作系统课程设计方案教学大纲#.docx》由会员分享,可在线阅读,更多相关《操作系统课程设计方案教学大纲#.docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统课程设计方案教学大纲# 操作系统课程设计课程教案大纲 名称:操作系统课程设计课程编码: 英文名称:operating system 实习周数: 2 其中实验学时:学分: 2 安排学期: 5 适用专业:软件项目、网络项目 一、课程设计目的及任务 操作系统是计算机专业的核心专业课,“操作系统课程设计”是理解和巩固操作系统基本理论、原理和方法的重要的实践环节。 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、
2、原理和方法,掌握操作系统基本理论与管理方式。在算法基础上,解决实际的管理功能的问题,提高学生实际应用、编程的能力。 主要任务是实现操作系统和相关系统软件的设计,其中涉及进程创建,同步,进程间的通信,存储管理,文件系统等操作系统概念。 二、课程设计的基本要求 1)对需要上机完成的题目进行认真分析,列出实验具体步骤,写出符合题目要求的程序清单,准备出调试程序使用的数据。 2)以完整的作业包的形式提交原始代码、设计文档和可运行程序。课程设计报告字数不少于2000字,主要内容有: (1)概述:设计主要完成的任务和解决的主要问题; (2)设计的基本概念和原理; (3 总体设计:实现的方法和主要技术路线;
3、 (4 详细设计:使用主要控件、函数; (5 简要的使用说明; 解释器打印$PS2作为提示符。 4. Background Processing 如果命令以符合&终止,在后台并发执行该程序。Shell立即等待下一命令的输入,而不等待该程序的结束。 注:所有命令和参数由空格或tab符分隔。 设计二: 设计任务: 掌握进程的管道通讯机制和信号量同步互斥机制。 1进程的管道通讯 编制一个程序,程序中创建一个子进程。然后父子进程各自独立运行,父进程不断地在标准输入设备上读入小写字母,写入管道。子进程不断地从管道中读取字符,转换为大写字母后输出到标准输出设备上。当读到x时,结束。 2信号量实现的同步互斥
4、机制 编制一个程序,程序中创建5个子进程,代表五位哲学家,然后父进程结束。使用信号量机制解决哲学家进餐问题。当哲学家进餐时,屏幕输出: 进程号 eating! 当哲学家思考时,屏幕输出: 进程号 thinging! 相关的系统调用和函数:pipe(。 write(。 read(。 semget(。 sepop(。semctl(。 要求:查找并阅读上述系统调用的相关资料,将上述相关的函数封装为P( 、V( 操作,使用你封装的P( 、V( 操作实现5位哲学家的同步和互斥。 设计三: 设计任务: 一个十字路口,共有四组红绿灯,每个路口的车辆都遵循“红灯停、绿灯行”的原则,假设将每一台汽车都作为一个进
5、程,请设计良好的机制,展示出合理的“十字路口交通管理”情况。 1. 车辆数目:每个路口的车辆数目不超过5辆,程序能够提供参数来设定初始的车辆数目。 2. 交通灯设定:初始情况一个路口为红灯、一个路口为绿灯;红灯变为绿灯的间隔为3秒,必须保持十字路口交通灯的设定正确。 3. 车辆通行设定:路口宽度不限,对一个路口而言,只有当一辆车通过路口; 第 10 条 第 19 条指令为第 1 页 ( 对应虚存地址为 10,19 ; 第 310 条 第 319 条指令为第 31 页 ( 对应虚存地址为 310,319 。 按以上方式,用户指令可组成 32 页。 计算并输出下述各种算法在不同内存容量下的命中率。
6、 先进先出的算法 (FIFO; 最近最少使用算法 (LRR; 最少访问页面算法 (LFR; 最近最不经常使用算法 (NUR。 提示 1. 命中率 = 1 - 页面失效次数页地址流长度 在本实验中,页地址流长度为 320,页面失效次数为每次访问相应指令时,该指令所 对应的页不在内存的次数。 2. 随机数产生办法 关于随机数产生办法,Windwos系统提供函数srand( 和 rand( ,进行初始化和产生随机数。例如: #include srand( (unsignedtime( NULL 。 语句可初始化一个随机数。 ao=10 * rand( / 32767 * 319 + 1。 a1= 1
7、0 * rand( / 32767 * ao。 语句可用来产生 a0 与 a1 中的随机数。 设计五: 设计任务: 模拟Linux文件系统。在任一OS下,建立一个大文件,把它假象成一张盘,在其中实现一个简单的模拟Linux文件系统。 1. 在现有机器硬盘上开辟20M的硬盘空间,作为设定的硬盘空间。 2. 编写一管理程序对此空间进行管理,以模拟Linux文件系统,具体要求如下: i 结点文件类型目录文件 (共1byte 块设备管道文件物理地址 位示图法 (Linux 结构: 0#:超级块 1#20#号为 i 结点区 20#30#号为根目录区 3. 该管理程序的功能要求如下: (1 能够显示整个系
8、统信息,源文件可以进行读写保护。目录名和文件名支持全路径名和相对路径名,路径名各分量间用“/”隔开。 (2 改变目录:改变当前工作目录,目录不存在时给出出错信息。 (3 显示目录:显示指定目录下或当前目录下的信息,包括文件名、物理地址、保护码、文件长度、子目录等 创建目录:在指定路径或当前路径下创建指定目录。重名时给出错信息。 (5 删除目录:删除指定目录下所有文件和子目录。要删目录不空时,要给出提示是否要删除。 (6 建立文件 打开文件 删除文件:删除指定文件,不存在时给出出错信息。 4. 程序的总体流程为: (1 初始化文件目录; (2 输出提示符,等待接受命令,分析键入的命令; (3 对
9、合法的命令,执行相应的处理程序,否则输出错误信息,继续等待新命令,直到键入EXIT退出为止。 六、课程设计的具体日程安排 七、考核及成绩评定 教师根据设计报告、软件的运行演示和学生回答问题的情况评定成绩。 设计报告规范、完整,概念原理论述清楚、软件设计结构合理,独立完成设 计,软件运行正常,回答问题准确明了,可以评为优秀 设计报告规范、完整,概念原理论述清楚、软件设计结构合理,独立完 成、软件基本运行正常,回答问题正确,可以评为良(B。 设计报告规范、概念原理论述基本清楚、软件设计结构合理,基本独立完 成,软件基本运行正常,回答问题部分正确,可以评为中良(C。 设计报告基本规范、概念原理论述基本清楚、软件设计结构基本合理,部 分独立完成,软件基本可以运行,回答问题部分正确,可以评为及格(D。 设计报告不规范、概念原理论述不清楚、软件设计结构不合理,大部分不 能独立完成,软件基本不能运行,回答问题大部分不正确,可以评为不及 格(E。 八、主要教材、参考书 1汤子嬴.计算机操作系统.西安:西安电子科技大学出版社.2022 2谭耀铭.操作系统.北京:中国人民大学出版社.1999 3张尧学,史美林.计算机操作系统教程(第三版.北京:清华大学出版社.2022 制定人:崔广才 审定人:高培成 2022年10月 申明: 所有资料为本人收集整理,仅限个人学习使用,勿做商业用途。
限制150内