FCFS Static code
// FCFS
Static code….
#include<stdio.h>
#include<unistd.h>
int main() { int n = 5; int i, j;
int AT[5] =
{0, 2, 4, 6, 8}; int BT[5] = {3,
6, 4, 5, 2};
int CT[5],
TAT[5], WT[5];
int total_TAT
= 0, total_WT = 0; float avg_TAT, avg_WT;
printf("Process\tAT\tBT\n");
for ( i = 0 ;
i < n; i++) { printf("P%d\t%d\t%d\n", i + 1,AT[i], BT[i]); } sleep(3);
for (i=0; i < n – 1; i++) {
for ( j = i + 1 ; j<n; j++) {
if (AT[i] > AT[j]) {
int temp=AT[i];
AT[i]=AT[j];
AT[j] = temp;
temp=BT[i];
BT[i]=BT[j];
BT[j] = temp;
} } }
CT[0]=AT[0] +
BT[0];
for ( i = 1;
i < n ;i++ ) {
if(AT[i] > CT[i - 1]) {
CT[1] = AT[i]
+ BT[i];
}else{
CT[i] = CT[i
- 1] + BT[i]; }}
for ( i = 0; i < n ;i++) {
TAT[i]=CT[i]-AT[i];
for ( i = 0 i < n; i++) {
TAT [i]
=CT[i]-AT[i];
WT[i]=TAT[i]-BT[i];
total_TAT += TAT[i];
total WT +=
WT [i]; }
avg_TAT =
(float)total_TAT / n;
avg WT=
(float)total_WT/n; printf("\nProcess\tAT\tBT\tCT\tTAT\tWT\n");
for (i=0; i
< n; i++) {
printf("P%d\t%d\t%d\t%d\t%d\t%d\n",
i + 1 AT[i], BT[i], CT[i], TAT [i], WT[i]); } printf("\nAverage Turnaround
Time: %.2f\n", avg_TAT);
printf("Average
Waiting Time: %.2f\n", avg_WT);
return 0;
}
Comments
Post a Comment