ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

SEGMENTACION Y PAGINACION SIMPLE


Enviado por   •  7 de Julio de 2012  •  826 Palabras (4 Páginas)  •  2.006 Visitas

Página 1 de 4

Asignación de memoria con segmentación simple

En segmentación, un programa y sus datos asociados se dividen en un conjunto de segmentos.

No se impone que todos los segmentos de todos los programas tengan la misma longitud aunque sı existe una longitud máxima de segmento. Como en paginación, una dirección lógica segmentada consta de dos partes: numero de segmento y desplazamiento dentro del segmento. Como consecuencia del empleo de segmentos de distinto tamaño, la segmentación resulta similar al esquema de asignación de memoria con particiones dinámicas. La diferencia con este radica en que con segmentación un programa puede ocupar mas de una partición y ´estas no tiene por que estar contiguas.

La segmentación elimina la fragmentación interna pero sufre de fragmentación externa, sin embargo, debido a que los procesos se dividen en un conjunto de partes más pequeñas la fragmentación externa será menor. Mientras que la paginación es transparente al programador, la segmentación es generalmente visible y se proporciona como una comodidad para la organización de programas y datos. Normalmente, el programador asigna los programas y datos a distintos segmentos.

Otra consecuencia del tamaño desigual de los segmentos es que no hay una correspondencia

Simple entre direcciones lógicas y direcciones físicas. Un esquema de segmentación hará uso de una tabla de segmentos para cada proceso y una lista de bloques libres en memoria principal. Cada entrada de la tabla de segmento deberá contener la dirección de comienzo del segmento correspondiente en memoria principal y también la longitud del mismo para asegurar el uso de direcciones validas. Cuando un proceso pasa al estado de ejecución se carga la dirección de su tabla de segmentos en un registro especial del hardware de gestión de memoria.

Considerando una dirección lógica formada por n + m bits, los n bits mas significativos indican el numero de segmento mientras que los m bits restantes indicarían el desplazamiento. Para la traducción de direcciones hay que dar los siguientes pasos:

1. Extraer el número de segmento de la n bits más significativos de la dirección

Lógica.

2. Emplear ese número de segmento como índice en la tabla de segmentos del proceso para determinar la dirección física de comienzo del segmento.

3. Comparar el desplazamiento expresado por los m bits menos significativos con la longitud del segmento. Si el desplazamiento es mayor que la longitud la dirección no es valida.

4. La dirección física final será la suma de la dirección física de comienzo de segmento más el desplazamiento.

SEGMENTACIÓN SIMPLE

 Cada proceso y sus datos se dividen en segmentos de longitud variable.

 Un proceso carga sus segmentos en particiones dinámicas no necesariamente contiguas.

 Todos los segmentos de un proceso se deben de cargar en memoria.

 Se diferencia de la partición dinámica en que un proceso puede ocupar más de un segmento.

 El SO mantiene una tabla de segmentos para cada proceso y la lista de bloques libres.

 Una dirección

...

Descargar como (para miembros actualizados)  txt (5.7 Kb)  
Leer 3 páginas más »
Disponible sólo en Clubensayos.com