Abb.: Geralt via Pixabay Vorlesung Echtzeitsysteme Thema 2: Zeit Robert Baumgartl 14. März 2015
2 / 57 Ursprung des Zeitbegriffes griechische Vorstellung: Alles ist ein Kreislauf ( kein Ursprung, Ende) jüdisch-christliche Vorstellung: Zeitpfeil im Weltmodell (dedizierter Anfang, Ende) heutige Vorstellung: Anfang (Urknall), kontinuierliche Entwicklung Physik: Zeitbegriff als Form der zunehmenden Unordnung (Entropie) ohne Entropiezunahme keine Zeit (z. B. vor dem Urknall) Aurelius Augustinus (354 430) zum Begriff der Zeit: Wenn mich niemand danach fragt, weiß ich es, will ich einem Fragenden es erklären, weiß ich es nicht.
Zeit aus Sicht des Mathematikers Reduktion: Zeit ist eine Menge M von diskreten, unterscheidbaren Zeitpunkten, über der die Ordnungsrelation < ( liegt zeitlich vor ) folgendermaßen definiert ist: 1. Trichotomie: x, y M gilt genau eine der folgenden Bedingungen: (x < y), (y < x), (x = y) 2. Transitivität: x, y, z M : (x < y) (y < z) (x < z) 3. Irreflexivität: x M : (x < x) 4. Dichtheit: x, y M : (x < y) z : (x < z < y) Aus 1.-3. folgt, daß es sich bei < um eine strenge Totalordnung 1 handelt. 1 Streng bedeutet, dass die Relation transitiv ist, total bedeutet, dass alle Elemente der Relation unterliegen. 3 / 57
4 / 57 Historisch: 3 grundlegende Zeitintervalle Tag: Zeitspanne zwischen 2 aufeinanderfolgenden Höchstständen der Sonne ( Sonnentag ) Jahr: Zeitspanne zwischen 2 aufeinanderfolgenden Durchgängen der Sonne durch eine bestimmte Himmelsposition (z. B. den Frühlingspunkt, d.h., die Tag-und-Nacht-Gleiche im März) ( Tropisches Jahr ) Monat: Zeitspanne zwischen 2 aufeinanderfolgenden Neumonden historischer Zeitbegriff von astronomischen Phänomenen geprägt Problem: Phänomene sind keine ganzzahligen Vielfache voneinander (zumindest nicht exakt).
5 / 57 Uhren: historisch Sonnenuhren (ab ca. 3000 v. u. Z.) Prinzip: Beobachtung des Schattenwurfs eines Objektes kürzester Schatten Mittag (Bildquelle: F. S. Sawelski. Die Zeit und ihre Messung. VEB Fachbuchverlag Leipzig, 1977)
Uhren: historisch Wasseruhren (ab ca. 1500 v. u. Z.) Beobachtung: Das Auslaufen einer bestimmten Wassermenge dauert stets gleich lang Problem: Abhängigkeit vom Wasserdruck Anwendung: z. B. Redezeitbegrenzung für Politiker (!) aka Klepsydra (Bildquelle: Gerhard Dohrn-van Rossum. Die Geschichte der Stunde. Anaconda Verlag, 2007, S. 35) 6 / 57
Uhren: historisch Pendeluhren Galilei schlägt vor, Pendel als konstante Zeitbasis zu nutzen Ch. Huygens konstruiert erste funktionsfähige Pendeluhr (1656) ϱ 10s d 1.1 10 4 bis in die 20er Jahre des 20. Jh. als Referenz genutzt l T = 2π (Länge des Pendels l) g Galileis Entwurf einer Pendeluhr 2 S. 34. 2 Dennis D. McCarthy und P. Kenneth Seidelmann. TIME From Earth Rotation to Atomic Physics. Wiley, 2009, 7 / 57
8 / 57 Uhren: historisch Chronometer Problem: Pendeluhr ist nicht (besonders) portabel genaue Uhren jedoch zur exakten Längengradbestimmung auf Schiffen notwendig Wettbewerb der Royal Navy (ab 1714) Sieger: John Harrisons Chronometer H4 (1760) (ϱ 5s 81d 7.1 10 7 ) d = 13cm, m = 1.45kg (Quelle: http://www.sailingwarship.com/harrisons-h4-chronometer-1760.html)
Uhren Quarzuhren Idee: eine hochfrequente Schwingung ist i. a. stabiler Nutzung eines Quarzoszillators Marrison und Horton, 1927 (Quelle: F. G. Major. The Quantum Beat. 2. Aufl. Springer, 2007, S. 84) 9 / 57
10 / 57 Uhren: Atomuhr Funktionsprinzip I Grundlagen Ausgangspunkt: elementare Eigenschaften von Atomen sind stets gleich (unabhängig von Ort, Zeit) Physik-Exkurs: Wechselwirkungen zwischen Atomen und em. Strahlung Absorption Photon wird durch Atom absorbiert, ein Elektron erreicht höheres Energieniveau (Atom angeregt) spontane Emission Atom geht unter Aussendung eines Photons von angeregtem in Grundzustand über induzierte Emission ein angeregtes Atom wird bei Anwesenheit eines Photons animiert, unter Aussendung eines weiteren Photons in Grundzustand zurückzukehren, erstes Photon wird nicht absorbiert
11 / 57 Uhren: Atomuhr Funktionsprinzip II Grundidee Idee: Nutzung induziert emittierter Strahlung als Basis für Zeitmessungen. Problem: sehr hohe Frequenz (sichtbares Licht; 10 14 Hz), schlecht zu managen, schlecht zu messen Frage: Kann man niederfrequentere (besser handhabbare ) Strahlung emittieren?
12 / 57 Uhren: Atomuhr Funktionsprinzip III Hyperfeinstrukturniveaus kleine Abweichungen in den Energielevels der Atome infolge magnetischer Wechselwirkung zwischen Kern und Elektron (Spin) Übergang zwischen Hyperfeinstrukturniveaus ähnlich Übergang zwischen Energielevels Unterschied: Mikrowellen werden emittiert (hypothetischer) Orbit ohne Wechselwirkung Orbit bei Abstoßung Orbit bei Anziehung Abbildung: Veranschaulichung zweier Hyperfeinstrukturniveaus
Uhren: Atomuhr Funktionsprinzip IV Beispiel: Cäsiumuhr 1. Cs wird im Ofen aufgeheizt, Dampfstrahl tritt durch Düse aus, beide Zustände (Hyperfeinstrukturniveaus, weiß und schwarz) bunt gemischt 2. Magnet A lenkt schwarze Atome ab, Absorption 3. verbleibende Atome (weiß) werden in Ramsey Cavity Mikrowellen wohldefinierter Frequenz ausgesetzt 4. viele Atome wechseln Zustand nach schwarz (induzierte Emission) 5. Magnet B sondert weiße Atome aus 6. Detektor mißt Anzahl Atome, die Zustand wechselten (ursprünglich weiß, jetzt schwarz sind) 7. Oszillatorfrequenz wird so eingestellt, daß ein Maximum von Zustandsänderungen erfolgt. Maximum an Zustandsänderungen ergibt sich für eine Frequenz der Mikrowellen von f = 9192631770 Hz. 13 / 57
14 / 57 Uhren: Atomuhr Funktionsprinzip V Prinzipaufbau einer Atomuhr mit Cäsiumstrahl Mikrowellen Ramsey Cavity Osc Ofen (Cs Quelle) N S... S N Detektor Magnet A Magnet B (Quelle: Tony Jones. Splitting The Second. The Story of Atomic Time. IOP Publishing, 2000)
15 / 57 Uhren: Atomuhr Funktionsprinzip VI Warum 133 Cs? ein einzelnes Elektron ganz außen 2 Hyperfeinstrukturniveaus (im Grundzustand) nur 1 Isotop (55 Protonen, 78 Neutronen), kein Gemisch leichtes Handling (niedriger Schmelzpunkt 28.4 C, nicht radioaktiv, stabil) schweres Atom ( langsamer) Alternativen: Rubidium, Wasserstoff, ionisiertes Quecksilber
Explosionsdarstellung wesentlicher Komponenten 16 / 57 (Quelle: PTB)
Beispiel: Atomuhr CS2 der PTB Braunschweig (Quelle: PTB) 17 / 57
18 / 57 Uhren Zwischenfazit (somewhat abstract) Uhr = Schwingungsmechanismus, der periodische Ereignisse (Microticks) auslöst + Zähler, der diese Ereignisse zählt mechanisch (Pendel, Unruh) oder elektrisch (Schwingkreis, Quarz) Auflösung der Uhr: Zeitspanne zwischen 2 aufeinanderfolgenden Mikroticks je höher Auflösung, desto größer i.a. die Genauigkeit der Uhr begrenzte Auflösung Quantisierungsfehler Keine zwei Uhren auf der Welt gehen gleich!
Mögliche Verhaltensweisen einer Uhr 19 / 57 zu vermessende Uhr 3 1 ideal 1 2 4 1 Referenzuhr
20 / 57 Mögliche Verhaltensweisen einer Uhr korrekt: 1. innerhalb der zugesicherten Gangabweichung inkorrekt: 2. Verlassen der zugesicherten Gangabweichung 3. Zustandsfehler Sprung im Zählerwert (nach oben oder unten möglich) 4. Stehenbleiben der Uhr unmöglich: rückwärtslaufende Uhr (negativer Anstieg der Geraden)
21 / 57 Mögliche Verhaltensweisen einer Uhr Fehlerursachen: 1. Varianzen innerhalb der Uhr (zufällige und systematische Fehler, z. B. Reibung des Pendels) 2. Störungen bzw. Einflüsse der Umgebung 3. Signalverzögerungen zwischen Uhr und Empfänger (z. B. Signallaufzeit vom Satelliten zum Empfänger im GPS)
22 / 57 Güte einer Uhr Mehrere Parameter beschreiben die Qualität einer Uhr: Frequenzgenauigkeit (ρ): Wie genau wird die Sekunde (Zeitbasis) eingehalten? Frequenzstabilität (ρ ): Wie schnell ändert sich ρ? Zeitgenauigkeit ( ): Wie genau stimmt die Uhr mit der offiziellen Zeit überein? Bei sehr hoher Stabilität können präzise Korrekturwerte ermittelt werden, die die Genauigkeit der Uhr erhöhen.
23 / 57 Referenzuhr Ermittlung der Ganggenauigkeit einer Uhr mittels Referenzuhr: (viel) höhere Genauigkeit als zu vermessende Uhr erforderlich generiert die Referenzzeit für das betrachtete System, eine (diskrete) Repräsentation der wirklichen Zeit, eine Folge von Ticks (vgl. folgende Abb.) Bestimmung der Ganggenauigkeit stets nur mit Genauigkeit der Referenzuhr möglich generiert Zeitstempel z(e) zu Ereignissen e der zu vermessenden Uhr Gangunterschied : Differenz zweier Uhren für ein und dasselbe Ereignis
Verhältnis von Referenzzeit T und wirklicher Zeit t 24 / 57 T T c T b T a t a t b t c t
25 / 57 Bestimmung der Gangabweichungsrate ρ Es seien m und n zwei Microticks der zu vermessenden Uhr (Angabe in Zeiteinheiten der Referenzuhr). Dann ermittelt man die normierte Gangabweichungsrate ρ dieser Uhr mittels ρ = z(m) z(n) m n 1 (1) Anmerkungen: nicht mit verwechseln! ideal: ρ = 0 (existiert nicht) ρ > 0 Uhr zu langsam, geht nach ρ ist dimensionslos
Bestimmung der Gangabweichungsrate ρ Anmerkungen, cont.: häufig interessiert nur Betrag der Abweichung Unabhängige (free-running) Uhren laufen unendlich weit auseinander, selbst wenn sie ursprünglich perfekt synchronisiert waren. Synchronisation nötig ( später) meist Angabe der maximalen Gangabweichungsrate ρ max unter reproduzierbaren Umweltbedingungen momentaner Bestwert für ρ etwa 1 10 14 ρ ist manchmal vom Meßintervall abhängig 2 Uhren, die zu t = 0 synchronisiert wurden, und jeweils eine Gangabweichungsrate ρ aufweisen, können nach Verstreichen von C Zeiteinheiten im worst case um = 2Cρ differieren! 26 / 57
27 / 57 Zeitstandards: Naive Zeit naive 12-Stunden-Teilung des Tages (und der Nacht), fixe Phänomene: Sonnenauf- und -untergang Stunden haben unterschiedliche Länge (nur zu den Tagundnachgleichen (Äquinoktien) und am Äquator korrekt) genutzt bis ins 15. Jahrhundert 12-Teilung wahrscheinlich babylonischen Ursprungs; Gründe unklar
Zeitstandards: Wahre Ortszeit (WOZ) 28 / 57 aka Wahre Sonnenzeit, apparent solar time wenn Sonne im Zenit steht, ist Mittag (12 Uhr WOZ) direkt beobachtbar, durch Sonnenuhr angezeigt in einigen Ländern bis ins 20. Jahrhundert genutzt Sonne bewegt sich (scheinbar) nicht gleichförmig, weil: elliptische Bahn der Erde um die Sonne (anstatt Kreis) Winkel zwischen Erdachse und Ekliptik ca. 66.5 (anstatt 90 ) keine gleichfg. Zeit, vergeht unterschiedlich schnell kompensierbar, da (jährlich) periodisch: MOZ = mittlere Ortszeit MOZ = WOZ Zeitgleichung
Verhältnis WOZ zur MOZ (http://upload.wikimedia.org/wikipedia/commons/0/0b/zeitgleichung.png) 29 / 57
30 / 57 Zeitstandards: Mittlere Ortszeit (MOZ) auch Mittlere Sonnenzeit, mean solar time korrigiert jahreszeitliche Schwankungen der WOZ entspräche WOZ, wenn Erde auf Kreisbahn rotierte und senkrecht auf Ekliptik stünde nicht direkt beobachtbar individuell für jeden Ort auf der Erde
31 / 57 Zeitzonen Problem: alle Sonnenzeiten hängen von geografischer Länge ab ungünstig für (u. a. ) schnelle Verkehrsmittel (Eisenbahn) Idee: für jedes Land einheitliche Zeit, Pierce/Dowd (1870): 24 Zeitzonen (á 15 Länge) modifiziert durch gewisse kulturelle Zusammenhänge z. B. iranische Zeit UTC+3.5h, Afghanistan UTC+4.5h Abbildung (extern, Wikipedia): http://upload.wikimedia.org/wikipedia/commons/a/ad/ Standard_time_zones_of_the_world.png
Dauer eines Tages 32 / 57 Problem: Dauer eines Tages schwankt unvorhersehbar (± 4ms) (vermutete) Ursachen Gezeitenreibung durch Gravitation des Mondes (Mond steht bereits still!) Strömungen im Erdmantel als Basis für präzise Definition der Zeit ungeeignet Ephemeridenzeit, basierend auf Revolution Erde um Sonne (ca. 50fach genauer) Atomzeit
Astronomische Maßstäbe: Universal Time 33 / 57 UT0 ( mittlere Sonnenzeit ): definiert durch Rotation der Erde um sich selbst (Genauigkeit: ca. 0.1 s), direkt aus Beobachtung abgeleitet Lage der Drehachse der Erde schwankt leicht und periodisch (p = 435d) (Abb. nächste Folie) näherungsweise Korrektur von UT0: UT1 = UT0 tan ϕ m (x sin λ m + y cos λ m ). λ m ϕ m mittlere Länge des Beobachterstandpunkts mittlere Breite des Beobachterstandpunkts x, y Koordinaten des Pols
Polbewegung zwischen 2001 und 2005 34 / 57 (Quelle: http://de.wikipedia.org/wiki/polbewegung#/media/file:polarmotion_2001_2005.png)
Fazit: Astronomische Maßstäbe UT1 korrigiert UT0 um Schwankung der Drehachse UT2 korrigiert UT1 Variabilität der Erdrotation infolge (u. a. ) Gezeitenreibung Erdrotation verlangsamt sich momentan etwa um 2 10 10 im Jahr, jedoch nicht linear Länge eines Tages differiert um etwa 1.5 10 9 (Tag zu Tag, Jahr zu Jahr) d. h., alle UTx variieren verhältnismäßig stark als Zeitbasis zur hochgenauen Definition der Sekunde ungeeignet 35 / 57
SI-Sekunde 36 / 57 Lösung: Definition der Sekunde unabhängig von astronomischen Phänomenen. Definition (1967): Eine Sekunde ist das 9.192.631.770fache der Periodendauer, der dem Übergang zwischen den beiden Hyperfeinstrukturniveaus des Grundzustandes von Atomen des Nuklids 133 Cs entsprechenden Strahlung.
37 / 57 Internationale Atomzeit TAI Temps Atomique International aka Atomzeit fortlaufender, chronoskopischer Zeitmaßstab (keine Diskontinuitäten) Basis: 230 über die Erde verteilte Atomuhren zentral ermittelt am Bureau International des Poids et Mesures in Paris (BIPM) Ermittlung dauert etwa einen Monat (!) Grundlage für die gesetzliche Weltzeit UTC (siehe unten) Problem: astronomische Phänomene (und damit UT1 & Co.) verschieben sich allmählich zeitlich Synchronisation nötig UTC
38 / 57 Koordinierte Weltzeit UTC engl. Universal Coordinated Time Basis der gesetzlichen Zeit abgeleitet aus TAI: durch Einfügung sog. leap seconds an (astronomische) Erdzeit UT1 angepaßt Einfügung einer Sekunde erfolgt etwa einmal pro Jahr, festgelegt durch International Earth Rotation Service (IERS) UTC und UT1 weichen nie mehr als 0.9s voneinander ab modifiziert durch 24 Zeitzonen, Sommer-/Winterzeit-Festlegungen nicht chronoskopisch per definitionem: TAI und UTC am 1.Januar 1958 identischer Wert
39 / 57 Koordinierte Weltzeit UTC TAI-UTC=31 Sekunden (1997) Berechnung wie TAI am BIPM, dauert etwa einen Monat aktuelle UTC wird geschätzt, und zwar von den genauesten Atomuhren der Welt: UTC(k), k {NIST, PTB,... } Aussendung der UTC in Deutschland/Europa über Langwellensender DCF77 der Physikalisch-Technischen Bundesanstalt (PTB). Sendefrequenz 77.5 khz Reichweite: etwa 2000 km Empfang: drahtlos (Funkwecker), Analog-Modem, NTP
40 / 57 Uhrensynchronisation Die Existenz der Gangabweichungsrate ρ bedingt die Notwendigkeit der Synchronisation jeder Uhr. 2 Formen: externe S.: Abgleich der Systemuhr(en) mit einer (als ideal angenommenen) externen Referenzuhr (z.b. Zeitserver) interne S.: Einigung aller Systemuhren auf einen gemeinsamen Wert ohne externe Referenz
Resynchronisierungsintervall 41 / 57 Um die Gangdifferenz zu beschränken, muß periodisch synchronisiert werden. Die maximal geduldete Differenz a zweier betrachteter Uhren determiniert die Größe des sogenannten Resynchronisierungsintervalls t sync. Diese beträgt bei externer Synchronisation a ρ Zeiteinheiten und bei interner Synchronisation a Zeiteinheiten (beide 2ρ beteiligten Uhren sollen eine maximale Gangabweichungsrate von ρ aufweisen).
Wertverlauf einer extern synchronisierten Uhr t zu messen de Uhr Toleranzbereich mit Synchronisation ideal synchronisierte Uhr Resynchronisierungs intervall Toleranzbereich ohne Synchronisation Referenz uhr t 42 / 57
43 / 57 Zentrale vs. dezentrale Synchronisation Unterscheidung von zentralen (ein verantwortlicher Server) und dezentralen (alle Teilnehmer gleichberechtigt) Synchronisationsverfahren. Fehlertoleranz Datenaufkommen zentral schlecht gering dezentral gut sehr hoch Tabelle: zentrale vs. dezentrale Synchronisation
44 / 57 Korrektur der Uhr Keine Zeitsprünge und keine Verletzungen der Kausalität (d. h. nicht zurückstellen), da bestimmte Aktivitäten im System an absolute Zeitpunkte geknüpft sind (Beispiele: make-utility, Abschuss einer Rakete,... ). Stattdessen: Zeittakt des Clients bis zur Angleichung beschleunigen bzw. verlangsamen ( HA)
45 / 57 Probabilistische Uhrensynchronisation Grundidee 1. Client C schickt Anfrage an Server S ( time=? ). 2. S ermittelt beim Empfang seine Zeit t S und schickt diese an C. 3. C empfängt die Nachricht und stellt seine Uhr auf t S. C S t 0 Time=? Time=t S t S t 1 C S (t 1 )
Probabilistische Uhrensynchronisation Näherungsweise Kompensation der Nachrichtenlaufzeit Problem: t S ist nicht präzise; während der Nachrichtenübertragung ist Uhr weitergelaufen es ist prinzipiell unmöglich, die Laufzeit der Nachricht exakt zu bestimmen, da die Uhren von C und S nicht exakt synchronisiert sind, d. h. C S (t 1 ) ist für C nicht bestimmbar probabilistisches Intervall für C S (t 1 ) angebbar 3 : { } C S (t 1 ) t S + t min (1 ρ), t S + 2D(1 + 2ρ) t min (1 + ρ) D = t 1 t 0 2, durch C gemessene halbe Roundtripzeit t min minimale Nachrichtenlaufzeit ρ Ganggenauigkeit der Uhren von C und S 3 Flaviu Cristian. Probabilistic clock synchronization. In: Distributed Computing 3.3 (1989), S. 146 158. 46 / 57
47 / 57 Probabilistische Uhrensynchronisation Anmerkungen Uhr von C wird auf die Mitte des Intervalls gesetzt (um potentiellen Fehler zu minimieren): C C S (t S, D) = t S + D(1 + 2ρ) ρt min Intervall wird umso kleiner ( umso genauer kann Uhr von C gestellt werden) je kleiner ρ, je näher D an tmin mehrere Anfragen (und Antworten); diejenige mit minimalem D wird genutzt
48 / 57 Probabilistische Uhrensynchronisation Vereinfachung bei vernachlässigbarer Drift ρ der beteiligten Uhren vereinfacht sich das Intervall für C S (t 1 ): } C S (t 1 ) {t S + t min, t S + 2D t min Länge des Intervalls wird zu l = 2D 2t min C setzt seine Uhr beim Empfang der Nachricht auf C C S (t S, D) = t S + D maximal möglicher Fehler der zu stellenden Uhr ist dann D t min
Berkeley-Algorithmus (1989) 4 Zentralisierter Algorithmus mit aktivem Server. Server hat keine genaue Zeitbasis! (Ursprung: 4.3 BSD UNIX) Zeitserver (time daemon) übermittelt periodisch seine Zeit an alle Clients diese errechnen Differenz zu ihren lokalen Zeiten Differenzen werden an Zeitserver zurückgesandt Zeitserver mittelt Differenzen und bildet Korrekturwerte für jeden Client (und sich selbst) Korrekturwerte werden an Clients übertragen Clients beschleunigen bzw. verzögern lokale Uhren, bis Korrekturwerte eingestellt bei Ausfall des Servers kann ein anderer Knoten die Rolle übernehmen (per Election) 4 Riccardo Gusella und Stefano Zatti. The Accuracy of the Clock Synchronization Achieved by TEMPO in Berkeley UNIX 4.3BSD. In: IEEE Transactions on Software Engineering 15.7 (Juli 1989), S. 847 853. 49 / 57
Berkeley-Algorithmus: Beispiel A) Zeit server 12:00 11:55 12:08 12:00 B) + 0 12:00 12:00 11:55 12:08 5 +8 C) +1 12:01 12:01 12:01 +6 7 50 / 57
Dezentrale Mittelwertbildung Dezentraler Algorithmus, kein Server. Einteilung der ( Zeit ) in fixe Resynchronisierungsintervalle, Dauer R = a 2ρ Uhren aller Systeme haben gleichen Wert zu T 0 i-tes Intervall = {T 0 + ir, T 0 + (i + 1)R} R t T 0 T 0 +R T 0 +2R T 0 +ir T 0 +(i+1)r Abbildung: Verfahren der Dezentralen Mittelwertbildung 51 / 57
Dezentrale Mittelwertbildung: Prinzip 52 / 57 zu Beginn jedes Intervalls Broadcasting der eigenen Uhrzeit (nicht wirklich gleichzeitig, da Uhren differieren) Empfang der Uhrzeiten in einer definierten Zeitspanne a) einfache Mittelwertbildung b) Mittelung unter Ausschluß der m größten und m kleinsten Werte (Fehlersicherheit gegenüber maximal m fehlerhaften Uhren) c) Einbeziehung der Nachrichtenlaufzeit, wenn ermittelbar Angleichung der eigenen Uhr an errechneten Mittelwert
Unterstützung in Rechensystemen Hardware Timer zur periodischen Unterbrechung, abgeleitet aus Taktfrequenz des Rechners, z. B. Intel 8254 programmable Interrupt Timer (PC) 2 On-Chip-Timer im DSP TMS320C6x CMOS-Uhr Real-Time-Clock (RTC) im PC, enthält Batterie, Quarz und notwendige Beschaltung, mäßige Ganggenauigkeit, z. B. z. B. Dallas DS12887 Einsteckkarte mit eigenem DCF-77-Empfänger oder GPS-Empfänger Register z.b. Time Stamp Counter (TSC) im Intel Pentium, inkrementiert mit Taktfrequenz Watchdog zur Überwachung der korrekten Prozessorfunktion in sensitiven Applikationen 53 / 57
54 / 57 Unterstützung in Rechensystemen Betriebssystem-Dienste Betriebssysteme etablieren i.a. eine Approximation der gültigen Weltzeit konkrete Schnittstelle abhängig vom Betriebssystem Typische zeitbehaftete Funktionen und Kommandos eines UNIX-Systems sind: Ermittlung der aktuellen (Welt-)zeit: date, time() Umwandlung interne Darstellung in lesbare (ASCII)-Form: ctime(), asctime() Berechnungen mit Zeitangaben: difftime() (Zeitdifferenzen) Korrektur der Rechnerzeit: automatisch durch ntpd, date, wenn Uhr völlig nach Mond geht
55 / 57 Unterstützung in Rechensystemen Betriebssystem-Dienste II getimte Abarbeitung: Dienst cron (stündliche, tägliche und wöchentliche Verrichtungen), at-kommando Verzögerung um bestimmte Dauer (sleep(), usleep(), nanosleep()) periodische Aktivierung bzw. Signalisierung (getitimer(), setitimer()) Zeitstempel für persistente Objekte (z.b. Dateien letzter Zugriff, letzte Modifikation, letzte Statusänderung Ermittlung mittels stat())
56 / 57 Zusammenfassung: Was haben wir gelernt? 1. Zeitbegriff 2. Uhren: Typen, Historie, Parameter, Gütekriterien 3. Zeitstandards 4. (einfache) Verfahren zur Synchronisation
Vertiefende Literatur David W. Allan, Neil Ashby und Clifford C. Hodge. The Science of Timekeeping. Techn. Ber. AN 1289. Agilent Technologies, 2000 David L. Mills. Computer Network Time Synchronization. CRC Press, 2006 Dennis D. McCarthy und P. Kenneth Seidelmann. TIME From Earth Rotation to Atomic Physics. Wiley, 2009 F. G. Major. The Quantum Beat. 2. Aufl. Springer, 2007 57 / 57