¿Cuáles son algunos errores famosos en el mundo de la informática?

A veces, todo lo que necesitas es un error para vencer a la mente más aguda en sus propios juegos.

El campeón mundial de ajedrez Garry Kasparov fue derrotado por IBM Supercomputer Deep Blue en 1997 debido a un error. Es una de las guerras hombre-máquina más esperadas en términos de intelecto y los humanos lo perdieron todo por cortesía debido a una falla de software.

El error había surgido en el cuadragésimo cuarto movimiento de su primer juego contra Kasparov; incapaz de seleccionar un movimiento, el programa había pasado a un último recurso a prueba de fallas en el que elegía una jugada completamente al azar . El movimiento fue tan sofisticado y contra intuitivo que Kasparov lo consideró como una evidencia de inteligencia artificial superior. Se puso de espaldas, lo que finalmente le costó el partido.

En ese momento, Deep Blue versus Kasparov fue aclamado como un momento seminal en la historia de la informática y se lamentó como una humillante derrota para el intelecto humano. Pero puede haber sido una lección de que, como humanos, tendemos a volar las cosas fuera de proporción.

Fuente: ¿un error informático ayudó a Deep Blue a vencer a Kasparov?

¡Cuando Gangnam Style rompió YouTube!

Cuando YouTube se desarrolló por primera vez, nadie pensó que un video superaría los dos mil millones de vistas, o más específicamente, 2,147,483,647 vistas, que es el valor máximo para un entero con signo de 32 bits, utilizado para representar el recuento de vistas en ese momento.

Llegó Gangnam Style , la canción de éxito de la estrella pop coreana Psy, y tan pronto como se superó el valor máximo, obtuvimos esto:

Esto sucedió porque un entero con signo “se envuelve” (tratado como complemento de dos), es decir, el valor que sucede inmediatamente al valor positivo máximo es en realidad el valor negativo mínimo, y en este caso -2,147,483,648.

Desde entonces, Google ha cambiado el recuento de vistas a un entero con signo de 64 bits, por lo que deberíamos estar seguros hasta las próximas 9,223,372,036,854,775,807 + 1 vistas.


Actualización : hubo un debate sobre si esto realmente sucedió o si se anticipó y se arregló con anticipación. Parece que esto último es cierto, y la declaración inicial de Google probablemente fue una broma.

El accidente de Ariane 5 de $ 370 millones de dólares.

El Ariane 5 es un cohete, el sucesor del Ariane 4, utilizado por la Agencia Espacial Europea para lanzar naves espaciales.

El desbordamiento de enteros terminó haciendo que se estrellara en su viaje inaugural, lo que resultó en una pérdida de $ 370 millones.

El desbordamiento de enteros es un error muy común. Ocurre cuando intenta ajustar un número mayor que el mayor número que la memoria asignada puede almacenar.

Por ejemplo, si asigna cuatro cajas de memoria, el número más grande que puede almacenar es 9999. Si intenta almacenar, digamos, 10,000 en esas cuatro cajas, se producirá un desbordamiento de enteros.

Al igual que el dispositivo a continuación, que agrega 1 al número actual cada vez que presiona el botón. ¿Qué sucede cuando llegas a 9999 y presionas el botón? Se desborda y se restablece a 0000.

Algo muy similar ocurre en las computadoras (las computadoras, por supuesto, usan binario, no decimal, pero es la misma idea).

Había un código que convertía un número relacionado con la velocidad horizontal del cohete de un número que usaba 64 cajas (de binario, es decir, 1 y 0, bits AKA) en algo que solo tenía 16 cajas disponibles (de 64 bits flotantes apunte a un entero de 16 bits).

Esto estuvo bien para el Ariane 4, ya que ese número nunca requirió más de las 16 cajas.

Sin embargo, el Ariane 5 fue un cohete mucho más rápido que el Ariane 4. En su viaje inaugural, cuando tuvo lugar esta conversión, el número era demasiado grande para caber en las 16 cajas. Lo que resultó en un desbordamiento, que cayó fuera de control y provocó que se bloqueara menos de un minuto después del lanzamiento, lo que resultó en uno de los errores de software más caros de la historia.

