Nie obrażaj więc mojej inteligencji poprzez czynione na pokaz zaniżanie własnej.
Rozproszone systemy operacyjne
Jerzy Brzeziński
Jerzy.Brzezinski@put.poznan.pl
Poznań, 2003
Plan wykładu
1. Wstęp 2. Wymiana komunikatów 3. Komunikacja grupowa 4. Zdalne wywoływanie procedur 5. Rozproszona pamięć współdzielona · Konstrukcja mechanizmu dostępu · Modele spójności · Protokoły koherencji 6. Usługa nazw (naming) · NIS/NIS+ · DNS 7. Sieciowy system plików · NFS, AFS, Coda 8. Synchronizacja · Synchronizacja zegarów · Wzajemne wykluczanie · Elekcja 9. Detekcja zakleszczenia
BIBLIOGRAPHY
1. A. S. Tanenbaum, M. van Steen, Distributed Systems: Principles and Paradigms, Prentice-Hall, Inc., 2002. 2. P. K. Sinha, Distributed Operating Systems - Concepts and Design, IEEE Press, 1997. 3. A. S. Tanenbaum, Computer Networks, Pearson Education, Inc., 2003. 4. G. S. Hura, M. Singhal, Data and Computer Communications. Networking and Internetworking, CRC Press LLC, Boca Raton, Florida, 2001. 5. M. Singhal, N. G. Shivaratri, Advanced Concepts in Operating Systems –Disitributed, Database, and Multiprocessor Operating Systems, McGraw Hill, 1994. 6. A. Gościński, Distributed Operating Systems, The Logical Design, Addison Wesley, 1991. 7. A. Silberschatz, J. Peterson, P. Galvin, Operating Systems Concepts, Addison Wesley, 1991. 8. A. S. Tanenbaum, Modern Operating Systems, Prentice-Hall, Inc., 1992. 9. G. Tel, Introduction to Distributed Algorithms, Cambridge University Press, 1994.
Introduction Basic Architectures of Multiprocessor Systems
Two basic types of computer architectures consisting of interconnected, multiple processors are distinguished: tightly coupled systems and loosely coupled systems.
Tightly coupled systems - systems with a single system wide primary memory (address space) that is shared by all the processors (also referred to as parallel processing systems, multiprocessors, SMMP - shared memory multiprocessors, SMS - shared memory systems, SMP – symmetric multiprocessors).
Loosely coupled systems - the systems where processors do not share memory and each processor has its own local memory (also referred to as distributed computing systems, multicomputers, DMS - distributed memory systems, MPP – massively parallel processors).
Distributed Computing System - Definition
Distributed computing system is a collection of independent computers (nodes, sites) interconnected by transmission channels, that appear to the users of the system as a single computer. Each node of distributed computing system is equipped with a processor, a local memory, and interfaces. Communication between any pair of nodes is realized only by message passing as no common memory is available. Usually, distributed systems are asynchronous, i.e., they do not use a common clock and do not impose any bounds on relative processor speeds or message transfer times. Evolution of Distributed Computing Systems
· Early computers : – very expensive (millions of dollars); – very large in size; – available only in research laboratories of universities and industries; – not accessible to ordinary users; – job setup time waste most of the valuable CPU time.
· New concepts introduced to increase CPU utilization: – batching similar job; – automatic job sequencing; – off-line processing; – multiprogramming; – time sharing.
· Minicomputers: – smaller, cheaper, having more processing capabilities than their predecessors; – computer resources shared simultaneously by many users; – computer accessed from a place different from the main computer room; – in the 1970s intelligent terminals replaced dumb terminals (combining the concepts of time sharing and off-line processing). · Workstations : – available for only a small fraction of the price of minicomputers; – computing power almost equal to that of minicomputers; – used as terminals in time sharing systems in which most of the processing of a user‘s job could be done at the user‘s own computer, allowing the main computer to be simultaneously shared by a larger number of users.
Evolution of Distributed Computing Systems
Networking Technologies
· LAN - Local Area Network: allows several computers located within a building or campus to be interconnected in such a way that these machines could exchange information with each other at data rates of about 10/100/1000/... Mbps;
· WAN - Wide Area Network: allows computers located far from each other (e.g. in different countries) to be interconnected in such a way that these machines could exchange information with each other at data rates of about 56Kbps/2/34/155/620/...Mbps;
The merging of computer and networking technologies gave birth to distributed computing systems in the late 1970s. Distributed Computing System Models
Minicomputer Model
Minicomputer Model – General Characteristic:
· Distributed computing system based on this model consists of a few minicomputers (or supercomputers) interconnected by a communication network. · To each minicomputer are connected several interactive terminals. · Each user is logged on to one specific minicomputer, with access to remote resources available on other minicomputers. · Simple extension of the centralized time sharing system. · The example of distributed computing system based on minicomputers is the early ARPAnet. Workstation Model (NOW - Network of Workstations, P2P - Peer-to Peer)
Workstation Model – General Characteristic: · System consists of several workstations interconnected by a communication network. · Every workstation may be equipped with its own disk and serving as a single-user computer. · In such environment like company‘s office or a university department, at any one time (especially at night), a significant portion of the workstation are idle, resulting in the waste of large amount of CPU time. · Main idea: interconnect all workstations by a high-speed LAN so that idle workstations may be used to process jobs of users who are logged onto other workstations and do not have sufficient processing power at their own workstations to get their jobs processed efficiently. · User logs onto one of the workstations and submits job for execution. · If the user‘s workstation does not have sufficient processing power for executing the processes of the submitted job efficiently, it transfers one or more of the processes from the user‘s workstation to some other workstation that is currently idle and gets the process executed there. · The result of execution is returned to the user‘s workstation. · Implementation issues: – How does the system find an idle workstation? – How is the process transferred from one workstation to get it executed on another workstation? – What happens to a remote process if a user logs onto a workstation that was idle until now and was being executed a process of another workstation? · Examples of distributed computing systems based on the workstation model: – Sprite system; experimental system developed at Xerox PARC.
Workstation - Server Model
Workstation - Server Model – General Characteristic:
· System consists of a few minicomputers and several workstations (diskless or diskful) interconnected by a communication network. · In addition to the workstation, there are specialized machines running server processes (servers) for managing and providing access to shared resources. · Each minicomputer is used as a server machine to provide one or more types of service: – implementing the file system; ... |
Menu
|