Chapter 9 Global Snapshot - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Chapter 9 Global Snapshot

Description:

A set of local states that are concurrent with each other ... Group of photographers taking snaps of different portions and trying to combine ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 13
Provided by: vinita4
Category:

less

Transcript and Presenter's Notes

Title: Chapter 9 Global Snapshot


1
Chapter 9Global Snapshot
2
Global state
  • Global state
  • A set of local states that are concurrent with
    each other
  • Concurrent states no two states have a happened
    before relation with each other

3
The mystery of the missing dollars
Send 100
B
A
300
400
  • Picture taken at A - 400
  • A sends 100 to B
  • Picture taken at B - 400
  • Total is 800

4
Global Snapshot Problem
  • Determine the global system state (e.g. the total
    money )
  • Each process records its own state
  • No shared clock/memory
  • Group of photographers taking snaps of different
    portions and trying to combine to get the overall
    picture.

5
Consistent cut
  • Given computation (E,!) and F µ E is a cut iff
  • F is a consistent cut (global snapshot) iff

6
Consistent and inconsistent cuts
7
Chandy and Lamport's Algorithm
  • Assumes
  • FIFO and
  • Unidirectional channels
  • A bidirectional channel is modelled as two
    unidirectional channels

8
Chandy and Lamport's Algorithm
  • Each process has an associated color. All
    processes are initially white.
  • A process records it local state just before
    turning red
  • On turning red the process sends out a marker on
    all outgoing channels
  • On receiving a marker a white process turns red

9
Classification of messages
  • w white process
  • r red process
  • E.g.. rw sent by a red process, received by a
    white process

10
Algorithm
public class RecvCamera extends Process
implements Camera . . . public
RecvCamera(Linker initComm, CamUser app)
. . . for (int i 0 i lt N i)
if (isNeighbor(i))
closedi false chani new
LinkedList() else closedi
true public synchronized void
globalState() myColor red
app.localState() // record local State
sendToNeighbors("marker", myId) // send
Markers public synchronized void
handleMsg(Msg m, int src, String tag)
if (tag.equals("marker")) if
(myColor white) globalState()
closedsrc true if (isDone())
----- Display channel state
(transit messages) chan ----
else // application message
if ((myColor red)
(!closedsrc))
chansrc.add(m) app.handleMsg(m,
src, tag) // give it to app
boolean isDone() if (myColor white)
return false for (int i 0 i lt N
i) if (!closedi) return false
return true
11
Non FIFO channels
  • Include color in all outgoing messages
  • Each process counts the number of white messages
    received by it
  • Marker from i to j includes number of white
    messages sent by i to j

12
Applications
  • Checkpointing
  • Provide fault tolerance in distributed systems
  • Distributed debugging

13
Applications
  • Stable predicate B Once B becomes true it
    remains true, i.e. B is stable iff
  • Stable predicate detection
  • Property of a global snapshot S
  • If Si is the initial global state, Sf is the
    final global state
  • B(S) ) B(Sf)
  • B(S) ) B(Si)
  • Take repeated snapshots
Write a Comment
User Comments (0)
About PowerShow.com