37 Avatar of JamesElio | Nè
3
Tempo di Lettura in Minuti


Il Bug dell’anno 2038 è un noto bug informatico che ha ripercussioni su alcuni software nella gestione di date relative all’anno 2038 e successivi. Il problema riguarda programmi che usano la rappresentazione POSIX per calcolare il tempo: questa calcola la data del sistema a partire dal numero di secondi a partire dal 1º gennaio 1970 (ignorando i secondi intercalare). Questo tipo di sistema è lo standard per i sistemi Unix, e colpisce anche software per altri sistemi operativi che siano stati sviluppati in C. Sulla maggior parte dei sistemi a 32 bit il valore del dato time_t usato per questo calcolo è un numero intero a 32 bit di tipo signed. Usando questo sistema, la data più avanzata rappresentabile a partire dal 1/1/1970 sono le 03:14:07 UTC di martedì 19 gennaio 2038. Dopo questo momento, il contatore supererebbe il valore massimo, e verrebbe considerato come un numero negativo. I computer leggeranno la data non come 2038 ma come 1901 (precisamente, le 20:45:52 UTC di venerdì 13 dicembre 1901), causando errori di calcolo.

“in arrivo un epic fail di tutti i datari” citando Notker! :-D

La cosa curiosa sembra però essere che qualche problema in realtà questo bug l’ha già dato, e più precisamente 4 anni fa:

Nel maggio 2006 il software di AOLserver ha subìto un primo problema dovuto a questo bug. Il software usava una data pari a un miliardo di secondi nel futuro per classificare le richieste ad un database come “senza scadenza”. Alle 21:27:28 del 12 maggio 2006 (un miliardo di secondi prima della data fatidica del 19 gennaio 2038) il sistema di calcolo della data superò il limite critico, calcolando, quindi, una data di scadenza nel passato, e causò un crash del sistema.

La soluzione? Sembra esserci ed è quella del passaggio completo al 64-bit che usano (per l’appunto) numeri interi a 64-bit anche per il tempo.

Il passaggio a questo tipo di architetture è in corso, e ci si aspetta che sia completo prima del 2038. Tuttavia, ancora oggi esistono centinaia di milioni di sistemi a 32 bit sul mercato, di cui molti in sistemi integrati, e non è affatto certo che vengano rimpiazzati prima del 2038. Nonostante l’attuale trend di aggiornamento dei computer ogni 18-24 mesi, i computer integrati possono lavorare senza interruzioni per tutta la vita del sistema che controllano. L’uso di time_t a 32 bit è anche stato inserito in vari formati di file, cosa che comporta la persistenza del problema anche oltre la vita delle macchine stesse.

Alcuni dettagli in più si possono avere direttamente da Wikipedia o dal sito ufficiale del bug (ebbene si, esiste un sito ufficiale!!) :-O
Mostra Spoiler ▼

Mostra Spoiler ▼

Via Bazinga! Grazie a Notker

Condividi questo Articolo:
Send to Kindle
Aree Tematiche Articolo:
Eventi Microsoft / Windows Tecnologie
Tag Articolo:
64-bit
Loggati

11 Commenti

  1. Avatar of AnnetteSHOTS AnnetteSHOTS 31/10/2010 17:59

    Non vedo il problema. Mi pare che sia appurato che il mondo finirà prima, no? :D

  2. avatar Nomequalsiasi 31/10/2010 18:01

    Ma la Cappa del mondo è per i campionati mondiali di cucina?

  3. Avatar of Rorschack Rorschack 31/10/2010 18:12

    Certo perchè nel 2040 ancora si useranno processori a 32 bit…

  4. Avatar of picchiopc picchiopc 31/10/2010 18:52

    “attuale trend di aggiornamento dei computer ogni 18-24 mesi”

    WTF?

    No scusate quale persona sana di mente compra un pc nuovo ogni 2 anni ?

    Posso capire qualche guasto, posso capire che un portatile possa morire entro 18 mesi se messo sotto torchio ma un fisso ? (ma si sa che i notebook sono fatti per durare solo per un lasso di tempo) Il mio pc fisso ha quasi 7 anni l’ho preso nel 2004 è fa ancora il suo lavoro egregiamente, certo il processore è la scheda madre non sono il top (anzi tende spesso a surriscaldarsi, sopratutto d’estate)ma tutto continua a funzionare correttamente. Io penso che entro il 2030 si sarà passati al 64bit cavolo in 20 anni almeno 3 o 4 pc li cambio (e forse anche il doppio se si contano anche i portatili) e di sicuro e penso proprio che già nel 2030 si già si comincerà a parlare di processori a 128bit come standard per i desktop (anche se non che se ne facciano di questa potenza di calcolo la casalinga di Voghera).

  5. Avatar of JamesElio | Nè JamesElio | Nè 31/10/2010 20:20

    Sui pc in se anche io sono sicuro che saremo tutti passati oltre ma, a quanto dice Wikipedia, il problema rimarrà comunque legato a qualche file. (perchè dovrei aver bisogno di un file di oggi fra 30 anni è ancora un’altra questione…)

  6. avatar infrarozzo 5/5/2011 16:06

    ma semplicemente cambiare le regole?

Leave a reply

You must be logged in to post a comment.

LN Panic Mode - Premi "P" per tornare a Lega Nerd