Windows 7 4.533 Themen, 43.568 Beiträge

News: Die Sache mit den Zeit-Servern

Tickt Windows 7 falsch?

Michael Nickles / 14 Antworten / Flachansicht Nickles

Windows 7 leidet angeblich an einem Problem, das anscheinend bereits aus der Windows-XP-Urzeit rübergeschleppt wurde. Das meint zumindest die Pcworld in ihrem Beitrag Fix the Windows Clock So It Syncs Properly.

Darin wird mitgeteilt, dass Windows 7 weiterhin ein Problem damit hat, die Zeit ordentlich zu synchronisieren. Konkret geht es um die "Uhr im System", die sich alle Weile (gemäß Standardeinstellung) die aktuelle Zeit von einem Server aus dem Internet abholt. Details liefert ein Klick auf die Uhr in der Taskleiste und dann die Dialog-Seite "Internetzeit". Dort ist typischerweise die Option "Automatisch mit einem Internetzeitserver synchronisieren" aktiviert und als "Zeit-Server" ist beispielsweise time.windows.com eingetragen.

Gemäß Pcworld-Autor Rick Broida haut das mit dem standardmäßig vorgegebenen Zeit-Server nicht sauber hin, die Systemzeit ist nicht "synchron" genug. Das soll eventuell an Überlastungen des Zeit-Servers oder was auch immer liegen. Broida empfiehlt, den Standard-Zeit-Server durch pool.ntp.org zu ersetzen. Das soll zumindest in seinem Fall für bessere Zeitsynchronisation sorgen.

Michael Nickles meint: Hm. Auf jeden Fall eine interessante Geschichte. Ich geh mal nicht davon aus, dass es sich um einen Aprilscherz handelt. Offen gesagt, habe ich bei meinem Rechner unter Windows noch nie ein "Zeitproblem" festgestellt. Ich muss allerdings zugeben, dass ich nicht wirklich weiß, wie perfekt die "Zeit" auf meiner Kiste ist - ich habe keine "Atomuhr" zum Vergleichen neben mir stehen.

Bedenkenswert ist die Sache auf jeden Fall. Denn: Dateioperationen und auch sonstige "Dokumente" wie Emails kriegen ja vom System einen "Zeitstempel" verpasst, den auch Backup-Anwendungen verwenden können. Meine Recherchen zur Sache haben unter anderem ergeben, dass Windows den Zeit-Server natürlich nicht permanent übers Internet abfragt, sondern nur "alle Weile".

Im Fall von XP beträgt diese Weile standardmäßig 604.800 Sekunden - also "alle sieben Tage". Dieses Zeitintervall ist in der Registry im Ast

Hkey_Local_Machine\System\ControlSet001\Services\W32Time\TimeProviders\NtpClient

als Eintrag "SpecialPollInterval" verbuddelt. Wer mag kann dort den Dezimalwert "1" eintragen, womit der Zeit-Server dann quasi im Sekundentakt abgefragt wird - und vermutlich die Grätsche macht, wenn alle Windows-Nutzer das tun.

Eine recht komplexe Abhandlung zur "Zeit-Server"-Einstellung findet sich hier bei Microsoft: How to configure an authoritative time server in Windows XP. Offen gesagt, ich bin grad zu faul nachzugucken, ob der "Registry-Ast" auch bei Windows Vista und Windows 7 der gleiche ist.

So. Haben wir jetzt ein ernsthaftes Problem und müssen handeln? Oder sollen wir die Uhr einfach weiterticken lassen, so wie sie tickt? Was meint Ihr?

bei Antwort benachrichtigen
Synthetic_codes dr_rock1 „Ich habe schon festgestellt, dass je nach BIOS Einstellungen massive...“
Optionen

Hi Dr_rock1

das liegt daran, dass Spread Spectrum eine gewisse Varianz in den effektiven Taktraten im PC verursacht. Die echtzeit Uhr meldet sich allerdings 18.2 Mal pro sekunde bei der CPU und verursacht einen Tick(Interrupt). diese 18.2x pro sekunde werden beim booten des systems anhand eines dividers vom Front Side Bus in Anzahl von Takten errechnet.

Beispiel: Du hast einen FSB von 200Mhz(hypothetisch):
Das bedeutet dass beim Booten festgelegt wird, dass sich die RTC alle 10.989.010 Takte bei der CPU meldet und einen Interrupt auslöst. Hast du nun Spread Spectrum aktiviert, ändert sich der FSB jedoch alle weile dynamisch. dadurch ergeben dauern 10.989.010 Takte, die die RTC als meldeintervall gespeichert hat immer eine unterschiedliche Zeitspanne. (Wenn der FSB 200 ist, dauern diese knapp 11 Mio Takte ca 0,05494 Sekunden, ist der FSB aufgrund der Spread einstellung vorübergehend bei 210 MHZ, dauern diese Takte jedoch nur 0.05232 Sekunden.) Dadurch ergeben sich teilweise grosse differenzen.

'); DROP TABLE users;--
bei Antwort benachrichtigen