Accidente (informática)


En informática , un bloqueo , o bloqueo del sistema , ocurre cuando un programa de computadora, como una aplicación de software o un sistema operativo, deja de funcionar correctamente y se cierra . En algunos sistemas operativos o aplicaciones individuales, un servicio de informes de fallas informará la falla y cualquier detalle relacionado con ella (o le dará al usuario la opción de hacerlo), generalmente a los desarrolladores de la aplicación. Si el programa es una parte crítica del sistema operativo, todo el sistema puede fallar o bloquearse, lo que a menudo resulta en un kernel panic o un error fatal del sistema .

La mayoría de los bloqueos son el resultado de un error de software . Las causas típicas incluyen acceder a direcciones de memoria no válidas , valores de dirección incorrectos en el contador del programa , desbordamiento del búfer , sobrescribir una parte del código del programa afectado debido a un error anterior, ejecutar instrucciones de máquina no válidas (un código de operación ilegal ) o desencadenar una excepción no controlada . El error de software original que inició esta cadena de eventos generalmente se considera la causa del bloqueo, que se descubre a través del proceso de depuración . El error original puede estar muy alejado del código. que en realidad desencadenó el accidente.

En las primeras computadoras personales, intentar escribir datos en direcciones de hardware fuera de la memoria principal del sistema podía dañar el hardware. Algunos bloqueos son explotables y permiten que un programa malicioso o un pirata informático ejecute código arbitrario que permite la replicación de virus o la adquisición de datos que normalmente serían inaccesibles.

Por lo general, una aplicación falla cuando realiza una operación no permitida por el sistema operativo. A continuación, el sistema operativo activa una excepción o señal en la aplicación. Tradicionalmente, las aplicaciones de Unix respondían a la señal descargando core . La mayoría de las aplicaciones GUI de Windows y Unix responden mostrando un cuadro de diálogo (como el que se muestra a la derecha) con la opción de adjuntar un depurador si hay uno instalado. Algunas aplicaciones intentan recuperarse del error y continúan ejecutándose en lugar de salir .

Se dice que ocurre un "bloqueo en el escritorio" cuando un programa (comúnmente un videojuego ) se cierra inesperadamente, lo que hace que el usuario regrese abruptamente al escritorio . Por lo general, el término se aplica solo a bloqueos en los que no se muestra ningún error, por lo tanto, todo lo que el usuario ve como resultado del bloqueo es el escritorio. Muchas veces no hay una acción aparente que provoque un bloqueo en el escritorio. Durante el funcionamiento normal, el programa puede congelarse por un período de tiempo más corto y luego cerrarse solo. También durante el funcionamiento normal, el programa puede convertirse en una pantalla negra y reproducir repetidamente los últimos segundos de sonido (dependiendo del tamaño del búfer de datos).) que se estaba reproduciendo antes de que se bloquee en el escritorio. Otras veces puede parecer que se desencadena por una determinada acción, como cargar un área.

Los errores de bloqueo en el escritorio se consideran particularmente problemáticos para los usuarios. Dado que con frecuencia no muestran ningún mensaje de error, puede ser muy difícil rastrear el origen del problema, especialmente si las veces que ocurren y las acciones que se llevan a cabo justo antes del choque no parecen tener ningún patrón o punto en común. Una forma de localizar el origen del problema de los juegos es ejecutarlos en modo ventana. Windows Vista tiene una característica que puede ayudar a rastrear la causa de un problema de CTD cuando ocurre en cualquier programa. [ aclaración necesaria ] Windows XP también incluía una función similar. [ aclaración necesaria ]


Un kernel panic mostrado en un iMac . Esta es la forma más común de falla del sistema operativo en sistemas similares a Unix.
Una pantalla en el aeropuerto de Frankfurt que ejecuta un programa en Windows XP que se bloqueó debido a una violación de acceso de lectura de memoria
Una pantalla azul de la muerte como se muestra en Windows XP, Vista y 7
Un kernel panic como se muestra en OS X Mountain Lion