SlideShare a Scribd company logo
Clock (Synchronization)
   All computers have a circuit for keeping track of time, this is know as
    Clock or Timer.

   When the system is booted, it usually asks for the user to enter the date and
    time, which is then converted to the number of ticks after same known
    starting date and stored in memory.

   In a distributed system, synchronized clock also enable one to measure the
    duration of distributed activities that start on one node and terminate on
    another node, for instance, calculating the time taken to transmit a message
    from one node to another at any arbitrary time.




                                                                                1
How Computer Clock Are Implemented :

   A computer clock usually consist of three component :
        1. A quartz crystal
                          - It is oscillates at a well defined frequency.

         2. A Counter register
                          - It is used to keep track of the oscillation of the
                            quartz crystal.

         3. A Constant register
                          - It is used to store a constant value that is decided

                              based on the frequency of oscillation of the
    quartz
                              crystal.                                             2
   The value in the counter register is determine by 1 for each oscillation of
    the quartz crystal. When the value of the counter register become zero, an
    interrupt is generated and its value is reinitialized to the value in the
    constant register, Each interrupt is called a clock tick.

   The clock in the constant register is chosen so that 60 clock ticks occur in a
    second.

   The computer clock is synchronized with real time. For this, two more
    values are stored in the system :
                             a) A fixed string date and time , and
                             b) The number of ticks




                                                                                  3
   A clock always runs at a constant rate. Let us suppose that when the real
    time is t, the time value of a clock p is Cp(t).

   If all clock in the world were perfectly synchronized, we would have
    Cp(t)=t for all p and all t. That is, if C denotes that time value of a clock,
    in the ideal case dC/dt should be 1. Therefore, if the maximum drift rate
    allowable is p, a clock is said to be no-fault if the following condition hold
    for it :

                            1-p<=dC/dt<=1+p


   For the slow clocks dCdt <1 and for fast clock dC/dt>1.

   A distributed system consist of several nodes, each with its own clock,
    running at its own speed. Because of non zero drift rates of all clocks, the
    set of clock of a distributed system do not remain well synchronizes
    without some periodic resynchronization.

                                                                                     4
Real Time




            5
   This means that the nodes of a distributed system must periodically
    resynchronize their local clock to maintain a global time base across the
    entire system. A distributed system require the following type of clock
    synchronized :

    1. synchronization of the computer clock with real time or external clock.

    2. Mutual or internal synchronization of the clocks of different nodes of the
    system.

* Externally synchronized clocks are also internally synchronized.




                                                                                 6
Clock Synchronization Algorithms :
    Clock Synchronization Algorithms may be broadly classified as ,

        1. Centralized

        2. Distributed

7.   Centralized Algorithms:
                  In centralized clock Synchronization algorithm one node has
     a real time receiver. This node is usually called the time server node, and
     the clock time of this node is regarded as correct and used as the
     reference time. The goal of the algorithm is to keep the clocks of all
     other nodes Synchronized with the clock time of the time server node.




                                                                               7
Centralized clock synchronization algorithm are again of two
    types:

                 a) Passive Time Server Centralized Algorithm

                 b) Active Time Server Centralized Algorithm

g)   Passive Time Server Centralized Algorithm :
                      In this method each node periodically sends a message
     to the time server. When the time server receives the message, it quickly
     responds with a message.

     The best estimation of the time required for the propagation of the
     message “time=T” from the time server node to client’s node is (T1-T0)/
     2.Threrfore, when the reply is received at the client’s node, its clock is
     readjusted to T+ (T1-T0)/2.


                                                                                  8
Here,
        T= is the Current time in the clock of the time server node
        T0=clock time of client node before receiving message
        T1=clock time of client node after receiving message


b) Active Time Server Centralized Algorithm:
              -In the active time server approach, the time server
   periodically broadcasts its clock (T). Other node received the broadcast
   message and use the clock time in the message of correcting their own
   clocks. Each node has a prior knowledge of the approximate time (Ta)
   required for the propagation of the message “time=T ” from the time server
   node to its own clock. Therefore, when the broadcast message is received
   at a node, the node’s clock is readjust to the time T+ Ta .

   A major drawback of this method is that it is not fault Tolerant.



                                                                            9
