SlideShare a Scribd company logo
1 of 8
qwertyuiopasdfghjklzxcvbnmqwertyui
opasdfgh
jklzxcvbnmqwertyuiopasdfghjklzxcvb
nmqwertyuiopasdfghjklzxcvbnmqwer
tyuiopasdfghjklzxcvbnmqwertyuiopas
dfghjklzxcvbnmqwertyuiopasdfghjklzx
cvbnmqwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqwertyuio
pasdfghjklzxcvbnmqwertyuiopasdfghj
klzxcvbnmqwertyuiopasdfghjklzxcvbn
mqwertyuiopasdfghjklzxcvbnmqwerty
uiopasdfghjklzxcvbnmqwertyuiopasdf
ghjklzxcvbnmqwertyuiopasdfghjklzxc
vbnmqwertyuiopasdfghjklzxcvbnmqw
ertyuiopasdfghjklzxcvbnmrtyuiopasdf
ghjklzxcvbnmqwertyuiopasdfghjklzxc
Advanced Operating Systems (Distributed Systems)
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 2
1.Differentiate between tightly coupled and loosely
coupled systems
Computer architectures consisting of interconnected, multiple processors are basically of
two types:
In tightly coupled systems, there is a single system wide primary memory (address
space) that is shared by all the processors (Fig. 1.1). If any processor writes, for example,
the value 100 to the memory location x, any other processor subsequently reading from
location x will get the value 100. Therefore, in these systems, any communication between
the processors usually takes place through the shared memory.
In loosely coupled systems, the processors do not share memory, and each processor
has its own local memory (Fig. 1.2). If a processor writes the value 100 to the memory
location x, this write operation will only change the contents of its local memory and will not
affect the contents of the memory of any other processor. Hence, if another processor reads
the memory location x, it will get whatever value was there before in that location of its own
local memory. In these systems, all physical communication between the processors is done
by passing messages across the network that interconnects the processors.
Usually, tightly coupled systems are referred to as parallel processing systems, and loosely
coupled systems are referred to as distributed computing systems, or simply distributed
systems. In contrast to the tightly coupled systems, the processors of distributed computing
systems can be located far from each other to cover a wider geographical area.
Furthermore, in tightly coupled systems, the number of processors that can be usefully
deployed is usually small and limited by the bandwidth of the shared memory. This is not
the case with distributed computing systems that are more freely expandable and can have
an almost unlimited number of processors.
Tightly Coupled Multiprocessor Systems
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 3
Loosely Coupled Multiprocessor Systems
Hence, a distributed computing system is basically 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 over the communication network. For a particular
processor, its own resources are local, whereas the other processors and their resources are
remote. Together, a processor and its resources are usually referred to as a node or site or
machine of the distributed computing system.
2.
Describe about Buffering. What are the four types
of buffering strategies?
The transmission of messages from one process to another can be done by copying the
body of the message from the sender’s address space to the receiver’s address space. In
some cases, the receiving process may not be ready to receive the message but it wants
the operating system to save that message for later reception. In such cases, the operating
system would rely on the receiver’s buffer space in which the transmitted messages can be
stored prior to receiving process executing specific code to receive the message.
The synchronous and asynchronous modes of communication correspond to the two
extremes of buffering: a null buffer, or no buffering, and a buffer with unbounded capacity.
Two other commonly used buffering strategies are
single-message and finite-bound, or multiple message buffers. These four types of buffering
strategies are given below:
No buffering: In this case, message remains in the sender’s address space until the
receiver executes the corresponding receive.
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 4
Single message buffer: A buffer to hold a single message at the receiver side is
used. It is used for implementing synchronous communication because in this case
an application can have only one outstanding message at any given time.
Unbounded - Capacity buffer: Convenient to support asynchronous
communication. However, it is impossible to support unbounded buffer.
Finite-Bound Buffer: Used for supporting asynchronous communication.
3.
Define DSM. Discuss any four design and
implementation issues of DSM.
This is also called DSVM (Distributed Shared Virtual Memory). It is a loosely coupled
distributed-memory system that has implemented a software layer on top of the
message passing system to provide a shared memory abstraction for the programmers.
The software layer can be implemented in the OS kernel or in runtime library routines
with proper kernel support. It is an abstraction that integrates local memory of different
machines in a network environment into a single logical entity shared by cooperating
processes executing on multiple sites. Shared memory exists only virtually.
DSM Systems: A comparison between message passing and tightly coupled
multiprocessor systems
DSM provides a simpler abstraction than the message passing model. It relieves the burden
from the programmer from explicitly using communication primitives in their programs.
In message passing systems, passing complex data structures between two different
processes is difficult. Moreover, passing data structures containing pointers is generally
expensive in message passing model.
Distributed Shared Memory takes advantage of the locality of reference exhibited by
programs and improves efficiency.
Distributed Shared Memory systems are cheaper to build than tightly coupled
multiprocessor systems.
The large physical memory available facilitates running programs requiring large
memory efficiently.
DSM can scale well when compared to tightly coupled multiprocessor systems.
Message passing system allows processes to communicate with each other while being
protected from one another by having private address spaces, whereas in DSM one can
cause another to fail by erroneously altering data.
When message passing is used between heterogeneous computers marshaling of data takes
care of differences in data representation; how can memory be shared between computers
with different integer representation.
DSM can be made persistent - i.e. processes communicating via DSM may execute with
overlapping lifetimes.
A process can leave information in an agreed location to another process. Processes
communicating via message passing must execute at the same time.
Which is better? Message passing or Distributed Shared Memory? Distributed Shared
Memory appears to be a promising tool if it can be implemented efficiently.
Distributed Shared Memory Architecture
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 5
As shown in the above figure, the DSM provides a virtual address space shared among
processes on loosely coupled processors. DSM is basically an abstraction that integrates
the local memory of different machines in a network environment into a single local
entity shared by cooperating processes executing on multiple sites. The shared memory
itself exists only virtually. The application programs can use it in the same way as
traditional virtual memory, except that processes using it can run on different machines
in parallel.
DSM – Design and Implementation Issues
The important issues involved in the design and implementation of DSM systems are as
follows:
Granularity: It refers to the block size of the DSM system, i.e. to the units of sharing and
the unit of data transfer across the network when a network block fault occurs. Possible
units are a few words, a page, or a few pages.
Structure of Shared Memory Space: The structure refers to the Lay out of the shared
data in memory. It is dependent on the type of applications that the DSM system is
intended to support.
Memory coherence and access synchronization: Coherence (consistency) refers to
memory coherence problem that deals with the consistency of shared data that lies in the
main memory of two or more nodes. Synchronization refers to synchronization of
concurrent access to shared data using synchronization primitives such as semaphores.
Data Location and Access: A DSM system must implement mechanisms to locate data
blocks in order to service the network data block faults to meet the requirements of the
memory coherence semantics being used.
Block Replacement Policy: If the local memory of a node is full, a cache miss at that
node implies not only a fetch of the accessed data block from a remote node but also a
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 6
replacement. i.e. a data block of the local memory must be replaced by the new data
block. Therefore a block replacement policy is also necessary in the design of a DSM
system.
Thrashing: In a DSM system, data blocks migrate between nodes on demand. If two nodes
compete for write access to a single data item, the corresponding data block may be
transferred back and forth at such a high rate that no real work can get done. A DSM
system must use a policy to avoid this situation (known as Thrashing).
Heterogeneity: The DSM systems built in for homogenous systems need not address
the heterogeneity issue. However, if the underlying system environment is
heterogeneous, the DSM system must be designed to take care of heterogeneity so that
it functions properly with machines having different architectures.
4. Discuss any five features of good global scheduling algorithm
No a priori Knowledge about the process: A good process scheduling algorithm
should operate with absolutely no a priori knowledge about the processes.
ii) Dynamic in Nature: It is intended that a good process-scheduling algorithm
should be able to take care of the dynamically changing load at various nodes.
The process assignment decisions should be based on the current load of the
system and not on some fixed static policy.
iii) Quick Decision Making: A good process scheduling algorithm must be
capable of taking quick decisions regarding node assignment for processes.
iv) Scheduling overhead: The general observation is that as overhead is
increased in an attempt to obtain more information regarding the global state
of the system, the usefulness of the information is decreased due to both the
aging of the information gathered and the low scheduling frequency as a result
of the cost of gathering and processing that information. Hence algorithms that
provide near optimal system performance with a minimum of global state
information gathering overhead are desirable.
Stability: The algorithm should be stable: i.e., the system should not enter a state in which
nodes spend all their time migrating processes or exchanging control messages without
doing any useful work.
vi) Scalable: The algorithm should be scalable i.e. the system should be able to handle
small and large networked systems. A simple approach to make an algorithm scalable is to
probe only m of N nodes for selecting a host. The value of m can be dynamically adjusted
depending on the value of N.
vii) Fault Tolerance: The algorithm should not be affected by the crash of one or more
nodes in the system. At any instance of time, it should continue functioning for nodes that
are up at that time. Algorithms that have decentralized decision making a capability and
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 7
consider only available nodes in their decision making approach have better fault tolerance
capability.
viii) Fairness of service: How fairly a service is allocated is a common concern. For
example, two users simultaneously initiating equivalent processes should receive the same
quality of service. What is desirable is a fair strategy that will improve response time to the
former without unduly affecting the latter. For this the concept of load balancing has to be
replaced by load-sharing, i.e., a node will share some of its resources as long as its users
are not significantly affected.
5.What is replication? Discuss the three replication approaches in DFS
The main approach to improving the performance and fault tolerance of a DFS is to replicate
its content. A replicating DFS maintains multiple copies of files on different servers. This can
prevent data loss, protect a system against down time of a single server, and distribute the
overall workload.
There are three approaches to replication in a DFS:
1. Explicit replication: The client explicitly writes files to multiple servers. This approach
requires explicit support from the client and does not provide transparency.
2. Lazy file replication: The server automatically copies files to other servers after the
files are written. Remote files are only brought up to date when the files are sent to the
server. How often this happens is up to the implementation and affects the consistency of
the file state.
3. Group file replication: write requests are simultaneously sent to a group of servers.
This keeps all the replicas up to date, and allows clients to read consistent file state from
any replica.
6.
List and explain the desirable features of good naming
system
A good naming system for a distributed system should have the following features:
i) Location transparency
The name of an object should not reveal any hint about the physical location of the object
ii) Location independency
Name of an object should not be required to be changed when the object’s location
changes. Thus
Advanced Operating Systems (Distributed Systems)
M.C.A vth sem Page 8
physical location
iii) Scalability
Naming system should be able to handle the dynamically changing scale of a distributed
system
iv) Uniform naming convention
Should use the same naming conventions for all types of objects in the system
v) Multiple user-defined names for the same object
Naming system should provide the flexibility to assign multiple user-defined names for the
same object.
vi) Grouping name
Naming system should allow many different objects to be identified by the same name.
vii) Meaningful names
A naming system should support at least two levels of subject identifiers, one convenient
for human users and the other convenient for machines.

