OS-课外实验-进程调度算法模拟.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OS-课外实验-进程调度算法模拟

课外实验: 进程调度算法模拟 【实验目的】 1、熟练掌握各种进程调度的算法,仿真模拟进程调度环境 2 、熟悉优选权法、时间片轮转法和多级反馈队列算法的具体实现 3、强化数据结构知识和编程能力 4 、撰写实验报告和实验汇报ppt 【基础性实验内容】 1、设计有n 个进程的并发程序,其中每个进程控制块PCB 至少包含: 进程名(ID ),进程优先数(Priority ),进程状态标志(State ),进 程进入CPU 的时间(In ),程序需要运行的时间(Alltime )、队列 指针等信息。 例如:进程PCB 信息:序号、优先数、到达时间、运行需要时间等。 ID Priority In Alltime 1 2 8:11 120 2 3 9:00 50 3 4 9:20 30 2 、用随机数的方法动态产生进程PCB 中的优先级和运行时间。当前 机内时间为其进入时间,分别采用以下算法实现模拟调度。3 3、调度算法 (1)静态优先级的立即抢占式调度算法,进一步将静态优先级调度 改为动态优先级调度,优先级高低自己设定。 (2 )时间片轮转调度算法,进程占用CPU 的时间片由每个进程的优 先数计算获得。(约定:每个优先数对应10 分钟,进行完一次调度优 先数减1) 4 、要求运行结果能够显示各进程被调度的序列及每个进程获得CPU 的调度时间、计算周转时间以及CPU 利用率等信息。并将调度结果 保存为文本文件(文件名:姓名_学号_Result.txt )。 5、分组实验和撰写实验报告,每组最多2 人,选一位组长。开发语 言不限。 【提高性实验内容】 1、在本实验基础上,模拟进程阻塞或挂起状态。建议PCB 中增加对 对外部设备访问编号和访问时间项。 2 、模拟多级反馈队列调度算法。 3、自己设计模拟场景和调度算法,尽量直观地体现操作系统原理。 【提交作业要求】 1、 以“组长姓名_学号”创建文件夹,进一步创建code 和doc 子 文件夹。实践报告、汇报幻灯放在doc 子目录下;源程序、可 执行程序放在 code 子目录下;可执行程序放在“组长姓名_学 号”目录下。 2 、每小组制作汇报幻灯,可按实验报告内容进行总结,多图少字, 形象生动,如能将实验程序制作为自动演示程序则更好。 3、实验截止时间:11 月 20 日。实验报告格式参见《计算机操作系 统实验报告模板》。 4 、实验成果打包后发到:2009114002@ 。希望获得优秀的同 学,实验成果同时发到:nanjing6666@ 【关键点提示】 1、PCB 定义和创建:PCB 定义可参考参照Linux 的 task_struct 数据 结构,PCB 创建算法可参考教材中的步骤。 2 、并发环境模拟: 实现进程调度时进程可随时到达的情况。 方法1:系统时钟+外部文件法 将未来并发进程预先保存到jc.txt 文件中,内容如下表: ID Priority In Alltime 1 2 8:11 120 2 3 9:00 50 3 4 9:20 30 将文件一次性读入数组 (外部进程)中,通过模拟系统时钟检查外部 进程的到达,同时运行调度算法。 方法2 :计时器+随机数法 用随机数法定时产生新进程,采用计时器不断查询是否有新进程 到达,同时运行调度算法。 方法3 :线程法 初始化时启动2 个线程,分别完成查询是否有新进程到达以及对 就绪队列中的进程调度。 3、调度算法和实验结果:调度算法等编写为通用的独立模块或类, 重视模拟结果的数据

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档