- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计题目与要求
一、课程设计要求:
1.根据每道题的人数选定题目。(如果自己有好的想法可以与我联系,可以做其他的题目)
2.分析设计要求,给出解决方案,建立必要的数据结构,然后设计总体流程(包括界面)、详细设计必要的算法,并最终显示结果。基于WINDOWS或LINUX操作系统都可以,用何种编程语言都有可以。
3.提交设计报告,包括设计要求、设计思想流程、设计所涉及的主要数据结构、程序清单、运行结果、设计心得、参考资料等。
4.严禁抄袭,复制设计内容,查出后相关同学设计成绩以零分处理。
5.所提交源程序应是能够运行通过的完整程序。
6.课程设计参考评分标准:
设计思想说明数据结构的说明各模块的算法流程图程序清单:注意加注释(包含关键字、方法、变量等),在每个模块前加注释;体会,建议Void main(int argc,char *argv[]),可以获取命令行参数。
通过VC++“工程/设置”的C/C++属性页设置应用程序为“MTD”多线程。
利用win32 API CreateThread()来生成线程。
睡眠理发师问题
目的:了解信号量机制,了解并掌握进程同步和互斥机制,熟悉信号量的操作函数,利用信号量实现对共享资源的控制。
设计要求:
(1)编写程序实现理发师与顾客进程的同步。
问题描述:这是一种经典的IPC问题,理发店有一位理发师,一把理发椅和n把用来等候理发的椅子。如果没有顾客,则理发师在理发椅上睡觉,顾客理来时,如理发师闲则理发,否则如有空椅则坐等,没有空椅则离开,编写程序实现理发师和顾客程序,实现进程控制,要求不能出现竞争。
(2)将(1)题中问题修改为有两位理发师,设计程序实现同步控制。
问题提示:可以用一个变量waitting来记录等候理发的顾客数,另使用三个信号量:用来记录等候理发的顾客数customers;用来记录理发师是否空闲的信号量barbers,一个用于互斥访问waitting变量的mutex.。
进程调度模拟程序
目的:深入掌握进程调度的概念原理和实现方法。
设计要求:编写一个进程调度程序,允许多个进程并行执行。
进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)、先来先服务算法、按时间片轮转调度算法,最终总结该算法的优缺点,写出设计体会。
每个进程有一个进程控制块(PCB)表示,进程控制块可以包含如下信息:
进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。
进程的优先数及需要的运行时间可以事先人为指定(也可以由随机数产生)。进程的到达时间为输入进程的时间。进程的运行时间以时间片为单位进行计算。每个进程的状态可以是就绪W(wait)、运行R(run)或完成F(finish)三种状态之一。
进程调度模拟程序
目的:深入掌握进程调度的概念原理和实现方法。
设计要求:编写一个进程调度程序,允许多个进程并行执行。
进程调度算法:采用最高优先数优先与按时间片轮转调度结合算法,最终总结该算法的优缺点,写出设计体会。
如果运行下个时间片后,进程的已占用CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进行已占用CPU时间还未达到所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后把它插入就绪队列等待CPU。每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的PCB,以便进行检查。重复以上过程,直到所有进程都完成为止。
读者与写者问题(同步问题)
目的:了解进程同步的概念,理解信号量机制的原理,掌握运用信号量解决进程同步问题的方法,进而学会运用进程的同步与互斥。
设计要求:编程模拟读者与写者问题,要求显示结果。
问题描述:
(1)多个进程共享一个文件,其中只读文件的称之为读者,其余只写文件的称为写者。读者可以同时读,但是写者只能独立写。
(2)对(1)修改,使得它对写者优先,即一旦有写者到,后续的读者都必须等待,而无论是否有读者在读文件。
模拟文件管理系统
目的:深入了解文件管理系统,初步掌握文件管理系统的实现方法。
设计要求:编写一程序,模拟一个简单的文件管理系统。树型结构,目录下可以是目录,也可以是文件。
在此文件管理系统,可实现的操作有:
改变目录:格式:cd 目录名
显示目录:格式:dir[目录名]
创建目录:格式:md 目录名
删除目录:格式:rd目录名
新建文件:格式:edit文件名
删除文件:格式:del文件名
退出文件系统:exit
实现参考:
文件系统采用二叉树型存储结构,结点结构如下:
Struct FileNode
{
Char filename[FILENAME_LEN];//文件名/目录名
Int isdir ;//目录、文件的识别标志
Int i_n
您可能关注的文档
最近下载
- 比亚迪-元EV535-产品使用说明书-智联领潮型-BYD7003BEV4-元ev535201903.pdf
- 妇科恶性肿瘤的手术治疗与随访指导.pptx
- ZY-SH-4食品安全管理体系审核指南.docx
- 婴幼儿大动作发展剖析课件.ppt VIP
- 食品安全管理体系审核与认证要求指引.pptx
- 婴幼儿动作发展的早期促进措施.pptx VIP
- 浅析影响DA42飞机最小控制速度的因素及解决办.docx
- 2024-2025学年 八年级上册物理(2024年新教材)教材课后习题-练习与应用(原动手动脑学物理).docx
- 《0—3岁儿童观察与评估(第一版)》0—3岁儿童动作发展的观察与评估.pptx VIP
- 肾内科提高临床路径入径率PDCA.pptx
文档评论(0)