Sei sulla pagina 1di 19

Advance Operating System (CS G623)

Agenda
Course Overview Distributed System Basics Multiprocessor Systems (Basic Architecture) Motivation behind Distributed Systems Distributed System Architecture Types Distributed Operating System DOS Issues

Text Book
Advanced Concepts in Operating Systems: Distributed, Database and Multiprocessor Operating Systems, Tata McGraw Hill, 2001.
By M. Singhal & N. Shivaratri

Reference Books R1: P. K. Sinha, Distributed Operating Systems Pearson Education, 1998. R2: Andrew S Tanenbaum and Martin Steen, Distributed Systems : Principles and Paradigms ISBN: 978-81-203-3498-4 R3: Distributed Systems-Concepts and Design by G. Coulouris, AW

Plan of Study
S.No TOPIC CHAPTER REF (Text) Ch 1 No of Lectures 1. Overview of Advanced O.S: Design approaches, Motivation, Types of Advanced OS. Architecture: Motivation, Issues, Communication Networks, Communication Primitives. Theoretical Foundations: Limitations, Lamports logical clock, vector clock, causal ordering, global state, Cuts. Distributed Mutual Exclusion: Lamport, Recartagrawala, and Maekawas algorithms; Suzukikasami broadcast algorithm, and Raymonds tree based algorithm . Distributed Deadlock Detection: Resource Vs. Communication deadlock, Strategies to handle deadlock, Ho-Ramamoorthy, Path-Pushing, Edge-Chasing, Diffusion Computation-based algorithms. Agreement Protocols: System model, Classification of agreement problems, Solutions to Byzantine agreement problems. 2

2.

Ch 4

3.

Ch 5

4.

Ch 6

5.

Ch 7

6.

Ch 8

Plan of Study
S.No 7. TOPIC Distributed File Systems: Mechanisms for building DFSs, Design Issues, Sun DFS, and Sprite DFS. Distributed Scheduling: Issues in Load Distribution, Components of a load distribution algorithm, Load Distribution Algorithms, V-system, Sprite, and Condor. Distributed Shared Memory: Algorithms for implementing DSMs, Memory Coherence, and Coherence Protocols, IVY. Recovery: Classification of failures, Synchronous and Asynchronous Checkpointing and Recovery. Fault Tolerance: Commit Protocols, Voting Protocols, Failure Resilient Processes. Protection and Security: Access Matrix Model, Implementation of access matrix, Unix, and Amoeba, Introduction to Data Security. CHAPTER REF (Text) Ch 9 No of Lectures 4

8.

Ch 11

9.

Ch 10

10.

Ch 12

11. 12.

Ch 13 Ch 14

3 3

Distributed Systems
A Distributed System is a collection of independent computers that appears to its users as a single coherent system [Tanenbaum] A Distributed System is - a system having several computers that do not share a memory or a clock - Communication is via message passing - Each computer has its own OS+Memory [Shivaratri & Singhal]

Multiprocessor System Architecture Types


Tightly Coupled Systems Loosely Coupled Systems

Tightly Coupled Systems


Systems with a single system wide memory Parallel Processing System , SMMP (shared memory multiprocessor systems)

CPU

CPU

Shared memory

CPU

CPU

Interconnection hardware

Loosely Coupled System


Distributed Memory Systems (DMS) Communication via Message Passing
Local memory Local memory Local memory Local memory

CPU

CPU

CPU

CPU

Communication network

Motivation
Resource Sharing Enhanced Performance Improved Reliability & Availability Modular expandability

Distributed System Architecture Types


Minicomputer Model Workstation Model Workstation Server Model Processor Pool Model Hybrid Model

MINICOMPUTER MODEL

Minicomputer

Te rminals

Minicomputer

Communication ne twork

Minicomputer

WORKSTATION MODEL
Workstation Workstation Workstation

Workstation

Communication ne twork

Workstation

WORKSTATION SERVERMODEL

Work station Work station Work station

Work station

Co mmu n icatio n n e two r k

Work station

Minicom pute r use d as file s erve r

Minicom pute r use d as databas e s erve r

. . .

Minicom pute r use d as print s erve r

Processor Pool Model

Term inals

Communication ne twork

Run server

...
Pool of processors.

File server

Hybrid Model
Based upon workstation-server model but with additional pool of processors Processors in the pool can be allocated dynamically Gives guaranteed response time to interactive jobs More expensive to build

Distributed OS
A distributed OS is one that looks to its users like an centralized OS but runs on multiple, independent CPUs. The key concept is transparency. In other words, the use of multiple processors should be invisible to the user. [Tanenbaum & Van Renesse]

Issues
Global knowledge Naming Scalability Compatibility Process Synchronization Resource Management Security Structuring

Potrebbero piacerti anche