Golpe asesino
En la jerga informática, un empujón asesino es un método para inducir daños físicos en el hardware de una máquina o sus periféricos mediante la inserción de valores no válidos mediante, por ejemplo, el comando POKE de BASIC., en un registro de control mapeado en memoria. El término se usa típicamente para describir una familia de trucos bastante conocidos que pueden sobrecargar la electrónica analógica en los monitores CRT de las computadoras que carecen de verificación de cordura del hardware (ejemplos notables son IBM Portable y Commodore PET).
Ejemplos específicos
Zuse Z1/Z3
Las computadoras Z1 (1938) y Z3 (1941) construidas por Konrad Zuse contenían secuencias ilegales de instrucciones que dañaban el hardware si se ejecutaban por accidente.
Comodoro PET
El toque asesino específico de PET está conectado a la arquitectura de los circuitos rasterizadores de video de esa máquina. En los primeros PET, escribir un determinado valor en la dirección de memoria de un determinado registro de E/S (POKE 59458,62
) hacía que la máquina pudiera mostrar texto y gráficos en la pantalla un 106 % más rápido. Esto se logró al deshabilitar una protección de "esperar para imprimir en la pantalla" diseñada para reducir la estática / el ruido al evitar que la pantalla lea la VRAM compartida al mismo tiempo que la CPU la estaba escribiendo. Con esta protección deshabilitada, los gráficos podrían aparecer en la pantalla el doble de rápido, pero también aparecerían pequeños fragmentos de estática. A pesar de la estática, algunos juegos diseñados para los primeros PET incluyeron este POKE en su código fuente para beneficiarse de los gráficos más rápidos.
Cuando se renovó la gama de PET con hardware actualizado, los circuitos del rasterizador de video se rediseñaron para funcionar a mayor velocidad y sin necesidad de una protección de "esperar para imprimir". Por lo tanto, el viejo truco POKE ya no resultó en gráficos más rápidos. En cambio, realizar el viejo truco en el nuevo hardware provocó un comportamiento extraño en el nuevo chip de video, lo que podría causar una contención de la señal y posiblemente dañar el monitor CRT integrado del PET. Esto se debe a que el pin exacto al que se dirige el comando POKE se usa para controlar el tiempo de visualización, pero en el chip de video actualizado, ese pin controla la sincronización vertical. Por lo tanto, ejecutar POKE en el hardware más nuevo provocó que los gráficos se comprimieran verticalmente, a veces hasta una línea horizontal extremadamente brillante. Los temores de que esta anomalía pudiera quemarse en la pantalla llevaron al apodo de "golpe asesino", sin embargo, no se sabe que haya causado ningún daño permanente al monitor.
Unidad de disco Commodore 1541
El Commodore 64 tenía una rueda externa opcional de 5-1/4" unidad de disquete. El Commodore 1541 contenía un microprocesador 6502 que se usaba para ejecutar Commodore DOS y también para administrar el mecanismo de la unidad. Las unidades almacenaban datos en 35 pistas (#0–34), y el motor paso a paso podía controlarse manualmente a través de BASIC imprimiendo #-ing "MEMORY-WRITE" comandos a la unidad (que corresponden al comando POKE de BASIC, pero escriben en la memoria interna de la unidad y en los registros de E/S, no en los de la computadora misma). Si la unidad estaba en cualquiera de los extremos de su rango (pista 0 o pista 39) y se le ordenó que siguiera moviéndose, no había ningún método de software o firmware para evitar daños en la unidad. Continuó "golpeando" del cabezal impulsor contra el tope, el mecanismo se desalinearía. El problema se vio agravado por las técnicas de protección contra copias que usaban formatos de disco no estándar con recuentos de pistas inusuales. El Commodore 1571 tenía un tope de cabezal óptico en lugar de uno mecánico.
TRS-80 Modelo III
El modelo TRS-80 III tenía la capacidad de cambiar entre una pantalla de 32 caracteres de ancho y una pantalla de 64 caracteres. Al hacerlo, activó un relé en el hardware de video, lo que se logró escribiendo en un registro de control mapeado en memoria específico. Los programas que cambiaron repetidamente entre los modos de 32 y 64 caracteres a alta velocidad (ya sea a propósito o accidentalmente) podrían dañar permanentemente el hardware de video. Si bien no se trata de un solo "golpe mortal", demuestra un modo de falla del software que podría dañar permanentemente el hardware.
Relé de cinta de casete
La computadora a color TRS-80, IBM PC, IBM PCjr, Nascom, MSX, Amstrad CPC y BBC Micro de Acorn Computers contenían un relé incorporado para controlar una grabadora de cinta externa. Alternar el relé de control del motor en un bucle cerrado reduciría la longevidad del relé.
Amiga
La unidad de disquete de la computadora personal Amiga podría fabricarse para producir ruidos de varios tonos haciendo que las cabezas de la unidad se muevan hacia adelante y hacia atrás. Existía un programa que podía reproducir El Cóndor Pasa, más o menos correctamente, en la disquetera del Amiga. Como algunos sonidos dependían de que el conjunto de la cabeza tocara el tope, esto desalineó gradualmente la cabeza.
Unidades de CD-ROM de LG
Algunos modelos de unidades de CD-ROM LG con firmware específico usaban un comando anormal para "actualizar firmware": el "borrar búfer" comando generalmente utilizado en unidades de CD-RW. Linux usa este comando para diferenciar entre unidades de CD-ROM y CD-RW. La mayoría de las unidades de CD-ROM devuelven de manera confiable un error para el comando de CD-RW no compatible, pero las unidades defectuosas lo interpretaron como 'actualizar firmware', lo que provocó que dejaran de funcionar (o, en lenguaje informal, que se " 34;enladrillado").
Portátiles MSi UEFI
Systemd monta las variables utilizadas por Unified Extensible Firmware Interface en los sysfs del sistema Linux como modificables por el usuario raíz de un sistema. Como resultado, es posible que el usuario raíz de un sistema bloquee por completo un sistema con una implementación UEFI no conforme (específicamente algunas computadoras portátiles MSi) usando el comando rm
para eliminar el /sys/firmware/efi/efivars/
, o elimine recursivamente el directorio raíz.
Juego chico
La pantalla LCD de Game Boy se puede apagar con el software del juego. Hacerlo fuera del intervalo de borrado vertical supuestamente puede dañar el hardware.
Dragón 32
La velocidad del reloj de la CPU de Dragon 32 se definió mediante un divisor de reloj programable que el usuario podía programar para aumentar la velocidad de la CPU en un 50 % o un 100 % y, teóricamente, en un 150 % (aunque seleccionar esta velocidad provocó que el sistema colapsara).) La CPU instalada, la 6809E, originalmente tenía una clasificación de 1 MHz con Dragon 32 ejecutándose a 0,89 MHz. Un aumento de velocidad a 1,33 MHz parecía mayormente estable, mientras que un aumento a 1,78 MHz haría que la sincronización de video se perdió. En ese momento se hizo público que el aumento de calor producido por el aumento de velocidad eventualmente dañaría la CPU. POKE 65495, 0
permitido para doble velocidad con gráficos fijos se muestra correctamente. POKE 65497, 0
sincronización de video perdida.
Contenido relacionado
Red estrella
Maricultura
Formato de película