Problema del año 2038….

on

Comenzaré recordando que el sábado 19 de Enero del 2008 marcará el inicio de la cuenta regresiva a 30 años del error Y2K38, cuando la fecha de Unix tendrá un overflow de 32 bits.

Un segundo después, el contador se desbordará, y saltará al valor -2.147.483.648, que causará el fallo de programas que interpretarán el tiempo como que están en 1901 ó 1970 (dependiendo de la implementación), en vez de 2038. A su vez, esto causaría cálculo y procesamiento incorrecto.

La mayoría de sistemas operativos para arquitecturas de 64 bits utilizan enteros de 64 bits para time_t. La migración a estos sistemas está todavía en proceso y se espera que se complete antes del 2038. Sin embargo, cientos de millones de sistemas de 32 bits son utilizados todavía en el 2007, muchos en sistemas integrados, y no es posible asegurar que todos ellos habrán sido reemplazados antes del 2038.

Usar un entero de 64 bits retrasaría la fecha del problema unos 290 mil millones de años, quizás mucho tiempo después de que el sol se haya extinguido.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s