Editar:

Fuentes:

Un error y un choque de James Gleick

Cluster (nave espacial)

Edición 2:

De otra fuente (Falla ARIANE 5 – Informe completo), parece que fue un número relacionado con la velocidad horizontal y no con la velocidad horizontal en sí.

  • El error de operando se produjo debido a un valor alto inesperado de un resultado de función de alineación interna llamado BH, sesgo horizontal, relacionado con la velocidad horizontal detectada por la plataforma. Este valor se calcula como un indicador de precisión de alineación a lo largo del tiempo.
  • El valor de BH fue mucho más alto de lo esperado porque la primera parte de la trayectoria de Ariane 5 difiere de la de Ariane 4 y da como resultado valores de velocidad horizontal considerablemente más altos.

Eliminando $ 440 millones en 30 minutos

No soy escritor, así que no tomaré el crédito por lo que estoy a punto de copiar y pegar de Wikipedia …

El 1 de agosto de 2012, Knight Capital implementó software no probado en un entorno de producción que contenía una función obsoleta. El incidente ocurrió debido a que un técnico se olvidó de copiar el nuevo código del Programa de Liquidez Minorista (RLP) en uno de los ocho servidores de computadora SMARS, que era el sistema de enrutamiento automatizado de Knight para órdenes de acciones. El código RLP reutilizó una bandera que anteriormente se usaba para activar la antigua función conocida como ‘Power Peg’. Power Peg fue diseñado para subir y bajar los precios de las acciones a fin de verificar el comportamiento de los algoritmos de negociación en un entorno controlado.

Por lo tanto, los pedidos enviados con el indicador reutilizado al octavo servidor activaron el código Power Peg defectuoso que todavía está presente en ese servidor.

Cuando se lanzó a la producción, las actividades comerciales de Knight causaron una interrupción importante en los precios de 148 compañías que cotizan en la Bolsa de Nueva York, por lo que, por ejemplo, las acciones de Wizzard Software Corporation pasaron de $ 3.50 a $ 14.76. Para las 212 órdenes principales entrantes que fueron procesadas por el código defectuoso de Power Peg, Knight Capital envió millones de órdenes secundarias, lo que resultó en 4 millones de ejecuciones en 154 acciones por más de 397 millones de acciones en aproximadamente 45 minutos.

Knight Capital sufrió una pérdida antes de impuestos de $ 440 millones. Esto provocó el colapso del precio de las acciones de Knight Capital, lo que provocó una caída de las acciones de más del 70% antes del anuncio. La naturaleza de la inusual actividad comercial de Knight Capital se describió como un “colapso tecnológico”.

El domingo 5 de agosto, la compañía logró recaudar alrededor de $ 400 millones de media docena de inversores liderados por Jefferies en un intento por mantenerse en el negocio después del error comercial. El CEO de Jefferies, Richard Handler y el presidente del Comité Ejecutivo, Brian Friedman, estructuró y dirigió el rescate y Jefferies compró $ 125 millones de la inversión de $ 400 millones y se convirtió en el mayor accionista de Knight. [2]. El financiamiento sería en forma de valores convertibles, bonos que se convertirán en capital en la empresa a un precio fijo en el futuro.

El incidente fue vergonzoso para el CEO de Knight, Thomas Joyce, quien fue un crítico abierto del manejo de Nasdaq de la salida a bolsa de Facebook.

El mismo día, las acciones de la compañía cayeron un 33 por ciento, a $ 3.39; para el día siguiente, el 75 por ciento del valor patrimonial de Knight había sido borrado.

Knight Capital Group

1) Pantalla azul de muerte

La pantalla azul de la muerte probablemente va al error que enfrentan casi todos los que leen esto ahora.

Técnicamente es una pantalla de error que se muestra en el sistema informático de la ventana después de un error fatal cuando el sistema alcanza una condición en la que ya no puede funcionar de manera segura.