Drawback of Centralized Algorithms:
    Centralized clock synchronization Algorithms suffer from two
      major drawbacks :

       They are subject to single point failure. If the server node fail, the
        clock synchronization operation cannot be performed.

       From a scalability point of view it is generally not acceptable to
        get all the time request serviced by a single time server.



    * These drawbacks overcome by distributed algorithms.




                                                                             10
2. Distributed Algorithms :

    If each node’s clock independently synchronized with the real time , all
     the clocks of the system remain mutually synchronized.

    Internal synchronization of clock is not required in this approach.

    Following two approaches is usually used for internal synchronization :


                 1. Global Averaging Distributed Algorithms

                 2. Localized averaging Distributed Algorithms




                                                                                11
1. Global Averaging Distributed Algorithms :

   In this approach, the clock process at each node broadcast its local clock
    time in the from of a special “ resync ” Message.

   That “ resync ” Message is broadcast from each node at the beginning of
    every fixed length resynchronization interval.

   For each “ resync ” Message, the clock process record the time, according
    to its own clock, when the message was received. At end of waiting period,
    the clock process estimate the skew of its clock with respect to each of the
    other nodes on the basis of the times at which it received resync message.

   The global averaging algorithms do not scale well because they required
    the network to support broadcast facility and also because of the large
    amount of the message traffic generated.

                                                                                 12
 They are suitable for small network, especially for those that have fully
connected topology.

2. Localized averaging Distributed Algorithms :

   The localized averaging algorithms attempt to overcome the drawbacks of
    the a Global averaging algorithms.

   In this approach, the node of a distributed system are logically arranged in
    some kind of pattern, such as a ring or a grid.

   Periodically, each node exchange its clock time with its neighbors in the
    ring, grid or other structure and then sets its clock time to the average of its
    own clock time and the clock times of its neighbors.




                                                                                  13
Lamport’s Logical Clock (Lamport’s Algorithms) :




                                                   14
15
16
17
18
Message Ordering :




                     19
20
21
22
Mutual Exclusion :
   There are several resources in a system that must not be used
    simultaneously by multiple process. If program operation is to correct .
    For example, a file must not be simultaneously updated by multiple
    processes. Similarly, printer must be restricted to a single process at a time.

   Exclusive access to such a shared resource by a process must be ensured.
    This exclusiveness of access is called mutual exclusion between process.
    The section of a program that need exclusive access to shared resources
    are referred to as critical sections.

   For Mutual Exclusion, means are introduced to prevent processes from
    executing concurrently within their associated critical section.




                                                                                23
    An algorithm for implementing mutual exclusion must satisfy the
     following requirement :
                 a. Mutual Exclusion
                 b. No Starvation ( No Delay)

    In single processor system, mutual exclusion is implemented using
     semaphores, monitors, and similar constructs. The three basic
     approaches used by different algorithms for implementing mutual
     exclusion in distributed systems are describe below.

7.   Centralized Approach
8.   Distributed Approach
9.   Token Ring Passing




                                                                       24
1. Centralized Approach :
   In this approach, one of the process in the system is elected as the
    coordinator and coordinates the entry to the critical sections. Each process
    that want to enter a critical section, must first seek permission from the
    coordinator. If no other process is currently in that critical section, the
    coordinator can immediately grant permission to the requesting process.

   If two or more processes concurrently ask for permission to enter the same
    critical section, the coordinator grant permission to only one processes at a
    time in accordance with some algorithms.

   After executing a critical section, when a process exits the critical section,
    it must notify the coordinator so that the coordinator can grant permission
    to another process that has also asked for permission to enter the same
    critical section.



                                                                                25
26
   The main advantages of this algorithm is that it is simple to implement and
    require only three message per critical section entry : a request, a reply,
    and a release.

   However, it suffer from the usual drawback of centralized schemes, That
    is, a single coordinator is subject to single point of failure and can become
    a performance bottleneck in a large system.


2. Distributed Approach:
   In this approach, all process that want to enter the same critical section
    cooperate with each other before reaching a decision on which process
    will enter the critical section next.

   When a process wants to enter a critical section, it sends a request message
    to all other process. The message contain the following information :



                                                                                 27
a.) The process identifier
b.) The name of the critical section
c.) A unique Timestamp

   On receiving a request message, a process either immediately sends back a
    reply message to the sender or defers sending a reply based on the
    following:

a.) If the receiver process is itself currently executing in the critical section, it
    simply queues the request message and defers sending a reply.

