Page 30 - DCAP507_SYSTEM_SOFTWARE
P. 30

System Software




                    Notes          Distributed Systems

                                   A recent trend in computer systems  is to  distribute computation  among several processors.
                                   In  contrast to the tightly  coupled systems,  the processors do not  share memory or a clock.
                                   Instead, each processor has its own memory and clock. The processors communicate with one
                                   another through various communication lines, such as high-speed buses or telephone lines.
                                   These systems are usually referred to as loosely coupled systems, or distributed systems. The
                                   processors in a distributed  system may vary in size and function. They  may include  small
                                   microprocessors, workstations, minicomputers, and large general-purpose computer systems.
                                   These processors are referred to by a number of different names, such as sites, nodes, computers,
                                   and so on, depending on the context in which they are mentioned.

                                   There are a variety of reasons for building distributed systems, the major ones being:
                                   Resource sharing: If a number of different sites (with different capabilities) are connected to one
                                   another, then a user at one site may be able to use the resources available at another.


                                          Example: A user at site A may be using a laser printer available only at site B. Meanwhile,
                                   a user at B may access a file that resides at A.
                                   In general, resource sharing in a distributed system provides mechanisms for sharing files at
                                   remote sites, processing information  in a distributed database,  printing files at remote sites,
                                   using remote specialized hardware devices (such as a high-speed array processor), and performing
                                   other operations.

                                   Computation  speedup:  If  a  particular  computation can  be  partitioned  into  a  number  of
                                   subcomputations that can run concurrently, then a distributed system may allow us to distribute
                                   the computation among the various sites - to run that computation concurrently.  In addition, if
                                   a particular site is currently overloaded with jobs, some of them may be moved to other, lightly
                                   loaded, sites. This movement of jobs is called load sharing.
                                   Reliability: If one site fails in a distributed system, the remaining sites can potentially continue
                                   operating. If the system is composed of a number of large autonomous  installations (that is,
                                   general-purpose computers), the failure of one of them should not affect the rest.  If, on the other
                                   hand, the system is composed of a number of small machines, each of which is responsible for
                                   some crucial system function (such as terminal character I/O or the file system), then a single
                                   failure may effectively halt the operation of the whole system. In general, if sufficient redundancy
                                   exists in the system (in both hardware and data), the system can continue with its operation,
                                   even if some of its sites have failed.

                                   Communication: There are many instances in which programs need to exchange data with one
                                   another on one system.


                                          Example: Window systems are one example, since they frequently share data or transfer
                                   data between displays. When many sites are connected to one another  by a communication
                                   network, the processes at different sites have the opportunity to exchange information.
                                   Users may initiate file transfers or communicate with one another via electronic mail. A user can
                                   send mail to another user at the same site or at a different site.

                                   Real Time Systems

                                   Another form of a special-purpose operating system is the real-time system. A real-time system
                                   is used when there are rigid time requirements on the operation of a processor or the flow of
                                   data, and thus is often used as a control device in a dedicated application.


          24                                LOVELY PROFESSIONAL UNIVERSITY
   25   26   27   28   29   30   31   32   33   34   35