Memoria del sistema operativo: tipos, gestionar, expandir...

Memoria del sistema operativo: tipos, gestionar, expandir...

La memoria física de un sistema se divide en dos categorías: memoria de acceso aleatorio, compuesta de circuitos integrados y, por tanto, muy rápida; y memoria de almacenamiento masivo, compuesta de dispositivos magnéticos (disco duro, cintas magnéticas, etc.), mucho más lenta.

La memoria física consiste en un área de almacenamiento temporal para los programas y los datos que se usan. A grandes rasgos, cuanto más grande sea el espacio de memoria, más aplicaciones se podrán ejecutar al mismo tiempo. Además, cuanto más rápida sea la memoria, más rápida será la reacción del sistema. Por eso, el sistema operativo debe estar organizado de manera lo suficientemente eficiente como para obtener el mejor rendimiento posible.

¿Cuáles son los tipos de memoria?

En un equipo informático hay tres tipos de memoria principales:

  • Memoria RAM (Random Access Memory) almacena datos e instrucciones que pueden ser usados de forma inmediata por la CPU. Es la memoria que usan los programas para iniciarse y ejecutarse y de ella depende la rapidez de respuesta del equipo.
  • Memoria ROM (Read Only Memory) es una memoria únicamente de lectura y conserva información de vital importancia para el ordenador, incluidas las instrucciones de arranque y el firmware del equipo.
  • Discos duros HDD y SSD son el almacenamiento principal de tu ordenador, aquellos en los que se guardan programas, juegos, todo tipo de archivos, etc.

¿Cómo gestiona la memoria un sistema operativo?

La administración de memoria representa un vínculo delicado entre el rendimiento (tiempo de acceso) y la cantidad de espacio disponible. Siempre se busca obtener el mayor espacio disponible en la memoria, pero pocas veces existe la predisposición para comprometer el rendimiento.

La administración de memoria debe realizar diversas funciones, como permitir que la memoria se comparta (en sistemas de multiprocesos), asignar bloques de espacio de memoria a distintas tareas, proteger los espacios de memoria utilizados (por ejemplo, evitar que un usuario modifique una tarea realizada por otro usuario) y optimizar la cantidad de memoria disponible (específicamente a través de sistemas de expansión de memoria).

¿Cómo se expande la memoria?

Existen dos formas de expandir la memoria: dividiendo un programa de modo que una parte permanezca en la memoria de acceso aleatorio y otra parte se cargue en la memoria cuando se necesite acceder a los datos y utilizando un mecanismo de memoria virtual. En este último caso se utiliza el disco duro como memoria principal y se almacena solamente las instrucciones y los datos utilizados por el procesador en la memoria RAM.

El sistema operativo realiza esta operación creando un archivo temporal (conocido como SWAP o archivo de intercambio) en el que se almacena la información cuando la memoria RAM ya no es suficiente. Esta operación produce una disminución considerable en el rendimiento, dado que se puede acceder al disco duro mucho más rápido que a la memoria RAM. Es normal que al utilizar la memoria virtual el LED del disco duro permanezca encendido casi constantemente y, en el caso de Microsoft Windows, es común que aparezca un archivo win386.swp, de gran tamaño en proporción a las necesidades de la memoria de acceso aleatorio.

¿Cómo se distribuye la memoria?

La memoria central se puede distribuir de tres maneras: por segmentación, en el que los programas se dividen en paquetes de diversas longitudes conocidos como segmentos; por paginación, que consiste en dividir la memoria en bloques y los programas en páginas de longitud fija; mediante una combinación de segmentación y paginación, donde algunas partes de la memoria se segmentan y otras se paginan. 

Enciclopedia