Red de conocimiento informático - Conocimiento del nombre de dominio - ¡Error en la aplicación! La instrucción 0x7c9309f9 hace referencia a la memoria 0x 000000001. No se puede leer la memoria.

¡Error en la aplicación! La instrucción 0x7c9309f9 hace referencia a la memoria 0x 000000001. No se puede leer la memoria.

La memoria no se puede leer ni escribir, esto sucede ocasionalmente. Está bien, no te preocupes. Simplemente haga clic en "Cancelar". Es peligroso si aparece con frecuencia, de lo contrario tendrás que reinstalar el sistema.

Las personas que usan sistemas operativos Windows a veces encuentran mensajes de error como "La instrucción hace referencia a la memoria 0x00000000 y no se puede escribir", y luego cierran la aplicación. Si les pregunta a algunos "expertos", la respuesta a menudo es. Indignación y desdén como "Windows es tan inestable". De hecho, este error no se debe necesariamente a la inestabilidad de Windows

En primer lugar, la asignación de memoria

Cuando un programa necesita una porción de memoria para almacenar datos, necesita llamar a la "función" proporcionada por el sistema operativo para aplicarla. Si la asignación de memoria es exitosa, la función devolverá la dirección de la memoria recién abierta. Para la aplicación, la aplicación puede usar esta memoria a través de esta dirección. Esto es "asignación de memoria dinámica", y la dirección de memoria también es un "puntero" en la programación.

La memoria no siempre está disponible. inagotable A veces, la asignación de memoria fallará. Cuando la asignación falla, la función del sistema devolverá el valor 0. En este momento, el valor de retorno "0" ya no indica el puntero recién habilitado, sino una notificación enviada por el sistema a la aplicación. indica que algo ha sucedido Error Como aplicación, debe verificar si el valor de retorno es 0 después de cada aplicación de memoria. Si es así, significa que hay una falla y se deben tomar algunas medidas para mejorar la "robustez". del programa

Si la aplicación no comprueba este error, pensará que este valor es un puntero gratuito que se le ha asignado en función de la "inercia del pensamiento" y continuará utilizando esta memoria en operaciones posteriores. El área de almacenamiento de direcciones 0 reales se almacena en el sistema informático. Las aplicaciones no pueden utilizar la "tabla de descriptores de interrupción" más importante. En un sistema operativo sin mecanismo de protección (como DOS), escribir datos en esta dirección provocará. un bloqueo inmediato, mientras que en un sistema operativo robusto, escribir datos en esta dirección provocará un bloqueo inmediato. En Windows, por ejemplo, esta operación será capturada inmediatamente por el mecanismo de protección del sistema. Como resultado, el sistema operativo se cerrará a la fuerza. la aplicación incorrecta para evitar que su error se expanda. En este momento, aparecerá el error de "memoria de escritura" mencionado anteriormente, lo que indica que la dirección de memoria a la que se hace referencia es "0x00000000". Error en la asignación de memoria, como memoria insuficiente, discrepancia en la versión de la función del sistema, etc. Por lo tanto, este tipo de error en la asignación es más común cuando el sistema operativo se ha utilizado durante mucho tiempo y se han instalado una variedad de aplicaciones (incluidos virus instalados involuntariamente). programas), después de una gran cantidad de cambios en los parámetros y archivos del sistema

El segundo es que la aplicación hace referencia a punteros de memoria anormales debido a su propio ERROR

Cuando se utiliza la asignación dinámica. En las aplicaciones, a veces sucede que el programa intenta leer o escribir una memoria que "debería estar disponible", pero por alguna razón, este puntero disponible esperado ha fallado, tal vez por "olvidarse" de pedirle al sistema operativo su asignación. También puede ser que el propio programa haya cancelado esta memoria en algún momento, "sin prestar atención", etc. La memoria no registrada es reclamada por el sistema y sus derechos de acceso ya no pertenecen a la aplicación, por lo que las operaciones de lectura y escritura también lo harán. activar el mecanismo de protección del sistema El único resultado final de un programa que intenta "violar la ley" es que la operación lo detenga y se recuperen todos los recursos. ¡Las leyes del mundo de la informática siguen siendo mucho más efectivas y estrictas que las de los humanos! Situaciones como ésta son errores en el propio programa y, a menudo, 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 es necesariamente "0x00000000", sino que también pueden ser otros números aleatorios.

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

1. Compruebe si hay virus troyanos en el sistema. Para controlar el sistema, estos programas a menudo modifican el sistema de forma irresponsable, 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 pueda copiar la versión correcta de los archivos del sistema y los parámetros correctos del sistema. A veces, el propio sistema operativo también tiene errores, así que tenga cuidado al instalar el programa de actualización oficial.

3. Pruebe nuevas versiones de la aplicación.