先来先服务(FCFS)实验(3)

该实验旨在通过模拟FCFS(先来先服务)调度算法,加深对进程调度过程和原理的理解。实验要求掌握FCFS算法,并编程实现N个进程的调度。实验内容包括算法原理的回顾、代码实现以及运行结果的分析,关注周转时间和带权周转时间等性能指标。
摘要由CSDN通过智能技术生成

一. 实验目的:
通过上机练习,以及对进程调度算法的模拟,进一步理解进程的基本概念,加深对进程运行状态和进程调度过程、调度算法的理解。
二. 实验要求:
1、掌握先来先服务、短进程优先等进程调度算法。
2、编程实现对N个进程采用FCFS进程调度算法的调度。
三.实验内容及步骤:

  1. 先回顾FCFS算法原理。
    多个进程按到达的先后排序形成就绪队列,每次从就绪队列的队首选一个进程分配CPU进行运行,依次类推,直到就绪队列中所有进程都运行完。
  2. 编程代码
#include"stdio.h"
#include"stdlib.h"

	typedef struct PCB	
	{   
	 char ID[3];	
	 char name[10];	
	 char state;	
	 int  arrivetime;	
	 int  starttime;	
	 int  finishtime;	
	 int  servicetime;	
	 float turnaroundtime;	
	 float weightedturnaroundtime;	
	 struct PCB *next;	
	}pcb;
	
	int time;	
	int n;	
	
	pcb *head=NULL,*p,*q;	
	
	void run_fcfs(pcb *p1)	
	{
	 time = p1->arrivetime > time? p1->arrivetime:time;
	 p1->starttime=time;
	 printf("\n现在时间是%d,开始运行作业%s\n",time,p1->name);
	 time+=p1->servicetime;
	 p1->state='T';
	 p1->f
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值