2. Windows phone mostrando disco de inserción

Este es realmente divertido, cuando su teléfono le pide que inserte un disco, ¿cuál será su reacción?

Este es un error que enfrentan los usuarios de teléfonos con Windows, los dispositivos se reiniciaron al azar y muestra una pantalla que guía a los usuarios para insertar un disco en su teléfono inteligente

Estos son mis favoritos, si tiene alguna sugerencia, por favor comente abajo

Ediciones: gracias por 3k vistas, sígueme para más

  1. Error en la calculadora de Windows

La calculadora de Windows no da la respuesta correcta para la raíz cuadrada (9) -3. La respuesta debería ser 0 pero no da 0 como salida. Vea la siguiente instantánea. Esto es cierto para cualquier otro número. Por ejemplo, la respuesta de sqrt (4) -2 debería ser 0 pero no dará 0 como respuesta. Recuerde que este error existe en todas las versiones de Windows y es posible que vea diferentes resultados en diferentes versiones de Windows. Vea la instantánea:

2. Error en Microsoft Excel 2007

Microsoft Excel 2007 da una respuesta incorrecta para esta operación de multiplicación.

= producto (77.1,850) debe ser 65535, pero la Sra. Excel da 100000 como respuesta incorrecta. Lea esta explicación muy interesante detrás de este error aquí: Explicando el error de Excel. Este error ha sido corregido por las nuevas versiones de MS Office desde MS Office 2010.

Los siguientes errores son interesantes para conocer solo para programadores en la comunidad C ++. Microsoft Visual C ++, clang ++ & g ++ son compiladores de C ++ muy populares y ampliamente utilizados. También tienen algunos errores graves. Es interesante conocerlos.

3) g++ & clang ++ permite crear objetos de una clase abstracta.

Ha escuchado que no se pueden crear objetos de clase abstracta. Si, es correcto. Pero en todas las versiones de g ++ y clang ++ que admiten los estándares C ++ 11 y posteriores C ++, ambos compiladores permiten crear objetos temporales de clase abstracta.

Considere el siguiente programa (vea la demostración en vivo de Coliru Viewer y [Wandbox] 三 へ (へ՞ ਊ՞) へ ハ ッ ハ ッ y error de compilación como se esperaba en el error de clase abstracta de VC ++):

  #include 
 clase A {
	 público:
     UNA() {  
	       printf ("A () \ n");  } 
     virtual vacío b () const = 0;
 };
 int main () {  
   const A & a {};
   ab (); 
   devuelve 0;
 }

4. Error en el compilador Microsoft VC ++ 2015

Observé este error hace unos meses. No se llama al constructor de copia cuando el objeto se pasa por valor. El siguiente programa está mal formado y debería fallar en la compilación. g ++ & clang ++ da un error de compilación como se esperaba, pero el compilador MSVC ++ 15 compila este programa con éxito. Omite la llamada para copiar el constructor como parte de la optimización. Pero se debe llamar al constructor de copia cuando el objeto se pasa por valor. Vea el programa de demostración en vivo, C ++ (vc ++) – rextester y error de compilación en g ++ Ideone.com

  #include 
 prueba de clase {
	 público:
	 Prueba (int s): x (s) {std :: cout << "Constructor llamado \ n";  }
	 int getx () const {return x;  }
	 privado:
	 int x = 99;
	 Prueba (const Test & t): x (tx)
	 {std :: cout << "Constructor de copia llamado \ n";  }
 };
 nulo f (Prueba t) {
	 std :: cout << t.getx () << '\ n';
 }
 int main () {
	 f (999);
 }

5) Error en clang++ : (Fuente: Inicializando una matriz dinámica de objetos construibles no predeterminados)

clang ++ no se compila siguiendo el programa C ++ válido. Ver demostración en vivo Coliru Viewer y Coliru Viewer

  struct Foo {    
	 Foo (int) {} // sin constructor predeterminado
 };
 int main () {
     Foo * pFoo = nuevo Foo [2] {1,2};  // ¡OK en g ++, falla en clang ++!  eliminar [] pFoo;
 }

6) Error en g++ :

  #include 
 clase base {
  protegido:
  static int x;
 };
 int Base :: x;
 
 clase DerivedA: Public Base {
  público:
      DerivedA () {
         x = 9;
      }
 };    
 clase DerivedB: base pública {
  público:
      DerivadoB () {
         std :: cout << DerivedA :: x;
      }
 };
 int main () {
         Derivado B b;
 }

El programa anterior es válido según el estándar C ++ pero g ++ da un error de compilación. Vea la demostración en vivo Ideone.com y Coliru Viewer. Este programa es muy interesante. Lea mi respuesta aquí para obtener más información al respecto: ¿Se puede acceder al miembro protegido de la clase Derivada desde la clase que no se deriva de ella?

El error que creó la franquicia Grand Theft Auto.

Usted ve, GTA era muy diferente de hoy …

GTA estaba tan lleno de errores que iba a ser eliminado [1] por su editor (BMG Interactive). El comportamiento de persecución policial fue producto de un error fortuito que los hizo realmente agresivos y divertidos.

Ahora la franquicia vale [2] 3.3B USD. Jajaja.

—¡No es un error, es una característica!

Notas al pie

[1] El Grand Theft Auto original fue casi eliminado, salvado por un error psicópata del coche de policía

[2] ¿Cuánto vale la franquicia Grand Theft Auto?

El punto y coma (;). Siempre, en algún lugar que olvides una xD, hay una buena broma que puedes hacer, reemplaza esto (;) con un signo de interrogación griego (;). ¡Son EXACTAMENTE iguales, y deja que tu amigo programador trate de encontrar el error!

La famosa combinación de teclas Ctrl + Alt + Supr para hacer muchas cosas en Windows fue originalmente un error.

El propio Bill Gates ha admitido que esto fue un error y que el tipo que diseñó el teclado de IBM fue el culpable.

Fuente: Bill Gates admite que Control-Alt-Delete fue un error, culpa a IBM

Intel tuvo un problema en los primeros chips Pentium, donde la aritmética de coma flotante hacía cosas divertidas. Error Pentium FDIV

En ese momento trabajé en la producción de PC, y cuando instalé SCO Unix, la PC se negó a arrancar debido a este error. Funcionó bien en Windows …

Yo votaría por el (in) famoso error Y2K.

Sí, lo sé: todos ustedes, los jóvenes whippersnappers, se están riendo, diciendo que el Y2K no estaba realmente allí, que realmente no había ningún problema y que todo era solo una fabricación para asegurarse de que el mundo estuviera asustado, y que los profesionales de TI. podría obtener dinero para resolver un problema imaginario.

La mayoría de la gente cree que la exageración sobre el error Y2K fue muy exagerada. ¡No pasó nada!

Pero la cuestión es que, literalmente, miles y decenas de miles de programadores de computadoras estaban haciendo todo lo posible para contra-codificar contra el simple hecho de que el 31 de diciembre de 1999, a las 11:59:59, el mundo de la computación era conocido, y un segundo después, no teníamos conocimiento real de lo que nuestros programas harían o podrían hacer. Estábamos en un estado de incertidumbre .

Y eso significaba que varios años antes de la fecha real, donde tendría lugar la transferencia, muchos de nosotros estábamos buscando en nuestros programas códigos de manipulación de fechas. Muchos años-hombre de inspección y prevención se vertieron en este error. Se inventaron muchas soluciones ingeniosas. Muchos programas y equipos simplemente fueron eliminados por su incompatibilidad con el próximo milenio.

Finalmente, la fecha y la hora llegaron y pasaron sin (demasiados) problemas. Muchos de nosotros estábamos bastante seguros de que todo estaría bien, pero nos alertaron. Personalmente estaba en un reloj de reserva, listo para tocar cuando o si surgiera algún problema.

Ninguno lo hizo. Estábamos en el claro. Sentimos que hemos hecho un buen trabajo, previniendo contratiempos.

Así que esa es la razón por la que estoy un poco irritado con los civiles que afirman que no hubo “error Y2K”. De hecho, sí, ¡pero los programadores lo mataron!

El error Goto Fail de Apple.

Se introdujo originalmente en febrero de 2014 y representa un mal funcionamiento de la seguridad SSL, que provocó la invalidación de los certificados SSL.

Fue causado por una declaración GOTO que condujo a un código inalcanzable. Fue introducido en un programa en C.

Se hizo muy famoso, debido a la forma en que se introdujo (problemas obvios de código heredado, mala práctica del código) y la gravedad de la falla de seguridad. Básicamente, creó una forma para que cualquier certificado SSL no válido parezca válido en el lado del usuario, con un ataque man-in-the-middle (utilizando una conexión de red comprometida).

http://avandeursen.com/2014/02/2

NVD – Detalle

Mira esa polilla pegada al papel. Ese es el primer error informático. Literalmente.

Ese error específico acortó un relé en la computadora Harvard Mark II. Grace Murray Hopper lo encontró y lo puso en el libro de registro.

Sin esa polilla, podemos tener un término diferente para los errores en un sistema informático.

Yo diría que eso lo convierte en el error informático más famoso de la historia.

PayPal accidentalmente convierte al hombre de Pensilvania en la persona más rica del mundo con $ 92 billones.

Chris Reynolds se convirtió brevemente en el hombre más rico del mundo después de que PayPal le acreditó erróneamente con $ 92,233,720,368,547,800 ($ 92 billones más cambio).

Este error lo convirtió en el único cuatrillonario del mundo y lo ayudó a eclipsar al magnate mexicano de las telecomunicaciones Carlos Slim, que valía solo $ 67 mil millones (cuando ocurrió el evento en 2013). La riqueza de Reynold era mil veces mayor que el PIB del planeta entero, ¡ay!

PD : Para aquellos de ustedes que se preguntan sobre la cantidad, es el valor máximo para un entero con signo de 64 bits. Bueno, el valor exacto es 9.223.372.036.854.775.807. No es lo mismo, el número aparentemente fue redondeado.

Me sorprende ver que nadie ha mencionado sobre el (in) famoso error F00F . Este es el primer tema que se ha cubierto en nuestro curso de Sistemas Operativos . Este error también es un buen ejemplo en el que un error se resolvió mediante una técnica inteligente en los sistemas operativos.

Déjame contarte un poco más sobre el error. Trataré de explicarlo simplemente, ya que está fuera del alcance de Quora discutir todos esos detalles técnicos y, además, no recuerdo todos los detalles.

El error ocurrió en procesadores Pentium x86 antiguos, una vez muy populares. Primero, déjame decirte cómo Pentium maneja códigos de operación inválidos. Si hay algún código de operación o código de máquina no válido, el procesador emite una excepción y deja de ejecutar esa instrucción. Bastante sencillo, ¿verdad?

Ahora, aquí viene un código de operación: F00F
Este código de operación no puede ser generado por ningún compilador o ensamblador, ya que este es un código de operación no válido en múltiples niveles. Sin embargo, si alguien puede inyectar este código de operación en las instrucciones, entonces una máquina completa puede fallar. Por lo tanto, este código de operación se puede explotar manualmente para ingresar en un programa compilado para bloquear todo el sistema. ¿Qué hace este código de operación?

Este código de operación intenta bloquear por error una instrucción no válida . Sí, hay dos operaciones no válidas en un solo F00F .

1) Hay una instrucción no válida que intenta usar un registro incorrectamente, cuando en realidad debería usar memoria.

2) En la instrucción inválida anterior, el código de operación F00F intenta aplicar un bloqueo que solo debe aplicarse a la instrucción basada en la memoria, y no a la basada en el registro. Sin embargo, el anterior ya está intentando ejecutarse por error en el registro.

Debido a este nivel múltiple de desorden, Pentium congela todo el sistema y el sistema se bloquea . Puede imaginarse que puede usarse para bloquear sistemas grandes que solo se pueden recuperar reiniciando el sistema. Esto creó pánico entre los ingenieros de Intel. Se les ocurrieron múltiples soluciones. Las técnicas del sistema operativo se utilizaron para la solución rápida.

La solución fue: los ingenieros de Intel reconocieron que si de alguna manera podían evitar categorizar el código de operación anterior como una instrucción no válida, entonces podían manejarlo por separado. Entonces, organizaron el manejo de instrucciones no válidas de tal manera, de modo que el código de operación F00F no se considerará como un código de operación no válido, per se. En cambio, generará otro tipo de excepción por separado que el procesador puede manejar con elegancia. Así es como se solucionó el error.

Sé que salté los detalles por simplicidad. Pero el resultado final único es que el error estaba en una interfaz de nivel bastante bajo entre hardware y software . Sin embargo, su solución fue bastante elegante si piensas como una persona de sistemas.

Hackear cualquier cuenta de Facebook con solo saber el número de teléfono

Sí, puedes hackear cualquier cuenta de Facebook y realmente no importa la cantidad de contraseña segura que tenga.

En este método, los piratas informáticos explotan la red móvil en lugar del servidor o la PC. Más específicamente, piratean la red SS7.

Ahora, ¿qué es SS7?

  • SS7 o Sistema de Señalización Número 7 es un protocolo de señalización de telefonía que está siendo utilizado por más de 800 operadores de telecomunicaciones en todo el mundo para intercambiar información entre sí, facturación entre operadores, habilitación de roaming y otras características.
  • Aunque usan cifrado avanzado, son vulnerables.

Los hackers van al sitio web de Facebook y hacen clic en la opción ‘Olvidé mi contraseña’, ingresan su número de teléfono para recuperar la contraseña. Pero ya han pirateado su red móvil, por lo tanto, en el momento en que el código de seguridad llega a su teléfono; pueden verlo y usarlo. Con la ayuda del código de seguridad, pueden cambiar la contraseña de Facebook y obtener el acceso.

Básicamente,

  • El atacante explota las vulnerabilidades de la red SS7 para engañar a la red de suscriptores domésticos y registrar a la víctima en una red de roaming falsa.
  • Luego puede recibir todas las llamadas y SMS del suscriptor.

¿Cómo proteger?

  • Use el correo electrónico en las redes sociales para registrarse, no su móvil.
  • Use autenticación de dos factores.

Para obtener más trucos y trucos, visite: http://www.cybersecurityspace.com

¿Qué tal el problema del mundo menos en Super Mario Bros?

The Minus World es un nivel de falla que se encuentra en Super Mario Bros. y podría considerarse como la falla más famosa en la historia de los videojuegos. Es un nivel submarino (exactamente como el Mundo 7-2 en geografía y ubicaciones enemigas) que no se puede terminar (la tubería al final falla y lleva al jugador de regreso al inicio), lo que significa que una vez allí, Mario o Luigi están condenados perder toda su vida al quedarse sin tiempo o ser derrotado por los enemigos. El nivel recibió su nombre de los fanáticos porque, cuando está en Minus World, la pantalla superior dice que Mario está en World -1 . Esto se debe a una falla en los paneles que muestran los números. Minus World es en realidad World 36-1 , pero el juego muestra el gráfico en blanco para el número 36, por lo que todo lo que el jugador puede ver es el -1

El jugador puede llegar al Mundo Menos yendo al Mundo 1-2 y parado en la tubería que lleva al Asta de la Bandera al final del nivel. Luego, deben moverse hacia el extremo izquierdo de la tubería, luego agacharse mientras miran hacia la izquierda. Mientras se agacha, el jugador debe saltar. Mientras está en el aire, el jugador debe moverse hacia la derecha, de modo que cuando esté a punto de volver a bajar, debe estar justo debajo del techo en este momento. Puede tomar varios intentos para el jugador, ya que Mario debe aterrizar en un lugar exacto en la tubería para poder atravesarlo. Si se hace correctamente, se moverá automáticamente a través de la tubería (sin que la pantalla se mueva) y luego a través de la pared y dentro de la sala de urdimbre. Si ni siquiera se muestra 1 píxel de la tubería, Mario quedará atrapado hasta que se acabe el tiempo.

