He desactivado el archivo de página en mi sistema (el disco duro es demasiado lento, no puedo comprar uno nuevo de inmediato, no puedo mover el archivo de página a otra partición). Cuando veo en el Monitor de recursos, usando aplicaciones que demandan memoria, el sistema muestra que la carga de confirmación está casi 100% llena. De hecho, si sigo exigiendo más memoria, los programas comienzan a fallar a medida que la carga de compromiso efectivamente alcanza el 100%.
Mientras tanto, el sistema dice que estoy usando solo 50-60% de memoria física y tengo alrededor de 1GB de memoria disponible (gratis + en espera).
Si commit charge es la memoria total realmente solicitada, ¿por qué el sistema dice que hay tanta memoria libre? ¿La memoria física no está siendo utilizada por Windows? ¿Está mal el gráfico de memoria? ¿Me estoy perdiendo de algo?
fuente
Respuestas:
Quedarse sin límite de confirmación mientras todavía tiene mucha RAM disponible no es nada inusual. Ni el límite de compromiso ni el cargo de compromiso están directamente relacionados con la RAM libre o disponible.
El límite de confirmación = tamaño de archivo de paginación actual + tamaño de RAM.
Como no tiene un archivo de página, el límite de confirmación es menor de lo que sería si tuviera un archivo de página. No importa cuánto RAM esté libre . Para el límite de confirmación, solo importa la cantidad de RAM instalada . Puede quedarse sin límite de compromiso incluso con el 90% de su RAM libre o disponible.
La carga de compromiso es un recuento de memoria virtual, no física. Supongamos que mi programa solicita 2 GB comprometidos, pero luego solo accede a .5 GB. Los 1,5 GB restantes nunca tienen fallas, nunca se asignan a RAM, por lo que el uso de RAM no refleja los 2 GB, solo .5 GB.
Aún así, el "compromiso del sistema" aumenta en 2 GB porque el sistema se ha "comprometido" de que habrá un lugar para guardar mis 2 GB, en caso de que realmente lo necesite todo. El hecho de que en cualquier ejecución del programa no intente usarlo todo necesariamente no ayuda. Pedí 2 GB y el regreso exitoso de esa llamada me dice que el sistema operativo "se comprometió", es decir, prometió, que puedo usar tanto espacio de direcciones virtuales. El sistema operativo no puede hacer esa promesa a menos que haya algún lugar para mantenerlo todo.
Entonces: vuelva a colocar su archivo de página, agregue más RAM o ejecute menos cosas a la vez. O alguna combinación de los tres. Estas son sus únicas opciones para evitar los errores de "poca memoria" y "falta de memoria".
Vea también mis respuestas aquí (más tiempo) y aquí (mucho más tiempo).
fuente
Como lo ilustra la prueba de asignación de memoria en el artículo en http://brandonlive.com/2010/02/21/measuring-memory-usage-in-windows-7/ , Windows es un tipo de sistema que fallaría en una asignación de memoria grande si dicha asignación, junto con todas las asignaciones anteriores (el concepto que Microsoft llama como "compromiso"), llevaría el "compromiso" total por encima de la suma de la memoria física y la suma de todos los archivos de página (intercambio).
Tenga en cuenta que una asignación por sí sola no utiliza ninguna memoria real (ni física ni de intercambio), antes de que tenga lugar una lectura o escritura dentro del espacio de direcciones virtuales del proceso para la asignación mencionada anteriormente. Por ejemplo, una asignación de 2GB por sí sola solo afectaría los números de "Confirmación" (en Windows 7 talk), dejando solo "Memoria física" (hasta que ocurra la lectura / escritura dentro de dicha asignación).
En lo que respecta al diseño del sistema operativo, el enfoque alternativo sería permitir siempre la asignación de cualquier tamaño (a menos que la memoria disponible ya esté completamente agotada), y luego dejar que las aplicaciones fallen en la lectura / escritura. Consulte /cs/42877/when-theres-no-memory-should-malloc-or-read-write-fail para obtener más detalles.
fuente
La memoria disponible no es lo que crees que sería. No se utiliza sin ser realmente un caché de archivos de procesos terminados recientemente o procesos recortados que se han visto obligados a ceder algo de memoria a otros procesos. Podrían ser llamados de nuevo a su propósito original. ver para más detalles.
http://support.microsoft.com/kb/312628
Como no tener un archivo de página, esto es muy malo. Windows se degrada mal sin uno. Recuerde que incluso los archivos ejecutables se usan como archivos de intercambio cuando no hay un archivo de página. Incluso si la unidad es lenta, es mejor tener un archivo de página hasta que obtenga de 8 a 16 gigas de memoria. Algunas personas piensan que incluso Windows 7 puede ejecutarse sin uno entonces.
Regularmente le doy un impulso a la máquina vieja haciendo algunas cosas. Limpie el disco duro tanto como sea posible. Copie todo lo que pueda eliminar temporalmente de la unidad en una copia de seguridad. Eliminar aplicaciones que no necesita. Eliminar aplicaciones puede reinstalar.
Cuando todo eso esté hecho, desfragmente su disco duro. En ese momento, recrea el archivo de tu página. Será lo más cercano posible al frente de la unidad. Cree un tamaño fijo de aproximadamente 1,5 veces la memoria. Esa es mi regla, generalmente he visto tamaños entre 1 y 3 veces de memoria. Esto le dará un ligero aumento en la velocidad sobre los lugares habituales donde se colocaría.
Yo uso el defrager auslogico es gratis (anuncios para más herramientas sin embargo). Hay otros que hacen esto también. Echa un vistazo a los defragers en portableapps.com. Optimiza el disco colocando archivos a los que se accedió recientemente cerca de la parte frontal de la unidad para un acceso más rápido. Muestra dónde se coloca el archivo de página para que pueda ver si lo movió al 25% superior de la unidad.
Después de eso, reinstale las aplicaciones y vuelva a copiar sus datos.
Yo diría que obtienes un 10 o 20% de impulso. Pero el valor principal es que muchas de las dudas desaparecen para una experiencia más fluida.
fuente