More Related Content

What's hot

Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037
Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037
Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037
Upendra Sengar
 
Distributed document based system
Distributed document based systemDistributed document based system
Distributed document based system
Chetan Selukar
 
20. Parallel Databases in DBMS
20. Parallel Databases in DBMS20. Parallel Databases in DBMS
20. Parallel Databases in DBMS
koolkampus
 

What's hot (20)

Structure of shared memory space
Structure of shared memory spaceStructure of shared memory space
Structure of shared memory space
 
Sequential consistency model
Sequential consistency modelSequential consistency model
Sequential consistency model
 
Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037
Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037
Term paper of cse(211) avdhesh sharma c1801 a24 regd 10802037
 
Distributed Shared Memory on Ericsson Labs
Distributed Shared Memory on Ericsson LabsDistributed Shared Memory on Ericsson Labs
Distributed Shared Memory on Ericsson Labs
 
Pdc chapter1
Pdc chapter1Pdc chapter1
Pdc chapter1
 
S peculative multi
S peculative multiS peculative multi
S peculative multi
 
Distributed document based system
Distributed document based systemDistributed document based system
Distributed document based system
 
Distributed system lectures
Distributed system lecturesDistributed system lectures
Distributed system lectures
 
20. Parallel Databases in DBMS
20. Parallel Databases in DBMS20. Parallel Databases in DBMS
20. Parallel Databases in DBMS
 
