next up previous
Next: Support for Mobility Up: Classifying Operating Systems Previous: Classifying Operating Systems

Number and Coupling among Processors

One important criterion is the number and the coupling among the processors managed by the operating system. The simplest case is the traditional uniprocessor operating system, which manages a single processor.

Operating systems that manage multiple, interconnected processors can be distinguished based on the ``coupling'' among the processors. The level of coupling depends on both the hardware and the software connecting the processors.

The tightest-coupling case is the multiprocessor operating system, manages several processors with separate caches but sharing a common memory. The memory is typically divided into several modules which can be accessed independently. Thus several (non-conflicting) memory requests can be serviced concurrently. A switching network is used to direct requests from processors to the correct memory module. The presence of multiple processors significantly changes the synchronization and scheduling components of the operating system.

Long-haul networks are collections of widely scattered computers connected by a common communication network. Communication in such systems is relatively slow (9.6 to 56 Kbps) and unreliable and typically through telephone lines, microwave links, and satellite channels. Long-haul networks provide several network-based services to their users such as mail, news, talk, and WWW access. The notion of a long-haul network requires the ability to communicate among remote processes. It also requires schemes for overcoming the lack of speed and reliability of the network and also the absence of a global clock.

A local-area network consists of independent computers confined to small geographical area. Since this area is small, the communication network can be fast (3-100 Mbps) and reliable. It offers, in addition to the services offered by long-haul networks, sharing of expensive devices such as printers and large secondary store. The challenge here is to unify services offered by multiple computers and address the problem of naming these services. For instance, in the case of the file service, the challenge is to provide a unified file system that spans multiple computers.

Local-area (and long-haul) networks run independent, possibly different, operating systems that offer limited services for sharing. An alternative approach is to use the same hardware configuration but present a single, multicomputer, operating system that manages all the computers. The main challenge here is dynamic placement and migration of processes running on different computers and implementation of distributed shared memory.

These four kinds of systems are basically four points in a continuous coupling spectrum. One can imagine a variety of intermediate points base on how much sharing is provided among the different processors.


next up previous
Next: Support for Mobility Up: Classifying Operating Systems Previous: Classifying Operating Systems



Prasun Dewan
Tue Jan 13 12:23:19 EST 2004