CS 481: Assignment #1

due Tuesday, February 18

Assume you have a dial that allows you to set the length of the time slice in a simple, time-shared operating system. Further assume that processes in the runnable queue are handled on a first-come, first-served basis.

Describe as accurately as possible what you would observe as you used the dial to try possible settings of the slice length, from a minimum of one CPU cycle to a maximum of infinity. Points of interest along the way might include (in no particular order): (i) the context-switching time for an interrupt (saving and restoring registers); (ii) the average CPU burst (continuous use of the CPU without resource request or release) of a process; (iii) the average time between external interrupts; (iv) the average time from resource request to resource acquisition.

Where would you set your dial if your system was to run a small number of large, CPU-intensive jobs? if it was to serve a large student population? if it was to be used in air-traffic control? Discuss each choice (why did you make the choice? is the result any good or would you have to modify other mechanisms? etc.).

Back to CS 481 home page