b.) If the receiver process is currently not executing in the critical section but
    is waiting for its turn to enter the critical section, it compare the timestamp
    in the receiving request message with the timestamp in its own request
    message that it has sent to other processes.



                                                                                        28
c.) If the receiver process neither is in the critical section nor is waiting for its
    turn to enter the critical section, it immediately sends back a reply
    message.

   A process that sends out a request message keeps waiting for reply
    message from other processes. It enters the critical section as soon as it has
    received reply message from all processes. After it finishes executing in
    the critical section, it sends reply message to all processes in its queue and
    deletes them its queue.

   To illustrate how the algorithm works, let us consider the following
    example of figure :




                                                                                   29
30
   If there are n processes, the algorithm required n-1 request message and
    n-1 reply message, giving a total of 2(n-1) message per critical section
    entry.

   This algorithm suffers from the following drawback:

         1. The algorithm is liable to n point of failure.

         2. All requirements makes implementation of the algorithm complex.

         3. The waiting time may be large if there are too many processes.
            Therefore, the algorithm is suitable only for a small group of
            cooperating processes.



                                                                          31
3. Token Ring Passing:
   In this method, mutual exclusion is achieved by a single token that is
    circulated among the processes in the system. A token is a special type of
    message that entitle its holder to enter a critical section. For fairness, the
    processes in the system are logically organized in a ring structure, and the
    token is circulated from one process to another around the ring always in
    the same direction.

   When a process receives the token, it checks if it wants to enter a critical
    section and acts as follows:

          1. If it wants to enter a critical section, it keeps the token, enters the
    critical section, and exits from the critical section after finishing its work in
    the critical section. It then passes the token along the ring to its neighbor
    process.


                                                                                   32
2. If it does not want to enter a critical section, it just passes the token along
    the ring to its neighbor process.

   The algorithm, however, requires the handling of the following types of
    failure :




         I. Process Failure : A process failure in the system cause the logical
                              ring to break.

         II. Lost Token      : If the token is lost, a new token must be
                               generated. (Passed “ Who Has the Token”)




                                                                                     33
ELECTION ALGORITHMS:




                       34
Traditional Election Algorithms:
1. The Bully Algorithm

2. A Ring Algorithm




                                   35
36
37
38
39
40
FAULT TOLERANCE:




                   41
42
43
44
Failure Masking by Redundancy:




                                 45
46
47
48
49
50
51

More Related Content

What's hot

File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
ishmecse13
 
Stream oriented communication
Stream oriented communicationStream oriented communication
Stream oriented communication
Shyama Bhuvanendran
 
clock synchronization in Distributed System
clock synchronization in Distributed System clock synchronization in Distributed System
clock synchronization in Distributed System
Harshita Ved
 
Types of Load distributing algorithm in Distributed System
Types of Load distributing algorithm in Distributed SystemTypes of Load distributing algorithm in Distributed System
Types of Load distributing algorithm in Distributed System
DHIVYADEVAKI
 
Distributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmDistributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithm
pinki soni
 
2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts
Prajakta Rane
 
Real Time Systems
Real Time SystemsReal Time Systems
Real Time Systems
Deepak John
 
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
helpsoft01
 
Reference model of real time system
Reference model of real time systemReference model of real time system
Reference model of real time system
Kamal Acharya
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
naveedchak
 
Fault Tolerance System
Fault Tolerance SystemFault Tolerance System
Fault Tolerance SystemEhsan Ilahi
 
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMIEvolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
nimmik4u
 
Clock Synchronization in Distributed Systems
Clock Synchronization in Distributed SystemsClock Synchronization in Distributed Systems
Clock Synchronization in Distributed Systems
Zbigniew Jerzak
 
Handover in Mobile Computing
Handover in Mobile ComputingHandover in Mobile Computing
Handover in Mobile Computing
KABILESH RAMAR
 
resource management
  resource management  resource management
resource managementAshish Kumar
 
Project Management1
Project Management1Project Management1
Project Management1ibsslideshow
 
Improving software economics
Improving software economicsImproving software economics
Improving software economics
deep sharma
 
Fault Tolerance System
Fault Tolerance SystemFault Tolerance System
Fault Tolerance Systemprakashjjaya
 
Concepts of Real time Systems (RTS)
Concepts of Real time Systems (RTS)Concepts of Real time Systems (RTS)
Concepts of Real time Systems (RTS)
EngKarrarSMuttair
 
