CS_G623_L1
-
Upload
vinothsaravanan-ramakrishnan -
Category
Documents
-
view
30 -
download
0
Transcript of CS_G623_L1
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 StudyS.No TOPIC CHAPTER
REF (Text)
No of Lectures
1.
Overview of Advanced O.S: Design approaches, Motivation, Types of Advanced OS.
Ch 1 2
2.
Architecture: Motivation, Issues, Communication Networks, Communication Primitives.
Ch 4 2
3.
Theoretical Foundations: Limitations, Lamport’s logical clock, vector clock, causal ordering, global state, Cuts.
Ch 5 3
4.
Distributed Mutual Exclusion: Lamport, Recart-agrawala, and Maekawa’s algorithms; Suzuki-kasami broadcast algorithm, and Raymond’s tree based algorithm .
Ch 6 4
5.
Distributed Deadlock Detection: Resource Vs. Communication deadlock, Strategies to handle deadlock, Ho-Ramamoorthy, Path-Pushing, Edge-Chasing, Diffusion Computation-based algorithms.
Ch 7 4
6.
Agreement Protocols: System model, Classification of agreement problems, Solutions to Byzantine agreement problems.
Ch 8 4
Plan of StudyS.No TOPIC CHAPTER REF
(Text)No of
Lectures
7.
Distributed File Systems: Mechanisms for building DFSs, Design Issues, Sun DFS, and Sprite DFS.
Ch 9 4
8.
Distributed Scheduling: Issues in Load Distribution, Components of a load distribution algorithm, Load Distribution Algorithms, V-system, Sprite, and Condor.
Ch 11 4
9.
Distributed Shared Memory: Algorithms for implementing DSMs, Memory Coherence, and Coherence Protocols, IVY.
Ch 10 4
10. Recovery: Classification of failures, Synchronous and Asynchronous Checkpointing and Recovery.
Ch 12 3
11. Fault Tolerance: Commit Protocols, Voting Protocols, Failure Resilient Processes.
Ch 13 3
12. Protection and Security: Access Matrix Model, Implementation of access matrix, Unix, and Amoeba, Introduction to Data Security.
Ch 14 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 Shared memory
CPU CPU CPU
Interconnection hardware
Loosely Coupled System• Distributed Memory Systems (DMS)• Communication via Message Passing
CPU
Localmemory
CPU
Localmemory
CPU
Localmemory
CPU
Localmemory
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
Mini-computer
Mini-computer
Mini-computer Communication
network
Terminals
MINICOMPUTER MODEL
WORKSTATION MODEL
Workstation
Communicationnetwork
WorkstationWorkstation
WorkstationWorkstation
Workstation
Communicationnetwork
WorkstationWorkstation
WorkstationWorkstation
Mini-computerused asfileserver
Mini-computerused asdatabaseserver
Mini-computerused asprintserver
. . .Mini-computerused asfileserver
WORKSTATION SERVERMODEL
Fileserver
Runserver
Communicationnetwork
Pool of processors.
...
Terminals
Processor Pool Model
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