Red de conocimiento informático - Problemas con los teléfonos móviles - SoftManager.exe.-Error de aplicación

SoftManager.exe.-Error de aplicación

Las personas que utilizan el sistema operativo Windows a veces encuentran este mensaje de error: "La memoria en 0x00000000 a la que hace referencia la instrucción 0x no se puede leer ni escribir", y luego se cierra la aplicación. Si pide consejo a algunos "expertos", la respuesta que obtiene suele ser indignación y desdén, como "Windows es muy inestable". De hecho, este error no es necesariamente causado por la inestabilidad de Windows. Este artículo analizará brevemente las causas comunes de este error.

La aplicación no verificó el error de asignación de memoria

Cuando el programa necesita una parte de la 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, y el programa de 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 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 de 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. ha ocurrido. 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.

上篇: Un episodio o tema musical de la serie "Regreso al futuro" 下篇: Qué frameworks son mejores para PythonLos 15 frameworks de código abierto de Python más populares compilados desde GitHub. Estos marcos incluyen E/S de eventos, OLAP, desarrollo web, comunicaciones de red de alto rendimiento, pruebas, rastreadores y más. Django: marco de desarrollo de aplicaciones web Python Django debería ser el marco GAE de Python más famoso e incluso Erlang tiene marcos influenciados por él. Django se está moviendo en una dirección amplia y completa. Es más famoso por su backend de administración totalmente automatizado: solo necesita usar ORM y hacer una definición de objeto simple, y puede generar automáticamente una estructura de base de datos y un backend de administración con todas las funciones. . Diesel: marco de E/S de eventos basado en Greenlet. Diesel proporciona una API sencilla para escribir clientes y servidores de red. Soporta TCP y UDP. Flask: un marco de aplicación web liviano escrito en Python Flask es un marco de aplicación web liviano escrito en Python. Basado en el kit de herramientas WerkzeugWSGI y el motor de plantillas Jinja2. Flask también se denomina "microframework" porque utiliza un núcleo simple y agrega funcionalidad adicional a través de extensiones. Flask no tiene una base de datos predeterminada ni una herramienta de validación de formularios. Cubos: marco ligero de Python OLAPCubes es un marco ligero de Python que contiene herramientas para OLAP, análisis de datos multidimensionales y exploración de datos agregados: marco ligero de Python para crear mapas vectoriales Kartograph es un marco ligero de Python para crear mapas vectoriales Biblioteca Python. Kartograph.py todavía está en versión beta, puedes probarlo en un entorno virtualenv. Pulsar: un marco de concurrencia basado en eventos para Python Pulsar es un marco de concurrencia basado en eventos. Con Pulsar, puede escribir un marco que ejecute una o más actividades en diferentes procesos o subprocesos: Falcon: creación de alto rendimiento para API de nube y aplicaciones web. backends Marco de Python Falcon es un marco de Python de alto rendimiento para crear API en la nube que fomenta el uso del estilo arquitectónico REST para realizar la mayor cantidad de trabajo posible con el menor esfuerzo posible. Dpark: la versión Python de Spark Dpark es un clon de Python de Spark. Es un marco informático distribuido de Python que puede implementar fácilmente procesamiento de datos a gran escala y cálculos iterativos. Dpark es implementado por Douban. La mayor parte del análisis de datos en Douban se completa con Dpark y se vuelve cada vez más complejo. Buildbot: Buildbot: marco de prueba de integración continua basado en Python Buildbot es un marco de código abierto que automatiza el proceso de creación, prueba y lanzamiento de software. Siempre que hay un cambio en el código, el servidor requiere que los clientes en diferentes plataformas creen y prueben el código inmediatamente, y recopila e informa los resultados de la compilación y las pruebas de diferentes plataformas: Zerorpc: un marco RPC distribuido de alto rendimiento basado en ZeroMQ ZeroMQ es un marco RPC distribuido de alto rendimiento basado en la implementación del Protocolo de llamada a procedimiento remoto (RPC) desarrollado por ZeroMQ y MessagePack. Zerorpc y Zerorpc que utilizan ServiceAPI se denominan zeroservices. Zerorpc se puede llamar mediante programación o desde la línea de comando. Bottle: Micro Python Web Framework Bottle es un framework web de micro Python simple y eficiente que sigue WSGI. Se dice que es mini porque tiene un solo archivo y no depende de ningún módulo de terceros, excepto la biblioteca estándar de Python.