Fault tolerance techniques
Fault tolerance techniquesFault tolerance techniques
Fault tolerance techniques
ECEDepartmentJSREC
 

What's hot (20)

File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
 
Stream oriented communication
Stream oriented communicationStream oriented communication
Stream oriented communication
 
clock synchronization in Distributed System
clock synchronization in Distributed System clock synchronization in Distributed System
clock synchronization in Distributed System
 
Types of Load distributing algorithm in Distributed System
Types of Load distributing algorithm in Distributed SystemTypes of Load distributing algorithm in Distributed System
Types of Load distributing algorithm in Distributed System
 
Distributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmDistributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithm
 
2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts
 
Real Time Systems
Real Time SystemsReal Time Systems
Real Time Systems
 
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
 
Reference model of real time system
Reference model of real time systemReference model of real time system
Reference model of real time system
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 
Fault Tolerance System
Fault Tolerance SystemFault Tolerance System
Fault Tolerance System
 
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMIEvolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
 
Clock Synchronization in Distributed Systems
Clock Synchronization in Distributed SystemsClock Synchronization in Distributed Systems
Clock Synchronization in Distributed Systems
 
Handover in Mobile Computing
Handover in Mobile ComputingHandover in Mobile Computing
Handover in Mobile Computing
 
resource management
  resource management  resource management
resource management
 
Project Management1
Project Management1Project Management1
Project Management1
 
Improving software economics
Improving software economicsImproving software economics
Improving software economics
 
Fault Tolerance System
Fault Tolerance SystemFault Tolerance System
Fault Tolerance System
 
Concepts of Real time Systems (RTS)
Concepts of Real time Systems (RTS)Concepts of Real time Systems (RTS)
Concepts of Real time Systems (RTS)
 
Fault tolerance techniques
Fault tolerance techniquesFault tolerance techniques
Fault tolerance techniques
 

Viewers also liked

8661 Shahid E Prod2 Portfolio
8661 Shahid E Prod2 Portfolio8661 Shahid E Prod2 Portfolio
8661 Shahid E Prod2 Portfolioguest90c8e9
 
Upper Sec Academic Report Card
Upper Sec Academic Report CardUpper Sec Academic Report Card
Upper Sec Academic Report CardYuliana Tjioe
 
IGCSE D&T - Coursework Assessment
IGCSE D&T - Coursework AssessmentIGCSE D&T - Coursework Assessment
IGCSE D&T - Coursework Assessmentmrdtwilson
 
Y11 Controlled Assessment Exemplar A
Y11 Controlled Assessment Exemplar AY11 Controlled Assessment Exemplar A
Y11 Controlled Assessment Exemplar AAdmin
 
Dt as level coursework
Dt as level courseworkDt as level coursework
Dt as level courseworkHSWILSON
 
A2 product design: coursework without hand drawn parts
A2 product design: coursework without hand drawn partsA2 product design: coursework without hand drawn parts
A2 product design: coursework without hand drawn partsderhamo
 
Year 11 coursework
Year 11 courseworkYear 11 coursework
Year 11 courseworkbedwells
 
gcse product design coursework
gcse product design courseworkgcse product design coursework
gcse product design coursework
Adnan Hassan
 
A* GCSE Coursework Example 1
A* GCSE Coursework Example 1A* GCSE Coursework Example 1
A* GCSE Coursework Example 1sherryseif
 
GCSE Design and Technology Project, Resistant Materials- Breadbin
GCSE Design and Technology Project, Resistant Materials- BreadbinGCSE Design and Technology Project, Resistant Materials- Breadbin
GCSE Design and Technology Project, Resistant Materials- Breadbin
derhamo
 
A* GCSE Coursework Example 2
A* GCSE Coursework Example 2A* GCSE Coursework Example 2
A* GCSE Coursework Example 2sherryseif
 
Bauhaus
BauhausBauhaus
Bauhaus
roger Pitiot
 

Viewers also liked (13)

Modernism
ModernismModernism
Modernism
 
8661 Shahid E Prod2 Portfolio
8661 Shahid E Prod2 Portfolio8661 Shahid E Prod2 Portfolio
8661 Shahid E Prod2 Portfolio
 
