markus messner, christina novoszel clocks – anwendung & realisierung clocks anwendung &...
TRANSCRIPT
![Page 1: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/1.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Clocks
Anwendung & Realisierung
![Page 2: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/2.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
1. Geschichte der Uhren
2. Hardware – Uhren
3. Software – Uhren
4. Zusammenspiel Hardware – Software Uhren
5. Zeitsynchronisation
Übersicht:
![Page 3: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/3.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Wer als erstes die Uhr erfunden hat lässt sich nicht mehr feststellen
1269 Begriff Uhrmacher taucht zum ersten Mal auf 1345 die Stunde wird spätestens ab diesem Jahr mit 60
Minuten und diese in 60 Sekunden eingeteilt um 1511 der Nürnberger Schlosser Peter Henlein baut
sehr beliebte tragbare Uhren, die 40 Stunden gehen. 1927 W. A. Marrison entwickelt in den USA die erste
Quarzuhr
1967 es existiert ein Prototyp einer Quarzarmbanduhr.
1. Geschichte der Uhren
![Page 4: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/4.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
2. Hardware Uhren (1)
Aufgaben der Uhr :
liefern Uhrzeit
verhindern blockieren des Prozessors durcheinen Prozess
Einstellen der Alarmzeit zu denen ein Interrupt ausgelöst werden soll
Periodisches generieren von Interrupts
![Page 5: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/5.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Funktionsweise:
die Chips erhalten eine von einem Quarz erzeugte Taktfrequenz, die sie durch Teilerstufen schicken, um den Sekundentakt zu generieren, mit dem die Uhr zählt .
2. Hardware Uhren (2)
![Page 6: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/6.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Zugriff auf HW - Uhren:
Mit Devic Driver, auf /dev/rtc und mit ioctl(2)s. Infos unter :usr/src//linux/include/linux/mc146818rtc.h oder usr/src/linux/Documentation/rtc.txt
Zusätzliches Tool das den Device Driver auch nutzt ist : hwclock
2. Hardware Uhren (3)
![Page 7: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/7.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Notwendigkeit von Software Uhren ?
Auflösung der HW – Uhr nur cirka 1 Sekunde
Keine Möglichkeit der Nachregulierung der Ganggeschwindigkeit
2. Hardware Uhren (4)
![Page 8: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/8.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Aufgaben:
Verwalten der Uhrzeit
Buchführen über die Prozessornutzung
Behandlung des alarm- System Calls
Das Profiling, das Führen von Statistiken und anderen Überwachungen.
3. Software Uhren (1)
![Page 9: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/9.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Zugriff:
Über den Befehl date(1)
Damit erfolgt das Auslesen und Setzen. Die HW – Uhr bleibt dadurch aber unverändert
3. Software Uhren (2)
![Page 10: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/10.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Implementierung:
Als Struktur vom Typ struct timeval, Definition:Typedef struct timeval{
long tv_sev;long tv_usec;};
3. Software Uhren (3)
![Page 11: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/11.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Zeitdefinition im POSIX – Standard.Problem:Schaltsekunden bei Zeitangaben im struct timeval nicht berücksichtigt
Vorteil: in Posix jeder Tag genau 86400 Sek.
Nachteil:bestimmte Zeiten koennen nicht dargestellt werden
3. Software Uhren (4)
![Page 12: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/12.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Zugriff auf SW-Uhr über System Calls:
int gettimeofday(struct timeval *tv, struct timezone *tz)
int settimeofday(struct timeval *tv, struct timezone *tz)
3. Software Uhren (5)
![Page 13: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/13.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Mit den System Calls kann die Systemzeit gelesen bzw. gesetzt werden -> nur vom super user / root
Um die Zeit zu setzen, muss ein Zeiger auf die Struktur vom Typ timeval übergeben werden, in der die zu setzende Zeit steht bzw. in die die Zeit vom Kernel geschrieben wird.
3. Software Uhren (6)
![Page 14: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/14.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Kommando date:
benutzt die System Calls time und stime zum Lesen und Setzen
In beiden Fällen werden die Sekunden seit 1970-01-01 00:00:00 UTC als 32-bit Integer dargestellt.
Darstellbarer Zahlenbereich: -2^31 bis 2^31-1
3. Software Uhren (7)
![Page 15: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/15.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Software-Uhr wird gesetzt mit: date
Hardware-Uhr wird gesetzt mit: hwclock
zB: hwclock --show
hwclock --set --date=…
Folgende Befehle weisen der Hardware-Uhr die Zeit der Software-Uhr zu und umgekehrt:
hwclock --systohc [--utc]
hwclock --hctosys [--utc]
4. Zusammenspiel von Hardware- und Software-Uhr
![Page 16: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/16.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Jeder PC verfügt über eine Real-Time-Clock (RTC)
Diese geht im Schnitt aber pro Tag etwa 5 Sekunden falsch.
Um eine genaue Uhrzeit zu ermöglichen ist eine regelmäßige Synchronisation mit der Zeitfrequenz notwendig
5. Zeitsynchronisation (1)
![Page 17: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/17.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Zeitsynchronisation ist vor allem wichtig in Rechnernetzen
wenn:
Netzwerk-Filesysteme wie NFS eingesetzt werden
log files auf verschiedenen Rechnern erzeugt werden
5. Zeitsynchronisation (2)
![Page 18: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/18.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
5. Zeitsynchronisation (3)
Unter Unix wird zur Synchronisierung von Uhren
nicht der system call settimeofday benutzt, weil:
Die Systemzeit plötzliche Sprünge machen würde
Die Systemzeit würde unter Umständen Rückwärtssprünge machen.
![Page 19: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/19.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Statt settimeofday wird adjtime bzw. moderner adjtimex verwendet.
Mit diesem system call kann man dem kernel mitteilen wieviel Mikrosekunden die Zeit vor- bzw. nachgeht
5. Zeitsynchronisation (4)
![Page 20: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/20.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Software und Protokolle zur Synchronisation:
timedRFC 868NTPDCF-77GPS
5. Zeitsynchronisation (5)
![Page 21: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/21.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Timed
Schon lang exisitierende Software auf Unix-Maschinen
Beim booten im Hintergrund gestartet
Tauscht regelmäßig Nachrichten mit time stamps mit den anderen time daemons im LAN aus
Kein eigenes Protokoll sondern ICMP
5. Zeitsynchronisation (6)
![Page 22: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/22.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
RFC 868
Kann sowohl über TCP als auch über UDP benutzt werden
Verwendet den Port 37
Gravierender Nachteil: schlechte Genauigkeit der time stamps
5. Zeitsynchronisation (7)
![Page 23: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/23.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
NTP
Kennt nur ein Paket-Format, mit dem Zeitinformationen zwischen Rechnern ausgetauscht werden
NTP-Packete enthalten im wesentlichen 4 time stamps von jeweils 64 bit
5. Zeitsynchronisation (8)
![Page 24: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/24.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
DCF-77, GPS, etc.
Die Zeit per NTP benötigt eine relativ regelmäßige Netzwerkverbindung
Der xntp daemon, xntpd kann auch mit Zeitzeichenempfänger zusammenarbeiten, die die Zeit direkt via Satellit zB GPS (Global Positioning System) oder von einem Langwellensender wie DCF-77 empfängt
5. Zeitsynchronisation (9)
![Page 25: Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung Clocks Anwendung & Realisierung](https://reader036.vdocuments.net/reader036/viewer/2022062318/55204d7249795902118c5bdd/html5/thumbnails/25.jpg)
Markus Messner, Christina Novoszel Clocks – Anwendung & Realisierung
Quellverzeichnis
Tannenbaum: Betriebssysteme
Internet:www.ibr.cs.tu-bs.de/users/thuerman/timewww.uhren-watchdeal.de