Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Classification of Distributed Systems Properties of Distributed Systems Classification of Operating Systems (cont.) n n n n motivation: advantages of distributed systems classification l architecture based n on interconnection n on memory access l design based (OS models) design issues of a distributed system l transparency l heterogeneity l autonomy l others “True” Distributed Operating System l Loosely-coupled hardware n No shared memory, but provides the “feel” of a single memory l Tightly-coupled software l Machines are somewhat, but not completely, autonomous n One single OS, or at least the feel of one Disk1 M1 P1 P2 M2 P3 M3 Network M4 P4 Why Use Distributed Systems? What are the Advantages? Price / performance l Network of workstations provides more MIPS for less $ than a mainframe does Higher performance: l n processors potentially give n times the computational power Resource sharing: l Expensive (scarce) resources need not be replicated for each processor Scalability: l Modular structure makes it easier to add or replace processors and resources Reliability: l Replication of processors and resources yields fault tolerance n n n n n Classification of MIMD Architectures Two main types of interconnection: l l n M1 M2 Switch (crossbar, multistage switch) MIMD parallel and distributed computers loosely coupled tightly coupled bus Sequent switched Ultracomputer multicomputers (distributed / private memory) bus Workstations on a LAN switched Hypercube n Tightly coupled ≈ parallel processing n Processors share clock and memory, run one OS, communicate frequently Loosely coupled ≈ distributed computing l l Each processor has its own memory, runs its own OS (?), communicates infrequently Classification of Multiprocessors Based on Interconnection Network (cont.) Mm n Bus P1 Disk5 multiprocessors (shared memory) Tanenbaum (date?) Classification of Multiprocessors Based on Interconnection Network n P5 M5 Printer4 P2 Pn Corssbar switch: l Bus-based interconnection little contention for memory access — multiple memories can be accessed in parallel l Simple l Simple routing l Bus is a broadcast medium l l Contention for access to bus (does not scale well) Number of crossbar switches grows quadratically l Complicates caches (need snoopy cache) M1 M2 Mm P1 P2 switch Pn Classification of Multicomputers Based on Interconnection Network Classification of Multiprocessors Based on Interconnection Network (cont.) Two main types of interconnection: n Multistage switch l Reduced number of switches l Increased communication delay (number of hops Increased contention for memory access l P1 M1 P2 M2 P3 M3 P4 M4 P5 M5 P6 M6 P7 M7 P8 M8 l LAN (local area network) – bus based l Switching network 2 n Grid n - nodes arranged as an n x n grid – easy to lay-out – Maximum route proportional to n2 – Most messages take multiple hops n n Hypercube – a n-degree hypercube (n-cube) consists of 2 nodes (processors) arranged in an n-dimensional cube, where each node is connected to n other nodes – Maximum route proportional to n – Most messages take multiple hops Complex network l Classification of Multiprocessors and Multicomputers, Based on Memory Access Distributed System Models n Minicomputer model l n UMA — Uniform Memory Access l n n Main memory is at a central location n NUMA — Non-Uniform Memory Access l Main memory is physically partitioned, with each partition attached to a different processor l Each processor can access its own memory (fast), or the memory of another processor (slow) n NORMA — No Remote Memory Access l Main memory is physically partitioned, with each partition attached to a different processor l A processor can not access the memory of another processor n Workstation model l Many workstations connected to a network l Particularly useful if users can use remote workstations (process migration) Workstation-server model l Same, plus more some machines run as servers: file server, print server, etc. l Good resource sharing (printers, etc.), cheap workstations (don’t need big disks) Processor-pool model l Goals of a Distributed System: Transparency n Access transparency l User is unaware whether a resource is local or remote n Location transparency l User is unaware of physical location of hardware or software resources n location transparency n user mobility Migration transparency l User is unaware if OS moves processes or resources (e.g., files) move to a different physical locations Replication transparency l Resource duplication is invisible to users Concurrency transparency l Resource sharing is invisible to users n n n Several minicomputers connected to a network, each with several terminals Terminals connect to network, pool of processors connect to network Goals of a Distributed System: Support Heterogeneity n Heterogeneity means “consisting of a number of completely different elements” n Computer hardware heterogeneity l n Network heterogeneity l n Different computer architectures (e.g., instruction sets, data representations) of components in distributed systems Different transmission media, signaling, network interfaces, and protocols Software heterogeneity l Different operating systems, application programs Goals of a Distributed System: Right Degree of Autonomy n Autonomy is a measure of the independence of the components in a distributed system n Low degree of autonomy = dependent n Other design issues of a distributed system n l Inflexible n l Little robustness in the presence of failures n High degree of autonomy = independent l More flexibility l High redundancy l May still require some central control l Poor resource sharing and coordination n fault tolerance – system should be able to withstand failure of its components and continue (in possibly diminished capacity) its operation flexibility – to ease modification and enhancement scalability – system’s performance should not dramatically deteriorate as the system size decreases security l the communicating parties should be sure of each other identity (be able to trust each other) l the communicating parties should be sure that the communication is not compromised (altered or eavesdropped) l hard because there is no single point of control/authentication