Introduction
Introduction
System wide
CPU CPU CPU CPU
Shared memory
Interconnection hardware
Loosely coupled systems
The processors do not share memory, and
each processor has its own local memory.
These are also known as distributed
computing systems or simply distributed
systems.
Communication Network
Distributed Computing System
A DCS is a collection of independent computers that
appears to its users as a single coherent system,
or
A collection of processors interconnected by a
communication network in which
Each processor has its own local memory and other
peripherals, and
The communication between any two processors of
the system takes place by message passing.
For a particular processor, its own resources are
local, whereas the other processors and their
resources are remote.
Cont…
Together, a processor and its resources are
usually referred to as a node or site or machine
of the distributed computing system.
Resource sharing
Such as software libraries, databases, and hardware resources.
Factors that led to the emergence of
distributed computing system
Better price-performance ratio
Higher reliability
Reliability refers to the degree of tolerance against errors
and component failures in a system.
Achieved by multiplicity of resources.
Factors that led to the emergence of
distributed computing system
Extensibility and incremental growth
By adding additional resources to the system as and when
the need arise.
These are termed as open distributed System.
3. FAULT TOLERANCE
Low in Network OS
High in Distribute OS
User Mobility
No matter which machine a user is logged onto, he
should be able to access a resource with the same
name.
Replication Transparency
Replicas are used for better performance and reliability.
No deadlock
It ensures that a situation will never occur in which
competing processes prevent their mutual progress even
though no single one requests more resources than
available in the system.
Performance transparency
The aim of performance transparency is to allow the
system to be automatically reconfigured to improve
performance, as loads vary dynamically in the system.
The large size of the kernel reduces the overall flexibility and
configurability of the resulting OS.
Network Hardware
Microkernel model
Goal is to keep the kernel as small as possible.
Network Hardware
Cont…
Modular in nature, OS is easy to design, implement and
install.
For adding or changing a service, there is no need to stop
the system and boot a new kernel, as in the case of
monolithic kernel.
Performance penalty :
Each server module has to its own address space. Hence
some form of message based IPC is required while
performing some job.
Message passing between server processes and the
microkernel requires context switches, resulting in additional
performance overhead.
Cont…
Advantages of microkernel model over monolithic kernel
model:
Flexibility to design, maintenance and portability.
In practice, the performance penalty is not too much due to
other factors and the small overhead involved in exchanging
messages which is usually negligible.
PERFORMANCE
Design principles for better performance are:
Batch if possible
Transfer of data in large chunk is more efficient than
individual pages.
Caching whenever possible
Saves a large amount of time and network bandwidth.
Centralized database