Skip to content
research

El imposible rescate de software del Voyager 1

Una nave espacial a miles de millones de kilómetros de distancia seguía obedeciendo comandos mientras enviaba a casa datos que nadie podía entender. La solución reveló un tipo de ingeniería que los sistemas de actualización modernos rara vez exigen, y que casi nadie practica manualmente.

Aki Tanaka
El imposible rescate de software del Voyager 1

El Voyager estaba hablando. La Tierra simplemente no podía leerlo.

El 14 de noviembre de 2023 marcó el comienzo de una profunda interrupción de las comunicaciones para el Voyager 1. La venerable nave espacial, a más de 15 mil millones de millas de la Tierra, continuó recibiendo y ejecutando comandos, un testimonio de su duradera integridad operativa. Sin embargo, su telemetría de enlace descendente, que alguna vez fue un rico flujo de datos científicos y de ingeniería, se degradó en patrones repetitivos y sin sentido de unos y ceros.

La anomalía se originó dentro del Flight Data Subsystem (FDS), una de las tres computadoras a bordo del Voyager 1. El FDS es responsable de empaquetar todas las lecturas científicas y de ingeniería antes de retransmitirlas al transmisor de la nave espacial. No fue una pérdida de contacto; la Tierra aún podía "hablar" con el Voyager, pero la nave espacial ya no podía "responder" en un lenguaje descifrable.

Resolver tal paradoja a través de distancias interestelares presentó un desafío inmenso. Cada señal, viajando a la velocidad de la luz, requiere aproximadamente 22.5 horas para completar un viaje de ida. Esto significaba que cada paso de diagnóstico, cada intento de solución y cada confirmación tomaba casi dos días, transformando la resolución de problemas en un intercambio minucioso y prolongado con una máquina en el borde del sistema solar.

Un “toque” puso la computadora patas arriba

En marzo de 2024, los ingenieros de la NASA iniciaron una maniobra de diagnóstico crítica. Enviaron un comando, coloquialmente llamado “poke”, que incitó al Flight Data Subsystem (FDS) del Voyager 1 a ejecutar una ruta de software diferente. Dos días después, la Deep Space Network recibió una nueva señal: un volcado de memoria completo del FDS, que contenía su código activo y variables.

Al comparar este nuevo volcado con una línea base anterior a la falla, el equipo identificó la anomalía en abril. Un solo memory chip había fallado, corrompiendo aproximadamente el 3% de la memoria total del FDS. No fue un error de bit simple y aislado; la arquitectura peculiar del chip creó un problema más generalizado.

La memoria del FDS organiza los datos en 16-bit words. El chip defectuoso era responsable de un bit específico en 256 palabras consecutivas. Su falla hizo que ese bit fuera inutilizable en cada una de esas 256 palabras, corrompiendo efectivamente un bloque significativo de rutinas críticas del sistema que se llamaban a lo largo del programa FDS. La tarea por delante era sortear este daño de hardware irreparable desde 15 mil millones de millas de distancia.

El parche tenía que encajar en los huecos

Reemplazar el chip defectuoso desde 15 mil millones de millas de distancia era, por supuesto, imposible. Los ingenieros se centraron en cambio en evitar la memoria dañada. El problema: el chip roto afectaba a un bit en 256 16-bit words consecutivas, corrompiendo rutinas críticas del sistema. Mover estas rutinas requería encontrar un nuevo bloque de memoria contiguo lo suficientemente grande como para albergarlas, pero al FDS le faltaba cualquier espacio libre de ese tamaño.

Los ingenieros idearon una solución ingeniosa. Segmentaron las rutinas corrompidas en piezas más pequeñas, distribuyendo estos fragmentos a través de varios bolsillos de memoria disponibles y no contiguos dentro del FDS. Esto requirió actualizar meticulosamente cada ubicación del programa que llamaba a estas rutinas, asegurando que el sistema pudiera encontrar cada pieza dispersa.

Todo este proceso se desarrolló sin el lujo de las herramientas modernas. La arquitectura de la década de 1970 de Voyager significaba que no existía un ensamblador adecuado. El equipo tradujo minuciosamente cada cambio de código y dirección de memoria a binario a mano, un testimonio de la precisión de la ingeniería de bajo nivel. Para obtener más información sobre el diagnóstico inicial, consulte Engineers Pinpoint Cause of Voyager 1 Issue, Are Working on Solution. El 18 de abril de 2024, enviaron el primer parche para los datos de ingeniería, restaurando la legibilidad dos días después.

¿Te está gustando? Recibe uno así en tu bandeja cada mañana.

un correo al día · date de baja en dos clics · sin rastreadores de terceros

Una actualización de 15 mil millones de millas, bit a bit

Los ingenieros de la NASA enviaron el código para los datos de ingeniería el 18 de abril de 2024. Dos días después, el 20 de abril, regresó la telemetría de ingeniería legible, poniendo fin a un apagón de cinco meses. Esto no fue una reparación física del chip de memoria defectuoso, sino una solución de software entregada a través de 15 mil millones de millas mediante la Deep Space Network.

La solución implicó una manipulación precisa a nivel de byte de la memoria del FDS. Los ingenieros segmentaron manualmente las rutinas corruptas y luego asignaron los fragmentos en ubicaciones de memoria dispersas y disponibles. Actualizaron minuciosamente cada dirección en el firmware del FDS que llamaba a estas rutinas, traduciendo cada cambio a binario sin la ayuda de ensambladores modernos.

La recuperación de Voyager 1 demuestra el ingenio necesario para mantener los sistemas heredados. Este delicado baile de gestión de memoria mantuvo viva a la venerable sonda. Tras la solución inicial, los ingenieros reubicaron las rutinas de los instrumentos científicos, restaurando los cuatro instrumentos científicos activos para junio de 2024.

Sin embargo, la misión sigue siendo un testimonio tanto de la persistencia humana como del avance implacable del tiempo. Las limitaciones de energía continúan restringiendo la nave espacial, y los problemas de hardware posteriores, como un problema a finales de 2024 con el transmisor principal de banda X, subrayan los desafíos continuos de operar una sonda de 47 años en el espacio interestelar.

Preguntas frecuentes

¿Qué causó que Voyager 1 enviara datos ilegibles?

Un chip de memoria fallido corrompió alrededor del 3% de la memoria del Flight Data Subsystem, dañando las rutinas utilizadas para empaquetar la telemetría.

¿Cómo solucionó la NASA la memoria dañada de Voyager 1?

Los ingenieros dividieron el código afectado en fragmentos, los colocaron en ubicaciones de memoria libre dispersas y actualizaron las direcciones de las rutinas que los llamaban.

¿Por qué los ingenieros tradujeron los cambios de software de Voyager 1 a binario a mano?

El equipo no tenía un ensamblador funcional para la antigua arquitectura informática patentada de Voyager, por lo que convirtieron los cambios a código máquina manualmente.

¿Cuándo reanudó Voyager 1 el envío de datos de ingeniería?

La NASA envió el parche de datos de ingeniería el 18 de abril de 2024, y los datos legibles llegaron dos días después.

Found this useful? Share it.

For builders

Want Stork to write one of these about your product?

Send us a URL. We use the product, form a view, and publish what we actually think — in 8 languages, labeled Sponsored, with no copy approval on your side. That last part is what makes it worth quoting.

See how it works$199 · AI tools & software only

Para builders

Esta página está trabajando para la herramienta de otro.

La leen los agentes de IA. Aterrizan compradores. Responde en ocho idiomas y vía MCP. Tu herramienta puede tener una igual — publicada en 24 horas.