La evolucion de la especie humana-primero de secundaria
Asignación de memoria continua
1. INTEGRANTES Ana Poma Edgar Pauta Cristian Villamagua ASIGNACION DE MEMORIA CONTINUA
2. Asignación de memoria contigua En un esquema de asignación de memoria contigua un proceso se ubica en su totalidad en posiciones consecutivas de memoria. Un ejemplo de este tipo de asignación es el utilizado en los sistemas de monoprogramación.
3. Mapeo de memoria y protección Podemos utilizar estas características un registro de reubicación, con un registro limite. El registro de la reubicación contiene el valor de la dirección física mas pequeña, mientras que el registro limite contiene el rango de las direcciones lógicas(por ejemplo, reubicación = 100040 y limite = 74600). Con los registro de reubicación y de limite, cada dirección lógica debe ser inferior al valor contenido en el valor limite.
4. Mapeo de memoria y protección La MMU la dirección lógica dinámicamente sumándole el valor contenido en el registro de reubicación. Esta dirección es la que se envía a la memoria. Interrupción: error de direccionamiento Registro limite Registro de reubicación memoria si Dirección lógica Dirección física CPU + no
5. Mapeo de memoria y protección Cuando el planificador de la CPU selecciona un proceso para su ejecución, el despachador carga en los registros de reubicación y de limite los valores correctos, como parte del proceso de cambio de contexto. Puesto que todas las direcciones generadas por la CPU se comparan con estos registro. Este mecanismo nos permite proteger al sistema operativo.
6. Múltiples Particiones Multiprogramación Necesidad de varios procesos en memoria simultáneamente Dos modos de asignación: Particiones fijas y Variables Particiones fijas División de la memoria en varios trozos (particiones) Tamaño diferente de las particiones Tamaño fijo de las particiones (inamovible) Único proceso por partición con tamaño partición Estructuras de datos para la gestión de particiones fijas Tabla de descripción de particiones Estado (libre/asignada) Base de la partición Tamaño de la partición
7. Múltiples Particiones Estrategia de asignación Primer ajuste, Mejor ajuste, Peor ajuste Qué hacer si no hay particiones libres Esperar a la finalización de algún proceso Intercambio Protección entre procesos A través de registro base y límite Comprobación en cada acceso a memoria
8. Múltiples Particiones Grado de multiprogramación. Limitado al número de particiones Fragmentación Interna Dentro de cada partición queda una zona de memoria no aprovechable El proceso es más pequeño que la partición No se puede asignar a ningún otro proceso Es posible que procesos esperando entrar en memoria no tengan partición a pesar de haber espacio libre para ellos Ejemplo OS/MFT (Multiprogramación con nº fijo de tareas)
10. Particiones variables Las particiones son variables en número y longitud Inicialmente la memoria sólo 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 División de memoria en pequeñas unidades libres u ocupadas Lista de procesos y huecos Lista única Lista de procesos y lista de huecos Sistema de los asociados (Knuth 1973) División de memoria en bloques potencia de 2 Se compactan 2 bloques adyacentes del mismo tamaño Agiliza la fusión de huecos
11. Particiones variables Algoritmos de asignación de particiones Primer ajuste, Mejor ajuste y Peor ajuste Qué hacer si no hay particiones libres Esperar a la finalización de algún proceso Intercambio
13. Condensación de huecos Unión de huecos adyacentes al liberar un proceso Compactación Movimiento de procesos en la memoria para unir huecos dispersos y crear huecos de mayor tamaño Fragmentación externa Fragmentación interna, sólo si existe limitación en el tamaño mínimo de las particiones Ejemplo OS/MVT (Multiprogramación con nº variable de tareas) Antiguo S.O. de grandes ordenadores IBM OS/360 Actualmente en desuso