Tempo (Unix)

sistemi di misura del tempo nei sistemi Unix e Unix-like

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).

Il Tempo Unix ha raggiunto 1.000.000.000 di secondi in data 09-09-2001, 01:46:40 AM (UTC). L'evento è stato celebrato a Copenhagen durante un party organizzato dal DKUUG (Danish UNIX User Group).[1]

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.

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

Lo stesso argomento in dettaglio: Bug dell'anno 2038.

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 231, 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.

Curiosità

Alle ore 23:31:30 del 13 febbraio 2009 (UTC), il Tempo Unix ha raggiunto la cifra '1234567890'. Si sono tenuti party e festeggiamenti vari in tutto il mondo per celebrare il fatidico evento.[2][1]

Note

  1. ^ a b 1234567890 day!?
  2. ^ Dylan Tweney, Unix Lovers to Party Like It's 1234567890, Wired News, 12 febbraio 2009.

Collegamenti esterni

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica