Administración de memoria de Windows

La gestión de la memoria en el sistema operativo es controlar o mantener la memoria principal y transferir procesos desde la memoria primaria al disco durante la ejecución. La administración de memoria realiza un seguimiento de todas las ubicaciones de memoria, ya sea que el proceso las use o no. Determina cuánta memoria se debe asignar a cada proceso. Especifica cuánta memoria se le debe dar a cada proceso. Decide qué procesos se recordarán y cuándo. Realiza un seguimiento de cuándo se libera la memoria o cuándo se comparte y cambia el estado en consecuencia.

Administración de memoria de Windows

Microsoft Windows tiene su propio espacio de direcciones virtuales para cada proceso de 32 bits, lo que permite ver hasta 4 gigabytes de memoria. Cada proceso tiene un espacio de direcciones de 8 terabytes en Windows de 64 bits. Todos los subprocesos tienen acceso al espacio de direcciones visible del proceso. Los subprocesos, por otro lado, no tienen acceso a la memoria de otro proceso, lo que protege a un proceso de ser dañado por otro.

Arquitectura para Windows de 32 bits: la configuración automática del sistema operativo (SO) de Windows de 32 bits asigna 4 GB (232) de espacio de memoria accesible para el núcleo y los programas de usuario por igual. Con 4 GB de memoria física disponible, el núcleo recibirá 2 GB y la memoria de la aplicación recibirá 2 GB. Todos los procesos comparten el espacio de direcciones en modo kernel, pero se proporciona espacio de acceso en modo aplicación para cada proceso de usuario.

Arquitectura para Windows de 64 bits: la configuración automática del sistema operativo (SO) de Windows de 64 bits asigna hasta 16 TB (254) de espacio de memoria accesible para el kernel y los programas de usuario por igual. Como hay 16 TB de memoria real disponibles, el kernel tendrá 8 TB de espacio de dirección virtual (VA) y la memoria de la aplicación de usuario tendrá 8 TB de espacio de VA. El espacio de direcciones visible en el kernel se asigna para todos los procesos. Cada funcionalidad de 64 bits tiene su lugar, pero cada sistema de 32 bits funciona en una máquina virtual de 2 GB (Windows).

Espacio de direcciones virtuales

El espacio de direcciones visible del proceso es el rango de direcciones de memoria que puede usar. El área de direcciones de cada proceso es privada, y solo se puede acceder a través de otros procesos si es compartida.

Una dirección virtual no refleja la ubicación real de un objeto en la memoria; en cambio, el sistema almacena una tabla para cada proceso, que es una estructura de datos interna que convierte las direcciones visibles en direcciones locales. El programa convierte la dirección virtual en una dirección local cada vez que la string hace referencia a ella.

El área de direcciones virtuales de Windows se divide en dos partes: una para el uso del proceso y la otra para el uso del sistema.

Funciones de memoria virtual

Un proceso puede alterar o determinar el estado de las páginas en su espacio de direcciones virtuales usando funciones de memoria virtual .

El ancho del espacio de direcciones visible está reservado para el proceso. Si bien el ahorro de espacio de direcciones no proporciona almacenamiento de material, evita que el alcance utilice otros procesos de uso compartido. No afecta otros espacios de direcciones activos para otros procesos. El almacenamiento de páginas reduce el uso innecesario de almacenamiento virtual al tiempo que permite el proceso de reservar parte de su espacio de direcciones para la estructura de datos flexible. Según sea necesario, el procedimiento puede proporcionar un depósito físico para esta área.

Proporcione un conjunto de páginas en caché en la dirección del proceso para que solo un proceso compartido pueda acceder al almacenamiento real (ya sea RAM o disco).

Para las páginas más dedicadas, especifique lectura/escritura, solo lectura o sin acceso. Esto difiere de los procedimientos generales de distribución, que a menudo proporcionan acceso de lectura/escritura a las páginas.

Libere un conjunto de páginas guardadas, haciendo que el conjunto de direcciones visibles sea accesible para las siguientes acciones de uso compartido del proceso de llamada.

Podemos retirar un grupo de páginas comprometidas, liberando almacenamiento portátil que se puede asignar a cualquier proceso en el futuro.

Para evitar que el programa cambie de página en el archivo, bloquee una o más páginas de memoria vinculadas a la memoria virtual (RAM). Encuentre información sobre un conjunto de páginas en un proceso de llamada o el espacio de direcciones de un proceso específico. Puede cambiar la protección de acceso de un conjunto de páginas vinculadas a la dirección física del proceso de llamada.

Funciones de montón

El sistema proporciona un montón predeterminado para cada proceso. Los montones privados pueden ayudar a que las aplicaciones que realizan asignaciones frecuentes desde el montón funcionen mejor. Un montón privado es un bloque de una o más páginas en el espacio de direcciones del proceso de llamada. Después de construir el montón privado, el proceso administra la memoria en él a través de operaciones como HeapAlloc y HeapFree.

Asignación de archivos

La asociación del contenido del archivo con una parte del espacio de direcciones visible en el proceso se conoce como mapa de archivos. Para rastrear esta relación, el sistema crea un creador de mapas de archivos (también conocido como objeto de categoría). La vista de archivo es el área de direcciones físicas que se utiliza para el proceso de acceso al contenido del archivo. El proceso puede utilizar tanto secuencias de entrada como de salida (E/S) gracias al mapa de archivos. También permite que el proceso funcione eficazmente con archivos de datos de gran tamaño, como sitios web, sin necesidad de asignar todo el archivo a la memoria. Los archivos con un mapa de memoria se pueden usar con muchos procesos para intercambiar datos.

Publicación traducida automáticamente

Artículo escrito por adichavan095 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *