Tras el ???Efecto 2000??? o ???Error del milenio??? llega… el ???Efecto 2038???. ??Un nuevo apocalipsis inform??tico?

All?? por 1999,??la amenaza de un colapso a nivel tecnol??gico por el temido ???Efecto 2000?????o ???Error del milenio??? provoc?? un temor generalizado en la sociedad ante el fallo que provocar??a que tras el 31 de diciembre de 1999 los sistemas inform??ticos pasar??an al 1 de enero de 1900 en vez de al 1 de enero de??2000??debido a que muchos sistemas codificaban el a??o en dos d??gitos. Este ???Efecto 2000??? que se corrigi?? con unos miles de millones de euros, nos sirve para explicar el ???Efecto 2038??? o ???Y2K38???.
El ???Efecto 2038??? no es sino otro ???bug??? relativo, en este caso, a la codificaci??n del tiempo en los sistemas de 32 bits (el reloj que usan), que nos afectar??a en enero del a??o 2038. Y es que el reloj que tienen muchos equipos se basa en POSIX, un simple contador de segundos que va ascendiendo con cada segundo que pasa y que tiene como fecha de referencia el 1 de enero de 1970; por tanto, el tiempo es igual al n??mero de segundos transcurridos desde esta fecha de referencia.
Sin embargo, como en los sistemas de 32 bits los tiempos se codifican con un??n??mero??entero y un signo, llegar?? un momento en que el contador llegar?? al n??mero m??ximo que es capaz de almacenar en positivo y comenzar?? a contar en negativo (volveremos a 1901).??Los sistemas que cuentan la hora desde (21:00 31/12/1969) provocar??an el error de c??lculo a las 00:14:07 del 19 de enero de 2038, ya que confundir??n la fecha con el 13 de diciembre de 1901.
Por el momento se desconocen las consecuencias exactas que este problema inform??tico provocar?? en algo m??s de 20 a??os, pero est?? claro que a??n hay tiempo para solventarlo con eficacia y sin crear el p??nico que se gener?? con el Y2K o Efecto 2000.
El ???Efecto 2038??? afectar?? principalmente al sistema operativo Unix, sobre el que se asientan tanto??Android??como iOS as?? como muchos servidores de??Internet, puntos de acceso??Wi-Fi??o routers.
Casi todos los sistemas operativos que se utilizan hoy en d??a se remontan a UNIX. Cuando los ingenieros desarrollaron el primer sistema operativo para m??quinas UNIX en la d??cada de 1970, decidieron arbitrariamente que el tiempo se representar??a como un entero de 32 bits con signo y se medir??a como el n??mero de segundos desde las 12:00:00 am del 1 de enero de 1970. Los sistemas de fecha y hora de bits solo pueden contar hasta 2,147,483,647, lo que se traduce en el 19 de enero de 2038 (3:14:08 am). En esta fecha, cualquier programa en C que utilice la biblioteca time_t est??ndar de 32 bits tendr?? problemas para calcular la fecha.
La mayor??a de las funciones de soporte que utilizan el tipo de datos time_t no pueden manejar valores time_t negativos. Fallan y devuelven un c??digo de error, y esto hace que el programa de llamada se bloquee espectacularmente.
Para la planificaci??n de 2038, se necesita un enfoque progresivo y proactivo en esta etapa. Para solucionarlo, hay que centrarse en:
1)??software??que se ocupa de fechas y horas futuras;
2) formatos de archivos y mensajes online;
3) dispositivos con una larga vida ??til y sus dependencias.
MuyInteresante