书签 分享 收藏 举报 版权申诉 / 16
上传文档赚钱

类型试验一进程调度试验课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3390629
  • 上传时间:2022-08-26
  • 格式:PPT
  • 页数:16
  • 大小:343.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《试验一进程调度试验课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    试验 进程 调度 课件
    资源描述:

    1、实验一 处理机调度一、实验目的和要求一、实验目的和要求n实验目的:实验目的:加深对进程、处理机调度的概念及进程调度各加深对进程、处理机调度的概念及进程调度各种算法(先来先服务、短作业优先、高响应比种算法(先来先服务、短作业优先、高响应比优先)的理解。优先)的理解。n实验要求:实验要求:要求用语言设计一个模拟单处理机系统下各要求用语言设计一个模拟单处理机系统下各种调度算法的思想。种调度算法的思想。要求各种算法均采用非抢占式的调度方式。要求各种算法均采用非抢占式的调度方式。二、实验主要内容二、实验主要内容n设计一个按先来先服务调度、按短作业优先调设计一个按先来先服务调度、按短作业优先调度和按高响应

    2、比优先调度的算法要求:度和按高响应比优先调度的算法要求:输出进程的执行顺序输出进程的执行顺序输出算法的平均周转时间和平均带权周转输出算法的平均周转时间和平均带权周转时间时间三、实验原理三、实验原理(一)n先来先服务调度算法的基本思想是:每次调度先来先服务调度算法的基本思想是:每次调度是从就绪队列中,选择一个最先进入该队列的是从就绪队列中,选择一个最先进入该队列的进程,把处理机分配给它,使之投入运行。该进程,把处理机分配给它,使之投入运行。该进程一直运行到完成或发生某事件而阻塞后,进程一直运行到完成或发生某事件而阻塞后,才放弃处理机。才放弃处理机。三、实验原理三、实验原理(二)n(非抢占)短作业

    3、优先调度算法的基本思想是:(非抢占)短作业优先调度算法的基本思想是:从就绪队列中选出一估计运行时间最短的进程,从就绪队列中选出一估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。再重新调度。三、实验原理三、实验原理(三)n(非抢占)高响应比优先调度算法的基本思想(非抢占)高响应比优先调度算法的基本思想是:从就绪队列中选出一个响应比最大的进程,是:从就绪队列中选出一个响应比最大的进程,将处理机分配给它,使它立即执行并一直执行将处理机分配给它,使它立

    4、即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。再重新调度。n响应比响应比=(等待时间(等待时间+服务时间)服务时间)/服务时间服务时间四、提示四、提示n进程或作业的描述:进程或作业的描述:用一个结构体变量来描述与进程或作业相关的信息,相当用一个结构体变量来描述与进程或作业相关的信息,相当于进程的于进程的 PCB或作业的或作业的JCB。相关信息主要有:进程名、到达时间、估计运行时间、开相关信息主要有:进程名、到达时间、估计运行时间、开始时间、完成时间、周转时间和带权周转时间和进程状态始时间、完成时间、周转时间和带权周转时间和进程状

    5、态等。等。n到达时间和运行时间:可由设计者任意指定一个时间值。到达时间和运行时间:可由设计者任意指定一个时间值。n由于本实验只是模拟实验,所以对被选中的进程并不实际由于本实验只是模拟实验,所以对被选中的进程并不实际启动运行,而只是执行显示打印语句。启动运行,而只是执行显示打印语句。例如:下面是一个作业的数据结构struct ZuoYe float arriveTime;float runTime;float finishTime;float totalTime;float weightTotalTime;char*name;进程名到达时间运行时间开始时间完成时间周转时间P10303P21538

    6、P322810P4331013先来先服务执行顺序:先来先服务执行顺序:P1、P2、P3、P4 第一进程:第一进程:作业的开始时间作业的开始时间=到达时间到达时间 作业的完成时间作业的完成时间=到达时间到达时间+运行时间运行时间 其余进程:其余进程:作业的开始时间作业的开始时间=上一个的完成时间上一个的完成时间 作业的完成时间作业的完成时间=上一个的完成时间上一个的完成时间+运行时间运行时间进程名到达时间运行时间开始时间完成时间周转时间P10303P215P322P433短作业优先执行顺序:短作业优先执行顺序:P1、P3、P4、P2如何排队?如何排队?当前作业的完成时间与后面所有作业的到达时间相

    7、比,如果大于,当前作业的完成时间与后面所有作业的到达时间相比,如果大于,说明这些作业到达,则应求出这些作业中用时最短的作业作为当前作业说明这些作业到达,则应求出这些作业中用时最短的作业作为当前作业进程名到达时间运行时间开始时间完成时间周转时间P10303P32235P43358P215813排队算法步骤:排队算法步骤:1、按到达时间排序、按到达时间排序2、求当前进程完成后到达的进程数、求当前进程完成后到达的进程数M3、在当前进程的下一进程数、在当前进程的下一进程数M个进程中,找出到达时间最短的个进程中,找出到达时间最短的进程,与当前进程的下一进程进行交换。进程,与当前进程的下一进程进行交换。4

    8、、重复、重复2,3FCFS主要代码主要代码:struct ZuoYe char*name;float arriveTime;float runTime;float finishTime;float totalTime;float weightTotalTime;void main()ZuoYe a3;float totalTimeSum=0,weightTotalTimeSum=0;for(int i=0;i=2;i+)char name6;cout作业名作业名:name;ai.name=new char(strlen(name);strcpy(ai.name,name);cout到达时间到达

    9、时间:ai.arriveTime;cout运行时间运行时间:ai.runTime;for(i=0;i=2;i+)for(int j=0;j=i;j+)if(ai.arriveTimeaj.arriveTime)ZuoYe temp;temp=ai;ai=aj;aj=temp;for(int k=0;k=2;k+)if(k=0)ak.finishTime=ak.arriveTime+ak.runTime;else ak.finishTime=ak-1.finishTime+ak.runTime;ak.totalTime=ak.finishTime-ak.arriveTime;totalTimeS

    10、um=totalTimeSum+ak.totalTime;ak.weightTotalTime=ak.totalTime/ak.runTime;weightTotalTimeSum=weightTotalTimeSum+ak.weightTotalTime;/SJF算法中如何挑选短作业算法中如何挑选短作业(确定执行顺序确定执行顺序)算法算法)int m=0;for(i=k+1;i=2;i+)if(ai.arriveTime=ak.finishTime)m+;float min=ak+1.runTime;int follow=k+1;for(int j=k+1;j=m+k;j+)if(aj.ru

    11、nTimemin )min=aj.runTime;follow=j;ZuoYe temp;temp=ak+1;ak+1=afollow;afollow=temp;/高响应比优先调度算法中如何挑选作业(高响应比优先调度算法中如何挑选作业(确定执行顺序)确定执行顺序)算法算法 int m=0;for(i=k+1;i=2;i+)if(ai.arriveTime=ak.finishTime)m+;float max=(pk.finishTime-pk+1.arriveTime+pk+1.runTime)/pk+1.runTime;int follow=k+1;for(int j=k+1;kk+m;j+

    12、)if(max(pk.finishTime-pj.arriveTime+pj.runTime)/pj.runTime)max=(pk.finishTime-pj.arriveTime+pj.runTime)/pj.runTime;follow=j;ZuoYe temp;temp=ak+1;ak+1=afollow;afollow=temp;五、实验报告要求五、实验报告要求n给出程序中使用的数据结构。给出程序中使用的数据结构。n给出源程序,源程序中要附有详细的注释。给出源程序,源程序中要附有详细的注释。n给出程序运行时的结果。给出程序运行时的结果。n总结收获体会及对该题解的改进意见和见解。总结收获体会及对该题解的改进意见和见解。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:试验一进程调度试验课件.ppt
    链接地址:https://www.163wenku.com/p-3390629.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库