Unix-tid live

1754320818

Sekunder sedan Unix-epoken (00:00:00 UTC den 1 januari 1970)

Vad är Unix-tid?

Unix-tid (även känt som epoktid, POSIX-tid eller Unix-tidsstämpel) är ett system för att beskriva en tidpunkt. Det är antalet sekunder som har förflutit sedan Unix-epoken, som definieras som 00:00:00 UTC den torsdagen den 1 januari 1970. Det används i stor utsträckning i Unix-liknande operativsystem och många andra datorsystem.

Den största fördelen med Unix-tid är dess enkelhet. Den representerar tid som ett enda, universellt förståeligt heltal som kontinuerligt ökar. Detta gör det otroligt enkelt att lagra, jämföra och utföra beräkningar med tidsstämplar utan att oroa sig för tidszoner, sommartid eller olika kalendersystem. Till exempel, för att hitta varaktigheten mellan två händelser, subtraherar du helt enkelt deras Unix-tidsstämplar.

Även om detta råa nummer är perfekt för datorer, är det inte särskilt användarvänligt för människor. För att överbrygga detta använder utvecklare och teknikentusiaster ett verktyg som kallas epokkonverterare. Du kan använda det för att omedelbart konvertera vilken tidsstämpel som helst till ett läsbart datum, eller göra det omvända genom att hitta tidsstämpeln för ett specifikt datum.

Problemet år 2038

Ett välkänt problem relaterat till Unix-tid är "Problemet år 2038." Det liknar Y2K-problemet. Många tidiga datorsystem var utformade för att lagra Unix-tidsstämpeln som ett 32-bitars tecken heltal. Ett tecken heltal på 32 bitar kan representera värden från -2 147 483 648 till 2 147 483 647.

Det maximala värdet, 2 147 483 647, kommer att nås vid 03:14:07 UTC den 19 januari 2038. Vid nästa sekund kommer heltalet att överfyllas och återgå till dess mest negativa värde, vilket tolkas av system som ett datum år 1901. Detta kan orsaka omfattande fel i äldre programvara som är beroende av 32-bitars tidsrepresentationer.

Lösningen är att använda ett 64-bitars heltal för att lagra tidsstämpeln. Ett 64-bitars heltal har ett maximalt värde så stort att det inte kommer att överfyllas på ungefär 292 miljarder år, vilket effektivt löser problemet för överskådlig framtid. De flesta moderna operativsystem och programvaror har redan övergått till 64-bitars tidsrepresentationer.

Skottsekunder och Unix-tid

En viktig teknisk detalj är att Unix-tid inte tar hänsyn till skottsekunder. Medan UTC (koordinerad universell tid) ibland lägger till en skottsekund för att hålla våra klockor i linje med jordens rotation, ignorerar Unix-tidsstämpeln dem helt enkelt och fortsätter att räkna linjärt.

Detta innebär att Unix-tid inte är en sann representation av UTC. Istället kan den mer exakt beskrivas som en linjär räkning av sekunder. När en skottsekund inträffar, upprepar Unix-tid ibland en sekund för att förbli synkroniserad. Denna nyans är avgörande för vetenskapliga och högprecisionsapplikationer, men för de flesta allmänna datoranvändningar är skillnaden försumbar.

Vanliga användningar av Unix-tid

  • Filmer: Operativsystem använder Unix-tidsstämplar för att spåra när filer skapades, ändrades eller senast öppnades.
  • Databaser: Det är ett vanligt och effektivt sätt att lagra datum- och tidsinformation för poster (t.ex. created_at, updated_at).
  • API:er och webbprogrammering: Används för sessionsexpiration, cache-kontroll och loggning av API-förfrågningar.
  • Programmering: Nästan alla programmeringsspråk tillhandahåller funktioner för att hämta den aktuella Unix-tidsstämplen och konvertera den till och från läsbara datumformat.

Klockan nu i dessa städer:

New York · London · Tokyo · Paris · Hongkong · Singapore · Dubai · Los Angeles · Shanghai · Peking · Sydney · Mumbai

Klockan nu i länder:

🇺🇸 USA | 🇨🇳 Kina | 🇮🇳 Indien | 🇬🇧 Storbritannien | 🇩🇪 Tyskland | 🇯🇵 Japan | 🇫🇷 Frankrike | 🇨🇦 Kanada | 🇦🇺 Australien | 🇧🇷 Brasilien |

Klockan nu i tidszoner:

UTC | GMT | CET | PST | MST | CST | EST | EET | IST | Kina (CST) | JST | AEST | SAST | MSK | NZST |

Gratis widgetar för webbansvariga:

Gratis analog klockwidget | Gratis digital klockwidget | Gratis textklockwidget | Gratis ordklockwidget