Upper Sec Academic Report Card
Upper Sec Academic Report CardUpper Sec Academic Report Card
Upper Sec Academic Report Card
 
IGCSE D&T - Coursework Assessment
IGCSE D&T - Coursework AssessmentIGCSE D&T - Coursework Assessment
IGCSE D&T - Coursework Assessment
 
Y11 Controlled Assessment Exemplar A
Y11 Controlled Assessment Exemplar AY11 Controlled Assessment Exemplar A
Y11 Controlled Assessment Exemplar A
 
Dt as level coursework
Dt as level courseworkDt as level coursework
Dt as level coursework
 
A2 product design: coursework without hand drawn parts
A2 product design: coursework without hand drawn partsA2 product design: coursework without hand drawn parts
A2 product design: coursework without hand drawn parts
 
Year 11 coursework
Year 11 courseworkYear 11 coursework
Year 11 coursework
 
gcse product design coursework
gcse product design courseworkgcse product design coursework
gcse product design coursework
 
A* GCSE Coursework Example 1
A* GCSE Coursework Example 1A* GCSE Coursework Example 1
A* GCSE Coursework Example 1
 
GCSE Design and Technology Project, Resistant Materials- Breadbin
GCSE Design and Technology Project, Resistant Materials- BreadbinGCSE Design and Technology Project, Resistant Materials- Breadbin
GCSE Design and Technology Project, Resistant Materials- Breadbin
 
A* GCSE Coursework Example 2
A* GCSE Coursework Example 2A* GCSE Coursework Example 2
A* GCSE Coursework Example 2
 
Bauhaus
BauhausBauhaus
Bauhaus
 

Similar to Shoaib

Shoaib
ShoaibShoaib
Synchronization Pradeep K Sinha
Synchronization Pradeep K SinhaSynchronization Pradeep K Sinha
Synchronization Pradeep K Sinha
Jawwad Rafiq
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed system
Sunita Sahu
 
3. syncro. in distributed system
3. syncro. in distributed system3. syncro. in distributed system
3. syncro. in distributed system
Gd Goenka University
 
Clock.pdf
Clock.pdfClock.pdf
Clock.pdf
MohdAbdulHaque
 
D021201024031
D021201024031D021201024031
D021201024031
inventionjournals
 
Synchronization of multihop sensor networks in the app layer
Synchronization of multihop sensor networks in the app layerSynchronization of multihop sensor networks in the app layer
Synchronization of multihop sensor networks in the app layerVaishnavi
 
Clock synchronization
Clock synchronizationClock synchronization
Clock synchronization
Medicaps University
 
Clock Synchronization in Distributed Systems
Clock Synchronization in Distributed SystemsClock Synchronization in Distributed Systems
Clock Synchronization in Distributed Systems
IRJET Journal
 
Swift container sync
Swift container syncSwift container sync
Swift container syncOpen Stack
 
Lesson 05 - Time in Distrributed System.pptx
Lesson 05 - Time in Distrributed System.pptxLesson 05 - Time in Distrributed System.pptx
Lesson 05 - Time in Distrributed System.pptx
LagamaPasala
 
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
Subhajit Sahu
 
Unit iii-Synchronization
Unit iii-SynchronizationUnit iii-Synchronization
Unit iii-Synchronization
Dhivyaa C.R
 
Synchronisation
SynchronisationSynchronisation
Synchronisation
Puran Pangeni
 
Parallel and Distributed Computing Chapter 13
Parallel and Distributed Computing Chapter 13Parallel and Distributed Computing Chapter 13
Parallel and Distributed Computing Chapter 13
AbdullahMunir32
 
Hu3513551364
Hu3513551364Hu3513551364
Hu3513551364
IJERA Editor
 
Chapter 5-Synchronozation.ppt
Chapter 5-Synchronozation.pptChapter 5-Synchronozation.ppt
Chapter 5-Synchronozation.ppt
sirajmohammed35
 

Similar to Shoaib (20)

Shoaib
ShoaibShoaib
Shoaib
 
Synchronization Pradeep K Sinha
Synchronization Pradeep K SinhaSynchronization Pradeep K Sinha
Synchronization Pradeep K Sinha
 
Synch
SynchSynch
Synch
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed system
 
3. syncro. in distributed system
3. syncro. in distributed system3. syncro. in distributed system
3. syncro. in distributed system
 
Clock.pdf
Clock.pdfClock.pdf
Clock.pdf
 
