os课程设计题目

上传人:新** 文档编号:486565223 上传时间:2023-07-17 格式:DOCX 页数:4 大小:13.50KB
返回 下载 相关 举报
os课程设计题目_第1页
第1页 / 共4页
os课程设计题目_第2页
第2页 / 共4页
os课程设计题目_第3页
第3页 / 共4页
os课程设计题目_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《os课程设计题目》由会员分享,可在线阅读,更多相关《os课程设计题目(4页珍藏版)》请在金锄头文库上搜索。

1、操作系统课程设计题目与要求一、课程设计要求:1可以依据教材中的算法自行选题,也可以从下面给出的题目中选题。要求每两名同学之 间课程设计内容应该不同。如果有选择相同题目的小组,则设计方案不同,否则视为抄袭。 题目选定后上报给金鹏,要求每个题目不超过5 个人做。2分析设计要求,给出解决方案,建立必要的数据结构,然后设计总体流程(包括界面)、 详细设计必要的算法,并最终显示结果。基于 WINDOWS 或 LINUX 操作系统都可以,用 何种编程语言都有可以。3 严禁抄袭,复制设计内容,查出后相关同学设计成绩以零分处理。4. 基于 Windows 或 Linux 操作系统都可以,用何种编程语言都可以。

2、二、提交的资料1文档 提交设计报告,包括设计要求、设计思想流程、设计所涉及的主要数据结构、程序清单、运行结果、设计心得、参考资料等要求使用计算机打印在A4纸上,同时提交电子文档。2软件软件需提供加注释的源程序。注:对于分析设计中未能实现的部分需要加以说明。对于软件中所参考的部分模块或代码需要加以声明。三、设计题目1. 银行家算法的设计与实现目的:了解多道程序系统中,多个进程并发执行的资源分配。具体用银行家算法实现资源分配。要求如下:(1) 设计一个3 个并发进程共享3 类不同资源的系统,进程可动态地申请资源和释放资源, 系统按各进程的申请动态地分配资源。(2) 设计用银行家算法和随机分配算法,

3、实现资源分配的两个资源分配程序,应具有显示或 打印各进程依次要求申请的资源数以及依次分配资源的情况。(3) 确定一组各进程依次申请资源数的序列,在相同的情况下分别运行上述两种资源分配程 序,观察运行结果。2. 用多线程同步方法解决睡眠理发师问题 目的:了解信号量机制,了解并掌握进行同步和机制,熟悉信号量的操作函数,利用信号量 实现对共享资源的控制。设计要求:编写程序实现理发师与顾客进程的同步。问题描述:理发店有一位理发师,一把理发椅和n把用来等候理发的椅子。如果没有顾客, 则理发师便在理发椅上睡觉,顾客到来时,如理发师闲则理发,否则如有空等候椅则坐等, 没有空椅则离开,编写程序实现理发师和顾客

4、程序,实现进程控制,要求不能出现竞争。3. 进程调度模拟程序 目的:深入掌握进行调度的概念原理和实同方法。 设计要求:编写一个进程调度程序,允许多个进程并行执行。 进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)、 先来先服务算法、按时间片轮转调度算法,最终总结该算法的优缺点,写出设计体会。每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、 到达时间、需要运行时间、已用 CPU 时间、进程状态等等。进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达 时间为输入进程的时间。4. 读者与写者问题(进程同步

5、问题) 实验目的:了解进程同步的概念,理解信号量机制的原理,掌握运用信号量解决进程同步问 题的方法,进而学会运用进程的同步与互斥 。设计要求:编程模拟教材中讨论的读者与写者问题,要求能显示结果。5. 处理机调度 实验目的:加深作业概念的理解,深入了解多道程序设计系统中如何组织作业、管理作业和 调度作业,加深对作业调度算法的理解。实验要求:采用短作业优先调度算法、先来先服务调度算法和最高响应比调度算法实现处理 机对作业的调度。作业调度算法的关键是在已有的作业后备队列上按照一定的规则选择一个作业,如何在已有 的数据结构上进行操作的问题。6. 生产者消费者问题 设计要求:设计一个程序,由一个父进程创

