- every processor has a runqueue associated with it (what someone call ready queue).
- each runqueue has 2 priority arrays, the active and the expired.
The active array stores the processes that still have some time slice.
Once this time finished, they go to the expired array.
Each array has 140 entries (queues), one for each privilege level.
So, picking a process to run is as simple as picking the first
process of the first non-empty queue. As the number of queue
is fixed (140) and independent of the number of processes running.
|