Zeitstempel-Tool

Online-Tool zur Zeitstempel-Konvertierung, das die Umwandlung zwischen Unix-Zeitstempel und Datum/Uhrzeit mit Unterstützung für mehrere Zeitzonen ermöglicht

Aktueller Zeitstempel

Zeitstempel zu Datum

Das Konvertierungsergebnis wird hier angezeigt

Datum zu Zeitstempel

Das Konvertierungsergebnis wird hier angezeigt

Wissen zu Zeitstempeln

Die Grundlage der Zeitberechnung


I. Unix-Zeitstempel: Die universelle „Zeitsprache"

Definition: Ein Unix-Zeitstempel (Unix Timestamp) gibt die Anzahl der Sekunden an, die seit 1. Januar 1970, 00:00:00 UTC (ohne Schaltsekunden) vergangen sind. Er dient als plattform- und zeitzonenunabhängiger Standard zur Zeitdarstellung in Computersystemen.

Maßgebliche Definitionsquellen:

  • Gemäß POSIX-Standard (IEEE Std 1003.1-2017)[1] wird der Unix-Zeitstempel als „Sekunden seit der Epoche" definiert.
  • Die Linux-Handbuchseite time.h[2] gibt den Datentyp als time_t an (typischerweise ein vorzeichenbehafteter 32- oder 64-Bit-Ganzzahlwert).

Wesentliche Merkmale:

  1. Zeitzonenunabhängigkeit: Unix-Zeitstempel sind weltweit für denselben Zeitpunkt identisch. Beispiel: Sowohl 2023-10-01 08:00:00 (UTC+8) als auch 2023-10-01 00:00:00 UTC haben den Zeitstempel 1696118400.
  2. Weglassung von Schaltsekunden: Schließt Schaltsekunden-Anpassungen aus, was zu einer Differenz von etwa 27 Sekunden zur Internationalen Atomzeit (TAI) (Stand 2023)[3] führt.
  3. 32-Bit-Limitierung: 32-Bit-Zeitstempel laufen am 19. Januar 2038 auf null über (das „Year-2038-Problem")[4].

II. GMT vs. UTC: Von der astronomischen Beobachtung zur Atomuhr

Obwohl oft austauschbar verwendet, weisen GMT (Greenwich Mean Time) und UTC (Coordinated Universal Time) grundlegende Unterschiede auf:

Aspekt GMT (Greenwich Mean Time) UTC (Coordinated Universal Time)
Definition Basiert auf der Erdrotation (astronomische Beobachtung) Basiert auf Atomuhren (Oszillation von Cäsiumatomen) und hält die Differenz zu GMT unter 0,9 s
Anpassung Keine periodische Kalibrierung Über Schaltsekunden mit der Erdrotation synchronisiert[5]
Autorität Ursprünglich vom Greenwich-Observatorium definiert, heute als Zeitzonenbezeichner (UTC+0) verwendet Verwaltet durch ITU[6] und BIPM[7]

Wesentliche Fakten:

  • Der Niedergang von GMT: UTC löste GMT 1972 als internationalen Zeitstandard ab[8], obwohl „GMT" weiterhin weit verbreitet zur Bezeichnung der UTC+0-Zeitzone verwendet wird.
  • Regeln für Zeitzonenkürzel: Gemäß der IANA-Zeitzonendatenbank[9] stellen sowohl Etc/UTC als auch Etc/GMT den Null-Offset dar, letzteres verwendet jedoch umgekehrte Vorzeichen (z. B. bedeutet GMT+1 tatsächlich UTC-1).

III. Zeitzonenkonvertierung: Vom Zeitstempel zur Ortszeit

Zeitstempel → Formel für Ortszeit: Ortszeit = Unix-Zeitstempel + Zeitzonen-Offset + Schaltsekunden-Kompensation

Maßgebliche Werkzeuge und Standards:

  1. IANA-Zeitzonendatenbank (ehemals Olson-Datenbank)[9]:
    • Enthält globale Zeitzonenregeln (z. B. steht America/New_York für UTC-5/UTC-4)
    • Standardmäßig integriert in Linux-, macOS- und Java-Systeme
  2. ISO 8601 Standard[10]:
    • Legt das Zeitformat YYYY-MM-DDTHH:mm:ss±HH:mm fest (z. B. 2023-10-01T08:00:00-04:00)
  3. RFC 3339[11]:
    • Definiert das Internet-Zeitformat (ISO 8601 kompatibel) und erfordert einen expliziten Zeitzonen-Offset

Beispielcode (Python):

import datetime

timestamp = 1696118400
# Convert to UTC
utc_time = datetime.datetime.utcfromtimestamp(timestamp)  # 2023-10-01 00:00:00
# Convert to Eastern Time (UTC-4)
local_time = datetime.datetime.fromtimestamp(timestamp, datetime.timezone(datetime.timedelta(hours=-4)))  # 2023-10-01 04:00:00-04:00

IV. Schaltsekunden: „Ausnahmebehandlung" des Zeitstempels

Mechanismus der Schaltsekunde:

  • Der Internationale Erdrotationsdienst (IERS)[5] bestimmt die Einfügung von Schaltsekunden basierend auf Änderungen der Erdrotation (typischerweise am 30. Juni oder 31. Dezember)
  • Stand 2023 beträgt die kumulative Schaltsekundendifferenz zwischen UTC und TAI 37 Sekunden[3]
Systemkompatibilität: System/Sprache Handhabung von Schaltsekunden Offizielle Dokumentation
Linux Kernel unterstützt die Einfügung von Schaltsekunden, erfordert manuelle Konfiguration Linux-Kernel: Handhabung von Schaltsekunden
Java Die java.time-API ignoriert Schaltsekunden Oracle Java-Dokumentation
Google Public NTP Verwendet die Strategie des „Leap Smearing" (Schaltsekunden-Verschmierung) bei der Einfügung von Schaltsekunden Google Leap Smearing

V. Maßgebliche Referenzen


VI. Zusammenfassung

  • Der Unix-Zeitstempel ist grundlegend für die programmübergreifende Zeitzonenprogrammierung; beachten Sie das Überlaufproblem von 2038.
  • UTC ist der moderne internationale Standard, während GMT nur noch als Zeitzonenbezeichner (UTC+0) verwendet wird.
  • Zeitzonenkonvertierungen stützen sich auf die IANA-Datenbank, und die Handhabung von Schaltsekunden sollte IERS-Bulletins berücksichtigen.

Das Verständnis dieser Konzepte ermöglicht eine präzise Steuerung der Zeitlogik in kritischen Systemen wie Finanztransaktionen und der Protokoll-Synchronisierung.

Referenzen

[1] POSIX-Zeitstandard: IEEE Std 1003.1-2017
[2] Linux-Handbuchseite time.h: Führen Sie man 3 time im Terminal aus
[3] BIPM-Schaltsekunden-Bulletin: TAI-UTC-Verlauf
[5] Internationaler Erdrotationsdienst (IERS): Schaltsekunden-Ankündigungen
[6] Internationale Fernmeldeunion (ITU): UTC-Definition
[9] IANA-Zeitzonendatenbank: Offizielles Repository
[11] RFC-3339-Zeitformat: RFC-3339-Spezifikation