Verteilte Uhren Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld
verteilte Uhren bezwecken nicht etwa Arbeitsteilung, sondern sind eine (lästige) Folge davon: Arbeitsteilung setzt weitgehende Übereinstimmung von Uhren voraus. Möglichst genaue Zeitmessung ist erforderlich für Zugriff auf Ressourcen (d.h. bei der Planung) Ursachenforschung (d.h. bei Protokollierung) verteilten Aktionen wie Software-Entwicklung (d.h. beim Ablauf)
verschieden laufende Uhren Zeit A A B Zeit B 0:00 Finden A und B zur selben Zeit statt?
Zeitmessung (1) 1 (Sonnen-)Tag = Zeitspanne wischen erstem Erreichen des höchsten Sonnenstands und nächstem 1 (Sonnen-)Sekunde = 1/ eines Tages 1 (Atomuhr-)Sekunde = Dauer von Schwingungen eines Cäsium-133-Atoms möglichst regelmäßige Schwingungen
Zeitmessung (2) Am stimmten Sonnenuhr und Atomuhr überein. Die Erdumdrehung verlangsamt sich durch Reibung (nicht aber die Schwingungen eines Atoms). Daher wird angepasst, wenn sie mehr als 800 ms auseinanderliegen, durch Einschieben einer Schaltsekunde. Das ergibt die Universal Coordinated Time (UTC). Sie wird gesendet von Langwellender DCF77 in Mainflingen GPS-Satelliten
Rechnerzeit ist durch eigene Prozessor-Uhr gegeben, die nicht notwendigerweise mit UTC gleich läuft. Nicht jeder Prozessor empfängt das UTC-Signal. Verschiedene Rechner können unterschiedliche Zeiten zeigen und von UTC verschiedene.
logische Zeit Messung der absoluten Zeit ist häufig nicht erforderlich, da es eher auf die zeitlichen Relationen ("vor", "nach") ankommt. logische Zeit = fortlaufende, mit der Zeit konsistente Numerierung