System functions like swapping processes and
manipulating files ran in higher-priority queues, and user programs ran in the user process queue. User process
priorities were adjusted once a second. Processes that proved to be CPU-bound had their priorities lowered, and
processes that proved to be I/O-bound had their priorities raised. The effect was to give preference to interactive
processes, which were I/O-bound serving users at terminals (Stallings, William, Operating Systems: Internals
and Design Principles, 5ed, Saddle River, NS, Prentice Hall, 2005).
On the other hand, Hewlett Packard??™s Real-Time Executive (RTE) of the 1980s used a strictly priority-based
real-time scheduler. There were 32,767 different priority levels (something of an over-supply of priority levels!),
and whichever ready process had the highest priority was the one that was dispatched.
MEMORY MANAGEMENT
The operating system is responsible for assigning to processes memory in which to execute. In fact, the
operating system is responsible for managing a whole array of memories in support of processes, principally
main memory, cache memory, and disk memory.
To set the stage for this discussion, recall that the computer must have a prepared sequence of machine
language instructions before a program can be executed.
Pages:
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317