实验二(作业调度)FCFS

#include<stdio.h>
#define N 24

typedef struct node
{
char name[10]; /*作业名*/
int proc; //进程优先数*/ 
int ArriTime;//到达时间
int StartTime;//开始时间
int NeedTime; /*进程所需时间*/ 
int RunTime; /*运行时间*/
int EndTime;//结束时间
int ZzTime;//周转时间
float Zznum;
char state; //进程的状态*/

/*struct node *next; 链指针*/
/*int round; 进程时间轮转时间片*/ 
/*int count; 计数器*/
}JCB;

int main(void){
JCB job[N];
int n;
void input();
input(job,&n);
void FCFS();
FCFS(n);

}

void input(JCB job[],int n){

int tot; //作业个数
int i;

printf("请输入作业个数:[2-24]\n");
scanf("%d",&tot);
for(i=0;i<tot;i++){
job[i].proc=i;
printf("输入第[i+1]个作业的作业名,到达时间,所需时间\n");
scanf("%s",&job[i].name);
scanf("%d",&job[i].ArriTime);
scanf("%d",&job[i].NeedTime);
//scanf("%d",&job[i].EndTime);
//scanf("%d",&job[i].ZzTime);
//scanf("%4f",&job[i].Zznum);
}
printf("作业名 到达时间 所需时间\n");
for(i=0;i<tot;i++)
{
printf("%s ",job[i].name);
printf("%5d ",job[i].ArriTime);
printf("%5d ",job[i].NeedTime);
//printf("%5d ",job[i].EndTime);
// printf("%5d ",job[i].ZzTime);
//printf("%2.1f ",job[i].Zznum);
}

}

void FCFS(int num) //先来先服务算法计算 

int i,j; 
for(i=0;i<num;i++)//顺序执行进入队列的作业 
{ if(i==0) //第一个进程 

job[i].RunTime=job[i].NeedTime; 
job[i].EndTime=job[i].StartTime+job[i].RunTime; 

else 

if(job[i].StartTime>job[i-1].EndTime)//如果当前有作业在执行 

job[i].RunTime=job[i].NeedTime; 
job[i].EndTimejob[i].StartTime+job[i].RunTime; 

else 

job[i].RunTime=job[i].NeedTime+job[i-1].EndTime-job[i].StartTime;
job[i].EndTime=job[i].StartTime+jobc[i].RunTime; 

}

时间: 2024-08-25 17:50:50

实验二(作业调度)FCFS的相关文章

实验二 作业调度模拟程序

实验二 作业调度模拟程序 一.        实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 二.        实验内容和要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素.      作业调度算法: 1)      采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间

实验二作业调度

实验二作业调度模拟程序 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素. 作业调度算法: 1)       采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间最长的作业. 2)      

0421实验二 作业调度模拟程序

实验二作业调度模拟程序 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素.      作业调度算法: 1)        采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间最长的作业. 2)

1111《操作系统教程》实验二 作业调度模拟程序

实验二 作业调度模拟程序 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素. 作业调度算法: 1) 采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间最长的作业. 2) 短作业优先 (SJF

操作系统-实验二作业调度模拟程序

实验二作业调度模拟程序 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素.      作业调度算法: 1)        采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间最长的作业. 2)

【操作系统】实验二 作业调度模拟程序

实验二作业调度模拟程序 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素.      作业调度算法: 1)        采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间最长的作业. 2)

实验二作业调度模拟程序实验报告

实验二作业调度模拟程序 网络工程专业   姓名:蔡利聪  学号:201306114117 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素. 作业调度算法: 1)       采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进

1111实验二 作业调度模拟实验

实验二.作业调度模拟实验 物联网工程 张怡 201306104149 一.实验目的  (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 二.实验内容和要求 1.至少用三种调度算法: 1) 采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间最长的作业. 2) 短作业优先 (SJF) 调度算法,优先调度要求运行时间最短的作业. 3) 响应比高者优先(HRRN)调度算法,为每个作业设置一个优先权(响应比),调度之前先计算各作业的优先权,优先数高

操作系统 实验二 作业调度模拟程序

实验二.作业调度模拟程序 专业:商软一班   姓名:赖新耀 学号:201406114129 一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素.      作业调度算法: 1)        采用先来先服务(FCFS)调度算法,即按作业到

实验二 作业调度模拟实验

实验二.作业调度模拟实验 13物联网  201306104148 李小娜 一. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 二. 实验内容和要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时间等因素. 作业调度算法: 1) 采用先来先服务(FCFS)调度算法,即按作业到达的先后次序进行调度.总是首先调度在系统中等待时间