message passing vs shared memory
message passing vs shared memorymessage passing vs shared memory
message passing vs shared memory
 
Lecture 03 - Synchronous and Asynchronous Communication - Concurrency - Fault...
Lecture 03 - Synchronous and Asynchronous Communication - Concurrency - Fault...Lecture 03 - Synchronous and Asynchronous Communication - Concurrency - Fault...
Lecture 03 - Synchronous and Asynchronous Communication - Concurrency - Fault...
 
shashank_spdp1993_00395543
shashank_spdp1993_00395543shashank_spdp1993_00395543
shashank_spdp1993_00395543
 
Distributed system unit II according to syllabus of RGPV, Bhopal
Distributed system unit II according to syllabus of  RGPV, BhopalDistributed system unit II according to syllabus of  RGPV, Bhopal
Distributed system unit II according to syllabus of RGPV, Bhopal
 
Terminologies Used In Big data Environments,G.Sumithra,II-M.sc(computer scien...
Terminologies Used In Big data Environments,G.Sumithra,II-M.sc(computer scien...Terminologies Used In Big data Environments,G.Sumithra,II-M.sc(computer scien...
Terminologies Used In Big data Environments,G.Sumithra,II-M.sc(computer scien...
 
Automated re allocator of replicas
Automated re allocator of replicasAutomated re allocator of replicas
Automated re allocator of replicas
 
Ch20
Ch20Ch20
Ch20
 
Compiler design
Compiler designCompiler design
Compiler design
 
Routing mee
Routing meeRouting mee
Routing mee
 
Distributed Shared Memory – A Survey and Implementation Using Openshmem
Distributed Shared Memory – A Survey and Implementation Using OpenshmemDistributed Shared Memory – A Survey and Implementation Using Openshmem
Distributed Shared Memory – A Survey and Implementation Using Openshmem
 
Design and implementation of 4 t, 3t and 3t1d dram cell design on 32 nm techn...
Design and implementation of 4 t, 3t and 3t1d dram cell design on 32 nm techn...Design and implementation of 4 t, 3t and 3t1d dram cell design on 32 nm techn...
Design and implementation of 4 t, 3t and 3t1d dram cell design on 32 nm techn...
 

Viewers also liked

Operating system and its function
Operating system and its functionOperating system and its function
Operating system and its function
Nikhi Jain
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)
Vaibhav Bajaj
 

Viewers also liked (13)

Operating System Concepts Presentation
Operating System Concepts PresentationOperating System Concepts Presentation
Operating System Concepts Presentation
 
Seminar on mobile os
Seminar on mobile osSeminar on mobile os
Seminar on mobile os
 
Tizen operating system seminar ppt
Tizen operating system seminar pptTizen operating system seminar ppt
Tizen operating system seminar ppt
 
Semaphores OS Basics
Semaphores OS BasicsSemaphores OS Basics
Semaphores OS Basics
 
Advanced Operating System- Introduction
Advanced Operating System- IntroductionAdvanced Operating System- Introduction
Advanced Operating System- Introduction
 
Operating system critical section
Operating system   critical sectionOperating system   critical section
Operating system critical section
 
Semaphores
SemaphoresSemaphores
Semaphores
 
OS Process Synchronization, semaphore and Monitors
OS Process Synchronization, semaphore and MonitorsOS Process Synchronization, semaphore and Monitors
OS Process Synchronization, semaphore and Monitors
 
Giáo trình xuất bản vẽ Autodesk Inventor 2015 ( Advance CAD)
Giáo trình xuất bản vẽ Autodesk Inventor 2015 ( Advance CAD)Giáo trình xuất bản vẽ Autodesk Inventor 2015 ( Advance CAD)
Giáo trình xuất bản vẽ Autodesk Inventor 2015 ( Advance CAD)
 
Operating system and its function
Operating system and its functionOperating system and its function
Operating system and its function
 
Operating Systems
Operating SystemsOperating Systems
Operating Systems
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)
 
Operating system overview concepts ppt
Operating system overview concepts pptOperating system overview concepts ppt
Operating system overview concepts ppt
 

Similar to Advance Operating Systems

distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memory
Ashish Kumar
 
Distributed shared memory shyam soni
Distributed shared memory shyam soniDistributed shared memory shyam soni
Distributed shared memory shyam soni
Shyam Soni
 
MC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DE
MC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DEMC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DE
MC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DE
Aravind NC
 
Grid computing dis
Grid computing disGrid computing dis
Grid computing dis
gopishna09
 

Similar to Advance Operating Systems (20)

Dos unit3
Dos unit3Dos unit3
Dos unit3
 
Distributed Shared Memory notes in distributed systems.pptx
Distributed Shared Memory notes in distributed systems.pptxDistributed Shared Memory notes in distributed systems.pptx
Distributed Shared Memory notes in distributed systems.pptx
 
Distributed Shared Memory Systems
Distributed Shared Memory SystemsDistributed Shared Memory Systems
Distributed Shared Memory Systems
 
Distributed Shared Memory-jhgfdsserty.pdf
Distributed Shared Memory-jhgfdsserty.pdfDistributed Shared Memory-jhgfdsserty.pdf
Distributed Shared Memory-jhgfdsserty.pdf
 
distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memory
 
Distributed shared memory shyam soni
Distributed shared memory shyam soniDistributed shared memory shyam soni
Distributed shared memory shyam soni
 
Chapter One.ppt
Chapter One.pptChapter One.ppt
Chapter One.ppt
 
Overview of Distributed Systems
Overview of Distributed SystemsOverview of Distributed Systems
Overview of Distributed Systems
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
 
Distributed system notes unit I
Distributed system notes unit IDistributed system notes unit I
Distributed system notes unit I
 
Distributed Shared Memory – A Survey and Implementation Using Openshmem
Distributed Shared Memory – A Survey and Implementation Using OpenshmemDistributed Shared Memory – A Survey and Implementation Using Openshmem
Distributed Shared Memory – A Survey and Implementation Using Openshmem
 
6.distributed shared memory
6.distributed shared memory6.distributed shared memory
6.distributed shared memory
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
MC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DE
MC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DEMC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DE
MC0085 – Advanced Operating Systems - Master of Computer Science - MCA - SMU DE
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
Distributed Shared Memory
Distributed Shared MemoryDistributed Shared Memory
Distributed Shared Memory
 
Distribution transparency and Distributed transaction
Distribution transparency and Distributed transactionDistribution transparency and Distributed transaction
Distribution transparency and Distributed transaction
 
Distributed computing ).ppt him
Distributed computing ).ppt himDistributed computing ).ppt him
Distributed computing ).ppt him
 
