Clocks in distributed systems:
a. Why are clocks difficult to synchronize in distributed systems?
b. What features in a system assume that the clocks are (reasonably) synchronized? Give two examples of cases where a problem would occur if the clocks were not synchronized.
c. Order the following events based on the figure below according to the happened before relationship as introduced by Lamport. Consider that the vertical lines represent events in a process ordered chronologically from bottom up (that is, time grows going up on the axis).
! p3, q3, q5, r3
! r1, q4, r4
! p1, q3, r3, r4