Ex No: 7 Date: Write A Program For Implementing The FCFS Scheduling Algorithm

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Operating System

EX NO: 7

Date:

Write a program for implementing the FCFS Scheduling algorithm

AIM: To write a program for implementing FCFS scheduling algorithm.

ALGORITHM:
1. Start the process.
2. Declare the array size.
3. Get the number of elements to be inserted.
4. Select the process that first arrived in the ready queue
5. Make the average waiting the length of next process.
6. Start with the first process from it’s selection as above and let other process to
be in queue.
7. Calculate the total number of burst time.
8. Display the values.
9. Stop the process.

PROGRAM:

#include<stdio.h>

main()

float avgwt,avgtt;

char pname[10][10],c[10][10];

int wt[10],tt[10],bt[10],at[10],t,q,i,n,sum=0,sbt=0,ttime,j,ss=0;

printf("\n\n Enter the number of processes: ");

scanf("%d",&n);

printf("\n\n Enter the NAME , BURST TIME and ARRIVAL TIME of the
process");

Nepathya College Laboratory


Operating System

for(i=0;i<n;i++)

printf("\n\n NAME : ");

scanf("%s",&pname[i]);

printf("\n\n BURST TIME : ");

scanf("%d",&bt[i]);

printf("\n\n ARRIVAL TIME : ");

scanf("%d",&at[i]);

for(i=0;i<n;i++)

for(j=i+1;j<n;j++)

if(at[i]>at[j])

t=at[i];

at[i]=at[j];

at[j]=t;

q=bt[i];

bt[i]=bt[j];

bt[j]=q;

strcpy(c[i],pname[i]);

strcpy(pname[i],pname[j]);

strcpy(pname[j],c[i]);

Nepathya College Laboratory


Operating System

wt[0]=0;

for(i=0;i<n;i++)

wt[i+1]=wt[i]+bt[i];

sum=sum+(wt[i]-at[i]);

sbt=sbt+(wt[i+1]-at[i]);

tt[i]=wt[i]+bt[i];

ss=ss+bt[i];

avgwt=(float) sum/n;

avgtt=(float)sbt/n;

printf("\n\n Average waiting time = %f",avgwt);

printf("\n\n Average turn-around time = %f",avgtt);

printf("\n\n GANTT CHART\n");

for(i=0;i<n;i++)

printf("|\t%s\t",pname[i]);

printf("\n");

for(i=0;i<n;i++)

printf("%d\t\t",wt[i]);

printf("%d\n",ss);

printf("\n");

Nepathya College Laboratory


Operating System

OUTPUT:

[root@localhost ~]# ./a.out


Enter the number of processes: 4
Enter the NAME , BURST TIME and ARRIVAL TIME of the process
NAME : p1
BURST TIME : 4
ARRIVAL TIME : 0
NAME : p2
BURST TIME : 9
ARRIVAL TIME : 2
NAME : p3
BURST TIME : 8
ARRIVAL TIME : 4
NAME : p4
BURST TIME : 3
ARRIVAL TIME : 3

Average waiting time = 6.000000


Average turn-around time = 12.000000
GANTT CHART
| p1 | p2 | p4 | p3
0 4 13 16 24

RESULT:
Thus the program for implementing FCFs scheduling algorithm was written and
successfully executed.

Nepathya College Laboratory

You might also like