Paginación y segmentación: traducción dinámica de direcciones y marcos de página
Resumen
El texto explica la paginación como mecanismo para transferir páginas al almacenamiento primario en marcos de igual tamaño, y el proceso de traducción dinámica de direcciones (TDD) que convierte direcciones virtuales en físicas mediante la tabla de páginas. También aborda la compartición de recursos en sistemas multiprogramados y la segmentación, en la que los programas ocupan bloques de tamaño variable que no necesitan ser adyacentes.
Puntos clave
- Los marcos de página tienen el mismo tamaño que las páginas y comienzan en múltiplos enteros del tamaño de página.
- En la TDD, una dirección virtual v = (p, d) se transforma buscando la página p en la tabla de páginas.
- La dirección real se forma concatenando el marco p' y el desplazamiento d.
- La tabla de páginas indica si una página se encuentra o no en el almacenamiento primario.
- Sólo se pueden compartir páginas con procedimientos puros reentrantes; los datos y procedimientos modificables no se comparten.
- En la segmentación, los segmentos no necesitan ser de igual tamaño ni estar contiguos en memoria física, aunque cada uno debe ocupar posiciones contiguas.
Paginación
Las páginas se transfieren del almacenamiento secundario al primario en bloques llamados marcos de página. Estos marcos poseen características específicas:
- Tienen el mismo tamaño que las páginas.
- Comienzan en direcciones del almacenamiento real que son múltiplos enteros del tamaño fijo de la página.
- Una nueva página podrá colocarse dentro de cualquier marco de página o celda de página disponible.
Traducción Dinámica de Direcciones (TDD)
La TDD es el proceso mediante el cual se mapean las direcciones virtuales a direcciones físicas. El proceso incluye:
- Un proceso en ejecución hace referencia a una dirección virtual: $v = (p, d)$, donde $p$ es la página y $d$ es el desplazamiento.
- Un mecanismo de transformación de páginas busca la página $p$ en la tabla de páginas.
- Se determina si la página $p$ se encuentra en el marco de página $p'$.
- La dirección de almacenamiento real se forma por la concatenación de $p'$ (marco) y $d$ (desplazamiento).
La Tabla de Páginas
Cada proceso utiliza una tabla de páginas. La tabla de mapa de páginas debe indicar si la página se encuentra o no en el almacenamiento primario.
Traducción de Direcciones de Paginación por Transformación Directa
Un proceso en ejecución hace referencia a la dirección virtual $v = (p, d)$.
Antes de que un proceso comience su ejecución, el Sistema Operativo (S. O.) carga la dirección de almacenamiento primario de la tabla de mapa de páginas en el registro origen de la tabla de mapa de páginas.
Compartición de Recursos en Sistemas de Paginación
En sistemas multiprogramados, especialmente en los de tiempo compartido, es común que más de un usuario esté ejecutando los mismos programas. Para optimizar el uso de la memoria real, se aplican las siguientes reglas de compartición:
- Se comparten las páginas que pueden ser compartidas.
- La compartición debe ser cuidadosamente controlada para evitar que un proceso modifique datos que otro proceso está leyendo.
- Los programas se dividen en áreas separadas de procedimiento y datos.
- Los procedimientos no modificables se denominan procedimientos puros reentrantes y son aptos para la compartición.
- Los datos y procedimientos modificables no pueden ser compartidos.
Segmentación
En los sistemas de segmentación, un programa y sus datos pueden ocupar varios bloques separados de almacenamiento real (segmentos). Las características principales de estos bloques son:
- No necesitan ser de igual tamaño.
- Los bloques separados no necesitan ser adyacentes en la memoria física.
- Cada bloque debe estar compuesto de posiciones contiguas de almacenamiento.
Descargar
PDF Word HTMLPreguntas frecuentes
¿Qué es un marco de página?
Es un bloque del almacenamiento real que tiene el mismo tamaño que una página y en el que se transfieren las páginas desde el almacenamiento secundario. Sus direcciones de inicio son múltiplos enteros del tamaño fijo de la página.
¿Qué es la traducción dinámica de direcciones?
Es el proceso que mapea direcciones virtuales a direcciones físicas. Se busca la página en la tabla de páginas, se comprueba si está en un marco y se concatenan el marco y el desplazamiento.
¿Qué son los procedimientos puros reentrantes?
Son procedimientos no modificables que pueden ser compartidos entre varios procesos. Los datos y procedimientos modificables, en cambio, no pueden compartirse.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.