Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Asignacin contigua Sistemas de un solo proceso Sistemas de multiprogramacin Con particiones fijas Cdigo absoluto Cdigo reubicable Con particiones variables
Segmentacin + paginacin
Proteccin Sistema operativo - Procesos del usuario Posibles accesos accidentales o malintencionados a datos del S.O. Un modo de proteccin: Registro lmite y registro de relocalizacin Se comprueba cada direccin generada por la CPU
MULTIPLES PARTICIONES
Multiprogramacin simultneamente Necesidad de varios procesos en memoria
Particiones fijas Divisin de la memoria en varios trozos (particiones) Tamao diferente de las particiones Tamao fijo de las particiones (inamovible) particin
Estructuras de datos para la gestin de particiones fijas Tabla de descripcin de particiones Estado (libre/asignada) Base de la particin Tamao de la particin
Fragmentacin Interna Dentro de cada particin queda una zona de memoria no aprovechable El proceso es ms pequeo que la particin No se puede asignar a ningn otro proceso Es posible que procesos esperando entrar en memoria no tengan particin a pesar de haber espacio libre para ellos
PARTICIONES VARIABLES
Las particiones son variables en nmero y longitud Inicialmente la memoria slo contiene el sistema operativo A cada proceso se le asigna la memoria que necesita exactamente Estructuras de datos para gestionar la memoria Mapa de bits Divisin de memoria en pequeas unidades libres u ocupadas
Sistema de los asociados (Knuth 1973) Divisin de memoria en bloques potencia de 2 Se compactan 2 bloques adyacentes del mismo tamao Agiliza la fusin de huecos
Compactacin Movimiento de procesos en la memoria para unir huecos dispersos y crear huecos de mayor tamao
Fragmentacin externa Fragmentacin interna, slo si existe limitacin en el tamao mnimo de las particiones Ejemplo OS/MVT (Multiprogramacin con n variable de tareas) Antiguo S.O. de grandes ordenadores IBM OS/360 Actualmente en desuso
En la asignacin no contigua un programa se divide en varios bloques o segmentos que pueden almacenarse en direcciones que no tienen que ser necesariamente adyacentes, por lo que es ms compleja pero ms eficiente que la asignacin continua. El espacio de direcciones lgico de un proceso se reparte entre diferentes zonas de la memoria principal Mtodos de organizacin Paginacin simple Segmentacin simple Segmentacin + paginacin simple
Paginacin simple
Divisin de la memoria principal en bloques de igual tamao denominados marcos Divisin del espacio de direcciones de un proceso en bloques de igual tamao denominados pginas. Marcos y pginas tienen el mismo tamao Carga de un proceso en memoria Se van asignando marcos libres a pginas del proceso No tienen por qu ser consecutivos. La paginacin no es visible al programador
Se elimina la fragmentacin externa La fragmentacin interna slo se produce en la ltima pgina Pginas pequeas Reducen la fragmentacin interna Aumentan tamao de tabla de pginas Menos adecuados para lectura de dispositivos
Segmentacin
Segmentacin Espacio de direcciones bidimensional Proceso dividido en Segmentos Cada segmento: 0 Mxima Cada segmento utiliza zonas de memoria contigua No necesitan estar juntos en memoria Visin de la memoria igual que el usuario Programa = conjunto de segmentos
Sqrt
Programa principal
Mtodo bsico Divisin del espacio de direcciones del usuario en segmentos Divisin de cada segmento en pginas Direccin lgica Desde el punto de vista del usuario Nmero de segmento | desplazamiento
Estructuras de datos utilizadas Cada proceso Una tabla de segmentos Una tabla de pginas por segmento.
Tabla de direcciones