Segmentacion paginada
procesador a través de una tabla de páginas para dicho segmento. Como
consecuencia, cada segmento tendrá siempre un tamañoque será múltiplo del
tamaño de la página. Las páginas de un mismo segmento, contiguas en la
memoria virtual, no tienen que aparecer así en la memoria real ni tienen que
aparecer todas a la vez, lo que elimina la necesidad de reubicar todo el
segmento cuando se necesita sólo una porción de él y solventa el problema de
fragmentación externa de la segmentación.Las direcciones tienen tres componentes: (s, p, d), donde la primera indica el número del segmento, la segunda el número de la página dentro del segmento y la tercera el desplazamiento dentro de la página. Se deberán usar varias tablas:
- SMT (tabla de mapas de segmentos): Una para cada proceso. En cada entrada de la SMT se almacena la información descrita bajo segmentación pura, pero en elcampo de dirección se indicara la dirección de la PMT (tabla de mapas de páginas) que describe a las diferentes páginas de cada segmento.
- PMT (tabla de mapas de páginas): Una por segmento; cada entrada de la PMT describe una página de un segmento, en la forma que se presentó la pagina pura.
- TBM (tabla de bloques de memoria): Para controlar asignación de páginas por parte del sistemaoperativo.
- JT (tabla de Jobs): Que contiene las direcciones de comienzo de cada una de las SMT de los procesos que se ejecutan en memoria.
Un registro especial del procesador contiene la dirección física base de la
tabla con los descriptores de segmentos del proceso actual. El campo s de la
dirección virtual especifica cuál entrada de esta tabla tiene la dirección
física de la base delsegmento donde está nuestra tabla de proyecciones de
páginas. El campo p de la dirección virtual es un índice que señala en cuál
entrada de esta tabla se encuentra la dirección física de nuestra página, y
la dirección física de la instrucción se obtiene a esta dirección física de
página el valor del campo d de la dirección virtual.
Algoritmo [Figura anterior]
1. El número desegmento se utiliza para encontrar el descriptor de segmentos.
2. Se realiza una comprobación para ver si la tabla de páginas del segmento está en la memoria. Si la tabla de páginas está en memoria, se localiza. Si no, ocurre un fallo de segmento. Si hay una violación a la protección, ocurre un fallo (trap).
3. La entrada en la tabla de páginas para la página virtual solicitada se examina. Si la pági-na en sí no está en memoria, se dispara un fallo de página. Si está en memoria, la dirección de la memoria principal del inicio de la página se extrae de la entrada en la tabla de páginas.
4. El desplazamiento se agrega al origen de la página para obtener la dirección de memoria
principal en donde se encuentra la palabra.
5. Finalmente se lleva a cabo la operación de lectura o almacenamiento.Ventajas y Desventajas de la segmentación paginada
Ventajas de la segmentación paginada:
El esquema de segmentación paginada tiene todas las ventajas de la segmentación y la paginación:
Debido a que los espacios de memorias son segmentados, se garantiza la facilidad de implantar la compartición y enlace.
Como los espacios de memoria son paginados, se simplifican lasestrategias de almacenamiento.
Se elimina el problema de la fragmentación externa y la necesidad de compactación.
Desventajas de la segmentación paginada:
Los tres componentes de la dirección y el proceso de formación de direcciones hace que se incremente el costo de su implantación. El costo es mayor que en el caso de de segmentación pura o paginación pura.
Se hace necesario mantener un...
Regístrate para leer el documento completo.