Schaltsekunden in Windows


38

Eine Schaltsekunde wurde kürzlich am 30. Juni 2015 um 23:59:60 UTC hinzugefügt.

Wie werden Schaltsekunden in Windows (speziell Windows 7) implementiert?


7
Desktop-Computer (besonders billige) sind für ungenaue Uhren bekannt, daher wird NTP verwendet. Schalten Sie das NTP in Windows für einen Tag aus und überprüfen Sie, wie weit es von Ihrem Mobiltelefon entfernt ist (das NTP verwendet). Sie werden überrascht sein, wie weit es noch geht.
Keltari

2
@ Keltari Ich glaube nicht, dass Telefone NTP verwenden. Der Beweis ist, dass Telefone die Zeit aus dem Mobilfunknetz automatisch erhalten, auch wenn sie keine Datenverbindung haben (z. B. kein Datenplan), NTP jedoch eine Datenverbindung erfordern würde. Sie könnten NTP auf einem Telefon ausführen. Möglicherweise tun dies einige ohne Mobilfunknetzfähigkeit (Telefone ohne SIM-Karten oder Tablets). Der häufige Austausch von Paketen zur sorgfältigen Messung von Zeitverschiebungen angesichts der Latenz würde jedoch wahrscheinlich viel mehr Batterielebensdauer kosten, als die Uhr aus dem Mobilfunknetz zu beziehen, das zwar ungenauer ist, aber für ein Telefon ausreicht.
Celada

Antworten:


35

Wie der Windows-Zeitdienst eine Schaltsekunde behandelt

Der Windows-Zeitdienst gibt den Wert der Sprunganzeige nicht an, wenn der Windows-Zeitdienst ein Paket empfängt, das eine Schaltsekunde enthält. (Der Schaltindikator gibt an, ob in der letzten Minute des aktuellen Tages eine anstehende Schaltsekunde eingefügt oder gelöscht werden soll.) Daher ist der NTP-Client, auf dem der Windows-Zeitdienst ausgeführt wird, nach dem Auftreten der Schaltsekunde eine Sekunde schneller als der tatsächliche Zeit. Diese Zeitdifferenz wird bei der nächsten Synchronisation aufgelöst.


23
Es ist keine Sekunde schneller, sondern eine Sekunde voraus.
Arturo Torres Sánchez

1
@ ArturoTorresSánchez Hängt davon ab, ob die Schaltsekunde hinzugefügt oder entfernt wird. Es ist möglich, dass der Verfasser dieses Textes eine negative Schaltsekunde im Sinn hatte. Negative Schaltsekunden sind noch nicht aufgetreten, aber sie sind möglich und werden vermutlich von ntp unterstützt.
Pepijn Schmitz

19
@ ArturoTorresSánchez: Eine Sekunde schneller und eine Sekunde voraus sind dasselbe, zumindest im amerikanischen Englisch. Wenn eine Uhr voraus ist, ist es schnell.
Yorik

16
Und "schneller" ist auf jeden Fall ein direktes Zitat aus dem verlinkten Artikel. Sie müssen sich also an Microsoft und nicht an duDE wenden.
GalacticCowboy

11
@GalacticCowboy, ja, ich weiß, es ist ein direktes Zitat. Es stört mich nur. Eine schnellere Uhr würde mit der Zeit nicht mehr synchron sein.
Arturo Torres Sánchez

35

Windows fungiert normalerweise als NTP- Client. Es wird nur beim nächsten Update vom NTP-Server auf den neuesten Stand gebracht, der eindeutig Methoden zur Behandlung von Schaltsekunden enthält. Dies geschieht, sofern Ihr System so eingerichtet ist, dass die Zeit über NTP synchronisiert wird . Wenn dies nicht der Fall ist, geschieht nichts, da Windows 7 nicht über integrierte Funktionen für Schaltsekunden verfügt


11
"Windows 7 hat keine eingebaute Funktionalität, um mit Schaltsekunden umzugehen ." Da Windows 7 die Zukunft nicht lesen kann, besteht keine Möglichkeit, ohne Kontakt mit einem Server damit umzugehen.
BlueRaja - Danny Pflughoeft

27
@BlueRaja Windows könnte "die Zukunft lesen", indem es die öffentlich verfügbaren tzdata verwendet, die Informationen über zukünftige Schaltsekunden enthalten. So schaffen es Unix-Systeme, Schaltsekunden richtig zu handhaben. Außerdem geben NTP-Pakete an, wann in den nächsten 24 Stunden eine Schaltsekunde fällig ist. Ab Windows 8.1 werden tzdata tatsächlich direkt verwendet.
Neil Mayhew

