FCFS和SJF进程调度调度算法定义.pdfVIP

  • 11
  • 0
  • 约5.89千字
  • 约 6页
  • 2021-12-10 发布于福建
  • 举报
操作系统实验报告一 班级: 08 网络工程 一、 实验目的 通过这次实验, 加深对进程概念的理解, 进一步掌握进程状态的转变、 进程调度 的策略及对系统性能的评价方法。 二、 实验内容 设计程序模拟进程的先来先服务 FCFS 和短作业优先 SJF 调度过程。假设有 n 个 进程分别在 T , … ,T 时刻到达系统,它们需要的服务时间分别为 S , … ,S。分 1 n 1 n 别采用先来先服务 FCFS 和短作业优先 SJF 进程调度算法进行调度, 计算每个进 程的完成时间、 周转时间和带权周转时间, 并且统计 n 个进程的平均周转时间和 平均带权周转时间。 三、 要求 程序要求: , … ,T和服务时间 S , … ,S;选择 1)进程个数 n;每个进程的到达时间 T1 n 1 n 算法 1-FCFS,2-SJF。 2 )要求采用先来先服务 FCFS 和短作业优先 SJF 分别调度进程运行,计算 每个进程的周转时间和带权周转时间, 并且计算所有进程的平均周转时间和带权 平均周转时间; 3 )输出:要求模拟整个调度过程,输出每个时刻的进程运行状态,如“时 刻 3:进程 B 开始运行”等等; 4 )输出:要求输出计算出来的每个进程的周转时间、带权周转时间、所有 进程的平均周转时间以及带权平均周转时间。 实验要求 1)上机前认真复习 FCFS 和 SJF 进程调度调度算法,熟悉进程调度的执行 过程; 2 )上机时独立编程、调试程序; 3 )根据具体实验要求,完成好实验报告(包括实验的目的、内容、要求、 源程序、实例运行结果截图、发现的问题以及解决方法) 。 四、 源程序 #includeiostream #includefstream #includeiomanip using namespace std; void FCFS(); void SJF(); static const int MaxNum=100; int ArrivalTime[MaxNum];// 到达时间 int ServiceTime[MaxNum];// 服务时间 int FinishTime[MaxNum];// 完成时间 int WholeTime[MaxNum];// 周转时间 double WeightWholeTime[MaxNum];// 带权周转时间 double AverageWT_FCFS,AverageWT_SJF; //平均周转时间 double AverageWWT_FCFS,AverageWWT_SJF;//平均带权周转时间 int ServiceTime2[MaxNum];// 用于计算 SJF 的量 int Data=0; int PNum=0; int NowTime=0; double x=0,y=0; int i; void main() { int a; cout请输入进程个数: ; cinPNum; for(i=0;iPNum;i++) { cout请输入第 i+1 个进程的到达时间: endl; cinData; ArrivalTime[i]=Data;

文档评论(0)

1亿VIP精品文档

相关文档