sistemas de computación memoria - ucvzeus.inf.ucv.cl/~jrubio/docs/2008-02/inf 250/clase 9.pdf ·...

Post on 05-Jul-2020

14 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Sistemas de Computación

Memoria

2º Semestre, 2008José Miguel Rubio L.

jose.rubio.l@ucv.clhttp://www.inf.ucv.cl/~jrubio

2

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

La organización y la administración de la memoriaprincipal (primaria o real) es unode los factores mas importantes que influyen en eldiseño de los Sistemas Operativos.

Históricamente la memoria ha sido un recurso caro,por lo que se desea optimizar su uso, aunque en laactualidad ha bajado de precio, los programa hanaumentado su tamaño.

3

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Modelo de Memoria

4

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Técnicas de Administración de Memoria

5

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Multiprogramación :

Varios procesos en memoria.� La memoria debe ser dividida en

sectores. Ejemplo

8

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Multiprogramación :Ejemplo:Active - total memory activeInactive - total memory inactiveWired - memory that cannot be paged outCache - memory in the buffer cache queueFree - free memory in the system

¿Cómo se logra mantener varios procesos en memoria?

9

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

11

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Algunos problemas

Un proceso no debe interferir con otro

DIR <

Límite - Base

No

Error!

+

Base

Memoria

Base

Límite

DIR

12

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Multiprogramación con particiones fijas

Kernel

400Kb

200Kb

600Kb590450500

100

350300250210

Memoria Real

Filas independientes

13

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Multiprogramación con particiones fijas

190550500100

Memoria Real

Fila únicaKernel

400Kb

200Kb

600Kb

14

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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 .

15

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Multiprogramación con particiones fijas

Desventajas .

Fragmentación intern a.

•Ocurre cuando un proceso no ocupa toda la memoria asignada.

•El espacio libre no puede ser utilizado por ningún otro proceso.

Fragmentación intern a.

•Ocurre cuando un proceso no ocupa toda la memoria asignada.

•El espacio libre no puede ser utilizado por ningún otro proceso.

16

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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 .

17

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

18

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Desventajas

Fragmentación externa:Fragmentación externa:

Existen 400Kb libres

�Pero un proceso de400Kb no puede ser cargadoen memoria ...

Kernel100Kb

200Kb

250Kb

Memoria Real100Kb

300Kb

Multiprogramación con particiones variables

19

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Implementación con Listas/BitsMaps

Multiprogramación con particiones variables

20

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

21

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

22

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

23

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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

24

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

Multiprogramación con particiones variables

Estrategias para la asignación de memoria

Compactación de memoria:

25

Intro

Administración de memoria

Monoprog.

Modelo.

Multiprog.

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 .

top related