6、建三个子进程,三个子进程一个是生产者进程, 两个是消费者进行,父子进程都使用父进程创建的共享存储区进行通信,由生产者进程将一 个数组中的十个数值发送到由5个缓冲区组成的共享内存中,两个消费者进程轮流接收并输 出这十个数值,同时将两个消费者进程读出的数值进行累加求和。问题描述:一组生产者向一组消费者提供消息,它们共享一个有界缓冲区n,生产者向其中投放消息, 消费者从中取得消息。规则: 对于生产者进程:产生一个数据,当要送入缓冲区时,要检查缓冲区是否已满,若 未满,则可将数据送入缓冲区,并通知消费者进程;否则,等待; 对于消费者进程:当它去取数据时,要看缓冲区中是否有数据可取,若有则取走一 个数据

7、,并通知生产者进程,否则,等待。缓冲区是个临界资源,因此,诸进程对缓冲区的操作程序是一个共享临界区,所以, 还有个互斥的问题。7. 交通信号灯模拟 一个十字路口,共有四组红绿灯,每个路口的车辆都遵循红灯停,绿灯行的原则,假设将每一 台汽车都作为一个进程,请设计良好的机制,展示出合理的十字路口交通管理情况. 车辆通行设定:路口宽度不限,对一个路口而言,只有当一辆车通过路口(越过对面路口的交通 灯后)后,其后续车辆才能继续通过交通灯,车辆通过路口的时间可以固定,可以自行计算。 进程的互斥:交通灯进程实际上是互斥的,即不能同时为红或者同时为绿.进程的消息通信或其他通信方式 :对车辆进程而言,每一个车

8、辆在通过路口前,必须确认前面 的车辆已经通过了路口.进程的调度:停留在一个路口的车辆 ,决定其前进或等候的因素是交通灯和前面车辆的状态 , 需要设计一个良好的进程调度机制来控制所有车辆的通行。8. 收银员与顾客问题(信号量操作) 实验目的:了解信号量机制,了解并掌握进行同步和机制,熟悉信号量的操作函数,利用信 号量实现对共享资源的控制。实验要求:编程模拟下面同步问题:在某超市里有一个收银员,且同时最多允许有n个顾客 购物,我们可以将顾客和收银员看成是两类不同的进程,且工作流程如下图所示。为了利用 PV操作正确地协调这两类进程之间的工作,设置了三个信号量SI、S2和Sn,且初值分别为 0、 0

9、和 n。9. 苹果问题目的:了解信号量机制,了解并掌握进程同步和互斥机制,熟悉信号量的操作函数,利用信 号量实现对共享资源的控制。设计要求:编程模拟实现这一问题的程序控制,分析处理过程,问题描述:桌子上有一只盘子,最多可容纳两个水果,每次只能放入或取出一个水果。爸爸专向盘子放苹果(apple),妈妈专向盘子中放桔子(orange);两个儿子专等吃盘子中的桔子,两个女儿专等吃盘子中的苹果。请用P、V操作来实现爸爸、妈妈、儿子、女儿之间的同步 与互斥关系。10. 饥饿小鱼游戏 设计饥饿小鱼游戏程序,选择多种图形表示大大小小各种鱼或动物,利用线程技术使各种鱼 在界面上移动。制定游戏和计分规则,如各种

10、鱼按照什么路线行进,当不同种类的鱼相遇时 谁会吃掉谁。11. 随机运动的彩色弹弹球 画出若干彩色弹弹球,每个球获得大小不等的初始动力和速度,运动方向也各不相同,运动 过程中速度逐渐减小,双击它使它再获得动力。12. 斯诺克台球比赛模拟若干彩球按规则排列,击白球撞开它们,则多球同时运动,各球之间进行弹性碰撞,碰撞或 撞边均要改变运动轨迹。画出各彩球,显示其运动轨迹,演示比赛过程。13. Windows 多线程控制台程序目的:学习和掌握如何编写 Windows 多线程控制台程序。通过编写程序,加深对进程和线 程关系的理解,掌握多线程程序的执行和编写技巧。设计要求:写一个单进程多线程的Windows控制台程序,该程序在一个进程内建立N个线 程来执行指定的任务。N由命令行传递给系统。14. 男女生洗澡问题(信号量操作) 目的:了解信号量机制,了解并掌握进程同步和互斥机制,熟悉信号量的操作函数,利用信 号量实现对共享资源的控制。设计要求:编程模拟男女生洗澡问题。问题描述:假设某宿舍楼有一共用浴室,学校颁布规定:当有一个女生正在使用浴室,则其 他女生可以进入,但是男生不行,反之亦然。在每个浴室门上有一个滑动指示符号,表示当 前处于以下三种可能状态之一:1) 空(2)有女生 (3)有男生

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号