8
Mit anderen Worten, und um die Frage direkt zu beantworten, sind sie es nicht.
basic6

7

Sie sind nicht implementiert.

Wie bei einer Armbanduhr ist PC-Zeitmessung dumm. Wie bereits erwähnt, verwendet Windows 7 NTP, um die PC-Zeit mit einer bekannten Quelle zu synchronisieren. Welches ist das Äquivalent von Ihnen, Ihre Armbanduhr von Zeit zu Zeit anzupassen.

Die Schaltsekunde wird jedoch zu einem Problem, wenn Sie Code schreiben möchten, der Datums- / Zeitberechnung umfasst, bei der die Anzahl der Sekunden zwischen zwei Datumsangaben wichtig ist, UND wenn diese Berechnungen mit einer Art externem System oder Daten übereinstimmen müssen, die diese Daten enthalten ist Schaltsekunde bewusst. Ich habe Mühe, mir solche Szenarien auszudenken, aber ich stelle mir vor, dass es einige gibt.


2
Irgendwo muss es eine geben: wired.com/2015/07/…
i_am_root

4

Windows tickt einfach weiter. Im Windows-Zeitdienst sind keine Schaltsekunden vorgesehen. Es ist auch wichtig zu beachten, dass in keinem größeren Betriebssystem Schaltsekunden vorgesehen sind.

Auf den ersten Blick mag das seltsam klingen. Wenn Sie verstehen, wofür eine Schaltsekunde steht, und wenn sie hinzugefügt werden, wird dies sehr einfach.

Der Internationale Erdrotations- und Referenzsystemdienst überwacht die Erdrotation auf Unregelmäßigkeiten. Einige Faktoren verändern die Erdrotation. Dazu gehören Gezeitenreibung und das Aufschmelzen von Kontinentaleisplatten (Gewichtsveränderungen!). Insgesamt verlangsamt sich die Erde nur geringfügig .

Aus Wikipedia :

Schaltsekunden haben einen unregelmäßigen Abstand, da sich die Rotationsgeschwindigkeit der Erde unregelmäßig ändert. Tatsächlich ist die Erdrotation auf lange Sicht ziemlich unvorhersehbar, was erklärt, warum Schaltsekunden nur sechs Monate im Voraus angekündigt werden.

Da es unregelmäßig ist und bei Bedarf angekündigt wird , verlassen sich alle modernen Betriebssysteme auf das Network Time Protocol (NTP), um sich von der Schaltsekunde zu erholen. Dies ist ein so weit verbreitetes und bekanntes Problem, dass die asiatischen Märkte ihre Eröffnung um fünf Minuten verzögerten, um den Computern genügend Zeit zu geben, während der letzten Schaltsekunde nach einem Zeitupdate für NTP zu suchen .


3

Microsoft ist es nicht wichtig, Windows-Clients eine äußerst genaue Zeit bereitzustellen. Sie schnitten Ecken und handhabten keine Sonderfälle wie Schaltsekunden für Desktop-Clients. Glücklicherweise halten NTP-Server die bessere Zeit, also synchronisieren Sie einfach weiter!

Der W32Time-Dienst ist keine NTP-Lösung mit vollem Funktionsumfang, die zeitkritische Anwendungsanforderungen erfüllt und von Microsoft als solcher nicht unterstützt wird.

So funktioniert der Windows-Zeitdienst


0

Wie im Windows-Supportartikel Support für die Schaltsekunde angegeben :

Das Windows Server 2019- und das Windows 10-Update vom Oktober 2018 unterstützen Schaltsekunden auf der Plattform.

Der Support-Artikel erklärt auch, wie frühere Versionen unter Windows keine Schaltsekunden unterstützen. Bestimmtes:

Die Verarbeitung von Schaltsekunden wird vom Windows-Betriebssystem nicht separat behandelt. Beispielsweise werden Informationen zu Jahr, Monat, Datum und Uhrzeit im folgenden Format vom Windows-Betriebssystem nicht unterstützt:

JJJJ / MM / TT 08:59:60

Daher wird 2012/7/1 08:59:60 als 2012/7/1 09:00:00 gemäß dem ISO 8601-Format verarbeitet.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.