Other real-time systems
are soft real-time systems, meaning the highest priority processes should execute as fast as possible, but absolute
limits on processing time do not exist.
An important way in which schedulers differ is in whether or not the scheduler is preemptive. A preemptive
scheduler can interrupt an executing process and switch to a different one. Such a change is called a ???context
switch,??? and entails a substantial amount of system overhead in changing the contents of registers, memory
maps, and cache memory.
First come first served (FCFS)
Early batch systems used a simple FCFS (FCFS??”also called FIFO, for first in first out) scheduling
system. With FCFS, the first process to the system is scheduled, and it runs to completion or until it is blocked
114 OPERATING SYSTEMS [CHAP. 6
(e.g., for I/O). When a job completes or blocks, the next process on the waiting queue of processes is allowed
to execute. As a process becomes unblocked, it goes to the end of the FCFS queue as if it had just arrived.
While simple to implement, FCFS does not perform as well as other algorithms on the measures of
turnaround time and throughput, particularly when some processes are much more ???compute-bound??? (need
extended time with the CPU for computation) and others are more ???I/O-bound??? (use less CPU time, but require
many interruptions for I/O).
Pages:
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312