Otro método para llegar al Mundo Menos implica que Mario rompa dos bloques en el techo, dejando el que está en el extremo derecho. Debería moverse hacia el extremo izquierdo de la tubería y saltar hacia la derecha. No tiene que agacharse, ya que puede intentar golpear la parte inferior izquierda del bloque (sin destruirlo realmente). Esto debería fallar el juego, permitiendo que Mario atraviese la tubería y la pared, pero hacerlo de esta manera es potencialmente más difícil y requiere mucho tiempo.

Si todo se hace correctamente, Mario verá las tres tuberías frente a él desde la Zona Warp. Si ingresa a la tubería hacia el extremo izquierdo o derecho, se encontrará en el Mundo Menos. Si entra en la tubería en el medio, lo llevará al Mundo 5-1. Sin embargo, si el jugador hace visible el muro de ladrillos en el extremo derecho (donde aparece el mensaje “Bienvenido a la zona de urdimbre”), la falla terminará. La razón por la que la tubería central lleva a 5-1 es porque el juego está cargando datos de la zona de urdimbre por encima de la parte superior 4-2 (no la que está arriba de la parra) que tiene solo una tubería a 5-1. El área de las otras tuberías se rellena con el mosaico 36 (el mosaico en blanco que causa la visualización -1), lo que hace pensar que conduce al Mundo 36-1, es decir, al Mundo Menos.

Fuente: Super Mario Wiki, la enciclopedia de Mario

Mi favorito es el bicho del Milenio.

El problema del año 2000, también conocido como el problema Y2K , el error Millennium , el error Y2K o Y2K, fue un error informático relacionado con el formateo y el almacenamiento de datos de calendario. Los problemas se anticiparon y surgieron porque el software del siglo XX a menudo representaba el año de cuatro dígitos con solo los dos dígitos finales, lo que hacía que el año 2000 no se distinguiera de 1900. La suposición de una fecha del siglo XX en tales programas causó varios errores, tales como la visualización incorrecta de fechas y el pedido inexacto de registros automáticos con fecha o eventos en tiempo real.

Identifica dos problemas que pueden existir en muchos programas de computadora. Primero, la práctica de representar el año con dos dígitos se volvió problemática con errores lógicos que surgieron al “pasar” de x99 a x00. Esto había provocado que algunos procesos relacionados con la fecha funcionaran incorrectamente para fechas y horas a partir del 1 de enero de 2000, y en otras fechas críticas que se facturaron como “horizontes de eventos”. Sin una acción correctiva, los sistemas de larga duración se descompondrían cuando el supuesto de numeración ascendente “… 97, 98, 99, 00 …” de repente se volviera inválido. En segundo lugar, algunos programadores habían entendido mal la regla del calendario gregoriano que determina si los años que son exactamente divisibles por 100 no son bisiestos, y asumieron que el año 2000 no sería bisiesto. Los años divisibles por 100 no son años bisiestos, excepto los años divisibles por 400. Por lo tanto, el año 2000 fue bisiesto.

Las empresas y organizaciones de todo el mundo verificaron, arreglaron y actualizaron sus sistemas informáticos para abordar el problema previsto. Se informaron muy pocas fallas en la computadora cuando los relojes llegaron al año 2000. No se sabe cuántos problemas no se registraron.

Arriba hay un cartel electrónico que muestra el año incorrectamente como 1900 el 3 de enero de 2000 en Francia.

Fuente de información: Wikipedia.

Mi famoso error favorito es la historia de “La invasión espacial de 1978 [1] inventa la curva de nivel de dificultad”, una historia que revolucionó la industria del juego en ese momento.

