下载此文档

操作系统进程调度实验报告.docx


文档分类:IT计算机 | 页数:约21页 举报非法文档有奖
1/21
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/21 下载此文档
文档列表 文档介绍
实验进度调换实验
专业:XXXXX
学号:XXXXX
姓名:XXX实验日期:2
intm_ProcessCount;//进度数
floatm_RunTime//运转时间
intmtagIsRun;//可否在运转标记。表示正在运转,表示没有
floatm_TimeSlice;//时间片大小
intmTimeSliceCount;//指时间片轮转中一次分到的时间片个数

charm_SchedulerAlgorithm;//

调换算法

voidPCBInput( );//输入进度信息
voidPCBSort( );//对进度控制块依据优先级排序(采纳冒泡排序)
voidProcessSelect( );//若当前就绪队列不为空则依据选择的调换算法开始调换。不然,系统时间

加.

以等待新
的进度到来
voidPCBDisplay( );//打印当前情况下。就绪队列、达成队列、运转中的进度信息
voidProcessRun( );//进度运转一次。运转时间加个时间片。并判断进度可否达到达成条件。若是则
ProcessStatus='f'.不然为'w';
voidProcessQueueProcess( );//查察当前时间下,有无进度加入。如有则把该进度调入就绪队列
voidProcessDispatch( );//进度分派,进度执行达成后决定进度该进入哪个队列(就绪、达成
voidTimePast( ){m_RunTime+=m_TimeSlice;ProcessQueueProcess( );}//当前系统时间加个时间

)
片,并检
查可否有新的进度加入
voidSchedulerStatistics( );//调换统计,计算周转时间等
voidFCFS);//先来先服务
voidSJF( );//最短进度优先调换
voidRR);//简单时间片轮转
voidPR);//最高优先数优先
四、实验代码
#include<cstdlib>
#include<iostream>
#include<iomanip>
usingnamespacestd;
structfcfs(〃先来先服务算法从这里开始
charname[10];
floatarrivetime;
floatservicetime;
floatstarttime;
floatfinishtime;
floatzztime;
floatdqzztime;
};〃定义一个结构体,里面包括的有一个进度相关的信息
fcfsa[100];
voidinput(fcfs*p,intN)
(
inti;
cout<<endl;
printf(-请您输入进度的名字到达时间服务
时间:(比方:a0100)\n\n");
for(i=0;i<=N-1;i++)
(
printf(-请您输入进度%d的信息:\t",i+1);
scanf("\t\t\t%s%f%f",&p[i].name,&p[i].arrivetime,&p[i].servicetime);
}
}
voidPrint(fcfs*p,floatarrivetime,floatservicetime,floatstarttime,float
finishtime,floatzztime,floatdqzztime,intN)
(
intk;
printf(-\n\n调用先来先服务算法今后进度运转的序次是:");printf("%s",p[0].name);
for(k=1;k<N;k++)
(
printf("-->%s",p[k].na

操作系统进程调度实验报告 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数21
  • 收藏数0 收藏
  • 顶次数0
  • 上传人青青松松
  • 文件大小138 KB
  • 时间2022-08-01