Red de conocimiento informático - Conocimiento del nombre de dominio - Excepción en la secuencia de la aplicación, se produjo una excepción de software desconocido en ox68d7295d (oxc0000409)

Excepción en la secuencia de la aplicación, se produjo una excepción de software desconocido en ox68d7295d (oxc0000409)

Las personas que utilizan sistemas operativos Windows a veces encuentran este mensaje de error: "La instrucción 0X hace referencia a la memoria 0x00000000, en la que no se puede escribir" y luego se cierra la aplicación. Si preguntas a algunos "expertos", la respuesta que obtienes suele ser un desprecio indignado como "Windows es demasiado inestable". De hecho, este error no se debe necesariamente a la inestabilidad de Windows. En este artículo analizaremos brevemente las causas comunes de este error.

1. La aplicación no pudo verificar la asignación de memoria

El programa necesita una parte de memoria para guardar datos y necesita llamar a la "función función" proporcionada por el sistema operativo para aplicar Si la asignación de memoria es exitosa, la función devuelve la dirección del área de memoria recién abierta a la aplicación, a través de la cual la aplicación puede usar la memoria. Las aplicaciones pueden utilizar esta memoria en esta dirección. Esto se denomina "asignación de memoria dinámica" y las direcciones de memoria también se denominan "punteros" en programación.

La memoria no siempre está disponible y, a veces, falla la asignación de memoria. Cuando la asignación falla, la función del sistema devuelve un valor de 0. El valor de retorno 0 no representa un puntero recién habilitado, pero el sistema notifica a la aplicación que se ha producido un error. Como aplicación, debes verificar si el valor de retorno es 0 después de cada solicitud de memoria. Si es 0, significa que ha ocurrido una falla y debes tomar algunas medidas para guardarlo, mejorando así la solidez del programa.

Si la aplicación no busca este error, "piensa" que el valor es un puntero libre a la memoria asignada y continúa usando esa memoria durante el resto de la ejecución. El área de memoria real en la dirección 0 almacena la "tabla de descriptores de interrupción" más importante del sistema informático y las aplicaciones nunca pueden usarla. En un sistema operativo sin un mecanismo de protección (como DOS), escribir datos en esta dirección provocará un bloqueo inmediato. En un sistema operativo potente como Windows, esta operación será capturada inmediatamente por el mecanismo de protección del sistema, provocando que el sistema operativo. forzar el cierre de la aplicación infractora para evitar que se expanda. Como resultado, el sistema operativo fuerza el cierre de la aplicación para evitar que el error se expanda. Esto da como resultado el error "escribir en la memoria" mencionado anteriormente, que indica que la dirección de memoria a la que se hace referencia es "0x00000000".

Hay muchos motivos por los que falla la asignación de memoria, incluida memoria insuficiente, discrepancia en la versión de la función del sistema, etc. Por lo tanto, esta falla de asignación ocurre principalmente después de que el sistema operativo se ha utilizado durante mucho tiempo, se han instalado varias aplicaciones (incluidos programas de virus que se "instalaron" inadvertidamente) y se ha modificado una gran cantidad de parámetros y archivos del sistema.

2. La aplicación refiere el puntero de memoria anormal debido a su propio error

En aplicaciones que usan asignación dinámica, a veces habrá una situación: el programa intenta leer y escribir. un bloque de memoria "debería estar" disponible, pero por alguna razón, el puntero que debería haber estado disponible dejó de ser válido. Esto podría ser que el programa "olvidó" pedirle una asignación al sistema operativo, o podría ser que el programa mismo cerró la sesión de la memoria en algún momento y "no se dio cuenta", etc. El sistema recuperará memoria. Una vez que el sistema recupera la memoria no registrada, sus derechos de acceso ya no pertenecen a la aplicación. Por lo tanto, las operaciones de lectura y escritura también activarán el mecanismo de protección del sistema. El único resultado para un programa que intenta "violar la ley" es. será cancelado y todos los recursos serán reclamados. ¡Las leyes del mundo de la informática siguen siendo mucho más efectivas y estrictas que las leyes de los humanos!

Situaciones similares son errores en el propio programa y normalmente puedes reproducir el error en una secuencia específica de operaciones. Los punteros no válidos no siempre son 0, por lo que la dirección de memoria en el mensaje de error no siempre es "0x00000000", sino algún otro número aleatorio.

Si el mensaje de error anterior aparece con frecuencia en el sistema, las siguientes sugerencias pueden resultar útiles:

1. Compruebe si hay troyanos o virus en el sistema. Estos programas a menudo modifican irresponsablemente el sistema para controlarlo, provocando anomalías en el sistema operativo. Siempre debe fortalecer su conciencia sobre la seguridad de la información y nunca sentir curiosidad por los programas ejecutables de origen desconocido.

2. Actualice el sistema operativo para que el programa de instalación del sistema operativo vuelva a copiar la versión correcta de los archivos del sistema y corrija los parámetros del sistema.

A veces puede haber errores en el propio sistema operativo, así que tenga cuidado al instalar las actualizaciones publicadas oficialmente.

3. Prueba la nueva versión de la aplicación.

4.