Unit 1 System Models and Issues - MP (1)
Unit 1 System Models and Issues - MP (1)
SYLLABUS
INTRODUCTION, MESSAGE PASSING AND RPC : Definition -
System models - Design issues of distributed operating systems - Message
Passing: Features and Issues–Buffering - Process addressing - Failure handling
RPC: Model - Implementation - Stub generation - RPC Messages - Marshaling -
Server management – Call semantics (10)
TEXT BOOKS:
1. Pradeep K Sinha , "Distributed Operating Systems: Concepts and Design",
Prentice Hall of India, New Delhi, 2009.
2. Rajkumar Buyya, Christian Vecchiola, Thamarai Selvi S , "Mastering Cloud
Computing", Tata McGraw Hill Education Private Limited,, New Delhi, 2013.
REFERENCES:
1. Andrew S Tanenbaum, Marteen Van Steen , "Distributed Systems
Principles and Paradigms", Pearson Education / Prentice Hall of India, New
Delhi, 2007.
2. George Coulouris, Jean Dollimore , "Distributed Systems Concept and
Design", Pearson Education, New Delhi, 2006.
3. David S Linthicium , "Cloud Computing and SOA Convergence in your
Enterprise", Pearson, USA, 2010.
4. Sébastien Goasguen , "Docker in the Cloud -Recipes for AWS, Azure,
Google, and More", O‘Reilly Media, USA, 2016.
COURSE OUTCOMES
Multiprocessors
1. Tightly Coupled
Systems(Parallel
Processing Systems)
Single System Memory
Shared by all Processors
Small and
CPU CPU limited
CPU MEMORY
bandwidth
INTERCONNECTION HARDWARE
Computer Architecture
2. Loosely Coupled
Systems(Distributed Computing
Systems)
Processors
and have their own local
communicate
memorythem
between
Expandable and
Unlimited no of
processor
Distributed Computing System
A of int
processors connected er
communicat
collection
by a
network ion
inwhicheach
processorhas
its own memory and
local
peripherals other and
communication between any
two processors of the system
takes place by message
passing over the
communication network
Evolution of Distributed
Computing Systems
Early Computers
Job SetUp Time
Batch Processing
Multiprogramming
Multiple user can access
Time Sharing (resource share and
access from different place)
Mini Computers
Workstation
MicroProcessors
LANs/WANs
Merging of Computers and
Networking-
Distributed Computing Systems(1970s)
Distributed Computing
System Models
Distributed Computing
Systems
Mini Computer
Work Station
Work Station-Server
Processor Pool
Hybrid
Mini Computer Model
Mini Computer Model
Different databases on
different remote machines
Extension of time sharing
systems
Multiple users simultaneous
login
Exam
ple
ARPA
NET
Work Station Model
Work Station Model
Idle workstation in big
campus
Issues
Finding idle ws
How to transfer job
Suppose if it starts working?
Allow remote process to share
the resources of the
workstation along with its own
logged on users processes.
Kill the remote process
Migrate remote process back to
its home workstation
Work Station Server Model
Work-Station Server Model
- Consists of few minicomputers and several
workstations interconnected by a communication
network.
Process Ws-
or pool server
model model
Hybrid
model
What is a Distributed OS?
o
s
Net Distri
wor bute
k d
Differences
A network operating system is made up of software and
associated protocols that allow a set of computer network to be
used together.
A distributed operating system is an ordinary centralized
operating system but runs on multiple independent CPUs.
Differences
ISSUES IN DESIGNING
DISTRIBUTED
OS
Differences in the complexity of the
Design between traditional system and
Distributed system
Centralized Os-User can request status
information and it is available
Distributed OS- cannot
about the system have
and not Complete
available to the
information
user.
Centralized Os- Resources
are nearer Distributed Os-
Far away
Centralized Os- Common Clock
Distributed OS- No Common clock, Lack
ISSUES
Transpare
ncy
Reliability
Flexibility
Performan
ce
Scalability
Heteroge
ISSUES IN
DESIGNING
DISTRIBUTED
A lot of OS
issues But
flexible,
efficien
t,
reliable
,
secure,
Transparency
} Single Virtual Uniprocessor image
} Eight forms of transparency - ISO
1992 Reference Model for Open
Distributed Processing
Access transparency
Location transparency,
Replication transparency,
Failure transparency,
Migration transparency
Concurrency transparency,
Performance transparency, and
Scaling transparency
Transparency
} Access transparency
} User should not be able to
recognize a resource as local or
remote
Remote resources in the same
way as local
Uniform system calls
Suitable for limited types of
application due to its
Performance limitations
Transpare
ncy
Name
Transparency
Locatio
n
Transpare User
ncy
Mobili
ty
Transparency
Name Transparency
Name of resource does not reveal
physical location of the resource
Movement of files need not change
the names
Resource names are unique
User Mobility
Same resources from different
locations are accessed with
same name.
Users access to resources without any
extra effort
Transpare
ncy
Replication Transparency
Creating Replicas of files and
resources on different nodes of
distributed systems –Better
performance and reliability
Should be transparent to users
Issues
Naming of replicas (name of replica
should be mapped to user supplied
name by the system)
Replication control (No.of copies?
When to create? Where to place?)
Transparency
} Failure Transparency
Masking from users- partial failure in
the system
DOS will continue to function in
degraded form when failure occurs.
communication link failure,
a machine failure, or
storage device crash
} All types of failures cannot be
handled in a user transparent
manner.
} Theoretically possible,
Practically not justified
Transparency
Migration Transparency –
(Performance ,Reliability, Security)
Migration decisions should be automatic
Migration should not require any change
in name
If the receiver process migrates to
another location before receiving
messages from the sender , IPC should
ensure that migrated process receives
the message.
Concurrency Tranparency
Multiple user- spatially separated use the
system concurrently
Concurrent update of the same file by two
processes should not be allowed
Transparency
Access request to
Event resources -> properly
ordered
Ordering
Property
Concurren
cy
No Resource No
Deadloc sharing Starvati
k mechanis on
Propert m Propert
y
y
Mutual
Exclusion
Property
Transparency
Performance Transparency
To allow the system to be automatically
reconfigured
Processor – Loads should be distributed(No
Idle Processors)
Processing capability should be uniformly
distributed among the available jobs
Requirement
Intelligent resource allocation and migration
facility
Scaling Transparency
To allow system to expand without disturbing
the user activities.
Requirement
DS expected to be more
2.Reliability reliable – Due to Multiple
instances of resources
Reliabi Fault-Mechanical or
algorithmic defect
lity that may generate an
error.
Client -
server
State Statel
ful ess
Stateful Server: Depends on
history of serviced request.
Stateless Server – Crash
Recovery- Easy- No client state
info is maintained.
Reliability
iii. Acknowledgements and
time-outs based
retransmissions
Node crash/Communication link
failure-message lost
MONOLITHIC
KERNEL
Microkernel
Nod Nod Nod
e1 e2 en
User User User
Applicati Applicati Applicati
ons ons ons
Server / Server / Server /
Manager Manager Manager
Modules Modules Modules
Network
Hardware
Performance
Design principles in order to achieve Good
Performance are
1. Batch if possible
Original
Sharing
Copy
sharing
Message Passing System
subsystem of a distributed
operating system
provides a set of message-
based IPC protocols.
enables processes to
communicate by exchanging
messages
simple communication
primitives, such as send and
receive.
Desirable Features of a Good
Message Passing System
Simplicity
Uniform
Semantics
Efficiency
Reliability
Correctness
Flexibility
Security
Portability
Simplicity
Local
Communic
ation
Inter
process
communica
tion
Remote
Communic
ation
Efficiency
Issues related to
correctness
Atomicity -are
Message sent to
every
Receivers or none
Ordered delivery - Messages
arrive at all receiver in order
acceptable to the appln
Survivability -Messages will be
Delivered correctly despite of
partial failure.
Flexibility
Message
passing
system should
Portabi be portable
lity The
Use of external data
representation formats applications
Design of high level
primitive for IPC protocol written using
for MPS - To hide primitives of
heterogeneous nature of
network IPC protocol
Issues in IPC Message Passing