Tipos de memoria física
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, mientras más grande sea el espacio de memoria, más aplicaciones se podrán ejecutar al mismo tiempo. Además, mientras 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.
Gestión de la memoria
La administración de memoria representa un vínculo delicado entre el rendimiento (tiempo de acceso) y la cantidad (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), 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.