Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void RoundRobin(char *filename)
- {
- int time_slots,i,lines;
- int count=0;
- lines=countingNum(filename);
- FILE *f;
- f=fopen(filename,"r");
- Process p[lines-1];
- fseek(f,22,SEEK_SET);
- fscanf(f,"%d ",&time_slots);
- //printf("watching time slots = %d\n",time_slots);
- for(i=0;i<lines-1;i++)
- {
- p[i].name=malloc(100);
- fscanf(f,"%[^ ]",p[i].name);
- fscanf(f,"%d ",&p[i].starting_time);
- fscanf(f,"%d ",&p[i].remaining_time);
- //printf("%s\t%d\t%d\n",p[i].name,p[i].starting_time,p[i].remaining_time);
- Queue *q=initQueue();
- for(int j=0;j<time_slots;j++)
- {
- for(int m=0;m<p[i].remaining_time;m++)
- {
- if(p[i].starting_time==j||p[i].starting_time<j)
- enqueue(q,p[i]);
- dequeue(q);
- printf("%s (%d-->%d)\n",p[i].name,i,i+1);
- if(p[i].remaining_time==0)
- printf("%s (%d-->%d) %s aborts\n",p[i].name,i,i+1,p[i].name);
- p[i].remaining_time --;
- }
- //break;
- }
- }
- fclose(f);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement