Gammarayburst kADC 620x349@abc 1

Windows sacó una actualización… contra los rayos gamma

Windows es una suerte de pieza de ingenería, berreta, pero pieza al fin. Es un sistema complejo, lleno de código para todo tipo de situaciones y eventos; ya sea para añadir compatibilidad con cierto hardware, o para ganar nuevas funciones, a lo largo de las décadas este código ha crecido a gran ritmo.

Claro, que no todo el código añadido tiene una utilidad evidente. Muchas nos quejamos cuando el sistema nos obliga a actualizar y no notamos la diferencia; puede que sea porque es un parche para solucionar un bug, o una función que no usamos. Hasta para las propias programadoras, hay parches que no tienen mucho sentido.

La programadora de Microsoft Raymond Chen compartió uno de los casos más curiosos, un parche que aún se encuentra en el código fuente del kernel (núcleo) de Windows; pese a que toda el mundo está de acuerdo en que es inútil.

La actualización más inútil de Windows

El código llama a una función llamada “invd”, que invalida el contenido de la caché del procesador; esta es una pequeña memoria que tienen las CPUs para las instrucciones y datos que usará en las próximas operaciones. Por lo tanto, de manera efectiva esta función borra la caché y obliga al procesador a volver a llenarla.

Lo realmente llamativo es el motivo de llamar a esta función: por los rayos gamma. Según el comentario que dejó la programadora oficial, la función se llama por si acaso unos rayos gamma afectaron a los bits guardados en la caché. De esta manera, se evitan posibles problemas si el procesador intenta usar los bits corruptos.

¡WTF! No que decir tiene que esta es una protección innecesaria, pero lo más gracioso es que además está mal implementada. Los rayos gamma normalmente no son un problema: es cierto que pueden afectar a la electrónica, pero se producen principalmente en el espacio y… ¡la atmósfera los absorbe!

No sólo eso, sino que en el improbable caso de que un rayo gamma golpease nuestra máquina, la memoria RAM sería más vulnerable; tendría más sentido incluir código para evitar la corrupción de la memoria RAM.

Por supuesto, una función semejante tal vez sería útil en el espacio; pero este código era para la versión de Windows para consumidores, no para sistemas embebidos como los que usan satélites, por ejemplo.

En Microsoft ya sabían todo esto, y que el parche era bastante inútil. El único motivo del parche es que una fabricante de procesadores se lo pidió. “Lo digo en serio”, escribía la programadora original, que tampoco podía creer lo que estaba haciendo.

;
; Invalidate the processor cache so that any stray gamma
; rays (I’m serious) that may have flipped cache bits
; while in S1 will be ignored.
;
; Honestly. The processor manufacturer asked for this.
; I’m serious.
;
invd

Este es posiblemente el parche más inútil que ha recibido Windows. Y eso ya es decir. Como prueba, apenas tres semanas después de implementarla, la instrucción fue bloqueada y ya no se ejecuta; aunque el código sigue presente, por si acaso algún día hay que luchar contra rayos gamma que corrompen procesadores, bromea Chen.

image/svg+xmlTribuna Hacker existe gracias a

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *