欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    作业调度算法先来先服务算法短作业算法Word下载.docx

    • 资源ID:22086448       资源大小:345.25KB        全文页数:23页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    作业调度算法先来先服务算法短作业算法Word下载.docx

    1、void HRRN();PNODE priorit(PNODE pHead);void do_work_1(PNODE pHead,int *w_finish_time,int i);int main() int choice; /设置选择数 showmenu(); /显示菜单 scanf(%d,&choice); while(choice != 0) /选择算法 switch(choice) case 1 : printf(您选择的是先来先服务算法:n); FCFS(); break; case 2 :您选择的是短作业优先算法: SJF(); case 3 :您选择的是高响应比优先调度算法n

    2、 HRRN(); default:请重新选择! printf(下面是菜单,请继续,或者按0退出 showmenu(); scanf( printf(感谢您使用本系统,再见! return 0;void FCFS() int j,k; int w_rel_time5; int w_finish_time5; float rel_time = 0; struct work temp; int i; struct work w5; srand(time(0); for(i=0;i5;i+) wi.id = rand()%10; wi.arrive_time = rand()%10; wi.work_

    3、time = rand()%10+1; for(j=0;jj+)第%d个作业的编号是:%dt,j+1,wj.id);第%d个作业到达时间:,j+1,wj.arrive_time);第%d个作业服务时间:,j+1,wj.work_time); for(j=1; for(k=0;k wk+1.arrive_time) temp = wk; wk = wk+1; wk+1 = temp; w_finish_time0 = w0.arrive_time + w0.work_time; for(j=0; if(w_finish_timej pNext = NULL; /定义该链表有头结点,且第一个节点初

    4、始化为空10; PNODE pNew = (PNODE)malloc(sizeof(NODE); if (NULL = pNew) exit(-1); pNew-s_work.id = rand()%100;s_work.arrive_time = rand()%10;s_work.work_time = rand()%10+1; pTail-pNext = pNew; pTail = pNew; PNODE p = pHead-pNext; /p指向第一个节点 while (NULL != p),j+1,p-s_work.id);s_work.arrive_time);s_work.work

    5、_time); p = p- j+; p = pHead- PNODE q = p; /p,q都指向第一个节点 p = p- while(p != NULL) if(p-s_work.arrive_time s_work.arrive_time) q = p; PNODE r = pHead- /r也指向第一个节点 int cnt = 0; /记录所有节点数据域中到达时间最短且相等的个数 while(r! if( r-s_work.arrive_time = q-s_work.arrive_time ) cnt+; r = r-= NULL) /在相等到达时间的作业中找服务时间最短的作业 if

    6、(cnt 1) if( p- if( p-s_work.work_time else p =NULL; /确定q所指作业最先到达且服务时间最短 w_finish_time0 = q-s_work.arrive_time + q-s_work.work_time; w_rel_time0 = w_finish_time0 - q-s_work.arrive_time;第1个系统执行的作业到达时间:,q-%d n,w_finish_time0);,w_rel_time0); p = pHead; /寻找q的前一个节点,方便删掉q节点 while( p-pNext != q ) p-pNext =

    7、q- free(q); q = NULL;9&!Is_empty(pHead); 现在系统还剩%d个作业!,cnt_work(pHead); q = do_work(pHead,w_finish_time,i); show(w_finish_time,i,q,w_rel_time); p = pHead; while( p- p = p- p- free(q); q = NULL; rel_time += w_rel_timej;,rel_time/10);bool Is_empty(PNODE pHead) /判断作业是否做完 PNODE p; int len = 0; len+; if(l

    8、en = 0) return true; /当没有作业时,返回为真 else return false;int cnt_work(PNODE pHead) /计算当前还剩多少作业 return len;PNODE do_work(PNODE pHead,int *w_finish_time,int i) PNODE p,q; /计数器清0,计算当前作业完成时,系统中有多少个作业已经到达= NULL) if( p-= w_finish_timei ) cnt +; q = p; /q指向当前到达时间小于刚刚完成的作业,但不一定是服务时间最短的(如果有的话)系统中有%d个作业在当前作业完成时已经到

    9、达!,cnt); if(cnt1) /执行此次判断后,q现在指向所有条件都满足的作业(如果有的话) q = p; p = p- else else /当前作业完成时,没有作业到达的情况 /用q来接收最先到达的,用p来遍历 while( p != NULL )s_work.arrive_time w_finish_timei+1 = w_finish_timei + q- return q;void show(int *w_finish_time,int i,PNODE q,int *w_rel_time) w_rel_timei+1 = w_finish_timei+1 - q-,i+2,q-

    10、%dn,w_finish_timei+1);,w_rel_timei+1);void showmenu()*n请选择你要执行的命令: n1:先来先服务算法n2:短作业优先算法n3: 高响应比优先算法n0: 退出菜单nvoid HRRN() /计算优先权i+) /定义了十个进程 /已经找到并执行第一个进程,执行完之后又将其删除了 do_work_1(pHead,w_finish_time,i); q = priorit(pHead);void do_work_1(PNODE pHead,int *w_finish_time,int i) /q指向当前到达时间小于刚刚完成的作业,但有可能有另外几个进程也已经到达了,所以要进行下面的判断pNe


    注意事项

    本文(作业调度算法先来先服务算法短作业算法Word下载.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开