Teoría de Sistemas Operativos Memoria
description
Transcript of Teoría de Sistemas Operativos Memoria
![Page 1: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/1.jpg)
Teoría de Sistemas OperativosMemoria
Departamento de Electrónica
2º Semestre, 2003Gabriel Astudillo Muñoz
http://www.elo.utfsm.cl/~elo321
![Page 2: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/2.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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.
![Page 3: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/3.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
3
Modelo de Memoria
![Page 4: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/4.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
4
Técnicas de Administración de Memoria
![Page 5: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/5.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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.
![Page 6: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/6.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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
![Page 7: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/7.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
7
Multiprogramación:
Varios procesos en memoria.
La memoria debe ser dividida en
sectores. Ejemplo
![Page 8: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/8.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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?
![Page 9: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/9.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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.
![Page 10: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/10.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
10
Algunos problemas
El código debe ser relocalizable:
100: add $a, 1 101: jump 110....110: load $b,$a
200: add $a, 1 201: jump 210...210: load $b, $a
eq
![Page 11: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/11.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
11
Algunos problemas
Un proceso no debe interferir con otro
DIR <
Límite - Base
No
Error!
+
Base
Memoria
Base
Límite
DIR
![Page 12: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/12.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
12
Multiprogramación con particiones fijas
Kernel
400Kb
200Kb
600Kb590450500
100
350300250210
Memoria Real
Filas independientes
![Page 13: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/13.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
13
Multiprogramación con particiones fijas
190550500100
Memoria Real
Fila únicaKernel
400Kb
200Kb
600Kb
![Page 14: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/14.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
14
Multiprogramación con particiones fijas
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.
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.
Desventajas .
![Page 15: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/15.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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.
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.
![Page 16: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/16.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
16
Multiprogramación con particiones fijas
•Administración es relativamente simple.
•Protección entre procesos se puede realizar mediante el registro base y la longitud de la zona
•Administración es relativamente simple.
•Protección entre procesos se puede realizar mediante el registro base y la longitud de la zona
Ventajas .
![Page 17: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/17.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
17
Multiprogramación con particiones variables
La memoria se divide en bloques de diferente tamaño de acuerdo a las necesidades del proceso.
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
Define bloques del tamaño requerido
termina con la fragmentación interna permite un mejor uso de la memoria
![Page 18: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/18.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
18
Desventajas
Fragmentación externa:Fragmentación externa:
Existen 400Kb libres
Pero un proceso de 400Kb no puede ser cargado en memoria ...
Kernel100Kb
200Kb
250Kb
Memoria Real
100Kb
300Kb
Multiprogramación con particiones variables
![Page 19: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/19.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
19
Implementación con Listas/BitsMaps
Multiprogramación con particiones variables
![Page 20: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/20.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
20
Multiprogramación con particiones variables
Estrategias para la asignación de memoria
Primer Ajuste (first fit): Se asigna el primer espacioque sea mayor al tamaño deseado
![Page 21: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/21.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
21
Multiprogramación con particiones variables
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.
Estrategias para la asignación de memoria
![Page 22: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/22.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
22
Multiprogramación con particiones variables
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
Estrategias para la asignación de memoria
![Page 23: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/23.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
23
Multiprogramación con particiones variables
Compactación de memoria: Es una fusión de bloques adyacentes para formar un sólo bloque más grande.
Administración de memoria insuficiente
![Page 24: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/24.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
24
Multiprogramación con particiones variables
Estrategias para la asignación de memoria
Compactación de memoria:
![Page 25: Teoría de Sistemas Operativos Memoria](https://reader035.fdocumento.com/reader035/viewer/2022062408/56813e5e550346895da86436/html5/thumbnails/25.jpg)
Intro
Administración de memoria
Monoprog.
Modelo.
Multiprog.
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.