Tempo (Unix)
# Tempo (Unix)

Nei sistemi operativi Unix e Unix-like il tempo viene rappresentato come offset in secondi rispetto alla mezzanotte (UTC) del 1º gennaio 1970 (detta epoca).

Per esempio, il 9 settembre 2001 alle ore 03:46:40 CET il valore di tale offset era pari a un miliardo, indicando appunto che in quell'istante erano trascorsi un miliardo di secondi rispetto all'epoca. Per rappresentare tale offset viene usato il tipo time_t.

## Rappresentazione: vantaggi e svantaggi

Questo tipo di rappresentazione, oltre che a essere compatta, è indipendente dai fusi orari, ed è quindi direttamente confrontabile anche tra calcolatori situati a grandi distanze geografiche tra loro, ed evita di dover effettuare aggiustamenti nel caso per esempio di dati trasmessi da un fuso orario all'altro. Lo svantaggio è che per averne una rappresentazione sotto forma di data e ora locali è necessario effettuare una conversione; il sistema operativo offre allo scopo delle funzioni che consentono di effettuarle in entrambe le direzioni.

## Anno 2038 e bit overflow

Nei calcolatori e nei sistemi operativi a 32 bit il tipo time_t è comunemente un tipo di dato numerico intero a 32 bit con segno. Il 19 gennaio 2038 alle ore 03:14:08 (GMT) il numero di secondi trascorsi dall'epoca raggiungerà il valore di $2^{31},$ che è al di fuori dei valori rappresentabili da tale tipo di dato. Tali calcolatori e sistemi operativi potranno quindi riscontrare problemi e malfunzionamenti, non essendo più in grado di memorizzare correttamente il valore che indica la data corrente.

## Eventi importanti

* 9 settembre 2001: Unix billenium, l'orologio segnava 1.000.000.000 secondi.
* 18 marzo 2005: l'orologio segnava 1.111.111.111 secondi.
* Il 13 febbraio 2009 alle ore 23:31:30 UTC (in Italia le 00:31:30 del 14 febbraio), il Tempo Unix ha raggiunto la cifra '1234567890'. Si sono tenuti party e festeggiamenti vari in tutto il mondo per celebrare l'evento.
* Il 26 gennaio 2011 è stato il 15.000º giorno di UNIX.
* Il 14 luglio 2017 alle ore italiane 4:40:00 è stato il 1.500.000.000 secondo di UNIX.
* Mercoledí 18 maggio 2033 alle 03:33:20 (UTC) il Tempo Unix segnerà due miliardi di secondi.
