63

El efecto 2038

Publicado el: 25/01/2011
Apocalipsis 2038
Muchos programas escritos en C, sistemas operativos Unix y otros basados en éste, usan un formato de fecha que consiste en contar los segundos que han pasado desde la medianoche del 1 de Enero de 1960, sin contar segundos intercalares. Este formato se llama POSIX y cuando llegue el momento 19/01/2038 03:14:07, el contador dará la vuelta mostrando incorrectamente la fecha 1901/12/13 20:46:52, provocando errores en muchos programas.

El formato POSIX, por un lado es bastante bueno, ya que permite especificar con un sólo número, un año, mes, día, hora, minuto y segundo cualquiera pero, por otro, tiene el problema de que cada vez necesitamos un número más grande para representar un momento de tiempo posterior. La forma de guardar este número (32 bits con signo) permite llegar sólo hasta el segundo 2.147.483.647, que es la fecha 19/01/2038 03:14:07. Al llegar al segundo siguiente se almacena el número -2.147.483.648, que es el momento 1901/12/13 20:46:52. Para solucionarlo se utilizará mayor número de bits para almacenar el valor (64 bits con signo) que permitirá almacenar fechas hasta el año 292.471.208.678, momento en el que probablemente nuestro universo ya no exista, por lo que el problema estaría solucionado migrando a sistemas operativos de 64bits.

Muchos recordaréis que el efecto 2000, no llegó a causar el fin del mundo como predecían algunos, pero no porque fuera un error sin importancia, si no porque se planificó la modificación de todo el software del que dependen vidas humanas. No obstante, ocurrieron algunos inconvenientes en centrales nucleares de España y Japón. Supuestamente, el efecto 2038 también se habrá solucionado, mucho antes de llegar a esta fecha.

El efecto 2000 consistía en que para ahorrar espacio en las fechas, en algunos programas se guardaban sólo los dos últimos dígitos del año, provocando que al llegar al año 2000 se volviera al año 1900. Al igual que ocurrió con el efecto 2000, con el efecto 2038 fallarán los programas que tienen que planificar salidas y llegadas de aviones o trenes, gestionar el inicio de tareas, guardar información organizada por fecha y desechar los datos antiguos.

En Windows NT también se usa un formato de fecha parecido que fallará en el año 2184, pero por este error no hay que preocuparse, porque por suerte Windows no se usa para nada de lo que dependan vidas humanas y para ese año Windows NT se habrá extinguido totalmente.

Pensamientos (2): Ver comentarios Comentar
Categorías:

Comparte:

Copia y pega en tu página:

Comparte
Escribe tus pensamientos computables

Respondiendo a los siguientes comentarios:

Para comprobar que eres un humano responde correctamente:

Esta pregunta no me gusta, ¡cambialá!

Ninguno de estos datos será almacenado.

(Escribe el correo electrónico)

Campo obligatorio.

(Escribe el correo eléctronico o los correos electrónicos separados por comas)

Campo obligatorio.

Para comprobar que eres un humano responde correctamente:

Esta pregunta no me gusta, ¡cambialá!

Pensamientos
Linkusb
Fecha: 27/01/2011 Hora: 20:25:52
Eso esta bien. A ver cuando arreglan la fecha de la báscula de la farmacia de mi barrio. La fecha que aparece en el último tiket es 01-01-2218, creo que lo único que hace es sumar un año por cada día. Y la hora no se a que país corresponde pero eso es lo de menos. Es absurdo conservar los tickets porque no te acuerdas cuando te pesaste y ya no puedes realizar estudios estadísticos, desarrollar tus propios gráficos y confeccionar tablas. Es decir, el ticket solo sirve para conocer tu peso en el mismo momento en que te pesas. Que bien sienta desahogarse!
Anónimo
Fecha: 19/03/2011 Hora: 21:20:41

Buenas... me gusta mucho este blog, estas son la clase de cosas que siempre me han gustado leer xD.

Además de que está muy interesante la entrada, me he percatado de que mucha gente (entre la que me incluyo) no sabe a qué vino todo el tema del fin del mundo en el año 2000, y simplemente lo critican por no tener fundamentos ni sentido... pero no es así exactamente xD.

Saludos, espero que sigas conel blog.. xD