martedì 11 settembre 2018

Il Bug Dell'Anno 10.000 Sui Software (Y10K)

E' vero, sicuramente noi, non saremo ancora in vita per documentarlo inoltre le tendenze tecnologiche suggeriscono che entro l'anno 10.000, è altamente improbabile che una qualsiasi delle tecnologie o software di elaborazione dati siano ancora in uso, tuttavia rimane un problema che oggi presenta delle criticità ed ha risvolti interessanti dal punto di vista informatico.
Vi siete mai chiesti, a livello di software e sistemi, cosa succederà nell'anno 10.000?
In primis va sottolineato che è molto plausibile che i calendari attualmente in uso siano sostituiti da qualcos'altro.
Tuttavia, va detto che gli anni a cinque cifre sono già oggi un problema per molti programmi di analisi lungimirante (ad esempio software che esaminano la gestione a lungo termine delle scorie nucleari).
Il problema dell'Anno 10.000 (noto anche come problema Y10K) riguarda bug di formattazione e archiviazione del tempo che emergerebbero allo scoccare dell'anno 10.000 (in quanto a cinque cifre).
Questo problema può essere visualizzato in Microsoft Excel dalla versione di Office 2013 in poi, che memorizza le date come il numero di giorni dal 31 dicembre 1899 (il giorno 1 è il 1900-01-01).
Allo stesso modo, Microsoft Access memorizza le date come il numero di giorni dal 30 dicembre 1899 (il giorno 1 è il 1899-12-31).
In entrambe le applicazioni, un valore di 2958465 verrebbe formattato correttamente come "31 dicembre 9999", ma aggiungendo 1 per passare alla data prevista del "1 gennaio 10000" si causerebbe un errore di formattazione; in Excel, ad esempio, verrebbe visualizzato nella cella come una serie di #characters.
Inoltre, Excel non può convertire automaticamente stringhe con formato data "12/12/2007" in date, se l'anno supera il 9999.
La Long Now Foundation si è imbattuta in questa limitazione di Excel durante la progettazione dell'orologio da 10.000 anni (la società sta tentando di promuovere l'abitudine nello scrivere anni con 5 cifre: tipo 02018. Ci sarebbe però un discreto problema con l'anno 100.000...).
Il programma open source OpenOffice Calc è in grado di visualizzare correttamente le date oltre l'anno 9999 con anni a cinque cifre, ma almeno dalla versione 2.4 cade vittima del problema dell'Anno 32.768: il "31 dicembre 32.767" è la data più alta disponibile.
Il 32767 è il numero positivo più alto che può essere rappresentato usando un intero con segno a 16 bit, aggiungendo uno a questo valore si provoca l' overflow e Calc interpreta l'anno come un numero negativo grande ovvero il "1 gennaio - 32.768" .
Anche Python supporta date da 1 cifra a 4.


DIFFERENZE CON IL MILLENNIUM BUG
A differenza del problema dell'anno 2000, in cui le cifre significative sono state omesse, la risoluzione del problema dell'anno 10.000 non richiede l'aggiornamento dei vecchi record, poiché sono presenti tutte e quattro le cifre significative. Richiederebbe solo che la memorizzazione dei record in decimali sia in grado di memorizzare cinque o più cifre.
Esiste, tuttavia, un potenziale problema con i set di record che fanno uso dell'ordinamento lessicale. Ad esempio, le rappresentazioni di date nell'intervallo 10.000-19.999 apparirebbero interlacciate con le date nell'intervallo 1000-1999 anziché successive all'anno 9999.

Nessun commento:

Posta un commento