D021201024031
D021201024031D021201024031
D021201024031
 
Chap 5
Chap 5Chap 5
Chap 5
 
Synchronization of multihop sensor networks in the app layer
Synchronization of multihop sensor networks in the app layerSynchronization of multihop sensor networks in the app layer
Synchronization of multihop sensor networks in the app layer
 
Clock synchronization
Clock synchronizationClock synchronization
Clock synchronization
 
Clock Synchronization in Distributed Systems
Clock Synchronization in Distributed SystemsClock Synchronization in Distributed Systems
Clock Synchronization in Distributed Systems
 
Swift container sync
Swift container syncSwift container sync
Swift container sync
 
Lesson 05 - Time in Distrributed System.pptx
Lesson 05 - Time in Distrributed System.pptxLesson 05 - Time in Distrributed System.pptx
Lesson 05 - Time in Distrributed System.pptx
 
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
 
Unit iii-Synchronization
Unit iii-SynchronizationUnit iii-Synchronization
Unit iii-Synchronization
 
Synchronisation
SynchronisationSynchronisation
Synchronisation
 
OS_module2. .pptx
OS_module2.                          .pptxOS_module2.                          .pptx
OS_module2. .pptx
 
Parallel and Distributed Computing Chapter 13
Parallel and Distributed Computing Chapter 13Parallel and Distributed Computing Chapter 13
Parallel and Distributed Computing Chapter 13
 
Hu3513551364
Hu3513551364Hu3513551364
Hu3513551364
 
Chapter 5-Synchronozation.ppt
Chapter 5-Synchronozation.pptChapter 5-Synchronozation.ppt
Chapter 5-Synchronozation.ppt
 

Recently uploaded

Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Thiyagu K
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
Aficamten in HCM (SEQUOIA HCM TRIAL 2024)
Aficamten in HCM (SEQUOIA HCM TRIAL 2024)Aficamten in HCM (SEQUOIA HCM TRIAL 2024)
Aficamten in HCM (SEQUOIA HCM TRIAL 2024)
Ashish Kohli
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
ArianaBusciglio
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
NelTorrente
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
Krisztián Száraz
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
vaibhavrinwa19
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
IreneSebastianRueco1
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
Normal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of LabourNormal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of Labour
Wasim Ak
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 

Recently uploaded (20)

Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
Aficamten in HCM (SEQUOIA HCM TRIAL 2024)
Aficamten in HCM (SEQUOIA HCM TRIAL 2024)Aficamten in HCM (SEQUOIA HCM TRIAL 2024)
Aficamten in HCM (SEQUOIA HCM TRIAL 2024)
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
Normal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of LabourNormal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of Labour
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 

