Cos'è un timestamp Unix?
Pubblicato il 17/02/2026 · 2 min di lettura · Strumenti per sviluppatori
Daniel Okonkwo — Sviluppatore front-end e redattore Tech presso OneKitly
Performance web · Formati di file
Verificato su 2 fonti
Un timestamp Unix è un unico numero: il conteggio dei secondi trascorsi dalla mezzanotte UTC del 1º gennaio 1970, detta epoch. Per esempio 1735689600 è il 1º gennaio 2025. I computer memorizzano il tempo così perché un intero è facile da confrontare, ordinare e calcolare, ed è indipendente dal fuso — si converte in data locale solo per la visualizzazione.
Un timestamp Unix conta i secondi dal 1º gennaio 1970 UTC. Perché i computer lo usano, come convertirlo e il problema del 2038.
L'epoch: uno zero comune
Ogni orologio ha bisogno di un punto di partenza. I sistemi Unix scelsero la mezzanotte UTC del 1º gennaio 1970 e contano i secondi in avanti da lì. Le date precedenti sono numeri negativi. Poiché tutto il mondo informatico condivide questo zero, i sistemi possono scambiarsi un timestamp e concordare sull'istante esatto senza ambiguità.
Secondi vs millisecondi
Il tempo Unix classico è in secondi, ma molti sistemi (in particolare JavaScript) usano i millisecondi — 1000 volte più grande. Se un timestamp sembra circa 1000× troppo grande, è probabilmente in millisecondi; dividi per 1000 per ottenere i secondi prima di convertire. Controllo rapido: un numero di 10 cifre oggi è in secondi, uno di 13 in millisecondi.
Il problema dell'anno 2038
I sistemi più vecchi memorizzano il timestamp in un intero con segno a 32 bit, che va in overflow il 19 gennaio 2038, quando il conteggio supera circa 2,1 miliardi. Tali sistemi tornerebbero a un numero negativo e leggerebbero male la data. La soluzione è un intero a 64 bit, che sposta il limite a miliardi di anni; le piattaforme moderne vi sono passate in gran parte.
Domande frequenti
- Perché il 1970?
- Era una data tonda e recente quando Unix veniva sviluppato attorno al 1970, comoda come punto di partenza. La scelta è rimasta ed è diventata uno standard quasi universale.
- Un timestamp include un fuso orario?
- No — è sempre contato in UTC. Applichi uno scostamento di fuso solo quando converti il numero in data e ora locale leggibile.
- Come ne converto uno a mano?
- A mano è noioso — la maggior parte incolla il numero in un convertitore. In codice, quasi tutti i linguaggi hanno una funzione integrata (per esempio new Date(secondi * 1000) in JavaScript).
- I secondi intercalari lo influenzano?
- Il tempo Unix ignora i secondi intercalari per progetto — assume che ogni giorno abbia esattamente 86.400 secondi. Questo mantiene semplice l'aritmetica, al costo di non essere un conteggio perfetto dei secondi fisici.
Articoli che potrebbero interessarti
Tutte le guide →Strumenti correlati
Fonti
Hai notato un errore in questo articolo?