Resolver la memoria no puede ser un problema de lectura

  

Hay usuarios que se reflejan cuando ejecutan algunos programas, a veces aparece un mensaje de error de memoria, luego el programa se cerrará, cómo está este problema al final, primero Xiaobian lo lleva a Echar un vistazo

" 0x ???????? " La instrucción se refiere a " 0x ???????? " memory. Esta memoria no puede ser " leer ".

" 0x ???????? " La instrucción hace referencia a " 0x ???????? " memory, la memoria no se puede "escribir".

Este fenómeno tiene aspectos. Uno es el hardware, es decir, hay un problema con la memoria y el otro es el software. Esto tiene muchos problemas.

R: Primero hable sobre hardware:

En general, el hardware de la computadora no es fácil de romper. La posibilidad de problemas de memoria no es grande (a menos que su memoria sea realmente un desastre), los aspectos principales son: 1. La memoria está rota (la memoria de segunda mano es mayormente), 2. Usando la memoria con problemas de calidad, 3. El dedo dorado en la placa base es demasiado polvoriento. 4. La incompatibilidad se produce cuando se utiliza la memoria de diferentes marcas de diferentes capacidades. 5. El problema de la disipación de calor de la hiperbanda. Puede usar el software MemTest para verificar la memoria, que puede detectar completamente la estabilidad de la memoria.

Segundo, si no hay ninguno, entonces resuelva el problema desde el lado del software.

Primero, el principio: la memoria tiene un lugar para almacenar datos llamados búfer, cuando el programa coloca los datos en el búfer, necesita que el sistema operativo proporcione la "función de función" para aplicar, si la asignación de memoria es exitosa, la función La dirección del área de memoria recién creada se devuelve a la aplicación, y la aplicación puede utilizar esta memoria a través de esta dirección. Esto es "asignación de memoria dinámica", la dirección de la memoria también se encuentra en la programación "cursor". La memoria no siempre entra, es inagotable y, a veces, la asignación de memoria fallará. Cuando la asignación falla, la función del sistema devuelve un valor de 0. En este momento, el valor de retorno "" 0" no indica el cursor recién habilitado, sino una notificación enviada por el sistema a la aplicación para informar que se ha producido un error. Como una aplicación, debe verificar si el valor de retorno es 0 después de solicitar memoria cada vez. Si es así, significa que hay una falla y se deben tomar algunas medidas para guardarla, lo que mejora la "robustez" del programa. Si la aplicación no comprueba este error, seguirá la "inercia" pensando que este valor es el cursor disponible que se le asigna y continuará usando la memoria en ejecuciones posteriores. El área de memoria de dirección 0 real almacena la "tabla de descriptores de interrupción" más importante en el sistema informático, y la aplicación nunca se puede usar. En un sistema operativo sin un mecanismo de protección (como DOS), la escritura de datos en esta dirección causará un bloqueo inmediato. En un sistema operativo sólido, como Windows, esta operación será capturada inmediatamente por el mecanismo de protección del sistema. El resultado es El sistema operativo está cerrado por la fuerza por el sistema operativo para evitar que su error se expanda. En este momento, la memoria anterior no será un error de "lectura" e indicará que la dirección de memoria a la que se hace referencia es " 0x00000000 ". Hay muchas razones por las que las fallas en la asignación de memoria, la falta de memoria, la discrepancia de la versión de la función del sistema, etc. pueden tener un impacto. Por lo tanto, esta falla en la asignación es más común después de que el sistema operativo se haya utilizado durante mucho tiempo, después de instalar una variedad de aplicaciones (incluido el programa de virus instalado y por error), después de cambiar una gran cantidad de parámetros del sistema y archivos de sistema.

En las aplicaciones que usan asignación dinámica, a veces esto sucede: el programa intenta leer y escribir un pedazo de memoria que debería estar disponible, pero no sé por qué, el cursor disponible en esta expectativa ha caducado. . Puede ser que "se olvidó" del sistema operativo para solicitar la asignación, puede ser que el programa mismo haya borrado la memoria en algún momento "y no haya prestado atención", etc. La memoria no registrada es reclamada por el sistema, y ​​su derecho de acceso no pertenece a la aplicación. Por lo tanto, las operaciones de lectura y escritura también activarán el mecanismo de protección del sistema. La única terminación del programa que intenta "ilegal" debe ser finalizada por la operación, y se completa toda la recuperación. Recursos Las leyes del mundo de las computadoras son aún más efectivas y más estrictas que las de los seres humanos. Situaciones como esta son todos errores en el propio programa y, a menudo, puede reproducir errores en un orden específico de operaciones. El cursor no válido no siempre es 0, por lo que la dirección de memoria en la solicitud de error no es necesariamente "0x00000000", sino otros números aleatorios.

Primera sugerencia:

1. ¿Comprueba si hay un troyano o virus en el sistema?

2. Actualice el sistema operativo y deje que el instalador del sistema operativo vuelva a copiar la versión correcta del sistema. Archivo, parámetros correctos del sistema. A veces, el propio sistema operativo tendrá un error, preste atención a la instalación de la versión oficial del programa de actualización.

3, intenta usar la última versión oficial de la aplicación, Beta, la versión de prueba tendrá un error.

4. Elimine y vuelva a crear los archivos en la carpeta WinntSystem32WbemRepository: Haga clic con el botón derecho en Mi PC en el escritorio y haga clic en Administrar. En " Servicios y aplicaciones ", haga clic en Servicios, luego cierre y detenga el servicio de Instrumental de administración de Windows. Elimine todos los archivos en la carpeta WinntSystem32WbemRepository.
(Cree una copia de seguridad de estos archivos antes de eliminarlos). Abra " Servicios y Aplicaciones ", haga clic en Servicios, luego abra e inicie el servicio de WindowsManagementInstrumentation. Cuando se reinicia el servicio, estos archivos se recrean en función de la información proporcionada en la siguiente clave de registro: HKEY_LOCAL_MACHINESOFTWAREMicrosoftWBEMCIMOMAutorecoverMOFs

Copyright © Conocimiento de Windows All Rights Reserved