Mi computadora aparece al apagar: error de aplicación ravmond.exe, la memoria referenciada no se puede leer
Al ejecutar algunos programas, a veces aparecerá un mensaje de error de memoria y luego el programa se cerrará.
La memoria "0x" a la que hace referencia la instrucción "0x". Esta memoria no se puede "leer".
La memoria "0x" a la que hace referencia la instrucción "0x" no se puede "escribir".
¿Alguna vez has experimentado un fallo similar? (El contenido después de 0x puede ser diferente).
Generalmente, este fenómeno ocurre por varias razones. Una es el hardware, es decir, problemas de memoria, y la otra es el software, que tiene muchos problemas.
1. Causado por la vulnerabilidad de desbordamiento del búfer de Microsoft IE
2. Los conflictos de uso de la memoria o de la dirección de memoria virtual hacen que la ejecución del programa asigne una determinada dirección de memoria para que la use el programa. y libérelo cuando finalice el programa. Deje espacio para que lo utilicen nuevos programas. Win es un sistema multitarea. A veces, una nueva tarea comienza antes de que finalice el programa anterior. Cuánta memoria o memoria virtual se necesita para garantizar que podamos ejecutar el. ¿Trabajar tareas al mismo tiempo? Quizás Win tenga este problema. No se hace bien, por lo que este error ocurre con frecuencia. Esto generalmente ocurre después de ejecutar software o multimedia a gran escala. Este problema también puede ocurrir. con módulos de memoria inferiores
En términos generales, la posibilidad de problemas de memoria no es alta. Los aspectos principales son: el módulo de memoria está roto, la calidad de la memoria es defectuosa y hay dos marcas diferentes y capacidades de memoria diferentes. mezclado, lo que también es más probable que cause incompatibilidad. Al mismo tiempo, preste atención a los problemas de disipación de calor, especialmente después del overclocking. Puede utilizar el software MemTest para probar la memoria, lo que puede detectar minuciosamente la estabilidad de la memoria.
Si tiene memoria dual y módulos de memoria mixtos de diferentes marcas o compró memoria de segunda mano y se produce este problema, debe verificar si hay algún problema con la memoria o con otro hardware que no sea compatible. .
4. Una vulnerabilidad en el sistema Microsoft WINDOWS.
Windows especifica la dirección de memoria 0X00000000 a 0X0000ffff como el rango de direcciones para asignar punteros nulos. se considera un error. Los programas escritos en c/c generalmente no realizan una verificación estricta de errores. Cuando se usa malloc para asignar memoria y el espacio de direcciones disponible para la asignación no es suficiente, se devuelve un puntero nulo. Sin embargo, el código no verifica este tipo de error y piensa que la asignación de dirección fue exitosa, por lo que accede a la dirección 0X00000000, por lo que se produce una violación de acceso a la memoria y el proceso finaliza.
La siguiente situación ocurrirá al llenar un archivo pif compuesto de caracteres ASCII:
Un archivo pif ilegal (rellenado con el carácter ascii 'x') debe tener al menos 369 bytes antes del El sistema lo considera. Solo si es un archivo pif legal se mostrará con el ícono pif y habrá contenido como "programa, fuente, memoria, pantalla" en las propiedades. Y solo cuando el tamaño no sea pif. El archivo tiene 369 bytes, verifique las propiedades " Al visualizar la página "Programa" de un archivo pif ilegal de más de 369 bytes, no se producirá ningún error de programa, incluso si tiene 370 bytes. Al visualizar la página "Programa" de las propiedades de un archivo pif ilegal de más de 369 bytes, Explorer cometerá un error y mostrará: '***' La memoria '***' a la que hace referencia la instrucción no se puede 'leer'. El problema radica en la dirección hexadecimal del archivo pif. :
0x00000181[0x87]0x00000182[0x01] and
0x00000231[0xC3]0x00000232[0x02]
Incluso si es un archivo pif legal, siempre y cuando a medida que se cambia cualquiera de estos cuatro lugares, se producirá un error en el programa. Los valores de 0x00000181 y 0x00000182 se cambian a [0xFF][0xFF], entonces cualquier cambio en otras direcciones
no causará. errores.
5. Es posible que el servicio Apache no se instale e inicie correctamente; cambie OracleOraHomeXXHTTPServer en el servicio para detenerlo
6. La aplicación no verifica el error de asignación de memoria.
p>
Cuando un programa necesita una porción de memoria para guardar datos, 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 devolverá la dirección. del área de memoria recién abierta al programa de aplicación. La aplicación puede utilizar 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 el "puntero" en la programación.
La memoria no siempre está disponible y es inagotable y, en ocasiones, la asignación de memoria falla. Cuando la asignación falla, la función del sistema devolverá un valor 0. En este momento, el valor de retorno "0" ya no representa el puntero recién habilitado, sino una notificación enviada por el sistema a la aplicación, informándole que se ha producido un error. ocurrió. Como aplicación, debe verificar si el valor de retorno es 0 después de cada solicitud de memoria. Si es así, significa que ha ocurrido una falla y se deben tomar algunas medidas para salvarla. Esto mejora la "robustez" del programa.
Si la aplicación no comprueba este error, pensará que este valor es un puntero utilizable que se le ha asignado según la "inercia del pensamiento" y continuará utilizando esta memoria en ejecuciones posteriores. 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 no pueden utilizarla en absoluto. En un sistema operativo sin un mecanismo de protección (como DOS), escribir datos en esta dirección provocará una falla inmediata. En un sistema operativo robusto, como Windows, esta operación será capturada inmediatamente por el mecanismo de protección del sistema y el resultado. es El sistema operativo cierra a la fuerza la aplicación errónea para evitar que el error se propague. En este momento, aparecerá el error de "memoria de escritura" mencionado anteriormente, que indica que la dirección de memoria a la que se hace referencia es "0x00000000".
Hay muchas razones por las que falla la asignación de memoria. La memoria insuficiente, las versiones no coincidentes de las funciones del sistema, etc., pueden tener un impacto. Por lo tanto, este tipo de falla en la asignación es más común después de que el sistema operativo se ha utilizado durante mucho tiempo, después de que se han instalado una variedad de aplicaciones (incluidos programas de virus que se "instalaron" inadvertidamente) y una gran cantidad de parámetros y parámetros del sistema. Los archivos del sistema han sido modificados.
7. La aplicación hace referencia a un puntero de memoria anormal debido a su propio error.
En aplicaciones que usan asignación dinámica, a veces habrá una situación como esta: el programa intenta leer y escriba un bloque de memoria "Debería estar disponible", pero por alguna razón, el puntero disponible esperado ha caducado. Puede ser que "se haya olvidado" de solicitar la asignación al sistema operativo, o puede ser que el propio programa haya cerrado sesión en esta memoria en algún momento sin "prestar atención", etc. El sistema recupera la memoria no registrada y 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 destino de un programa que intenta ser "ilegal" es ser terminado. por la operación y todos los recursos serán recuperados. ¡Las leyes en el mundo de la informática siguen siendo mucho más efectivas y estrictas que las de los humanos!
Situaciones como esta son todos errores en el programa en sí 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 otros números aleatorios.
------------------------------------------- ----- ---------------
Si el sistema muestra con frecuencia los mensajes de error mencionados anteriormente, 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 y deje 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, el propio sistema operativo puede tener errores, así que asegúrese de instalar el programa de actualización oficial.
3. Prueba la nueva versión de la aplicación.
4. Elimine y luego vuelva a crear los archivos en la carpeta Winnt\System32\Wbem\Repository:
Haga clic derecho en Mi PC en el escritorio y haga clic en Administrar.
En Servicios y aplicaciones, haga clic en Servicios y luego cierre y detenga el servicio Instrumental de administración de Windows.
Elimine todos los archivos en la carpeta Winnt\System32\Wbem\Repository. (Cree una copia de seguridad de estos archivos antes de eliminarlos).
Abra Servicios y aplicaciones, haga clic en Servicios y luego abra e inicie el servicio Instrumental de administración de Windows. Cuando se reinicie el servicio, estos archivos se recrearán según la información proporcionada en la siguiente clave de registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM\Autorecover MOFs
[url = /viewthread.php?tid=627383amp; fpage=1amp; resaltado=]/viewthread.php?tid=627383amp; fpage=1amp; resaltado=[/url]
Te daré algunos ejemplos a continuación. Análisis de todos:
Ejemplo 1: Abra el navegador IE o en unos minutos aparecerá la memoria "0x00000000" a la que hace referencia la instrucción "0x70dcf39f". Esta memoria no se puede "leer". Para finalizar el programa, haga clic en el cuadro de mensaje "Aceptar". Después de hacer clic en "Aceptar", aparece el cuadro de mensaje "Se ha producido un error interno y una de las ventanas que está utilizando está a punto de cerrarse". Después de cerrar el mensaje, IE. navegador El dispositivo también está apagado. Solución: repare o actualice el navegador IE y aplique un parche. Uno de los métodos de reparación que he visto es la actualización automática de Win2000, es decir, actualizar de Win2000 a Win2000. De hecho, este método consiste en restaurar el sistema a su estado inicial. Por ejemplo, si su IE se actualiza a 6.0, será reemplazado por IE5.0 después de la actualización.
Ejemplo 2: Haga doble clic en el archivo "AutoRun.exe" en el CD en Windows XP y se mostrará la memoria "0x00000078" a la que hace referencia el comando "0x77f745cc". La memoria no se puede "escribir". Para finalizar el programa, haga clic en "Aceptar", pero se ejecuta normalmente en Windows 98. Solución: Esto puede ser un problema de compatibilidad del sistema. Para sistemas WinXP, haga clic con el botón derecho en el archivo "AutoRun.exe", propiedades, compatibilidad, seleccione el elemento "Ejecutar este programa en modo de compatibilidad" y seleccione "Windows 98/Me". Si win2000 está parcheado con SP, simplemente inicie y ejecute, ingrese: regsvr32 c:\winnt\apppatch\slayerui.dll. También aparecerán las opciones de clic derecho, propiedades y compatibilidad.
Ejemplo 3: Se produce un error cuando se cierra RealOne Gold. Se ha utilizado normalmente antes, pero recientemente, la memoria "0xffffffff" a la que hace referencia el comando "0xffffffff" aparece cada vez que se cierra. La memoria no se puede "leer". Solución: Este problema ocurrirá cuando RealOne esté cerrado cuando el método de entrada utilizado sea Microsoft Pinyin Input Method 2003 y la barra de idioma esté oculta (no hay problema cuando no esté oculta). Por lo tanto, se puede mostrar la barra de idioma o cualquier otro método de entrada. se muestra antes de cerrar RealOne como método de entrada actual para resolver este problema.
Ejemplo 4: My Hero Super Jieba no se puede jugar desde que se conectó. Aparece "0x060692f6" (cada cambio) cada vez. La memoria "0xff000011" a la que hace referencia el comando no se puede "leer" ni finalizar. Haga clic en Aceptar para continuar. Solución: intente reinstalar Hero Super Jieba. Si el problema persiste después de reinstalar, vaya al sitio web oficial para descargar la versión correspondiente del parche e inténtelo. Si todavía no funciona, tengo que probar con otro reproductor.
Ejemplo 5: Haga doble clic en el acceso directo de un juego. El comando "0x77f5cd0" hace referencia a la memoria "0xffffffff". La memoria no se puede "leer" y se genera un error en el programa Client.dat. Solución: reinstale el controlador más reciente para la tarjeta gráfica, luego descargue e instale DirectX9.0.
Ejemplo 6: Un amigo envió un mensaje y apareció un mensaje de error en mi computadora: la memoria "0x00303033" a la que hace referencia el comando "0x772b548f" no se puede "escribir", y luego QQ se desconectó automáticamente. Y cuando volví a abrir QQ, encontré más de una docena de mensajes enviados por él. Solución: Este es un ERROR de la otra parte al usar QQ, enviar códigos especiales y cometer errores de QQ. Siempre que aplique un parche o actualice a la última versión, todo estará bien.