El TL; DR en la historia es que en ese momento, el hardware no era lo suficientemente poderoso como para ejecutar el juego. Así que el único desarrollador, Tomohiro Nishikado [2] tuvo que desarrollar su propio hardware para ejecutar el juego.

Después de que terminó, Nishikado descubrió que el hardware todavía no es lo suficientemente potente, pero de todos modos fue probado por el juego, ya que había demasiados elementos (Aliens) en la pantalla que los hacían moverse a un ritmo muy lento y constante.

Lo que descubrió eventualmente es que a medida que avanza el juego, se libera más memoria por el hecho de que hay menos alienígenas en la pantalla que los hizo moverse más rápido, lo que hizo que los invasores espaciales fueran el desafiante y divertido éxito de súper arcade que era.

Notas al pie

[1] Invasores del espacio

[2] Tomohiro Nishikado

Amantes del tenis! Es posible que haya oído hablar de este incidente.

Este incidente ocurrió durante el famoso partido entre John Isner y Nicholas Mahut. Este partido del Campeonato de Wimbledon 2010 se considera el partido más largo en la historia del tenis. Tanto el tiempo como el número de juegos.

Después de 11 horas, 5 minutos de tenis durante 3 días, Isner derrotó a Mahut con un puntaje final de 6–4, 3–6, 6–7 (7–9), 7–6 (70–68) o un total de 183 juegos.

Ahora aquí está la parte interesante donde un error de la programación de IBM detuvo el partido por un tiempo en el segundo día.

El día 2, el marcador del lado de la cancha se detuvo en 47-47 y luego se oscureció. Los programadores de IBM dijeron que solo estaba programado para ir a 47–47, pero que se solucionaría al día siguiente. El marcador en línea en el sitio web oficial duró un poco más: a 50–50 se restableció a 0–0. Se pidió a los usuarios que “agreguen 50 al puntaje del juego Isner / Mahut”.

Un programador de IBM trabajó en el sistema de puntuación hasta las 11:45 p.m. para acomodar los puntajes del partido para el día siguiente, aunque de nuevo habría funcionado mal si el partido hubiera ido más allá de 25 juegos más.

More Interesting

Cómo clonar una máquina virtual VMware en otra máquina virtual usando Clonezilla

¿Necesito algunos documentos técnicos relacionados con la energía solar y la energía térmica, básicamente relacionados con la informática? ¿Cuáles son algunas sugerencias?

Si por computación analógica se resolviera en tiempo polinómico un problema de NP, ¿debería considerarse como solución de P vs NP?

Si el problema P versus NP se resuelve, de alguna manera, ¿cuál sería el mayor impacto?

¿Se puede aplicar el aprendizaje automático para un entorno completamente aleatorio?

¿Cómo gestionar modelos de aprendizaje automático? ¿Cómo realiza un seguimiento de los modelos de aprendizaje automático mientras los itera? ¿Cómo se compara el rendimiento de diferentes modelos / conjuntos de datos? ¿Cuáles son algunos puntos débiles en su flujo de trabajo?

¿Qué es mejor para CS: NIT Jamshedpur o IIIT Bangalore?

¿Cuál es la diferencia entre ip de origen y ip de destino?

¿Es mejor trabajar en una aplicación para algoritmos de aprendizaje automático (por ejemplo, biología computacional), en lugar de trabajar en ML central, ya que el campo ya está maduro y hay menos espacio para mejorar?

¿Qué es la teoría de autómatas?

Informática: ¿Cuál es un buen libro de algoritmos / CS para leer mientras viaja?

Necesito solicitar experiencia laboral este verano. ¿Cómo debo preguntar a las empresas si lo ofrecen? ¿Por teléfono o por correo electrónico?

¿Qué tan difícil es la especialización en Juegos de Ciencias de la Computación en la Escuela de Ingeniería USC Viterbi?

Con todas las novedades sobre la computación cuántica, ¿es real la exageración?

En una cadena binaria larga, ¿cómo podría usted (o una computadora) saber dónde están los saltos de caracteres?