memory-management - solucion - windows 10 stop error memory management
¿Qué es la paliza? ¿Por qué ocurre? (9)
En los sistemas operativos que implementan un espacio de memoria virtual, los programas asignan memoria desde un espacio de direcciones que puede ser mucho mayor que la cantidad real de RAM que posee el sistema. El sistema operativo es responsable de decidir qué programas "memoria" se encuentran en la RAM real. Necesita un lugar para mantener las cosas mientras están "fuera". Esto es lo que se llama "espacio de intercambio", ya que el sistema operativo está intercambiando cosas dentro y fuera según sea necesario. Cuando se está produciendo esta actividad de intercambio de tal manera que es el principal consumidor del tiempo de CPU, entonces usted está batallando efectivamente. Para evitarlo, ejecute menos programas, escriba programas que usen la memoria de manera más eficiente, agregue RAM al sistema o incluso aumente el tamaño del intercambio.
Se produce un error de página cuando el acceso a la memoria solicitado (desde el espacio de direcciones virtuales) no se asigna a algo que se encuentra en la RAM. A continuación, se debe enviar una página desde la RAM al intercambio, de modo que la nueva página solicitada se pueda llevar del intercambio a la RAM. Como puede imaginar, 2 E / S de disco para una lectura de RAM tienden a ser un rendimiento bastante pobre.
En un sistema operativo, la paliza es algo relacionado con la gestión de la memoria. ¿Por qué ocurre la paliza? ¿Cómo podemos prevenirlo?
Revisé Wikipedia (pero necesito un entendimiento simple).
En un sistema de memoria virtual, la paliza es el intercambio excesivo de páginas de datos entre la memoria y el disco duro, lo que hace que la aplicación responda más lentamente. La función de memoria virtual rastrea el uso de la página y mantiene las páginas de uso frecuente en la memoria tanto como sea posible.
Golpear es un estado en el que nuestra CPU realiza menos trabajo "productivo" y "cambia" más. La CPU está ocupada en el intercambio de páginas, tanto que no puede responder al programa del usuario tanto como se requiere. Por qué ocurre: En nuestro sistema, Thrashing ocurre cuando hay demasiadas páginas en nuestra memoria, y cada página hace referencia a otra página. La memoria real reduce la capacidad de tener todas las páginas en ella, por lo que utiliza la "memoria virtual". Cuando cada página en ejecución exige que la página que no se encuentra actualmente en la memoria real (RAM), coloque algunas páginas en la memoria virtual y ajuste la página requerida en la RAM. Si la CPU está tan ocupada en hacer esta tarea, se produce una paliza. Para resolverlo, puede hacer cualquiera de las siguientes sugerencias: * Aumente la cantidad de RAM en la computadora. * Disminuye el número de programas que se ejecutan en la computadora. * Ajustar el tamaño del archivo de intercambio.
La memoria es un problema que surge cuando la memoria se asigna más que la memoria física y no está disponible en el sistema. Para saber qué está golpeando, primero debe tener en cuenta el intercambio y el fallo de la página. Así que comencemos con esos conceptos: Error de página e intercambio: - Se produce un error de página cuando el acceso a la memoria solicitado (desde el espacio de direcciones virtuales) no se asigna a algo que está en la RAM. A continuación, se debe enviar una página desde la RAM al intercambio, de modo que la nueva página solicitada se pueda llevar del intercambio a la RAM. Esto da como resultado 2 E / S de disco. Ahora es posible que sepa que las E / S del disco son muy lentas en comparación con el acceso a la memoria.
Para saber qué es la memoria paliza, consulte el siguiente enlace:
http://www.firmcodes.com/memory-thrashing-in-operating-system/
Las direcciones lógicas son generadas por la CPU que, de hecho, no son una ubicación de memoria real, pero un proceso cree que es la ubicación de la memoria real. Un proceso completo se divide en diferentes partes que se almacenan en páginas en la memoria lógica pero solo en partes secundarias o solo a algunas páginas se les asigna memoria real para la ejecución que se requieren en ese momento, mientras que otras páginas residen en la memoria lógica y no se asignan Una dirección física. Ahora, si se requiere que otras páginas se carguen y no hay suficiente marco para asignarlo, se produce una interrupción que causa un fallo en la página y se necesita un algoritmo de reemplazo para eliminar algunas páginas de los marcos y cargar la página actual requerida.
Ahora suponga que no hay suficientes marcos para cumplir con los requisitos de todas las páginas necesarias para cargar. Luego, el marco eliminado volverá a exigir que se cargue y nuevamente se producirá un error de página. Esto va en bucle. Mientras tanto, dado que el proceso no puede ejecutarse, la utilización de la CPU será baja y el despachador cargará más procesos en la CPU, lo que degrada aún más el escenario.
Este proceso se conoce como paliza. La sacudida ocurre generalmente cuando no se asignan suficientes marcos a un proceso de lo necesario.
Maneras de prevenir la paliza:
- instruir al programador de mediano plazo para intercambiar parte del proceso y recuperarse de las palizas
- indicando al despachador que no cargue más procesos después de un umbral
Sé que esta pregunta se hizo hace mucho tiempo, pero solo quería compartir información con otros.
El término thrashing en realidad está relacionado con la memoria virtual, que un sistema operativo usa para proporcionar una cantidad extra de memoria o espacio para los procesos. Lo que realmente significa el término trillamiento es que, cuando el proceso está listo para ser cargado en la memoria, solo algunas o algunas páginas (partes) del proceso se cargan en la memoria física real, y el resto está en el intercambio. -espacio (la memoria virtual o el disco).
Ahora, si la página que el proceso debe ejecutar, no está cargada en la memoria, genera un error de página y le pide al sistema operativo que reemplace la página. Aquí el proceso reanuda su ejecución.
Algunas veces, el proceso requiere nuevamente la página reemplazada por el sistema operativo, por lo tanto, nuevamente le pide al sistema operativo que la cargue en la memoria, reemplazando alguna otra página y así sucesivamente. ya que el proceso no se está ejecutando, por lo tanto, la utilización de la CPU es 0, sin embargo, la lectura y escritura del disco están en su punto máximo.
Nuestros sistemas operativos están diseñados de tal manera que cuando la utilización de la CPU disminuye, inicia otro proceso en la memoria. El siguiente proceso tiene que esperar ahora porque el primer proceso está ocupado. Nuevamente, como la CPU no se está utilizando o es 0 (en nuestro ejemplo), el sistema operativo inicia otro proceso, y sucede lo mismo.
Por lo tanto, la utilización de la CPU se reduce a un nivel mínimo extremo, mientras que los procesos están ocupados leyendo y escribiendo (cambiando las páginas). Esto se llama paliza!
Si quieres exactamente lo que está golpeando bien ...
Si el uso de la CPU es 0 (inactivo), esta situación se denomina Thrashing.
Ocurrirá en el momento de la situación de interbloqueo. Por lo tanto, en ese momento, ningún recurso (como impresoras, etc.) utilizará la CPU, por lo que estará inactivo, por lo que podremos llamar a esta situación como Thrashing.
eso es todo sobre Thrashing :)
Thrashing It es un estado en el que nuestra CPU realiza un trabajo ''productivo'' y ''intercambia'' más. La CPU está ocupada en el intercambio de páginas, tanto que no puede responder al programa del usuario tanto como se requiere. Por qué ocurre En nuestro sistema, el bloqueo se produce cuando hay demasiadas páginas en nuestra memoria, y cada página hace referencia a otra página. La memoria real reduce la capacidad de tener todas las páginas en ella, por lo que utiliza la "memoria virtual". Cuando cada página en ejecución exige que la página que no se encuentra actualmente en la memoria real (RAM), coloque algunas páginas en la memoria virtual y ajuste la página requerida en la RAM. Si la CPU está tan ocupada en hacer esta tarea, se produce una paliza.
El sistema operativo utiliza el concepto de memoria virtual para proporcionar memoria para procesar en momentos en que la memoria principal se llena y no tiene espacio para proporcionar espacio a los procesos entrantes. Este mecanismo de uso de virtual memory
como memoria sustituta es abstracto y el usuario no lo hace. No puede saber lo que está pasando. Le parece al usuario que el nuevo proceso que él / ella ejecutó ahora tiene espacio en la main memory
.
Por lo tanto, para acomodar los procesos entrantes en la memoria principal, los procesos inactivos que residen en la memoria principal deben trasladarse a la memoria virtual. Este movimiento de la memoria principal a la memoria virtual tiene lugar cuando ocurre una page fault
.
Ahora viene a golpear.
Si el operating system
utiliza algún tipo de page replacement algo
en el que existe una alta probabilidad de que ocurra un page fault
, se perderá gran parte del ciclo de la CPU en el intercambio de páginas entre la main memory
y virtual memory
. Esto suprime el rendimiento de la CPU. Esto El proceso de degradación en el rendimiento de la CPU debido a la aparición de un gran número de errores de página se denomina Thrashing.