- While these tightly coupled systems require specialized hardware support in order that the CPUs can share the common memory system, another approach is to use a network to join together more conventional systems into what is termed a distributed system.
- A distributed system is a collection of physically separate, possibly heterogeneous computer systems that are networked (LAN or WAN) to provide the users with access to the various resources that the system maintains.
- Access to a shared resource increases computation speed, functionality, data availability, and reliability.
- Multicomputers. They do not share memory and clock. May be either client-server or peer-to-peer systems.
- As PCs have become faster, more powerful, and cheaper, designers have shifted away from centralized system architecture. Terminals connected to centralized systems are now being supplanted by PCs.
- As a result, many of today's systems act as server systems to satisfy requests generated by client systems. This form of specialized distributed system, called client-server system, has the general structure depicted in Fig. 2.24left.
Figure 2.24:
Left: Client-Server. Right: An example of a computer cluster - this is a Silicon Graphics Cluster-SGI.
|
- The compute-server system provides an interface to which a client can send a request to perform an action (for example, read data); in response, the server executes the action and sends back results to the client. A server running a database that responds to client requests for data is an example of such a system.
- Another example of a client-server system is the file-server system on campus. Here, a central server provides file access to authenticated users at client machines.
- Peer-to-Peer Systems are another form of distributed system in which the participating computer systems are similar.
- Some OSs have taken the concept of networks and distributed systems further than the notion of providing network connectivity.
- A network OS is an OS that provides features such as file sharing across the network and that includes a communication scheme that allows different processes on different computers to exchange messages.A computer running a network OS acts autonomously from all other computers on the network, although it is aware of the network and is able to communicate with other networked computers.
- A distributed OS provides a less autonomous environment: The different OSs communicate closely enough to provide the illusion that only a single OS controls the network.
- Students wishing to experiment with programming at this parallel level can investigate the PVM (Parallel Virtual Machine) and MPI (Message Passing Interface) libraries that are widely available.
Cem Ozdogan
2011-02-14