CS 3733 Operating Systems, Fall 1998 Assignment 4 Comments
Part 1
People in general did not have a problem with this.
You should choose parameters that have a reasonable number of bursts
per process. The only problem is to get a good load average.
There are a number of ways to determine the load average.
The load average is the average number of processes in the ready queue.
You can get an approximation of the load average before you do the experiment
by looking at how many processes are in the ready queue when the first process
completes its first I/O.
After running the experiment, you can calculate the load average by dividing
the total waiting time by the total running time.
Part 2
In this part you should use a uniform distribution for the CPU burst time.
Choose several intervals all with the same mean. About 4 should be enough.
In most cases there will be little difference in average waiting times,
usually less than 5 percent. You may or may not see a pattern, but with
such small differences, it means little.
Part 3
Use the same experiments as in Part 2. The results will depend on the
parameters you choose. Do not draw a conclusion of a trend if the total
change is less than 5 percent. For most values of the parameters there
will be little difference in waiting times when you vary the interval,
but any interval will give significantly different (30 percent or more)
waiting times than for a constant distribution.
Extra Credit
Use the same experiments as in Part 2 but with different seeds.
It is best to pick one of the runs and repeat it with different seed
values and with no seed. This will tell you if the seed matters.
Do the same for one run from Part 3.
When you vary the duration and number of processes you
should find that when the total number of bursts is large, the
seed value does not matter. You can get a large number of bursts
by either having a small number of processes with long duration
(compared to the CPU burst times) or with a large number of processes.