Zurück zur Übersicht

Begriff

Lamport Clock

Distributed Systems Computer Science S3
2 Quellen 0 Lernpfade 0 Backlinks enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Der Vorgänger der Vector Clock. Leslie Lamport (Turing Award, LaTeX-Erfinder) fragte sich 1978: "Wie bringen wir Ordnung ins Chaos?" Lamport Clocks sind simpel: Ein einfacher Zähler (Integer) pro Prozess. Jedes Mal, wenn was passiert: Counter + 1. Wenn ich dir eine Nachricht schicke, sende ich meinen Counter mit. Du setzt deinen Counter auf max(dein_counter, mein_counter) + 1. Das garantiert: Wenn A Ursache von B ist, hat B eine höhere Nummer. Nachteil: Wenn B eine höhere Nummer hat, wissen wir nicht, ob A die Ursache war. (Vielleicht war es Zufall).

Merksatz: Ein einfacher logischer Uhren-Algorithmus, der eine partielle Ordnung von Ereignissen definiert und sicherstellt, dass, wenn A $\to$ B (kausal), dann Zeit(A) < Zeit(B) gilt; die Umkehrung gilt nicht notwendigerweise.


Quick-Check

  1. Warum erfunden?
    Um das Problem des "Distributed Mutual Exclusion" zu lösen (wer darf auf den Drucker zugreifen?). Lamport zeigte, dass man das ohne zentralen Server lösen kann.
  2. Name?
    Leslie Lamport. Er schrieb das Paper "Time, Clocks, and the Ordering of Events in a Distributed System". Es ist eines der meistzitierten Informatik-Paper aller Zeiten.
  3. Physik?
    Lamport wurde durch die Spezielle Relativitätstheorie inspiriert. Es gibt keine Gleichzeitigkeit. Alles ist relativ zum Beobachter (Lichtkegel).