¿Cuál fue el error Y2K?

Gracias por hacerme sentir viejo, niños.

Y2K era el nombre de un error informático. Una gran cantidad de software escrito en el siglo XX solo almacenaría dos dígitos para el año, es decir, 1980 se almacenaría como “80”. Desafortunadamente, cuando el calendario pasó al 1 de enero de 2000, este software ahora pensaría que la fecha era el 1 de enero de 1900 (o, en algunos casos raros, el 1 de enero de 19100).

Esto haría que todo tipo de cosas se volvieran locas; es posible que las alarmas no suenen o que todas suenen a la vez. Las facturas pueden mostrarse como un retraso de un siglo (con un billón de dólares en cargos atrasados), o pueden no funcionar en absoluto. Temíamos que errores sutiles pudieran estar al acecho en infraestructura crítica, como equipos médicos, pilotos automáticos de aviones, plantas de energía, reactores nucleares, etc. El mundo se estaba ejecutando en computadoras de una manera que realmente no se había previsto en las décadas anteriores, y el software se había escrito en un día en el que estábamos seguros de que la mayoría sería reemplazado mucho antes de que los años de dos dígitos se convirtieran en un problema. (No lo fue).

Al final, casi no pasó nada. No porque los errores no estuvieran allí, y no porque no fueran serios, sino porque las compañías dedicaron mucho tiempo y esfuerzo para solucionarlos por adelantado. Los últimos años de la década de los noventa estuvieron llenos de consultores que prometieron arreglar su software por usted y esfuerzos masivos para probar el “cumplimiento de Y2K”. Lo importante se solucionó, hubo que solucionar algunos problemas y el mundo siguió girando sobre su eje. No fue un evento, porque lo manejamos adecuadamente.

Fue bastante popular señalar, durante los años noventa, que el siglo XXI técnicamente no comenzó hasta 2001 *; 2000 fue el último año del siglo XX. Sin embargo, después del pánico y el alivio posterior que rodeó al error Y2K, 2000 fue tratado como el verdadero hito. Habíamos sobrevivido y el futuro había llegado intacto. 2001 no fue tan importante.

* Esto se debe a que comenzamos a contar años desde AD 1. El año anterior se llamaba 1 a. C. Y esto, a su vez, fue porque todavía no habíamos inventado cero. En comparación con nuestro sistema para contar años, cero es un invento bastante moderno. No hubo año cero.

Error Y2K, también llamado error del año 2000 o error del milenio, un problema en la codificación de sistemas computarizados que se proyectó crearía estragos en las redes de computadoras y computadoras de todo el mundo a principios del año 2000 (en mediciones métricas, K representa miles) . Después de más de un año de alarma internacional, preparaciones febriles y correcciones de programación, ocurrieron pocas fallas importantes en la transición del 31 de diciembre de 1999 al 1 de enero de 2000.

Hasta la década de 1990, muchos programas cmputer (especialmente aquellos escritos en los primeros días de las computadoras) fueron diseñados para abreviar años de cuatro dígitos como dos dígitos para ahorrar espacio en la memoria. Estas computadoras podrían reconocer “98” como “1998” pero serían incapaces de reconocer “00” como “2000”, tal vez interpretando que significa 1900. Muchos temieron que cuando los relojes dieran la medianoche del 1 de enero de 2000, muchas computadoras afectadas usar una fecha incorrecta y, por lo tanto, no funcionar correctamente, a menos que el software de las computadoras haya sido reparado o reemplazado antes de esa fecha. Otros programas de computadora que proyectaban presupuestos o deudas en el futuro podrían comenzar a funcionar mal en 1999 cuando hicieron proyecciones en 2000. Además, algunos programas de computadora no tomaron en cuenta que el año 2000 fue un año bisiesto. Incluso antes del amanecer de 2000 , se temía que algunas computadoras pudieran fallar el 9 de septiembre de 1999 (9/9/99), porque los primeros programadores a menudo usaban una serie de 9 para indicar el final de un programa.

Se temía que tal lectura errónea condujera a fallas de software y hardware en las computadoras utilizadas en áreas tan importantes como la banca, los sistemas de servicios públicos, los registros gubernamentales, etc., con el potencial de un caos generalizado a partir del 1 de enero de 2000. Computadoras mainframe , incluidos los que normalmente se utilizan para administrar compañías de seguros y bancos, se pensó que estaban sujetos a los problemas más graves del año 2000, pero incluso los sistemas más nuevos que usaban redes de computadoras de escritorio se consideraban vulnerables.

Sin embargo, el problema Y2K no se limitó a las computadoras que ejecutan software convencional. Se creía que muchos dispositivos que contenían chips de computadora, desde ascensores hasta sistemas de control de temperatura en edificios comerciales y equipos médicos, estaban en riesgo, lo que requería la verificación de estos “sistemas integrados” para determinar la sensibilidad a las fechas del calendario.

El problema del año 2000 (también conocido como el problema Y2K , el error Millennium , el error Y2K o simplemente Y2K ) fue un problema tanto para la documentación digital (relacionada con la computadora) como para la no digital y las situaciones de almacenamiento de datos que resultaron de la práctica de abreviando un año de cuatro dígitos a dos dígitos.
En 1997, el British Standards Institute (BSI) desarrolló un estándar, DISC PD2000-1, [1] que define los “requisitos de conformidad del año 2000” como cuatro reglas:

  1. Ninguna fecha válida causará interrupción en las operaciones.
  2. El cálculo de las duraciones entre, o la secuencia de, pares de fechas será correcto, ya sea que las fechas sean en siglos diferentes.
  3. En todas las interfaces y en todo el almacenamiento, el siglo debe ser inequívoco, ya sea especificado o calculable por algoritmo
  4. El año 2000 debe ser reconocido como año bisiesto

Identifica dos problemas que pueden existir en muchos programas de computadora.
En primer lugar, la práctica de representar el año con dos dígitos se vuelve problemática con errores lógicos que surgen al “pasar” de x99 a x00. Esto ha provocado que algunos procesos relacionados con la fecha funcionen 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 que determina si los años que son exactamente divisibles por 100 son años bisiestos, y asumieron que el año 2000 no sería bisiesto. Aunque la mayoría de los años divisibles por 100 no son años bisiestos, si son divisibles por 400, entonces lo son. Así, el año 2000 fue un año bisiesto.
Las empresas y organizaciones de todo el mundo verificaron, arreglaron y actualizaron sus sistemas informáticos.

Las computadoras comenzaron a gobernar el mundo a partir del siglo XX. Durante ese tiempo, cuando las computadoras estaban creciendo, nadie hubiera imaginado su importancia en el futuro. Por lo tanto, las personas respaldaron años en formato de 2 dígitos, dicen 1992 como 92. Pero, el problema ampliamente conocido como Y2K (también conocido como error del Milenio ) surgió cuando entramos en el siglo XXI y para apoyar el año 2000, la única opción disponible era 00. Este año hecho 2000 indistinguible de 1900.

Además, algunos programadores malinterpretaron la regla del calendario @Gregorian para el año bisiesto y asumieron que 2000 no sería un año bisiesto. Las empresas han hecho todo lo posible para corregir y solucionar este problema, pero aún no se conoce el número real de computadoras afectadas por este error.

El problema del año 2000 (también conocido como el problema Y2K , el error Millennium , el error Y2K , o simplemente Y2K ) fue un problema tanto para la documentación digital (relacionada con la computadora) como para la no digital y las situaciones de almacenamiento de datos que resultaron de la práctica de abreviando un año de cuatro dígitos a dos dígitos. Esto hizo que el año 2000 no se distinguiera de 1900. La suposición anterior de que siempre se entendió una fecha del siglo XX provocó varios errores relacionados, en particular, con la visualización de fechas y el ordenamiento automático de registros fechados o eventos en tiempo real.

Muchos programas de computadora almacenaron años con solo dos dígitos decimales; por ejemplo, 1980 se almacenaría como 80. Algunos de estos programas no podían distinguir entre el año 2000 y el año 1900. Otros programas tratarían de representar el año 2000 como 19100. Esto podría causar una falla completa y provocar que las comparaciones de fechas produzcan datos incorrectos. resultados. Se esperaba que algunos sistemas embebidos, utilizando una lógica de fecha similar, fallaran y causaran fallas en los servicios públicos y otras infraestructuras cruciales.

Cómo se resolvió:

Se utilizaron varios enfoques muy diferentes para resolver el problema del año 2000 en sistemas heredados. Tres de ellos siguen:

  • Expansión de la fecha : los años de dos dígitos se expandieron para incluir el siglo (convirtiéndose en años de cuatro dígitos) en programas, archivos y bases de datos. Esta fue considerada la solución “más pura”, lo que resulta en fechas inequívocas que son permanentes y fáciles de mantener. Sin embargo, este método era costoso, requería pruebas masivas y esfuerzos de conversión, y generalmente afectaba a sistemas completos.
  • Repartición de fechas : en las bases de datos heredadas cuyo tamaño no se podía cambiar económicamente, los códigos de seis dígitos año / mes / día se convirtieron en años de tres dígitos (con 1999 representado como 099 y 2001 representado como 101, etc.) y tres días de dígitos (fecha ordinal en año). Solo las instrucciones de entrada y salida para los campos de fecha tuvieron que modificarse, pero la mayoría de las otras operaciones de fecha y operaciones de registro completo no requirieron cambios. Esto retrasa el eventual problema de renovación hasta el final del año 2899.
  • Ventanas : se conservaron años de dos dígitos, y los programas determinaron el valor del siglo solo cuando era necesario para funciones particulares, como las comparaciones de fechas y los cálculos. (La “ventana” del siglo se refiere al período de 100 años al que pertenece una fecha). Esta técnica, que requería instalar pequeños parches de código en los programas, era más simple de probar e implementar que la expansión de fecha, por lo tanto, mucho menos costosa. Si bien no es una solución permanente, las correcciones de ventanas generalmente se diseñaron para funcionar durante varias décadas. Esto se consideró aceptable, ya que los sistemas heredados más antiguos tienden a ser reemplazados por tecnología más nueva.

Fuente: Wikipedia: problema del año 2000

Érase una vez, en los oscuros recovecos del historial de la computadora, la RAM se midió en cantidades muy pequeñas. 4K en realidad era mucho RAM. Los números usan RAM. Por lo tanto, para guardar las fechas de RAM se dieron en 2 no 4 dígitos. Eso estuvo bien en los años 70 e incluso en los 80 ya que nadie pensó que sus programas permanecerían intactos durante 20 o incluso 10 años. Entonces todos nos dimos cuenta de que esos programas aún existían, y nadie sabía realmente cómo reaccionarían al año 00. Y lo que lo hizo realmente aterrador, los programas fueron escritos en COBOL, que era el equivalente del latín en el mundo de hoy. Algunas personas lo sabían pero no lo suficiente como para arreglar todos esos programas, antes de las 00. Era el equivalente a pedirle a unos cientos de personas que fueran a la biblioteca del Vaticano y tradujeran cada texto en 2 años.

Luego, los medios de comunicación se apoderaron de la historia, y lo que fue esencialmente un problema técnico, se convirtió en el “fin del mundo tal como lo conocemos”. El impacto habría sido principalmente en los bancos, así que sí, habría problemas, pero lo mejor sería que yo sepa, ningún reactor nuclear o guerra estallaría por este problema.

El problema del año 2000 (también conocido como el problema Y2K , el error Millennium , el error Y2K , o simplemente Y2K ) fue un problema tanto para la documentación digital (relacionada con la computadora) como para la no digital y las situaciones de almacenamiento de datos que resultaron de la práctica de abreviando un año de cuatro dígitos a dos dígitos. Esto hizo que el año 2000 no se distinguiera de 1900. La suposición anterior de que siempre se entendió una fecha del siglo XX provocó varios errores relacionados, en particular, con la visualización de fechas y el ordenamiento automático de registros fechados o eventos en tiempo real.

Problema del año 2000

Guau. Esto me lleva de vuelta. En los primeros días de las computadoras, tenían que descubrir cómo representar una fecha. Tiene un mes, día y año (no siempre en ese orden). En la década de 1960, el año 2000 parecía muy lejano, por lo que (en su mayoría) eligieron una representación anual de dos dígitos: 61 significa, 1961, 88 significa, 1988, etc. Pero, ¿cómo se representa el año 2000? Bueno, muchas computadoras no sabían qué hacer con él. Algunos pensaron que era el año 1900. Algunos pensaron “Eso es ridículo. ¡1900 es hace demasiado tiempo!”

Y2k significa “el año 2000”: “Y” para “año”, “2k” para 2000. El temor era que todos los grandes sistemas informáticos que controlan la energía (incluso las instalaciones nucleares), el tráfico aéreo y otros servicios vitales fracasen catastróficamente. Lleva tiempo enseñar a las computadoras una nueva forma de representar años (y corregir los datos ya almacenados para que coincidan con esa representación). La gente temía que los programadores no enseñaran las computadoras lo suficientemente rápido y las cosas se rompieran.

Lo viví de primera mano y puedo decirles que las grandes corporaciones se asustaron ante la perspectiva de un posible impacto comercial. Si hicieras bromas al respecto o no parecieras tomarlo en serio, estarías en muchos problemas

Trabajé para uno de los bancos más grandes de los Estados Unidos en ese momento. A los fines de Y2K, a todos los gerentes se les asignó un doble papel para la gestión de transición y escalado. Mi trabajo consistía en dirigir todo nuestro departamento porque tanto mi gerente de primera línea como el de segunda línea debían ocupar puestos específicos en el plan de recuperación ante desastres.

Además, teníamos que certificar nuestras propias aplicaciones como compatibles con Y2k, elaborar un plan de recuperación ante desastres y desarrollar un conjunto de casos de prueba que se realizarían una vez que el reloj se estructurara a medianoche.

La fiesta de año nuevo fue una fiesta que no se debe olvidar. Champaign y atendido al máximo gasto.

Por supuesto que no pasó nada. Lo más divertido fue que el plan fue presupuestado por 6 meses de vida. Imagine un grupo de ejecutivos sentados en nuestra Sala de Guerra alrededor de un banco de teléfonos como en un Teletón esperando llamadas que nunca llegaron. Se convirtió en una vergüenza después de dos semanas y la infraestructura fue desmantelada en silencio. Qué pérdida de tiempo, ni siquiera un tema para ser criado

Además de todas las otras excelentes respuestas anteriores:
Solo espere 23 años para el problema Y2038 (Epoch Converter – Unix Timestamp Converter), se está acercando y causará los mismos problemas con el software antiguo 🙂 (y tiene la misma causa: xx-bits debería ser suficiente por un tiempo lóóóóóóóng)

La práctica común, en ese momento, de escribir programas con solo dos números para definir un año que hizo 19’00 ‘indistinguible de 20’00’ podría haber hecho que muchos sistemas pensaran que 2000 era en realidad 1900 y, por lo tanto, rompen todos los programas que no Salta repentinamente en el tiempo.
Se habló mucho en los medios, pero al final no hubo muchos problemas.

Además del comentario de Claudia, también hubo problemas de hardware en los que las funciones de fecha / hora del BIOS (y el reloj del sistema incorporado) no se pudieron solucionar. Desafortunadamente, dado que la mayoría de los sistemas operativos usan el reloj del sistema, sin un truco, no hubo soluciones efectivas para actualizar muchas de esas máquinas.

En cambio, las compañías como la grande para la que trabajé en 1999 tuvieron que reemplazar gran parte de su hardware. Hicimos pruebas exhaustivas, pero al final (y quedándonos toda la noche para atender las llamadas de soporte para el negocio toda la noche del 31/12 al 1/1), ¡afortunadamente no hubo problemas reales!

Era real. Simplemente no era un gran problema para la mayoría de las personas.

Solo tengo que preguntarle a mi BBC Micro la fecha, para verlo felizmente informando sobre 1914.

Hubo algunas historias en ese momento que se salieron de control, como los aviones que caen del cielo a la medianoche, pero solo el tipo de periodismo pobre, sensacionalista y sensacionalista que uno esperaría.

El error del milenio era un defecto relacionado con la forma en que se manejaban las fechas, en lugar de una pieza de malware, y la gente lo veía venir con años de anticipación, por lo que había mucho tiempo para corregir el código defectuoso antes de que sucediera algo malo.

Como resultado, muy poco sucedió realmente el 1 de enero de 2000.

Ja!

Y2K fue una oportunidad para que los gerentes de TI y las empresas de outsourcing de TI obtuvieran presupuestos grandes e inflados y los gastaran.

Aproximadamente un año y medio después, hubo despidos masivos en todas partes.

Problema del año 2000 – Wikipedia