Unix-aikaleiman muunnin
Aikaleima päivämääräksi
Sekunnit tai millisekunnit tunnistetaan automaattisesti.
Päivämäärä aikaleimaksi
Valitse päivämäärä ja aika muuntaaksesi sen Unix-aikaleimaksi.
Sekuntia Unix-epookista (00:00:00 UTC 1. tammikuuta 1970)
Sekunnit tai millisekunnit tunnistetaan automaattisesti.
Valitse päivämäärä ja aika muuntaaksesi sen Unix-aikaleimaksi.
Sama tämänhetkinen ajanhetki ilmaistuna useissa yleisissä muodoissa, päivitettynä reaaliajassa:
| Muoto | Nykyinen arvo |
|---|---|
| Unix-aikaleima (sekunteina) | — |
| Unix-aikaleima (millisekunteina) | — |
| ISO 8601 (UTC) | — |
| RFC 2822 (UTC) | — |
Unix-aika (tunnetaan myös nimellä Epoch-aika, POSIX-aika tai Unix-timestamp) on järjestelmä ajan kuvaamiseen. Se on sekuntien määrä, jotka ovat kuluneet Unix-epookista, joka määritellään olevan 00:00:00 UTC torstaina 1. tammikuuta 1970. Sitä käytetään laajasti Unix-tyyppisissä käyttöjärjestelmissä ja monissa muissa tietojärjestelmissä.
Unix-ajan suurin etu on sen yksinkertaisuus. Se esittää ajan yhtenä, kaikkien ymmärtämänä kokonaislukuna, joka kasvaa jatkuvasti. Tämä tekee siitä erittäin helppoa tallentaa, vertailla ja tehdä laskelmia aikaleimoilla ilman huolta aikavyöhykkeistä, kesäajasta tai eri kalenterijärjestelmistä. Esimerkiksi kahden tapahtuman välinen aika voidaan löytää yksinkertaisesti vähentämällä niiden Unix-aikaleimat.
Vaikka tämä raakadata on täydellinen tietokoneille, se ei ole kovin käyttäjäystävällinen ihmisille. Tämän kuilun ylittämiseksi kehittäjät ja teknologiaharrastajat käyttävät työkalua nimeltä epoch-muunnin. Voit käyttää sitä välittömästi muuntaaksesi minkä tahansa aikaleiman ihmisluettavaan päivämäärään tai päinvastoin löytääksesi tietyn päivämäärän aikaleiman.
Tunnettu ongelma liittyen Unix-aikaan on "Vuoden 2038 ongelma". Se on samankaltainen kuin Y2K-ongelma. Monet varhaiset tietokonejärjestelmät oli suunniteltu tallentamaan Unix-aikaleima 32-bittisenä allekirjoitettuna kokonaislukuna. Allekirjoitettu 32-bittinen kokonaisluku voi edustaa arvoja -2 147 483 648:sta 2 147 483 647:ään.
Suurin arvo, 2 147 483 647, saavutetaan klo 03:14:07 UTC 19. tammikuuta 2038. Seuraavalla sekunnilla kokonaisluku ylivuotaa ja kääntyy sen negatiiviseksi arvoksi, joka järjestelmissä tulkitaan päivämääräksi vuodelta 1901. Tämä voi aiheuttaa laajalle levinneitä vikoja vanhoissa ohjelmistoissa, jotka luottavat 32-bittisiin aikaleimoihin.
Ratkaisu on käyttää 64-bittistä kokonaislukua aikaleiman tallentamiseen. 64-bittinen kokonaisluku on niin suuri, ettei se ylivuoda noin 292 miljardin vuoden aikana, mikä tehokkaasti ratkaisee ongelman tulevaisuudessa. Useimmat nykyaikaiset käyttöjärjestelmät ja ohjelmistot ovat jo siirtyneet 64-bittisiin aikaleimoihin.
Yksi tärkeä tekninen yksityiskohta on, että Unix-aika ei ota huomioon hyppysekunteja. Vaikka UTC (koordinoitu yleismaailmallinen aika) lisää ajoittain hyppysekunteja pitääkseen kellomme synkronoituna Maan pyörimisen kanssa, Unix-timestampti yksinkertaisesti ohittaa ne ja jatkaa lineaarisesti laskemista.
Tämä tarkoittaa, että Unix-aika ei ole todellinen UTC:n kuvaus. Se on tarkemmin sanottuna lineaarinen sekuntien laskenta. Hyppysekunti tapahtuu joskus, jolloin Unix-aika toistaa sekunnin pysyäkseen synkronoituna. Tämä nyanssi on kriittinen tieteellisissä ja korkeataajuisissa sovelluksissa, mutta useimmissa yleiskäyttöisissä tietojärjestelmissä ero on vähäinen.
created_at, updated_at).
Unix-epochi on hetki, josta aika alkaa Unix-järjestelmissä: 00:00:00 UTC 1. tammikuuta 1970. Unix-aikaleima on yksinkertaisesti sekuntien määrä, joka on kulunut tuosta hetkestä.
Päivämäärän valitsivat Unixin varhaiset kehittäjät käteväksi, pyöreäksi aloituspisteeksi lähelle sitä, kun järjestelmä luotiin 1970-luvun alussa. Se on ollut siitä lähtien standardi vertailupiste.
Unix-aika lasketaan UTC:ssä määritellystä epookista ja on aikavyöhykkeestä riippumaton, joten sama aikaleima tarkoittaa samaa hetkeä kaikkialla. Koska se ei ota huomioon karkaussekunteja, sitä on parasta kuvata lineaarisena sekuntien lukumääränä eikä täydellisenä UTC:n esityksenä.
Tavallinen Unixin aikaleima laskee kokonaisia sekunteja aikakauden alusta, mikä on 10 numeroa nykyisille päivämäärille. Monet järjestelmät, kuten JavaScript, laskevat sen sijaan millisekunteja, jolloin arvo on 1 000 kertaa suurempi, 13 numeroa.
Järjestelmät, jotka tallentavat aikaleiman 32-bittisenä etumerkillisenä kokonaislukuna, voivat laskea vain 19. tammikuuta 2038 kello 03:14:07 UTC asti, minkä jälkeen arvo ylivuotaa ja tulkitaan virheellisesti vuoden 1901 päivämääräksi. Korjaus on tallentaa aikaleima 64-bittisenä kokonaislukuna.