RoundRobin(RR)
C Program For RoundRobin(RR) #include <stdio.h> #include <stdlib.h> struct Process { int id; int btime; int atime; int isdone; }; int cmp(const void *a, const void *b) { struct Process* a1 = (struct Process*)a; struct Process* b1 = (struct Process*)b; return (a1->atime - b1->atime); } int main() { struct Process* p; int i, n, g[20], j; printf("Enter Number Of Process: "); scanf("%d", &n); p = (struct Process*)malloc(sizeof(struct Process) * n); for(i = 0; i < n; i++) { printf("Enter The Brust Time Of Process %d: ", i); scanf("%d", &p[i].btime); printf("Enter Arrival Time Of Process %d: ", i); scanf("%d", &p[i].atime); p[i].id = i; p[i].isdone = 0; } qsort(p, n, sizeof(struct Process), cmp); printf("Process\tATime\tBTime\n"); for (i = 0; i < n; ++i) { printf("P%d\t%d\t%d\n",p[i].id,p[i].atime,p[i].btime); } p[n].atime = 0; for(i = 0; i < n; i++) { for (k = 0) printf("|P%d|",p[i].id); for (j = p[i].atime; j < p[i+1].atime; j++) { printf("-"); p[i].btime--; } } return 0; }
Tags:
OS Related C progeams
0 comments