La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Teoría de Sistemas Operativos Memoria

Presentaciones similares


Presentación del tema: "Teoría de Sistemas Operativos Memoria"— Transcripción de la presentación:

1 Teoría de Sistemas Operativos Memoria
Departamento de Electrónica 2º Semestre, 2003 Gabriel Astudillo Muñoz

2 La organización y la administración de la memoria
principal (primaria o real) es uno de los factores mas importantes que influyen en el diseño de los Sistemas Operativos. Históricamente la memoria ha sido un recurso caro, por lo que se desea optimizar su uso, aunque en la actualidad ha bajado de precio, los programa han aumentado su tamaño.

3 Modelo de Memoria

4 Técnicas de Administración de Memoria

5 La forma más simple de administrar memoria es ejecutando sólo un programa a la vez.
Cuando usuario digita un comando, el sistema operativo carga el programa correspondiente en la memoria, y lo ejecuta. Cuando el programa termina, el sistema operativo solicita un nuevo comando y carga el nuevo programa en la memoria, sobreescribiendo el anterior.

6 Ventajas: simple de implementar Desventajas: No permite dividir un programa de usuario en varios procesos Bajo rendimiento en sistemas de tiempo compartido Menor utilización de recursos

7 Multiprogramación: Varios procesos en memoria.  La memoria debe ser dividida en sectores. Ejemplo

8 Multiprogramación: Ejemplo: Active - total memory active Inactive - total memory inactive Wired - memory that cannot be paged out Cache - memory in the buffer cache queue Free - free memory in the system ¿Cómo se logra mantener varios procesos en memoria?

9 Algunos problemas El código debe ser relocalizable: ajustar las direcciones de un programa al sitio donde fue cargado, para que éste pueda ser ejecutado.

10 Algunos problemas El código debe ser relocalizable: 100: add $a, 1 101: jump 110 .... 110: load $b,$a eq 200: add $a, 1 201: jump 210 ... 210: load $b, $a

11 Algunos problemas Un proceso no debe interferir con otro

12 Multiprogramación con particiones fijas
Kernel 400Kb 200Kb 600Kb 590 450 500 100 350 300 250 210 Memoria Real Filas independientes

13 Multiprogramación con particiones fijas
190 550 500 100 Memoria Real Fila única Kernel 400Kb 200Kb 600Kb

14 Multiprogramación con particiones fijas
Desventajas . ·  Se hace una mala utilización de la memoria debido a la poca flexibilidad del método. ·  Es complicado correr programas más grandes que el tamaño de la partición.

15 Multiprogramación con particiones fijas
Desventajas . Fragmentación interna. Ocurre cuando un proceso no ocupa toda la memoria asignada. El espacio libre no puede ser utilizado por ningún otro proceso.

16 Multiprogramación con particiones fijas
Ventajas . Administración es relativamente simple. Protección entre procesos se puede realizar mediante el registro base y la longitud de la zona

17 Multiprogramación con particiones variables
La memoria se divide en bloques de diferente tamaño de acuerdo a las necesidades del proceso. Ventajas Define bloques del tamaño requerido termina con la fragmentación interna permite un mejor uso de la memoria

18 Multiprogramación con particiones variables
Desventajas Fragmentación externa: Existen 400Kb libres Pero un proceso de 400Kb no puede ser cargado en memoria ...

19 Multiprogramación con particiones variables
Implementación con Listas/BitsMaps

20 Multiprogramación con particiones variables
Estrategias para la asignación de memoria Primer Ajuste (first fit): Se asigna el primer espacio que sea mayor al tamaño deseado

21 Multiprogramación con particiones variables
Estrategias para la asignación de memoria Mejor Ajuste (best fit): Se asigna el espacio cuyo tamaño exceda en la menor cantidad al tamaño deseado. - Requiere de una búsqueda exhaustiva. - Mayor fragmentación externa. - Tiende a llenar con trozos de memoria pequeños.

22 Multiprogramación con particiones variables
Estrategias para la asignación de memoria Peor Ajuste (worst fit): Se asigna un espacio de memoria cuyo tamaño exceda en la mayor cantidad al tamaño deseado. - Requiere de una búsqueda exhaustiva. - Genera la mayor fragmentación interna

23 Multiprogramación con particiones variables
Administración de memoria insuficiente Compactación de memoria: Es una fusión de bloques adyacentes para formar un sólo bloque más grande.

24 Multiprogramación con particiones variables
Estrategias para la asignación de memoria Compactación de memoria:

25 Multiprogramación con particiones variables
Estrategias para la asignación de memoria Swapping: Se puede crear un nuevo espacio de memoria eliminando uno de los procesos residentes y temporalmente enviarlos a almacenamiento secundario.


Descargar ppt "Teoría de Sistemas Operativos Memoria"

Presentaciones similares


Anuncios Google