Advertisement
Guest User

Untitled

a guest
Mar 30th, 2020
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. void RoundRobin(char *filename)
  2. {
  3. int time_slots,i,lines;
  4. int count=0;
  5. lines=countingNum(filename);
  6. FILE *f;
  7. f=fopen(filename,"r");
  8. Process p[lines-1];
  9. fseek(f,22,SEEK_SET);
  10. fscanf(f,"%d ",&time_slots);
  11. //printf("watching time slots = %d\n",time_slots);
  12. for(i=0;i<lines-1;i++)
  13. {
  14. p[i].name=malloc(100);
  15. fscanf(f,"%[^ ]",p[i].name);
  16. fscanf(f,"%d ",&p[i].starting_time);
  17. fscanf(f,"%d ",&p[i].remaining_time);
  18. //printf("%s\t%d\t%d\n",p[i].name,p[i].starting_time,p[i].remaining_time);
  19. Queue *q=initQueue();
  20. for(int j=0;j<time_slots;j++)
  21. {
  22. for(int m=0;m<p[i].remaining_time;m++)
  23. {
  24. if(p[i].starting_time==j||p[i].starting_time<j)
  25. enqueue(q,p[i]);
  26. dequeue(q);
  27. printf("%s (%d-->%d)\n",p[i].name,i,i+1);
  28. if(p[i].remaining_time==0)
  29. printf("%s (%d-->%d) %s aborts\n",p[i].name,i,i+1,p[i].name);
  30. p[i].remaining_time --;
  31. }
  32. //break;
  33. }
  34.  
  35. }
  36. fclose(f);
  37.  
  38.  
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement