Memoria Virtual: Definiciones, tipos y funcionamiento

La tecnología informática se utiliza más que nunca en el sector empresarial, por lo que los empresarios y los empleados deben comprender el funcionamiento de los ordenadores. Los ordenadores son capaces de almacenar y ejecutar aplicaciones utilizando la memoria virtual, que es una parte crucial del sistema. Para optimizar su ordenador en términos de eficiencia y seguridad, puede entender cómo funciona la memoria virtual. Es posible que pueda mantener la seguridad de su trabajo y el funcionamiento óptimo de su ordenador si entiende cómo funciona la memoria virtual.

En este artículo, definimos qué es la memoria virtual, explicamos cómo funciona, cubrimos los tipos de memoria virtual y proporcionamos ejemplos para ayudarle a entender sus usos.

Prepararse para el futuro del trabajo

¿Qué es la memoria virtual?

Los ordenadores utilizan la memoria virtual para optimizar la gestión de la memoria mediante la transferencia de datos entre la memoria de acceso aleatorio (RAM) y el almacenamiento en disco. Los sistemas de memoria virtual tienen muchas ventajas:

  • Liberar a las aplicaciones de tener que competir por un espacio de memoria compartido
  • Permitir que los procesos compartan memoria entre las bibliotecas (una colección de código que proporciona la base para las operaciones de un programa)
  • Mejorar la seguridad aislando y segmentando el lugar donde el ordenador almacena la información
  • Aumentar la cantidad de memoria disponible trabajando fuera de los límites del espacio de memoria física de un ordenador
  • Optimizar el uso de la CPU
  • Ejecutar varias aplicaciones al mismo tiempo

La memoria virtual es un componente integrado en la mayoría de los ordenadores de sobremesa modernos. Está incorporada en el hardware de la unidad central de procesamiento (CPU) de un ordenador y es un método más rentable para gestionar la memoria que ampliar el sistema de almacenamiento de memoria física del ordenador.

Sin embargo, algunos ordenadores especializados pueden no depender de la memoria virtual porque ésta puede causar inconsistencias en el procesamiento del ordenador. Los profesionales de ciertos sectores pueden utilizar estos ordenadores para tareas específicas que requieren estabilidad y predictibilidad, como en el modelado científico o estadístico. La mayoría de los ordenadores personales o empresariales no necesitan este nivel de consistencia y se benefician de las ventajas de la memoria virtual mucho más que de la previsibilidad de otros tipos de sistemas de memoria.

Relacionado: Qué es la computación en nube (con información de uso y beneficios)

¿Cómo funciona la memoria virtual?

La memoria virtual utiliza tanto el software como el hardware del ordenador para funcionar. Transfiere los procesos entre la memoria RAM del ordenador y el disco duro copiando los archivos de la memoria RAM del ordenador que no se estén utilizando y trasladándolos al disco duro. Al mover los archivos que no se utilizan al disco duro, el ordenador libera espacio en su memoria RAM para realizar tareas actuales como abrir una nueva aplicación. Si más tarde el ordenador necesita utilizar su RAM para una tarea más urgente, puede volver a intercambiar archivos para aprovechar al máximo la RAM disponible.

La memoria RAM es un recurso limitado. Está integrada en los chips de RAM que forman parte de la CPU del ordenador. Estos chips suelen almacenar entre 32 y 64 megabytes de datos por ordenador, pero esta cantidad de datos no suele ser suficiente para que el ordenador ejecute todos los programas que los usuarios esperan ejecutar a la vez. Instalar más chips de RAM puede resultar caro, por lo que la memoria virtual permite al ordenador mover archivos entre sistemas según sea necesario para optimizar el uso de la RAM disponible.

Relacionado: Cómo mejorar sus conocimientos informáticos: Todo lo que necesita saber

Tipos de memoria virtual

Las dos formas en que los ordenadores gestionan la memoria virtual son la paginación y la segmentación. Aquí están las diferencias entre estos tipos de memoria virtual:

Paging

Este tipo de memoria virtual funciona separando la memoria en secciones llamadas archivos de paginación. Cuando un ordenador alcanza sus límites de memoria RAM, transfiere las páginas no utilizadas en ese momento a la parte de su disco duro utilizada para la memoria virtual. El ordenador realiza este proceso utilizando un archivo de intercambio, que es un espacio designado dentro de su disco duro para ampliar la memoria virtual de la RAM del ordenador. Al mover los archivos no utilizados a su disco duro, el ordenador libera su espacio de RAM para otras tareas de memoria y se asegura de que nunca se quede sin memoria real.

Como parte de este proceso, el ordenador utiliza tablas de páginas, que traducen las direcciones virtuales a las direcciones físicas que la unidad de gestión de memoria (MMU) del ordenador utiliza para procesar las instrucciones. La MMU se comunica entre el sistema operativo (SO) del ordenador y sus tablas de páginas. Cuando el usuario realiza una tarea, el sistema operativo busca en su memoria RAM los procesos necesarios para llevarla a cabo. Si no puede encontrar los procesos para realizar la tarea en la RAM, la MMU pide al SO que mueva las páginas necesarias a la RAM y utiliza una tabla de páginas para anotar la nueva ubicación de almacenamiento de las páginas.

Segmentar

La segmentación es otro método de gestión de la memoria virtual. Un sistema de segmentación divide la memoria virtual en segmentos de distinta longitud y traslada los segmentos que no se utilizan del espacio de memoria virtual del ordenador a su disco duro. De forma similar a las tablas de páginas, las tablas de segmentos rastrean si el ordenador está almacenando el segmento en la memoria o en una dirección física.

La segmentación se diferencia de la paginación porque divide la memoria en secciones de distinta longitud, mientras que la paginación divide la memoria en secciones de igual tamaño. Con la paginación, el hardware determina el tamaño de una sección, pero el usuario puede determinar la longitud de un segmento en un sistema de segmentación. Aunque la segmentación suele ser más lenta que la paginación, ofrece al usuario un mayor control sobre la forma de dividir la memoria y puede facilitar el intercambio de datos entre procesos. Sin embargo, muchos usuarios casuales de ordenadores pueden preferir un sistema de paginación porque maneja automáticamente las divisiones de memoria.

Ejemplo de memoria virtual

Un empresario puede utilizar el sistema de memoria virtual de su ordenador cuando ejecuta varias aplicaciones a la vez. Por ejemplo, el usuario podría intentar cargar su correo electrónico en la ventana de su navegador mientras ejecuta al mismo tiempo un software de procesamiento de textos, un software de programación de turnos y un sistema de gestión de contenidos. Como el ordenador tiene que ejecutar varios programas a la vez, puede ajustar su uso de la memoria para optimizar su capacidad de abrir la aplicación de correo electrónico del usuario y mantener al mismo tiempo el funcionamiento de los demás programas de software.

Para abrir el correo electrónico del usuario, el sistema operativo del ordenador puede tener que iniciar su MMU para buscar la página o la tabla de segmentos que contiene la dirección virtual o física del proceso que puede abrir la aplicación de correo electrónico. Una vez localizada, el SO puede mover la aplicación a la RAM del ordenador para abrirla, o puede acceder a la aplicación si ya está almacenada en la RAM. Si la RAM está cerca de su límite, el ordenador puede mover otro archivo de la RAM a otro espacio de almacenamiento para reducir su uso de la RAM.

Relacionado: Habilidades informáticas: Definiciones y ejemplos

Limitaciones de la memoria virtual

Aunque la memoria virtual tiene muchas ventajas, he aquí algunas de sus limitaciones:

  • La memoria virtual suele ser más lenta que la física, por lo que la mayoría de los ordenadores priorizan el uso de la memoria física cuando es posible.
  • Requiere un soporte de hardware adicional para mover los datos entre la memoria virtual y física de un ordenador.
  • La cantidad de almacenamiento que puede proporcionar la memoria virtual depende de la cantidad de almacenamiento secundario que tenga un ordenador.
  • Si el ordenador sólo tiene una pequeña cantidad de memoria RAM, la memoria virtual puede causar «thrashing», que es cuando el ordenador debe intercambiar constantemente datos entre la memoria virtual y física, lo que resulta en retrasos significativos en el rendimiento.
  • Cuando se utiliza la memoria virtual, las aplicaciones pueden tardar más en cargarse o el ordenador en cambiar de aplicación.

Memoria virtual vs. memoria física

Las dos diferencias más significativas entre la memoria virtual y la memoria física son la velocidad y el coste. Los ordenadores que dependen de la memoria física suelen ser más rápidos que los que dependen de la memoria virtual. Sin embargo, aumentar la capacidad de memoria física de un ordenador es más caro que implementar un sistema de memoria virtual. Por estas razones, la mayoría de los ordenadores utilizan su sistema de memoria física (RAM) para mantener la velocidad de su procesamiento antes de utilizar su sistema de memoria virtual. El ordenador sólo utiliza su memoria virtual cuando se queda sin RAM para el almacenamiento.

Sin embargo, los usuarios también tienen la opción de ampliar su memoria RAM instalando más chips de RAM. La instalación de más chips de RAM puede resolver los retrasos del ordenador causados por los frecuentes cambios de memoria. La cantidad de RAM que tiene un ordenador depende de la cantidad que instale el usuario o el fabricante. Comparativamente, el tamaño del disco duro del ordenador determina su capacidad de memoria virtual. A la hora de elegir un ordenador, es posible que prefieras uno con más RAM si eres alguien que ejecuta muchas aplicaciones a la vez. Si sólo trabaja con una o dos aplicaciones informáticas la mayor parte del tiempo, es posible que no necesite tanta memoria RAM.