* Memoria virtual: Mapeo de las direcciones lógicas del programa (según lo visto por el programa) a las direcciones físicas (ubicaciones reales de RAM). Esto permite que los programas usen más memoria de la que está físicamente disponible y los protege el uno del otro.
* Paging/Segmentation: Dividir la memoria en unidades más pequeñas (páginas o segmentos) para una gestión y asignación eficientes.
* Asignación de memoria y trafica: Asignación y liberación de bloques de RAM a los procesos en ejecución según sea necesario.
* Protección de memoria: Evitar que un programa acceda al espacio de memoria de otro, asegurando así la estabilidad.
* Swap Space Management: Mover partes de los programas con menos frecuencia desde la RAM hasta el almacenamiento secundario (como un disco duro) para liberar RAM para procesos activos.
Entonces, mientras la MMU realiza las acciones físicas, el sistema operativo es el cerebro detrás de la operación, tomando decisiones sobre lo que se carga, dónde se coloca y cuánto tiempo permanece en RAM.