This approach is called ???asymmetric multiprocessing.??? For a small number
of processors (say, 10 or fewer), asymmetric multiprocessing can work well. As the number of processors
increases, however, the master becomes a bottleneck, for it must be consulted for all important resource
allocation decisions.
A more sophisticated approach to multiprocessor support is called symmetric multiprocessing (SMP). With
SMP there is only one copy of the OS code in the shared memory, and all processors execute it. There is only
one set of system tables, which all processors share. SMP dynamically provides load balancing, but the trick to
making SMP work is in synchronizing access among the processors to the shared resources.
98 OPERATING SYSTEMS [CHAP. 6
With multiple CPUs, the OS does not have the luxury, as is the case in a single-processor system, of simply
disabling interrupts while it completes uninterruptible work. With multiple CPUs, each has its own interrupt
system, and synchronization can require additional hardware like an interprocessor bus with a locking protocol,
and very careful analysis of other resource-locking mechanisms.
REAL-TIME OPERATING SYSTEMS
A small but important category of operating systems is called ???real time.
Pages:
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266