Grid computing dis
Grid computing disGrid computing dis
Grid computing dis
 

More from Raghu nath

Ftp (file transfer protocol)
Ftp (file transfer protocol)Ftp (file transfer protocol)
Ftp (file transfer protocol)
Raghu nath
 
Javascript part1
Javascript part1Javascript part1
Javascript part1
Raghu nath
 
Regular expressions
Regular expressionsRegular expressions
Regular expressions
Raghu nath
 
Selection sort
Selection sortSelection sort
Selection sort
Raghu nath
 
Binary search
Binary search Binary search
Binary search
Raghu nath
 
JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)
Raghu nath
 
Stemming algorithms
Stemming algorithmsStemming algorithms
Stemming algorithms
Raghu nath
 
Step by step guide to install dhcp role
Step by step guide to install dhcp roleStep by step guide to install dhcp role
Step by step guide to install dhcp role
Raghu nath
 
Network essentials chapter 4
Network essentials  chapter 4Network essentials  chapter 4
Network essentials chapter 4
Raghu nath
 
Network essentials chapter 3
Network essentials  chapter 3Network essentials  chapter 3
Network essentials chapter 3
Raghu nath
 
Network essentials chapter 2
Network essentials  chapter 2Network essentials  chapter 2
Network essentials chapter 2
Raghu nath
 
