Gestión de Memoria: Paginación y Segmentación en Sistemas Informáticos

Clasificado en Informática

Escrito el en español con un tamaño de 4,28 KB

Gestión de Memoria en Sistemas Informáticos

Tabla de Páginas

  • Cada programa se divide en **páginas**, y estas se cargan en **frames** libres que no tienen por qué ser contiguos.
  • Cada dirección que genere el procesador será interceptada y dividida en 2 componentes:
    • Número de Página (**p**)
    • Desplazamiento en la Página (**d**)

Gestión de Memoria en Paginación

  • Forma de reasignación dinámica de direcciones.
  • Cada programa tiene su propia tabla de página.

Páginas Compartidas

  • Varios usuarios utilizando un programa: ejemplo **Editor**.
  • Cada usuario contendrá en su tabla de páginas las entradas correspondientes al programa **Editor**.
  • Cada uno apunta a los mismos frames pero distintos datos.

Segmentación

  • El programa se divide en segmentos lógicos o partes de tamaño variable: (subrutinas, procedimientos, funciones...)
  • La segmentación de un programa la realiza el compilador.
  • Cada dirección lógica se expresará en 2 valores:
    • Número de segmento (**s**)
    • Desplazamiento dentro del segmento (**d**)
  • La conversión de dirección lógica (**s, d**) a la real (**r**) la realiza un dispositivo hardware consultando la **tabla de segmento**.
  • Reduce la fragmentación interna. Asigna a cada programa la memoria que requiere.
  • Se pueden compartir segmentos.
  • Existe fragmentación externa.
  • Necesita memoria cache para tener tiempos de accesos adecuados.

Sistemas Combinados: Paginación Segmentada

  • Segmentar la tabla de páginas adecuándola al tamaño del programa.
  • Segmentación Paginada: Paginar los segmentos, es decir, utilizan segmentos cuyo tamaño siempre es un número entero de páginas.

Administración o Gestión de Memoria

Almacenamiento Virtual

Almacenamiento virtual significa la capacidad de direccionar un espacio de almacenamiento mucho mayor que el disponible en el almacenamiento primario de determinado sistema de computación.

Se utiliza el disco como expansión de memoria real.

Métodos de Implementación

  • Técnicas de paginación.
  • Técnicas de segmentación.
  • Una combinación de ambas técnicas.

Conceptos Clave

  • “Direcciones virtuales”: Son las referidas por un proceso en ejecución.
  • “Direcciones reales”: Son las disponibles dentro del almacenamiento primario.
  • “Espacio de direcciones virtuales (v)” de un proceso: Es el número de direcciones virtuales a las que puede hacer referencia el proceso.
  • “Espacio de direcciones reales (r)” de un computador: Es el número de direcciones reales disponibles en el ordenador.

Las direcciones virtuales deben ser transformadas dentro de las direcciones reales mientras el proceso está en ejecución:

  • La información se agrupa en “bloques”.
  • Los bloques pueden ser de tamaño:
    • Igual: se denominan “páginas” y la organización de almacenamiento virtual asociada se denomina “paginación”.
    • Diferente: se denominan “segmentos” y la organización de almacenamiento virtual asociada se denomina “segmentación”.

Combinación de Técnicas

Traducción dinámica de direcciones. Deben mantener “mapas” que ilustren qué direcciones del almacenamiento virtual se encuentran en el almacenamiento real y dónde se encuentran.

Las direcciones son “bidimensionales”, es decir, que una dirección virtual “v” se indica por un par ordenado “(b, d)”, donde:

  • b”: número del bloque donde reside.
  • d”: desplazamiento a partir del inicio del bloque.

Debe pasarse a dirección real.

Entradas relacionadas: