0% found this document useful (0 votes)
5 views16 pages

OS PPT Unit 4.3

A distributed system consists of interconnected nodes with their own local memory, allowing for resource sharing, computation speedup, reliability, and communication. Network operating systems enable remote access to resources, while distributed operating systems allow users to access remote resources as local ones, facilitating data and computation migration. Key design issues include robustness, failure detection, reconfiguration, and scalability, with case studies highlighting the evolution of Linux and Windows operating systems.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views16 pages

OS PPT Unit 4.3

A distributed system consists of interconnected nodes with their own local memory, allowing for resource sharing, computation speedup, reliability, and communication. Network operating systems enable remote access to resources, while distributed operating systems allow users to access remote resources as local ones, facilitating data and computation migration. Key design issues include robustness, failure detection, reconfiguration, and scalability, with case studies highlighting the evolution of Linux and Windows operating systems.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Distributed Systems

• A distributed system is a collection of processors


• each node has its own local memory
• The nodes communicate with one another through various
networks
• Advantages of Distributed Systems
• A distributed system is a collection of loosely coupled nodes
interconnected by a communication network
• The nodes in a distributed system may vary in size. They may
include small microprocessors, personal computers, and large
general-purpose computer systems
• There are four major reasons for building distributed systems:
– resource sharing,
– computation speedup,
– reliability, and
– communication.
• Resource Sharing
• If a number of different sites are connected to one another,
then a user at one site may be able to use the resources
available at another

• Computation Speedup
• If a particular computation can be partitioned into sub-
computations that can run concurrently, then a distributed
system allows us to distribute the sub-computations among
the various sites. The sub-computations can be run
concurrently and thus provide computation speedup
• Reliability
• If one site fails in a distributed system, the remaining sites can
continue operating, giving the system better reliability

• Communication
• When several sites are connected to one another by a
communication network, users at the various sites have the
opportunity to exchange information
Types of Network-based Operating
Systems
• Network Operating Systems
• A network operating system provides an environment in
which users, can access remote resources by either logging in
to the appropriate remote machine or transferring data from
the remote machine to their own machines.
• Currently, all general-purpose operating systems, such as
Android and iOS are network operating systems.
• Remote Login – It is an important function of a network
operating system is to allow users to log in remotely.
• Example: ssh cs.yale.edu
• Remote File Transfer - Another major function of a network
operating system is to provide a mechanism for remote file
transfer from one machine to another
• Example: ftp cs.yale.edu
• Distributed Operating Systems
• In a distributed operating system, users access remote
resources in the same way they access local resources
• Data Migration - Suppose a user on site A wants to access
data (such as a file) that reside at site B. The system can
transfer the data by one of two basic methods. One approach
is data migration is to transfer the entire file to site A
• Computation Migration - we may want to transfer the
computation, rather than the data, across the system; this
process is called computation migration
• Process Migration - When a process is submitted for
execution, the entire process, or parts of it, may be executed
at different sites.
Robustness
• A distributed system may suffer from various types of
hardware failure
• The failure of a link, the failure of a site, and the loss of a
message are the most common types.
• To ensure that the system is robust, we must detect any of
these failures, reconfigure the system so that computation
can continue, and recover when a site or a link is repaired.
• Failure Detection
• Once a failure has been detected, appropriate action must be
taken.
• What action is appropriate depends on the particular
application
• To detect link and site failure, we use a heartbeat procedure
• Suppose that sites A and B have a direct physical link between
them.
• At fixed intervals, the sites send each other an I-am-up
message.
• If site A does not receive this message within a predetermined
time period, it can assume that the link between A and B has
failed
• Reconfiguration
• Suppose that site A has discovered, that a failure has
occurred. It must then initiate a procedure that will allow the
system to reconfigure and to continue its normal mode of
operation

• Recovery from Failure


• When a failed link or site is repaired, it must be integrated
into the system gracefully and smoothly

• Fault Tolerance
• A distributed system must tolerate a certain level of failure
and continue to function normally when faced with various
types of failures
Design Issues
• Storage devices transparent to the users has been a key
challenge to many designers
• Users should be able to access remote resources as though
these resources were local
• Another aspect of transparency is user mobility. It would be
convenient to allow users to log into any machine
• Another issue is scalability —the capability of a system to
adapt to increased service load
Distributed File Systems
• Another important and popular use of distributed computing
is the distributed file system, or DFS
• In the DFS context, we need to define the following
• A service is a software entity running on one or more
machines and providing a particular type of function to
clients.
• A server is the service software running on a single machine.
• A client is a process that can invoke a service using a set of
operations
Case Studies - The Linux System
• Linux is a variant of UNIX that has gained popularity over the
last several decades
• Linux presents interfaces that owe a great deal to the UNIX
tradition
• Linux is a rapidly evolving operating system
• Linux looks and feels much like any other UNIX system
• Its development began in 1991, when a Finnish university
student, Linus Torvalds, began developing
• Early in its development, the Linux source code was made
available free
• The first Linux kernel released to the public was version 0.01,
dated May 14, 1991.
• It had no networking, ran only on 80386-compatible Intel
processors
• Improvements continued with the release of Linux
• Networking was enhanced with more flexible firewalling,
improved routing and traffic management
• The basic principle of UNIX process management is to
separate into two steps two operations
• A new process is created by the fork() system call, and a new
program is run after a call to exec().
• Memory management under Linux has two components.
• The first deals with allocating and freeing physical memory.
• The second handles virtual memory.
Windows
• Microsoft’s design goals for Windows included security, reliability,
high performance, extensibility, portability, and international
support.
• Windows was designed to provide high performance on desktop
systems, extended to server systems
• By the time Windows 10 was developed, several major changes had
come to computing. Client/server computing had increased in
importance
• Windows is written primarily in C and C++. The architecture-specific
source code is relatively small, and there is very little use of
assembly code
• Windows was designed for international and multinational use.

You might also like