Network essentials - chapter 1
Network essentials - chapter 1Network essentials - chapter 1
Network essentials - chapter 1
Raghu nath
 
Python chapter 2
Python chapter 2Python chapter 2
Python chapter 2
Raghu nath
 
python chapter 1
python chapter 1python chapter 1
python chapter 1
Raghu nath
 
Linux Shell Scripting
Linux Shell ScriptingLinux Shell Scripting
Linux Shell Scripting
Raghu nath
 

More from Raghu nath (20)

Mongo db
Mongo dbMongo db
Mongo db
 
Ftp (file transfer protocol)
Ftp (file transfer protocol)Ftp (file transfer protocol)
Ftp (file transfer protocol)
 
MS WORD 2013
MS WORD 2013MS WORD 2013
MS WORD 2013
 
Msword
MswordMsword
Msword
 
Ms word
Ms wordMs word
Ms word
 
Javascript part1
Javascript part1Javascript part1
Javascript part1
 
Regular expressions
Regular expressionsRegular expressions
Regular expressions
 
Selection sort
Selection sortSelection sort
Selection sort
 
Binary search
Binary search Binary search
Binary search
 
JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)
 
Stemming algorithms
Stemming algorithmsStemming algorithms
Stemming algorithms
 
Step by step guide to install dhcp role
Step by step guide to install dhcp roleStep by step guide to install dhcp role
Step by step guide to install dhcp role
 