Shoaib

  • 1. Clock (Synchronization)  All computers have a circuit for keeping track of time, this is know as Clock or Timer.  When the system is booted, it usually asks for the user to enter the date and time, which is then converted to the number of ticks after same known starting date and stored in memory.  In a distributed system, synchronized clock also enable one to measure the duration of distributed activities that start on one node and terminate on another node, for instance, calculating the time taken to transmit a message from one node to another at any arbitrary time. 1
  • 2. How Computer Clock Are Implemented :  A computer clock usually consist of three component : 1. A quartz crystal - It is oscillates at a well defined frequency. 2. A Counter register - It is used to keep track of the oscillation of the quartz crystal. 3. A Constant register - It is used to store a constant value that is decided based on the frequency of oscillation of the quartz crystal. 2
  • 3. The value in the counter register is determine by 1 for each oscillation of the quartz crystal. When the value of the counter register become zero, an interrupt is generated and its value is reinitialized to the value in the constant register, Each interrupt is called a clock tick.  The clock in the constant register is chosen so that 60 clock ticks occur in a second.  The computer clock is synchronized with real time. For this, two more values are stored in the system : a) A fixed string date and time , and b) The number of ticks 3
  • 4. A clock always runs at a constant rate. Let us suppose that when the real time is t, the time value of a clock p is Cp(t).  If all clock in the world were perfectly synchronized, we would have Cp(t)=t for all p and all t. That is, if C denotes that time value of a clock, in the ideal case dC/dt should be 1. Therefore, if the maximum drift rate allowable is p, a clock is said to be no-fault if the following condition hold for it : 1-p<=dC/dt<=1+p  For the slow clocks dCdt <1 and for fast clock dC/dt>1.  A distributed system consist of several nodes, each with its own clock, running at its own speed. Because of non zero drift rates of all clocks, the set of clock of a distributed system do not remain well synchronizes without some periodic resynchronization. 4
  • 6. This means that the nodes of a distributed system must periodically resynchronize their local clock to maintain a global time base across the entire system. A distributed system require the following type of clock synchronized : 1. synchronization of the computer clock with real time or external clock. 2. Mutual or internal synchronization of the clocks of different nodes of the system. * Externally synchronized clocks are also internally synchronized. 6
  • 7. Clock Synchronization Algorithms :  Clock Synchronization Algorithms may be broadly classified as , 1. Centralized 2. Distributed 7. Centralized Algorithms: In centralized clock Synchronization algorithm one node has a real time receiver. This node is usually called the time server node, and the clock time of this node is regarded as correct and used as the reference time. The goal of the algorithm is to keep the clocks of all other nodes Synchronized with the clock time of the time server node. 7
  • 8. Centralized clock synchronization algorithm are again of two types: a) Passive Time Server Centralized Algorithm b) Active Time Server Centralized Algorithm g) Passive Time Server Centralized Algorithm : In this method each node periodically sends a message to the time server. When the time server receives the message, it quickly responds with a message. The best estimation of the time required for the propagation of the message “time=T” from the time server node to client’s node is (T1-T0)/ 2.Threrfore, when the reply is received at the client’s node, its clock is readjusted to T+ (T1-T0)/2. 8
  • 9. Here, T= is the Current time in the clock of the time server node T0=clock time of client node before receiving message T1=clock time of client node after receiving message b) Active Time Server Centralized Algorithm: -In the active time server approach, the time server periodically broadcasts its clock (T). Other node received the broadcast message and use the clock time in the message of correcting their own clocks. Each node has a prior knowledge of the approximate time (Ta) required for the propagation of the message “time=T ” from the time server node to its own clock. Therefore, when the broadcast message is received at a node, the node’s clock is readjust to the time T+ Ta . A major drawback of this method is that it is not fault Tolerant. 9
  • 10. Drawback of Centralized Algorithms: Centralized clock synchronization Algorithms suffer from two major drawbacks :  They are subject to single point failure. If the server node fail, the clock synchronization operation cannot be performed.  From a scalability point of view it is generally not acceptable to get all the time request serviced by a single time server. * These drawbacks overcome by distributed algorithms. 10
  • 11. 2. Distributed Algorithms :  If each node’s clock independently synchronized with the real time , all the clocks of the system remain mutually synchronized.  Internal synchronization of clock is not required in this approach.  Following two approaches is usually used for internal synchronization : 1. Global Averaging Distributed Algorithms 2. Localized averaging Distributed Algorithms 11
  • 12. 1. Global Averaging Distributed Algorithms :  In this approach, the clock process at each node broadcast its local clock time in the from of a special “ resync ” Message.  That “ resync ” Message is broadcast from each node at the beginning of every fixed length resynchronization interval.  For each “ resync ” Message, the clock process record the time, according to its own clock, when the message was received. At end of waiting period, the clock process estimate the skew of its clock with respect to each of the other nodes on the basis of the times at which it received resync message.  The global averaging algorithms do not scale well because they required the network to support broadcast facility and also because of the large amount of the message traffic generated. 12
  • 13.  They are suitable for small network, especially for those that have fully connected topology. 2. Localized averaging Distributed Algorithms :  The localized averaging algorithms attempt to overcome the drawbacks of the a Global averaging algorithms.  In this approach, the node of a distributed system are logically arranged in some kind of pattern, such as a ring or a grid.  Periodically, each node exchange its clock time with its neighbors in the ring, grid or other structure and then sets its clock time to the average of its own clock time and the clock times of its neighbors. 13
  • 14. Lamport’s Logical Clock (Lamport’s Algorithms) : 14
  • 15. 15
  • 16. 16
  • 17. 17
  • 18. 18
  • 20. 20
  • 21. 21
  • 22. 22
  • 23. Mutual Exclusion :  There are several resources in a system that must not be used simultaneously by multiple process. If program operation is to correct . For example, a file must not be simultaneously updated by multiple processes. Similarly, printer must be restricted to a single process at a time.  Exclusive access to such a shared resource by a process must be ensured. This exclusiveness of access is called mutual exclusion between process. The section of a program that need exclusive access to shared resources are referred to as critical sections.  For Mutual Exclusion, means are introduced to prevent processes from executing concurrently within their associated critical section. 23
  • 24. An algorithm for implementing mutual exclusion must satisfy the following requirement : a. Mutual Exclusion b. No Starvation ( No Delay)  In single processor system, mutual exclusion is implemented using semaphores, monitors, and similar constructs. The three basic approaches used by different algorithms for implementing mutual exclusion in distributed systems are describe below. 7. Centralized Approach 8. Distributed Approach 9. Token Ring Passing 24
  • 25. 1. Centralized Approach :  In this approach, one of the process in the system is elected as the coordinator and coordinates the entry to the critical sections. Each process that want to enter a critical section, must first seek permission from the coordinator. If no other process is currently in that critical section, the coordinator can immediately grant permission to the requesting process.  If two or more processes concurrently ask for permission to enter the same critical section, the coordinator grant permission to only one processes at a time in accordance with some algorithms.  After executing a critical section, when a process exits the critical section, it must notify the coordinator so that the coordinator can grant permission to another process that has also asked for permission to enter the same critical section. 25
  • 26. 26
  • 27. The main advantages of this algorithm is that it is simple to implement and require only three message per critical section entry : a request, a reply, and a release.  However, it suffer from the usual drawback of centralized schemes, That is, a single coordinator is subject to single point of failure and can become a performance bottleneck in a large system. 2. Distributed Approach:  In this approach, all process that want to enter the same critical section cooperate with each other before reaching a decision on which process will enter the critical section next.  When a process wants to enter a critical section, it sends a request message to all other process. The message contain the following information : 27
  • 28. a.) The process identifier b.) The name of the critical section c.) A unique Timestamp  On receiving a request message, a process either immediately sends back a reply message to the sender or defers sending a reply based on the following: a.) If the receiver process is itself currently executing in the critical section, it simply queues the request message and defers sending a reply. b.) If the receiver process is currently not executing in the critical section but is waiting for its turn to enter the critical section, it compare the timestamp in the receiving request message with the timestamp in its own request message that it has sent to other processes. 28
  • 29. c.) If the receiver process neither is in the critical section nor is waiting for its turn to enter the critical section, it immediately sends back a reply message.  A process that sends out a request message keeps waiting for reply message from other processes. It enters the critical section as soon as it has received reply message from all processes. After it finishes executing in the critical section, it sends reply message to all processes in its queue and deletes them its queue.  To illustrate how the algorithm works, let us consider the following example of figure : 29
  • 30. 30
  • 31. If there are n processes, the algorithm required n-1 request message and n-1 reply message, giving a total of 2(n-1) message per critical section entry.  This algorithm suffers from the following drawback: 1. The algorithm is liable to n point of failure. 2. All requirements makes implementation of the algorithm complex. 3. The waiting time may be large if there are too many processes. Therefore, the algorithm is suitable only for a small group of cooperating processes. 31
  • 32. 3. Token Ring Passing:  In this method, mutual exclusion is achieved by a single token that is circulated among the processes in the system. A token is a special type of message that entitle its holder to enter a critical section. For fairness, the processes in the system are logically organized in a ring structure, and the token is circulated from one process to another around the ring always in the same direction.  When a process receives the token, it checks if it wants to enter a critical section and acts as follows: 1. If it wants to enter a critical section, it keeps the token, enters the critical section, and exits from the critical section after finishing its work in the critical section. It then passes the token along the ring to its neighbor process. 32
  • 33. 2. If it does not want to enter a critical section, it just passes the token along the ring to its neighbor process.  The algorithm, however, requires the handling of the following types of failure : I. Process Failure : A process failure in the system cause the logical ring to break. II. Lost Token : If the token is lost, a new token must be generated. (Passed “ Who Has the Token”) 33
  • 35. Traditional Election Algorithms: 1. The Bully Algorithm 2. A Ring Algorithm 35
  • 36. 36
  • 37. 37
  • 38. 38
  • 39. 39
  • 40. 40
  • 42. 42
  • 43. 43
  • 44. 44
  • 45. Failure Masking by Redundancy: 45
  • 46. 46
  • 47. 47
  • 48. 48
  • 49. 49
  • 50. 50
  • 51. 51