Exercise Set Two

Chapter 5

Problem 5.4:    Consider the following set of processes, with the length of the CPU-burst time given in milliseconds:

               Process               Burst Time               Priority
                    P                           10                                3
                    P2                            1                                  1
                    P3                            2                                  3
                    P4                            1                                  4
                    P                           5                                  2

The processes are assumed to have arrived in the order P1,P2,P3,P4,P5, all at time 0.

  1. Draw four Gantt charts illustrating the execution of these processes using FCFS, SJF, a nonpreemptive priority ( a smaller priority number implies a higher priority), and RR(quantum=1) scheduling.
  2. What is the turnaround time of each process for each of the scheduling algorithms in part a?
  3. What is the waiting time of each process for each of the scheduling algorithms in part a?
  4. Which of the schedules in part a results in the minimal average waiting time (over all processes)?

Answer:

a.    The four Gantt charts are:

FCFS:
     1 2 4      5

RR:
1 2 3 4 5 1 3 5 1 5 1 5 1 5                    1

SJF:
2 4 3         5            1

Priority:
2     5            1    3 4

b. Turnaround time
 
 
FCFS RR SJF Priority
P1 10 19 19 16
P2 11 2 1 1
P3 13 7 4 18
P4 14 4 2 19
P5 19 14 9 6

c.    Waiting time (turnaround time minus burst time)
 
 
FCFS RR SJF Priority
P1 0 9 9 6
P2 10 1 0 0
P3 11 5 2 16
P4 13 3 1 18
P5 14 9 4 1

d.    Shortest Job First

Problem:    What advantage is there in having different time-quantum sizes on different levels of a multilevel queuing system?

Answer:

    Processes which need more frequent servicing, for instance interactive processes such as editors, can be in a queue with a small time quantum. Processes with no need for frequent servicing can be in a queue with a larger quantum, requiring fewer context switches to complete the processing; making more efficient use of the computer.

Problem:    Suppose that a scheduling algorithm ( at the level of short-term CPU scheduling) favors those processes that have used the least processor-time in the recent past.Why will this algorithm favor I/O-bound programs and yet not permanently starve CPU-bound programs?

Answer:

    It will favor the I/O bound programs because of the relatively short CPU burst request by them; however, the CPU-bound programs will not starve because the I/O-bound programs will relinquish the CPU relatively often to do their I/O.