网站大量收购闲置独家精品文档,联系QQ:2885784924

2025年操作系统进程调度策略性能分析报告.docxVIP

2025年操作系统进程调度策略性能分析报告.docx

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

操作系统试验汇报(二)

试验题目:进程调度算法试验环境:C++

试验目的:编程模拟实现几种常见的进程调度算法,通过对几组进程分别使用不一样的调度算法,计算进程的平均周转时间和平均带权周转时间,比较多种算法的性能优劣。

试验内容:编程实现如下算法:1.先来先服务算法;2.短进程优先算法;

3.时间片轮转调度算法。

设计分析:

程序流程图:

1.先来先服务算法

开始

初始化PCB,输入进程信息

各进程按先来先到的次序进入就绪队列

结束

就绪队列?

N

运行

运行进程所需CPU时间

取消该进程

2.短进程优先算法

开始

开始

创建数组并初始化

将数组中的进程

按到达时间的顺序排序

对获取的所有进程

按短作业优先进行排序

得到进程的执行序列

依次执行各个进程

所有进程执行完成

结束

3.时间片轮转调度算法开始

初始化PCB.输入进程信息

各进程按先来先服排列

Y

就绪队列空?

N

就队列首进程投入运行

时间片到,运行进程已占用CPU时间+1

运行进程已占用cPU时间已达到所需的运行时间

未到达将该进程调到队尾

结束

已到达

进程完成

撤消该进程

试验代码:

1.先来先服务算法

rincludeiostream.h

#definen20typedefstruct{

intid;;进程名

intatime;//进程抵达时间

intruntime;//进程运行时间

}fcs;

voidmain()

intamount,i,j.diao,huan;fcsf[n];

cout请输入进程个数:endl;cinamount;

for(i=0;iamount;i++)

cout请输入进程名,进程抵达时间,进程运行时间:endl;cinf].id;

cin[].atime;

cinf[i].runtime;

for(i=0;iamount;i++)//按进程抵达时间的先后排序

//假如两个进程同步抵达,按在屏幕先输入的先运行for(j=0;jamount-i-1;j++)

{if[f0).atimefi+1].atime){diao=fJ].atime;

f0.atime=fi+1].atime;flj+1].atime=diao;huan=f[].id;

f0].id=fj+1].id; fli+1].id=huan;}

}

for(i=0;iamount;i++)

cout进程:f].id从fl].atime开始,在

f[j].atime+f].runtime之前结束。endl;[i+1].atime=f].atime+f].runtime;

2.短进程优先算法

#includestdio.h#definen5

#definenum5

#definemax65535typedefstructpro{intPRO_ID;

intarrive_time;intsum_time;

intflag;

}Pro;//整数排序

intbubble(inttemp[l){

intij,tem=0;

for(i=1;inum;i++)

{intlastX=1;

for(j=0;jnum-i:j++){if(tempi)templi+1)){tem=templ];

tempJ]=temp[j+1];temp[i+1]=tem;

lastX=0;

}}

if(lastX==1)break;}

returntemp[0];}

//进程排序

Probubble(PropD){

intij;

Protemp={0};

Pros[num];

for(i=0;inum;i++)

{s[J]=p[J;}

for(i=1;inum;i++){

intlastX=1;

for(j=0;jnum-i:j++)

if(s[J].sum_times[j+1].sum_time){

temp=s[J];

s[]=s[i+1];

s[j+1]=temp;lastX=0;

}}

if(lastX==1)break;}

returns[0];}

voidSPF(intp)

if(n0){

intij,k,l,tc=0;

Proseq[n];

Protemp_seq[n];

printf(短进程优先调度算法SPF\n);

printf(请依次输入5个进程的进程号、抵达时间和执行时间\n);printf(组员变量用逗号隔开:进程间用回车隔开\n);

for(i=0;i

文档评论(0)

乐毅淘文斋 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8121131046000040

1亿VIP精品文档

相关文档