Revista del Servei d'Informàtica de la UAB

Al voltant de l'efecte de l'any 2000

 

És tant excepcional aquest problema ?

Doncs no tant, moltes vegades ens hem "quedat curts" amb la manera de treballar amb l'ordinador. També s'ha de dir que hi ha altres dates problemàtiques : a mitja tarda d'un dia de primavera de l'any 2038 els sistemes Unix actuals també tindran problemes, els Macintosh definitivament tindran problemes un dia del segle 32, etc. Tampoc és la primera vegada que ens passa que una cosa feta per durar quatre dies i per tant amb força mancances, com és la "joguina" de sistema operatiu MS-DOS, encara s'arrossegui a les acaballes del segle,

Alguns trets característics de l'efecte 2000

Es tracta d'un format de dades que es desborda,

Hem d'actuar sense que res deixi de funcionar i,

Pràcticament en tots els casos, no tenim control absolut sobre el programa que volem seguir fent servir el segle que ve.

Comprovar i verificar

Si ens centrem en el món PC, els analistes i professionals de tot arreu han coincidit en que primer cal comprovar i verificar si tindríem problemes quan arribi el 2000 i per a fer això també han coincidit en :

Fer que el rellotge del PC arribi al 2000 i observar el seu comportament

Examinar les dades i, tant com es pugui, les aplicacions, cercant formats de data problemàtics.

Pel primer cas es pot fer "a mà" fent servir la comanda "date" i parant i engegant la màquina per veure el comportament del rellotge. Com sempre, es poden trobar petits programets de domini públic que fan el mateix amb força gràcia.

En particular, al Servei d'informàtica hem preparat el fitxer disc2000.exe que, convenientment incorporat a un disquet, us farà la comprovació esmentada.

Pel segon cas és on la ingenieria inversa té el seu paper fonamental, també hi ha alguna eina que examina alguns fitxers de dades cercant formats sospitosos de data, però ja no en trobem tantes, i menys de domini públic.

Hi ha una altra manera de verificar si estem afectats pel "efecte 2000". Es tracta de saber si el nostre PC i les nostres aplicacions estan a les llistes que fabricants i professionals elaboren com a "sensibles a l'efecte 2000", aquesta darrera opció és molt útil, si el que fem servir són eines fetes per fabricants que puguin certificar el seu producte ; i sense cap dubte és la millor opció pels productes que fa servir la majoria. Al Servei d'Informàtica ens decantem per aquesta solució, com podreu comprovar a http://www.uab.es/si/any2000. Després d'haver fet tot això, si es detecta "l'efecte 2000", s'haurà de executar alguna solució, però si us sembla, això ho tractarem en un altre article.

Entendre aquest problema traient-li part de la seva excepcionalitat.

No és excepcional que un contenidor de dades es quedi "curt" o inadequat. Tots els problemes que responen al terme anglès "overflow" són d'aquesta mena Hem anat veient al llarg del temps molts exemples , alguns d'ells ni tant sols lligats a la data. Per exemple, els "contenidors" habituals de números sencers (sense decimals) podien emmagatzemar des de -32767 fins a 32767 o bé de zero a 65535. Sense tenir en compte els temes econòmics, segur que trobareu molts exemples on aquests "comptadors" resulten insuficients.

No és tampoc excepcional que tinguem problemes lligats a la data. Els sistemes UNIX de penúltima generació (i això vol dir, en informàtica, d'abans d'ahir) tenen la data en un "contenidor" que representa el número de segons des de l'inici de l'any 1970 que es desbordarà abans d'arribar a la meitat del segle que ve.

Fins i tot, productes "tan" moderns com el Visual Basic et permeten treballar amb "contenidors" per a xifres monetàries que no poden representar més enllà de les 999.999.999.999.999 unitats. (Penseu en el pressupost italià)

Afortunadament molts d'aquests problemes es solucionen redimensionant els contenidors a mesura que es redimensiona la capacitat dels nous ordinadors (sistemes de 32 bits en front dels de 16, o millor els novíssims de 128 en front dels ja molt capaços de 64 bits )

Altres problemes ja han estat tractats sense cap limitació des d'un bon principi. Per exemple, la quantitat de xifres significatives (que dit sigui de pas, és l'arrel de tots els problemes esmentats fins ara) que necessiten els programes que fan servir la criptografia moderna deixa petits tots els exemples que us hem donat fins ara i pot créixer sense cap límit.

No és res excepcional que el problema no es pugui atacar de soca-rel, doncs es compromet el funcionament d'un munt de coses de les que no tenim control, com és, per exemple, el format de la data dins de l'arquitectura del PC i del "sistema operatiu" MS-DOS en front de les aplicacions que la fan servir

I tampoc és excepcional que no puguem modificar el programa que presenta un problema, doncs és molt antic i/o no tenim el codi font per a editar-lo, recordeu aquells paradigmes que ens explicaven els experts, com ara el "refacing" ?. En aquests casos hem de fer el que s'anomena enginyeria inversa, és a dir, examinar els productes per inferir-hi el sistema de funcionament : imagineu-vos examinant un programa i les seves dades cercant allò que s'assembli a una data i comprovant quantes xifres representen l'any

 

Elaborat pel Servei d'Informatica de la Universitat Autònoma de Barcelona
Edifici D 08193 Bellaterra (Cerdanyola del Vallès) Tel.: (93) 581 2100 Fax: (93) 581 20 94
Correu electrònic: enllac@uab.es
Data d'actualització: