操作系统课程设计题目
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计(100分)
1.分析设计内容,给出解决方案(要说明设计实现的原理,采用的数据结构)。20分
2.画出程序的基本结构框图和流程图。10分
3.对程序的每一部分要有详细的设计分析说明。10分
4.源代码格式规范,符合软件模块化设计思想,数据结构采用得当。20分
5.设计合适的测试用例,对得到的运行结果要有分析。10分
6.设计中遇到的问题,设计的心得体会。10分
7.按期提交完整的程序代码、可执行程序和课程设计报告。10分
8. 设计有新意,功能模块完善,有操作界面,运行结果清晰 10分
l 模拟页式存储管理方案中内存空间的管理和分配。1063(05级)
l :仿真模拟银行家算法对死锁的避免 0606303030 (专升本)
详细要求:采用银行家算法,编写和调试一个仿真模拟银行家算法避免死锁的程序。设计n 个并发进程共享3类不同的系统资源,即1类资源、2类资源、3类资源。进程可以动态的申请资源,系统按各个进程的申请动态的分配资源。可以添加进程,进程动态的申请资源,系统进行安全性检查,判断是否可以为申请资源的进程分配资源。如果能够找到安全序列,则系统为进程分配资源,否则原先的试探分配资源作废。
l 用多线程同步方法解决生成者与消费者问题 0606303007 (06专升本)
设计目的:通告研究Linux的进程机制和信号量实现生产者和消费者问题的并发控制。
说明:有界缓冲区内设置有20个存储单元,放入/取出的数据项设定为1-20这20个整型数。设计要求:(1)每个生成者/消费者对有界缓冲区进行操作后,即时显示有界缓冲区的全部内容,当前指针位置和生成者/消费者线程的内容。
(2)生产者和消费者各有两个以上。
(3)多个生产者或多个消费者之间须有共享对缓冲区进行操纵的函数代码。
l 用JAVA模拟仿真“生产者-消费者”问题的解决过程及方法。0606303021
要求:
(1)多个缓冲区不是环形循环的,也不要求按顺序访问。生产者可以把产品放到目前某一个空缓冲区中。
(2)消费者只消费指定生产者的产品。
(3)在测试用例文件中指定了所有的生产和消费的需求,只有当共享缓冲区的数据满足了所有关于它的消费需求后,此共享缓冲区才可以作为空闲空间允许新的生产者使用。
(4)在为生产者分配缓冲区时各生产者间必须互斥,此后各个生产者的具体生产活动可以并发。而消费者之间只有在对同一产品进行消费时才需要互斥,同时它们在消费过程结束时需要判断该消费对象是否已经消费完毕并清除该产品。
l 仿真进程管理程序,应考虑,进程状态之间的转换、同步机制与进程通讯1001
l 仿真连续分配存储管理系统,至少包括以下功能:并发分配与回收、查询、多种分配算法的分析比较、拼接和搬家等功能1002
l Linux下进程调度算法模拟实现 1003
设计要求:
1)进程调度算法包括:时间片轮转法,短作业优先算法,动态优先级算法.
2)可选择进程数量
3)本程序包括三种算法,用C语言实现,执行时在主界面选择算法(可用函数实现),进入子页面后输入进程数,(运行时间,优先数由随机函数产生),执行,显示结果.
l 页面置换算法模拟 1004
设计要求
1.实现OPT,LRU,FIFO三种算法并进行对比分析.
2.要求界面简单,易懂,关键代码部分要注释.
3.编程语言可以采用自己任意精通的语言
l 可视化仿真多台电梯的并行调度程序 1006
l 仿真各种磁盘调度算法,并进行性能分析 1007
课程设计内容
设计四个算法,分别是先来先服务算法,最短寻道时间优先算法,扫描(SCAN)算法,循环扫描(CSCAN)算法.由人工输入当前的磁道数和要访问的磁道.
l 模拟仿真“生产者-消费者”问题的解决过程及方法。1005
生产消费者问题是操作系统设计中经常遇到的问题。多个生产者和消费者线程访问在共享内存中的环形缓冲。生产者生产产品并将它放入环形缓冲,同时消费者从缓冲中取出产品并消费。当缓冲区满时生产者阻塞并且当缓冲区有空时生产者又重新工作。类似的,消费者当缓冲区空时阻塞并且当缓冲区有产品时又重新工作。显然,生产者和消费者需要一种同步机制以协调它们的工作。
l Java仿真各种磁盘调度算法,并进行性能分析 1008
课程设计内容
设计四个算法,分别是先来先服务算法,最短寻道时间优先算法,扫描(SCAN)算法,循环扫描(CSCAN)算法.由人工输入当前的磁道数和要访问的磁道.
l 页式存储管理方案中内存空间的管理和分配。1010
(包括位示图法、空闲表法)内存被划分成2048块(页)。用32位字长的字存放位示图,为0的位表示该块尚未分配,为1的位表示该块已分配。输出位示图和页表。
l 进程调度算法 1011
目的:主要通过优先权法与轮转调度算法的模拟加深对进程概念和进程调度过程的理解,掌握进程状态之间的切换,同时掌握进程调度算法的实现方法和技巧。对进程调度过程中的状态变化,调度过程进行显示。
l 仿真模拟操作系统中的“哲学家就餐问题” 1012
l C++实现银行家算法 1013
l linux 下多进程模拟哲学家就餐问题 1014
题目要求:
五个哲学家围坐在一张圆桌周围,每个哲学家面前都有一盘通心粉。由于通心粉很滑,所以需要两把叉子才能夹住。
相邻两个盘子之间放有一把叉子。哲学家的生活中有两种交替的活动:吃饭和思考(其他活动对哲学家来说都无关紧要)。
当一个哲学家感到饿了时,他就试图分两次去取左边和右边的叉子,每次拿一把,但不分次序。如果成功得到了两把叉子,
就开始吃饭,吃完后放下叉子继续思考。请为每一个哲学家写一段描述其行为的程序,而且不会死锁。
l 仿真各种磁盘调度算法,并进行性能分析 1015
设计要求:设计四个算法,分别是先来先服务算法,最短寻道时间优先算法,扫描(SCAN)算法,循环扫描(CSCAN)算法.由人工输入当前的磁道数和要访问的磁道.VC模拟实现过程。
l 仿真各种磁盘调度算法,并进行性能分析 1016
设计要求:设计四个算法,分别是先来先服务算法,最短寻道时间优先算法,扫描(SCAN)算法,循环扫描(CSCAN)算法.由人工输入当前的磁道数和要访问的磁道.java模拟实现过程。
l 可视化进程调度过程的仿真模拟 1017
内容:采用模拟与仿真思路,以定时器驱动机制为模式,用动画方式,以进程调度为中心,实现了对选用调度算法的运行过程的模拟与仿真,同时也实现了进程创建、调度、执行、阻塞和终止过程的可视化.系统能够自动完成进程演进过程的数据记录和分析,并对算法的性能进行初步评测.这对深入理解操作系统核心层,透析进程原理,发现和研究新的调度算法具有重要意义
论文题1:论软硬件之间的异构性促进软件技术的发展。
论文题2:论软件生产方式的变革促进软件技术的发展
论文题3:个性化服务以满足不同个体的需求
论文题4:随时随地计算实现多种访问方式
第二部分 Internet平台对OS的要求
论文题5:自主配置和自适应协调(Self-configuration and Adaptive Coordination)
论文题6:支持跨网络的互连、互通和协作
论文题7:管理和协调系统资源的共享
论文题8:支持功能、性能和可信性指标动态演化
论文题9:浅谈客户端不装操作系统的优劣
第三部分 The Operating System Zoo
论文题10:Mainframe operating systems
论文题11:Server operating systems
论文题12:Multiprocessor operating systems
论文题13:Personal computer operating systems
论文题14:Real-time operating systems
论文题15:Embedded operating systems
论文题16:Smart card operating systems
要从这些操作系统适用的应用环境,可行性,存在的问题等方面论述。
第四部分操作系统结构
论文题17:单体系统结构的分析与研究