Wie spät ist es? Die Unixzeit feiert heute Jubiläum und ist trotzdem angezählt

14.07.2017

Die Unixzeit feierte heute morgen ihren 1,5 Milliardsten Takt und kommt damit ihrem Ende unaufhaltsam näher. Aus diesem Grund widmen wir uns kurz der besonderen Zeit.

Eine Sekunde wurde bis 1967 astronomisch durch die Erdrotation bestimmt. Darauf folgte die SI-Sekunde, weil die Rotation der Erde nicht gleichförmig verläuft. Eine Sekunde ist seitdem als das 9.192.631.770-fache der Periodendauer der dem Übergang zwischen den beiden Hyperfeinstrukturniveaus des Grundzustandes von Atomen des Nuklids 133Cs entsprechenden Strahlung definiert. Durch die Entkopplung der Sekunde von der Erdrotation kommt es aber zu leichten Abweichungen gegenüber der astronomischen Zeit. Nun gibt es verschiedene Zeitsysteme, zwei davon dominieren dabei. Das erste ist UT1 als Nachfolger der Greenwich Mean Time. Es ist nicht an die SI-Sekunde gebunden. Wenn ein Tag etwas kürzer ist, als der vorherige, dann ist auch jede Sekunden dieses Tages etwas kürzer. Somit ist die Sekundenzahl immer konstant, die Länge jeder Sekunde aber unterschiedlich. UTC ist die am häufigsten verwendete Zeit. Eine Sekunde bei UTC entspricht immer einer SI-Sekunde. Jedoch ist durch Schaltsekunden garantiert, dass UTC maximal 0,9 Sekunden von UT1 abweicht. Im Mittel ist eine Schaltsekunde etwa alle 18 Monate nötig und wird meistens am 31. Dezember oder 30. Juni eingefügt.

Wie verhält sich nun der Unix-Timestamp bei einer Schaltsekunde? Die Schaltsekunden werden nicht berücksichtigt. Die Unixzeit genießt deshalb durch ihre einfache Berechnung von Zeitabständen in vielen modernen Server-Anwendungen weiterhin eine tragende Rolle, so etwa im Umfeld von PHP- oder MySQL-Applikationen, bei der Unterscheidung und Generierung zeitbezogener Datenbank-Einträge. Es gibt dabei jedoch nur ein Problem: Der Zeitzähler ist eine 32-Bit-Zahl und dadurch nicht unendlich. Am 19. Januar 2038  um  03:14:07 Uhr wird die Unixzeit überlaufen. Bei vielen Open-Source-Systemen wurde bereits ein Kompatibilitätsmodul oder die Umstellung auf 64-Bit eingeführt. Andere arbeiten gerade noch daran.

Nichtsdestotrotz des allgemeinen Trends hin zu 64-Bit-Systemen sind eingebettete Systeme auf Unix-Basis zurzeit noch nahezu ausschließlich 32-Bit-Systeme. Die in letzter Zeit erkennbare Tendenz, Haushaltsgeräte (z. B. Router, Radiowecker und ähnliches) durch eingebettete Systeme auf Unix-Basis zu implementieren, birgt daher das Risiko, dass diese Geräte ab dem 19. Januar 2038 nicht mehr korrekt funktionieren.

Wir haben 1.500.000.000 nach Unixzeit:

$ date -d @1500000000
Fr 14. Juli 03:40:00 CET 2017

Ähnliche Artikel

comments powered by Disqus
Mehr zum Thema

Schaltsekunde: Google verschmiert die Zeit

Mit einem Trick implementiert Google auf seinen Timeservern die Schaltsekunde.

Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023