Strumenti |
Bug dell'anno 2038Il Bug dell'anno 2038 è un noto bug informatico che potrebbe avere ripercussioni su alcuni software nell'anno 2038. 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
[modifica] Problemi notiNel maggio 2006 AOLserver ha subito un primo problema dovuto a questo bug. Un software che 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 e causò un crash del sistema. [2][3] [modifica] SoluzioniRisolvere il problema sui processori/sistemi operativi esistenti non è semplice. Cambiare il valore di Molti sistemi operativi per sistemi a 64-bit usano già dei numeri interi a 64-bit per il 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 Usare un valore di tipo signed a 64-bit sposterebbe l'emergere del problema in avanti nel tempo di circa 290 miliardi di anni, spostando la data addirittura al di là della previsione di vita del sistema solare. Sono state avanzate anche una serie di proposte alternative, alcune delle quali in uso, per sfruttare questo spostamento eccessivo della data massima calcolabile: tra queste, includere nel calcolo delle ore i millisecondi o i microsecondi, abbreviando la vita utile delle macchine a "soli" 300.000 anni [4] [modifica] Note
[modifica] Voci correlate[modifica] Collegamenti esterni |