miércoles, 3 de febrero de 2010

8 bugs famosos de la historia de la tecnología

1. La polilla del Mark II

En Septiembre de 1947 los ingenieros del Laboratorio de Computación de Harvard se encontraban realizando los últimos ajustes a su famosa Mark II cuando esta sufrió un extraño fallo. Cuando los técnicos abrieron la computadora para comprobar qué sucedía, se encontraron con una polilla en uno de los relés.

A los ingenieros que descubrieron el problema les hizo tanta gracia (bug en inglés significa bicho) que pegaron el insecto con cinta adhesiva en un cuaderno junto con el resto de la documentación de la máquina. Este cuaderno, polilla incluida, se puede encontrar hoy en día en el Smithsonian.

Erróneamente, algunas personas piensan que el uso del término “bug” proviene de esta anécdota. Lo cierto es que el término ya se utilizaba mucho antes para referirse a errores en el funcionamiento de aparatos mecánicos.

2. El bug de HAL 9000

¡Atención: MEGA SPOILER de “2001: Odisea en el espacio”!
En “2010: Odisea dos” Arthur C. Clarke aclaraba el por qué del mal funcionamiento de HAL 9000 en la primera novela, mal funcionamiento que acabó con la muerte de la tripulación completa de la Discovery, a excepción de David Bowman, 9 años antes.

El Dr. Chandra, principal diseñador de HAL, explicaba en este libro que el fatídico error se había debido a las instrucciones de mantener en secreto la existencia de los monolitos, lo que había entrado en conflicto directo con la misión principal de HAL: “el procesamiento exacto de la información sin ocultamiento ni distorsión”.

3. El primer bug de Ubuntu

Si alguna vez has echado un vistazo al sistema de seguimiento de errores de Ubuntu y se te ha ocurrido comprobar cuál fue el primer bug registrado, te habrás llevado una simpática sorpresa.

Este bug, reportado por Mark Shuttleworth el 20 de Agosto de 2004, un par de meses antes de que se lanzara Warty Warthog reza así:

Microsoft acapara la mayoría del mercado
Este es un bug que Ubuntu ha sido diseñado para remediar.

El software propietario está retrasando la innovación en la industria de las TI, limitando el acceso a las TI a una pequeña parte de la población mundial y restringiendo la capacidad de los desarrolladores de software para alcanzar su verdadero potencial. Este bug es fácilmente observable en la industria del PC.

Pasos para reproducir el error:
1. Visitar una tienda de informática.

Qué ocurre:
2. Observar que la mayor parte de los PCs en venta tienen software propietario pre-instalado.
3. Observar que muy pocos PCs llevan Ubuntu y otro software libre pre-instalado.

Qué debería ocurrir:
1. La mayoría de los PCs a la venta deberían incluir sólo software libre, como Ubuntu.
2. Ubuntu debería ser publicitado de forma que sus increíbles características y sus beneficios fueran aparentes y conocidos por todos.
3. El sistema debería hacerse más y más amigable con el usuario a medida que pase el tiempo.

4. El bug del año 2000

Las noticias dedicaron horas, los periódicos miles de líneas… Se filmaron multitud de tele films, e incluso un capítulo de Los Simpson. El bug del año 2000 iba a tener resultados catastróficos, y prácticamente acabaría con nuestra civilización. Al final las consecuencias no fueron tan exageradas y se quedaron en algunos problemas menores y paradas en los servicios de empresas que no habían adaptado sus sistemas.

El error, para los despistados, venía producido por utilizar sólo 2 dígitos para representar las fechas, con objeto de ahorrar memoria. Esto provocaba que el año 2000 se interpretara como 1900, con los consiguientes problemas y confusiones.

5. Bug del 2038

Dentro de 28 años tendremos que enfrentarnos a otro problema igual de serio que el del bug del año 2000. Esta vez el fallo tiene que ver con la forma en la que se representan las fechas en POSIX: en segundos desde el 1 de Enero de 1970 a las 00:00:00. En sistemas de 32 bits este valor suele guardarse en variables de tipo entero con signo, siendo el valor máximo que puede representar este tipo 2.147.483.647, valor que se alcanzará a las 03:14:07 del 19 de Enero de 2038, exactamente.

6. División en coma flotante del Intel Pentium

Un bug clásico, de 1994, que supuso un pequeño varapalo económico y publicitario para Intel y sus primeros Pentium.

Bajo ciertas circunstancias, dependiendo de los rangos de los divisores, los bits 13º y siguientes de la mantisa podían contener valores incorrectos en las operaciones de división en coma flotante, cálculo de tangente y resto, provocando un error de un máximo de 61 unidades por millón.

7. Un bug casi mayor de edad

Un bug de candente actualidad. 17 años, nada más y nada menos, es lo que ha tardado Microsoft en solucionar un error en la máquina virtual DOS (VDM) de Windows, que se remonta hasta NT 3.51, y que podría permitir a un atacante ejecutar código de forma remota.

8. Mars Climate Orbiter: problemas de unidades

Esto es lo que puede ocurrir al cometer fallos tan tontos como mezclar las unidades del sistema métrico y las anglosajonas.

La MCO, o Mars Climate Orbiter, formaba parte de una serie de misiones de la NASA para la exploración de Marte, que aprovechaban la proximidad temporal entre la Tierra y el planeta rojo. Al llegar a Marte, la sonda debía modificar su trayectoria y reducir su velocidad, de forma que se mantuviera orbitando alrededor del planeta. En su lugar, la sonda continuó acercándose a la atmósfera, lo que hizo que quedara destruida debido a la fricción.

No hay comentarios: