Sistemas operativos

El sistema operativo necesita administrar eficientemente la memoria RAM para que varios procesos puedan ejecutarse sin interferir. 👉 Para ello, se utilizan diferentes técnicas de gestión.


🔹 1. Paginación

  • La memoria se divide en bloques del mismo tamaño llamados páginas.
  • El disco también se divide en bloques del mismo tamaño llamados marcos.
  • Un proceso se carga en memoria como un conjunto de páginas que pueden estar en cualquier marco (no necesariamente contiguos).

Ventajas: evita la fragmentación externa y permite aprovechar mejor la memoria. ❌ Desventaja: puede causar fragmentación interna (espacio desperdiciado dentro de las páginas).

👉 Ejemplo: si una página es de 4 KB y el proceso necesita 10 KB → usará 3 páginas (12 KB), sobrando 2 KB.


🔹 2. Segmentación

  • La memoria se divide en segmentos de distintos tamaños, según la estructura lógica del programa:

    • Segmento de código.
    • Segmento de datos.
    • Segmento de pila (stack).

Ventajas: se ajusta mejor a la organización real de los programas. ❌ Desventaja: puede generar fragmentación externa (huecos libres pequeños entre segmentos).

👉 Ejemplo: un programa ocupa 2 KB de código, 5 KB de datos y 3 KB de pila → se crean tres segmentos distintos en memoria.


🔹 3. Swapping

  • Cuando no hay suficiente RAM, el SO saca procesos completos de la memoria y los guarda temporalmente en disco.
  • Cuando el proceso necesita ejecutarse de nuevo, se vuelve a cargar a la RAM.

Ventaja: permite ejecutar más procesos de los que cabrían en RAM. ❌ Desventaja: es lento, porque el disco es mucho más despacio que la memoria.

👉 Ejemplo: si tu PC tiene 4 GB de RAM y abres muchas apps, el SO mueve procesos inactivos al disco (archivo de intercambio).


🔹 Comparación rápida

TécnicaCómo funcionaVentajasDesventajas
PaginaciónMemoria en páginas fijasSimple, evita fragmentación externaFragmentación interna
SegmentaciónMemoria en bloques lógicosSe ajusta a programas realesFragmentación externa
SwappingProcesos pasan de RAM ↔ DiscoPermite más procesosMuy lento

📌 Resumen rápido

  • Paginación: divide en páginas fijas → eficiente, pero con fragmentación interna.
  • Segmentación: divide en segmentos lógicos → más natural, pero con fragmentación externa.
  • Swapping: mueve procesos entre RAM y disco → útil, pero lento.
  • Loading...