Caricare documenti e articoli online 
INFtub.com è un sito progettato per cercare i documenti in vari tipi di file e il caricamento di articoli online.


 
Non ricordi la password?  ››  Iscriviti gratis
 

Millennium Bug Sarà la fine?

informatica



Questo è tutto ciò che si pensava prima dello scoccare dell' anno 2000 riguardo al famigerato "baco del millennio". Tutte queste paure, del bug che sembrava essere un avvenimento apocalittico, sono state semplicemente esagerate e gonfiate dai giornalisti. In realtà le tanto attese conseguenze sono state pressoché minime o inesistenti.   Alberto Realis-Luc











Tra poco arriverà il nuovo millennio e sarà un grande 454j96e avvenimento per tutti! Purtroppo però molti  saranno alle prese con il problema chiamato Y2K,un inconveniente legato all'anno 2000.Ma che cos'è lo Y2K? Molti computer ,sin dall'inizio sono stati impostati con un sistema che poteva rappresentare gli anni utilizzando solo due cifre e non quattro perché lo "spazio" digitale scarseggiava e la memoria del computer era costosa.

Il risultato di questo risparmio è dato da una spaventosa ambiguità nella rappresentazione delle date! Infatti ,come fa un computer a sapere se 00 significa 1900 oppure 2000?Questo può sembrare un problema semplice sia da risolvere che da eliminare. Ma non è così ,anche perché molti tecnici studiano questo già da tempo. Possiamo però fare un esempio per capire meglio di cosa si tratta ! Consideriamo ,per esempio, una compagnia di assicurazioni che ,periodicamente , deve cercare le polizze rimaste inattive per almeno cinque anni e cancellarle .Per fare questo , la compagnia memorizza la data dell'ultima operazione come ULTIMO-ACCESSO .Quando il programma prende questo valore, aggiunge cinque alle due cifre dell'anno.

Se il risultato è minore dell'anno in corso ,cancella il record. Se per esempio ULTIMO-ACCESSO vale 93, 93+5<99, e la polizza è considerata inattiva. Se però ULTIMO-ACCESSO vale 96 si verifica un errore. Infatti, se la codifica è a due cifre, 96+5 diventa 01, che è minore di 99.Cosi si annullerà erroneamente la polizza. In altre situazioni ,un errore Y2K, potrebbe avere conseguenze fatali .Pensate ad un programma che calcola il dosaggio di alcuni farmaci , un medico digitando "16-03-00" ,per la nascita di un bambino, avrebbe seri problemi ;il computer potrebbe scambiarlo per un paziente centenario e consigliare un dosaggio giusto per un anziano ,ma mortale per un bambino .


cosa fare per risolverlo!

Molte organizzazioni hanno semplicemente sostituito i programmi errati con il nuovo software 2000-compatibili.Ma questo non basta !   Ci vorrebbe ,infatti ,troppo tempo per sostituire tutti i computer e soprattutto richiederebbe un grosso dispendio di denaro.

Le aziende stanno cercando di correggere i programmi e hanno provato ,come prima soluzione , a rimettere le due cifre mancanti. Questo può sembrare adatto per risolvere il problema ma anche qui ,qualcosa non va!

Con la ricodifica degli anni a quattro cifre, il programmatore dovrebbe ridisegnare il tracciato di certe stampe ,documenti e videate per far posto alle cifre aggiuntive. Così anche le applicazioni software che si riferiscono alle date espanse dovrebbero essere modificate .

Se infatti sono state fatte delle modifiche in modo tale che il computer possa comprendere il linguaggio usato, spesso però ,se i compilatori (programma che effettua le traduzioni) sono aggiornati continuamente ,si creano dei problemi soprattutto se la nuova versione creata non accetta le tecniche di programmazione della versione precedente. Una soluzione alternativa è quella di insegnare al computer che 00 significa 2000!


I programmatori hanno ideato una strategia chiamata "windowing" che consiste nel separare gli anni da 00 a 99 in due gruppi rispetto a un numero , detto base (45,per esempio).Gli anni a due cifre maggiori alla base appartengono al secolo corrente (72 diventa 1972).Gli altri si considerano appartenenti al secolo XXI (15 diventa 2015).Anche il windowing ,però, presenta degli inconvenienti in quanto non è in grado di usare dati che spaziano su periodi superiori al secolo , come per esempio contratti d'affitto a lungo termine. Un'altra strategia per Y2K è quella di ricorrere all'aritmetica di base .Si consideri il calcolo 00-99=-99 ;se questa operazione vuole rappresentare il calcolo 2000 -1999, il risultato -99 è sbagliato! Se invece facciamo (00+5)-(99+5) vediamo che il risultato ,calcolandolo su due cifre , è equivalente a 00-99 perché 5-4=1 .Sommando così 5 alle cifre 00 e 99 si possono ricondurre le date al medesimo secolo ,così il calcolo 2000-1999 risulta corretto usando solo due cifre. Le date sono però semplici numeri e i giorni ,per esempio, non coincidono; infatti il 1° gennaio del 2000 è un sabato mentre il 1° del 2005 no. Quindi la tecnica di sommare 5 agli anni non vale per i programmi che distinguono i giorni della settimana .I programmatori hanno così pensato di moltiplicare gli anni per i due cicli che controllano i giorni della settimana ;ossia un ciclo di sette giorni per la settimana e uno di quattro per gli anni bisestili. Moltiplicando fra loro i cicli, si somma agli anni 28 .Se infatti il 1°gennaio è sabato lo sarà anche il 1° del 2028 e lo era il 1° del 1972 . Questa viene detta tecnica di "incapsulamento" che aggiunge 28 agli anni a due cifre prima di effettuare i calcoli .Nonostante l'incapsulamento possa essere usato per evitare molti problemi Y2K la tecnica diventa pesante per elaborazioni più complesse .Le tre tecniche - espansione della data ,windowing e incapsulamento - sono state usate nel 95% dei casi di modifiche al software esistente per il Y2K .Molte aziende hanno invece utilizzato una procedura mista perché in possesso di sistemi con migliaia di programmi. I problemi sono però nascosti ovunque è anche in casa potremmo avere dei problemi !
















Privacy




Articolo informazione


Hits: 2237
Apprezzato: scheda appunto

Commentare questo articolo:

Non sei registrato
Devi essere registrato per commentare

ISCRIVITI



Copiare il codice

nella pagina web del tuo sito.


Copyright InfTub.com 2024