logo

¿Qué es la memoria virtual en el sistema operativo (sistema operativo)?

La memoria virtual es un esquema de almacenamiento que proporciona al usuario la ilusión de tener una memoria principal muy grande. Esto se hace tratando una parte de la memoria secundaria como memoria principal.

En este esquema, el usuario puede cargar procesos de mayor tamaño que la memoria principal disponible teniendo la ilusión de que la memoria está disponible para cargar el proceso.

En lugar de cargar un gran proceso en la memoria principal, el sistema operativo carga las diferentes partes de más de un proceso en la memoria principal.

Al hacer esto, aumentará el grado de multiprogramación y, por lo tanto, también aumentará la utilización de la CPU.

¿Cómo funciona la memoria virtual?

En el mundo moderno, la memoria virtual se ha vuelto bastante común hoy en día. En este esquema, siempre que es necesario cargar algunas páginas en la memoria principal para la ejecución y la memoria no está disponible para tantas páginas, entonces, en ese caso, en lugar de impedir que las páginas entren en la memoria principal, el sistema operativo busca el área de RAM que menos se usa en los últimos tiempos o que no está referenciada y cópiela en la memoria secundaria para hacer espacio para las nuevas páginas en la memoria principal.

Dado que todo este procedimiento ocurre automáticamente, hace que la computadora sienta que tiene RAM ilimitada.

Paginación por demanda

La paginación por demanda es un método popular de gestión de memoria virtual. En la paginación bajo demanda, las páginas de un proceso que se utilizan menos se almacenan en la memoria secundaria.

Una página se copia a la memoria principal cuando se realiza una solicitud o se produce un error de página. Existen varios algoritmos de reemplazo de páginas que se utilizan para determinar las páginas que se reemplazarán. Hablaremos de cada uno de ellos más adelante en detalle.

Instantánea de un sistema de gestión de memoria virtual

Supongamos que 2 procesos, P1 y P2, contienen 4 páginas cada uno. El tamaño de cada página es de 1 KB. La memoria principal contiene 8 cuadros de 1 KB cada uno. El sistema operativo reside en las dos primeras particiones. En la tercera partición, 1calleLa página de P1 se almacena y los otros cuadros también se muestran llenos de las diferentes páginas de procesos en la memoria principal.

Las tablas de páginas de ambas páginas tienen un tamaño de 1 KB cada una y, por lo tanto, pueden caber en un marco cada una. Las tablas de páginas de ambos procesos contienen diversa información que también se muestra en la imagen.

La CPU contiene un registro que contiene la dirección base de la tabla de páginas que es 5 en el caso de P1 y 7 en el caso de P2. Esta dirección base de la tabla de páginas se agregará al número de página de la dirección lógica cuando se trate de acceder a la entrada correspondiente real.


Memoria virtual del sistema operativo

Ventajas de la memoria virtual

  1. Se incrementará el grado de Multiprogramación.
  2. El usuario puede ejecutar aplicaciones grandes con menos RAM real.
  3. No es necesario comprar más memorias RAM.

Desventajas de la memoria virtual

  1. El sistema se vuelve más lento ya que el intercambio lleva tiempo.
  2. Se necesita más tiempo para cambiar entre aplicaciones.
  3. El usuario dispondrá de menor espacio en el disco duro para su uso.