Conversione delle marche temporali Unix
Converte in entrambi i sensi fra la marca temporale Unix, in secondi o millesimi dall'epoca, e la data leggibile da una persona. Uno strumento per sviluppatori con orologio mondiale, inserimento immediato dell'ora corrente e visualizzazione su più fusi orari.
Nozioni di base sulla marca temporale Unix
La marca temporale Unix esprime un istante come numero di secondi trascorsi dalla mezzanotte del primo gennaio 1970 in tempo coordinato universale, la cosiddetta epoca Unix. La tabella riporta alcuni valori significativi con la data corrispondente.
| Marca temporale (secondi) | Data e ora in UTC | Note |
|---|---|---|
| 0 | 1970-01-01T00:00:00Z | Epoca Unix, origine delle marche temporali |
| 1000000000 | 2001-09-09T01:46:40Z | Il momento in cui si raggiunse il miliardo di secondi, detto Unix Billennium |
| 1234567890 | 2009-02-13T23:31:30Z | Valore divenuto celebre perché le sue cifre decimali si succedono da 1 a 9 |
| 2147483647 | 2038-01-19T03:14:07Z | Il problema del 2038: valore massimo di un intero con segno a 32 bit, che un secondo dopo trabocca |
Consigli per l'uso
- Dieci cifre indicano di norma i secondi, tredici i millesimi di secondo. Lasciando il riconoscimento automatico, l'unità viene dedotta dal numero di cifre.
- Potete incollare senz'altro la marca temporale presa dai registri di un servente o dalla risposta di un'interfaccia e vederla subito espressa in più fusi orari.
- Nella conversione dalla data alla marca temporale ricordate che occorre indicare esplicitamente a quale fuso orario si riferisca la data inserita.
- Il formato ISO 8601 in tempo coordinato universale è interpretabile direttamente da molti linguaggi e molte basi di dati: è quindi un utile riferimento nella ricerca nei registri e nella progettazione delle interfacce.
- Il pulsante per inserire l'ora corrente riporta immediatamente nel campo il momento presente, letto dall'orologio del navigatore.
Domande frequenti
A proposito — perché gli elaboratori contano il tempo in secondi
Le persone indicano un istante combinando anno, mese, giorno e ora, come «12 luglio 2026, ore 17.08», ma per una macchina questa forma è scomoda: bisogna tener conto ogni volta di regole intricate — anni bisestili, fusi orari, ora legale — e perfino calcolare la differenza fra due istanti richiede un'elaborazione laboriosa. Di qui l'idea di esprimere il tempo con un solo numero, i secondi trascorsi da un istante di riferimento: è la marca temporale Unix.
Il vantaggio maggiore di trattare il tempo come un unico numero intero è che confronti, somme e sottrazioni si riducono a semplici operazioni aritmetiche. Per sapere quanti secondi separino due eventi basta sottrarre le marche temporali, senza curarsi degli anni bisestili né della diversa lunghezza dei mesi. Proprio per questa semplicità la marca temporale è stata adottata come rappresentazione interna non soltanto dai sistemi Unix, ma anche da Windows, dalle basi di dati e da molti linguaggi di programmazione, diventando lo standard mondiale di fatto.
D'altra parte, l'idea di un numero unico indipendente dal fuso orario comporta che la conversione al fuso avvenga soltanto al momento della lettura da parte di una persona. La stessa marca temporale corrisponde a piena notte a Tokyo e al primo pomeriggio del giorno precedente a New York: la data che si vede cambia radicalmente secondo il fuso scelto. Molti dei difetti che nell'analisi dei registri o nella messa a punto delle integrazioni fra interfacce si manifestano come «orari sfasati» nascono proprio dalla dimenticanza di questa conversione.