Network essentials chapter 4
Network essentials  chapter 4Network essentials  chapter 4
Network essentials chapter 4
 
Network essentials chapter 3
Network essentials  chapter 3Network essentials  chapter 3
Network essentials chapter 3
 
Network essentials chapter 2
Network essentials  chapter 2Network essentials  chapter 2
Network essentials chapter 2
 
Network essentials - chapter 1
Network essentials - chapter 1Network essentials - chapter 1
Network essentials - chapter 1
 
Python chapter 2
Python chapter 2Python chapter 2
Python chapter 2
 
python chapter 1
python chapter 1python chapter 1
python chapter 1
 
Linux Shell Scripting
Linux Shell ScriptingLinux Shell Scripting
Linux Shell Scripting
 
Perl
PerlPerl
Perl
 

Recently uploaded

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Recently uploaded (20)

Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
latest AZ-104 Exam Questions and Answers
latest AZ-104 Exam Questions and Answerslatest AZ-104 Exam Questions and Answers
latest AZ-104 Exam Questions and Answers
 
Basic Intentional Injuries Health Education
Basic Intentional Injuries Health EducationBasic Intentional Injuries Health Education
Basic Intentional Injuries Health Education
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Philosophy of china and it's charactistics
Philosophy of china and it's charactisticsPhilosophy of china and it's charactistics
Philosophy of china and it's charactistics
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 

Advance Operating Systems

  • 2. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 2 1.Differentiate between tightly coupled and loosely coupled systems Computer architectures consisting of interconnected, multiple processors are basically of two types: In tightly coupled systems, there is a single system wide primary memory (address space) that is shared by all the processors (Fig. 1.1). If any processor writes, for example, the value 100 to the memory location x, any other processor subsequently reading from location x will get the value 100. Therefore, in these systems, any communication between the processors usually takes place through the shared memory. In loosely coupled systems, the processors do not share memory, and each processor has its own local memory (Fig. 1.2). If a processor writes the value 100 to the memory location x, this write operation will only change the contents of its local memory and will not affect the contents of the memory of any other processor. Hence, if another processor reads the memory location x, it will get whatever value was there before in that location of its own local memory. In these systems, all physical communication between the processors is done by passing messages across the network that interconnects the processors. Usually, tightly coupled systems are referred to as parallel processing systems, and loosely coupled systems are referred to as distributed computing systems, or simply distributed systems. In contrast to the tightly coupled systems, the processors of distributed computing systems can be located far from each other to cover a wider geographical area. Furthermore, in tightly coupled systems, the number of processors that can be usefully deployed is usually small and limited by the bandwidth of the shared memory. This is not the case with distributed computing systems that are more freely expandable and can have an almost unlimited number of processors. Tightly Coupled Multiprocessor Systems
  • 3. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 3 Loosely Coupled Multiprocessor Systems Hence, a distributed computing system is basically 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 over the communication network. For a particular processor, its own resources are local, whereas the other processors and their resources are remote. Together, a processor and its resources are usually referred to as a node or site or machine of the distributed computing system. 2. Describe about Buffering. What are the four types of buffering strategies? The transmission of messages from one process to another can be done by copying the body of the message from the sender’s address space to the receiver’s address space. In some cases, the receiving process may not be ready to receive the message but it wants the operating system to save that message for later reception. In such cases, the operating system would rely on the receiver’s buffer space in which the transmitted messages can be stored prior to receiving process executing specific code to receive the message. The synchronous and asynchronous modes of communication correspond to the two extremes of buffering: a null buffer, or no buffering, and a buffer with unbounded capacity. Two other commonly used buffering strategies are single-message and finite-bound, or multiple message buffers. These four types of buffering strategies are given below: No buffering: In this case, message remains in the sender’s address space until the receiver executes the corresponding receive.
  • 4. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 4 Single message buffer: A buffer to hold a single message at the receiver side is used. It is used for implementing synchronous communication because in this case an application can have only one outstanding message at any given time. Unbounded - Capacity buffer: Convenient to support asynchronous communication. However, it is impossible to support unbounded buffer. Finite-Bound Buffer: Used for supporting asynchronous communication. 3. Define DSM. Discuss any four design and implementation issues of DSM. This is also called DSVM (Distributed Shared Virtual Memory). It is a loosely coupled distributed-memory system that has implemented a software layer on top of the message passing system to provide a shared memory abstraction for the programmers. The software layer can be implemented in the OS kernel or in runtime library routines with proper kernel support. It is an abstraction that integrates local memory of different machines in a network environment into a single logical entity shared by cooperating processes executing on multiple sites. Shared memory exists only virtually. DSM Systems: A comparison between message passing and tightly coupled multiprocessor systems DSM provides a simpler abstraction than the message passing model. It relieves the burden from the programmer from explicitly using communication primitives in their programs. In message passing systems, passing complex data structures between two different processes is difficult. Moreover, passing data structures containing pointers is generally expensive in message passing model. Distributed Shared Memory takes advantage of the locality of reference exhibited by programs and improves efficiency. Distributed Shared Memory systems are cheaper to build than tightly coupled multiprocessor systems. The large physical memory available facilitates running programs requiring large memory efficiently. DSM can scale well when compared to tightly coupled multiprocessor systems. Message passing system allows processes to communicate with each other while being protected from one another by having private address spaces, whereas in DSM one can cause another to fail by erroneously altering data. When message passing is used between heterogeneous computers marshaling of data takes care of differences in data representation; how can memory be shared between computers with different integer representation. DSM can be made persistent - i.e. processes communicating via DSM may execute with overlapping lifetimes. A process can leave information in an agreed location to another process. Processes communicating via message passing must execute at the same time. Which is better? Message passing or Distributed Shared Memory? Distributed Shared Memory appears to be a promising tool if it can be implemented efficiently. Distributed Shared Memory Architecture
  • 5. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 5 As shown in the above figure, the DSM provides a virtual address space shared among processes on loosely coupled processors. DSM is basically an abstraction that integrates the local memory of different machines in a network environment into a single local entity shared by cooperating processes executing on multiple sites. The shared memory itself exists only virtually. The application programs can use it in the same way as traditional virtual memory, except that processes using it can run on different machines in parallel. DSM – Design and Implementation Issues The important issues involved in the design and implementation of DSM systems are as follows: Granularity: It refers to the block size of the DSM system, i.e. to the units of sharing and the unit of data transfer across the network when a network block fault occurs. Possible units are a few words, a page, or a few pages. Structure of Shared Memory Space: The structure refers to the Lay out of the shared data in memory. It is dependent on the type of applications that the DSM system is intended to support. Memory coherence and access synchronization: Coherence (consistency) refers to memory coherence problem that deals with the consistency of shared data that lies in the main memory of two or more nodes. Synchronization refers to synchronization of concurrent access to shared data using synchronization primitives such as semaphores. Data Location and Access: A DSM system must implement mechanisms to locate data blocks in order to service the network data block faults to meet the requirements of the memory coherence semantics being used. Block Replacement Policy: If the local memory of a node is full, a cache miss at that node implies not only a fetch of the accessed data block from a remote node but also a
  • 6. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 6 replacement. i.e. a data block of the local memory must be replaced by the new data block. Therefore a block replacement policy is also necessary in the design of a DSM system. Thrashing: In a DSM system, data blocks migrate between nodes on demand. If two nodes compete for write access to a single data item, the corresponding data block may be transferred back and forth at such a high rate that no real work can get done. A DSM system must use a policy to avoid this situation (known as Thrashing). Heterogeneity: The DSM systems built in for homogenous systems need not address the heterogeneity issue. However, if the underlying system environment is heterogeneous, the DSM system must be designed to take care of heterogeneity so that it functions properly with machines having different architectures. 4. Discuss any five features of good global scheduling algorithm No a priori Knowledge about the process: A good process scheduling algorithm should operate with absolutely no a priori knowledge about the processes. ii) Dynamic in Nature: It is intended that a good process-scheduling algorithm should be able to take care of the dynamically changing load at various nodes. The process assignment decisions should be based on the current load of the system and not on some fixed static policy. iii) Quick Decision Making: A good process scheduling algorithm must be capable of taking quick decisions regarding node assignment for processes. iv) Scheduling overhead: The general observation is that as overhead is increased in an attempt to obtain more information regarding the global state of the system, the usefulness of the information is decreased due to both the aging of the information gathered and the low scheduling frequency as a result of the cost of gathering and processing that information. Hence algorithms that provide near optimal system performance with a minimum of global state information gathering overhead are desirable. Stability: The algorithm should be stable: i.e., the system should not enter a state in which nodes spend all their time migrating processes or exchanging control messages without doing any useful work. vi) Scalable: The algorithm should be scalable i.e. the system should be able to handle small and large networked systems. A simple approach to make an algorithm scalable is to probe only m of N nodes for selecting a host. The value of m can be dynamically adjusted depending on the value of N. vii) Fault Tolerance: The algorithm should not be affected by the crash of one or more nodes in the system. At any instance of time, it should continue functioning for nodes that are up at that time. Algorithms that have decentralized decision making a capability and
  • 7. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 7 consider only available nodes in their decision making approach have better fault tolerance capability. viii) Fairness of service: How fairly a service is allocated is a common concern. For example, two users simultaneously initiating equivalent processes should receive the same quality of service. What is desirable is a fair strategy that will improve response time to the former without unduly affecting the latter. For this the concept of load balancing has to be replaced by load-sharing, i.e., a node will share some of its resources as long as its users are not significantly affected. 5.What is replication? Discuss the three replication approaches in DFS The main approach to improving the performance and fault tolerance of a DFS is to replicate its content. A replicating DFS maintains multiple copies of files on different servers. This can prevent data loss, protect a system against down time of a single server, and distribute the overall workload. There are three approaches to replication in a DFS: 1. Explicit replication: The client explicitly writes files to multiple servers. This approach requires explicit support from the client and does not provide transparency. 2. Lazy file replication: The server automatically copies files to other servers after the files are written. Remote files are only brought up to date when the files are sent to the server. How often this happens is up to the implementation and affects the consistency of the file state. 3. Group file replication: write requests are simultaneously sent to a group of servers. This keeps all the replicas up to date, and allows clients to read consistent file state from any replica. 6. List and explain the desirable features of good naming system A good naming system for a distributed system should have the following features: i) Location transparency The name of an object should not reveal any hint about the physical location of the object ii) Location independency Name of an object should not be required to be changed when the object’s location changes. Thus
  • 8. Advanced Operating Systems (Distributed Systems) M.C.A vth sem Page 8 physical location iii) Scalability Naming system should be able to handle the dynamically changing scale of a distributed system iv) Uniform naming convention Should use the same naming conventions for all types of objects in the system v) Multiple user-defined names for the same object Naming system should provide the flexibility to assign multiple user-defined names for the same object. vi) Grouping name Naming system should allow many different objects to be identified by the same name. vii) Meaningful names A naming system should support at least two levels of subject identifiers, one convenient for human users and the other convenient for machines.