teoría de sistemas operativos administración de la memoria

31
Teoría de Sistemas Operativos Administración de la memoria

Upload: zarita-cortina

Post on 11-Apr-2015

121 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Teoría de Sistemas Operativos Administración de la memoria

Teoría de Sistemas Operativos

Administración de la memoria

Page 2: Teoría de Sistemas Operativos Administración de la memoria

2

Administración de la MemoriaMemoria Virtual

Implementación: Paginación

Dirección Virtualb d

b’

+

Dirección Física.

b’ + d

Page 3: Teoría de Sistemas Operativos Administración de la memoria

3

Administración de la MemoriaMemoria Virtual

Implementación: Paginación

Dirección Virtualb d

b’

+

Dirección Física.

b’ + d

Tabla deDirecciones

Virtuales

Page 4: Teoría de Sistemas Operativos Administración de la memoria

4

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: TDV

Dirección Virtualb d

# páginavirtual

Desplazamiento(ajuste)

Utilizado como “índice” en la Tabla de Direcciones Virtuales.Como resultado, entre el nº de

marco, si existe.

Page 5: Teoría de Sistemas Operativos Administración de la memoria

5

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: TDV

Direcciones virtuales de 32 bits. Cada página es de 4[Kib]. Direcciones físicas de 16 bits.

Tamaño de TDV = 232 / 212 ~ 106 entradas Cada entrada : 20 bits (página ) 4 bits (frame) 24 bits Tamaño de TDV ~ 24 [Mib]

Direcciones virtuales de 32 bits. Cada página es de 4[Kib]. Direcciones físicas de 16 bits.

Tamaño de TDV = 232 / 212 ~ 106 entradas Cada entrada : 20 bits (página ) 4 bits (frame) 24 bits Tamaño de TDV ~ 24 [Mib]

Aspectos de construcción

Page 6: Teoría de Sistemas Operativos Administración de la memoria

6

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: TDV

Ha esto hay que agregar que cada proceso requiere su propia TDV.

Ha esto hay que agregar que cada proceso requiere su propia TDV.

Aspectos de construcción

La asociación entre página y frame debe ser rápida. (Memoria Asociativa)

La asociación entre página y frame debe ser rápida. (Memoria Asociativa)

Page 7: Teoría de Sistemas Operativos Administración de la memoria

7

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: TDV

Una solución es implementar una TDV en varios niveles.

Una solución es implementar una TDV en varios niveles.

Aspectos de construcción

Page 8: Teoría de Sistemas Operativos Administración de la memoria

8

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: TDV en varios niveles

DP2P110 10 12

Ejemplo

Dir. Virtuales: 232 bitsPágina de 212 bits TDV de 210 “c/u”

Page 9: Teoría de Sistemas Operativos Administración de la memoria

9

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: TDV en varios niveles

DP2P110 10 12

Ejemplo

Page 10: Teoría de Sistemas Operativos Administración de la memoria

10

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: Memoria Asociativa

Características de los procesos

Tienden a realizar una gran número de referencias a un número pequeño depáginas. (localidad de referencia)

Idea: realizar una especie de “caching”.

Tienden a realizar una gran número de referencias a un número pequeño depáginas. (localidad de referencia)

Idea: realizar una especie de “caching”.

Page 11: Teoría de Sistemas Operativos Administración de la memoria

11

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: Memoria Asociativa

Idea básica

A la MMU se le agrega un dispositivo quepermite asociar direcciones virtuales con las direcciones físicas.

Obviamente, sin tener que recurrir a la TDV.

A la MMU se le agrega un dispositivo quepermite asociar direcciones virtuales con las direcciones físicas.

Obviamente, sin tener que recurrir a la TDV.

Page 12: Teoría de Sistemas Operativos Administración de la memoria

12

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: Memoria Asociativa

Idea básica

A este dispositivo se le denomina “memoria asociativa”

A este dispositivo se le denomina “memoria asociativa”

Page 13: Teoría de Sistemas Operativos Administración de la memoria

13

Administración de la MemoriaMemoria Virtual

Implementación: Paginación: Memoria Asociativa

Estructura de la memoria Asociativa

Básicamente posee los mismos elementos Que una TDV.

Básicamente posee los mismos elementos Que una TDV.

Página Bit Modificado Protección Marco

Page 14: Teoría de Sistemas Operativos Administración de la memoria

14

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Fallo de página SO debe escoger una página para retirarla de la memoria.

Si esta página fue modificada debe actualizarse en disco.

Problemas para escoger esa página . . .

Se debe evitar que un proceso provoque fallos de memoria con un bajo número de instrucciones.

Fallo de página SO debe escoger una página para retirarla de la memoria.

Si esta página fue modificada debe actualizarse en disco.

Problemas para escoger esa página . . .

Se debe evitar que un proceso provoque fallos de memoria con un bajo número de instrucciones.

Page 15: Teoría de Sistemas Operativos Administración de la memoria

15

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Eliminar una página que no se utilizaránunca más adelante.

Eliminar una página que no se utilizaránunca más adelante.

Reemplazo óptimo

Problema: Irrealizable.Problema: Irrealizable.

Page 16: Teoría de Sistemas Operativos Administración de la memoria

16

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

De menor uso reciente (LRU)

Se escoge la página que no haya sido usada(referenciada) en el ciclo anterior.

Se escoge la página que no haya sido usada(referenciada) en el ciclo anterior.

7 0 1 2 0 3 0 4 2 3 0 3 2

x x x x x x x x x

7 7 7 2 2 4 4 4 0

0 0 0 0 0 0 3 3

1 1 3 3 2 2 2

Page 17: Teoría de Sistemas Operativos Administración de la memoria

17

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Uso no reciente (NRU)

Agrega un label de 2 bits a cada página: R y MAgrega un label de 2 bits a cada página: R y M

Escoge la página que se usó hace más tiempoEscoge la página que se usó hace más tiempo

•R se setea cada vez que se hace referencia a lapágina•M se setea cada vez que se modifica

•R se setea cada vez que se hace referencia a lapágina•M se setea cada vez que se modifica

Page 18: Teoría de Sistemas Operativos Administración de la memoria

18

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Uso no reciente (NRU)

Clase Bit R Bit M Desc

0 0 0 Sin Referencia, Sin modificación

1 0 1 Sin Referencia, Con modificación

2 1 0 Con Referencia, Sin modificación

3 1 1 Con Referencia, Con modificación

Page 19: Teoría de Sistemas Operativos Administración de la memoria

19

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Uso no reciente (NRU)

En forma periódica se limpia el bit R. se distinguen las páginas que no tienen referencias recientes.

Se elimina una página cualquiera de la primera clase no vacía con el número más pequeño.

Se elimina una página cualquiera de la primera clase no vacía con el número más pequeño.

Page 20: Teoría de Sistemas Operativos Administración de la memoria

20

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Anomalía de Belady

Intuición:

Más marcos para página tenga la memoria, menos fallos de página tendrá el programa.

Page 21: Teoría de Sistemas Operativos Administración de la memoria

21

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Anomalía de Belady

0 1 2 3 0 1 4 0 1 2 3 4

x x x x x x x x x

0 1 2 3 0 1 4 4 4 2 3 3

0 1 2 3 0 1 1 1 4 2 2

0 1 2 3 0 0 0 1 4 4

9 fallos de página

Page 22: Teoría de Sistemas Operativos Administración de la memoria

22

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Anomalía de Belady

0 1 2 3 0 1 4 0 1 2 3 4

x x x x x x x x x x

0 1 2 3 3 3 4 0 1 2 3 4

0 1 2 2 2 3 4 0 1 2 3

0 1 1 1 2 3 4 0 1 2

0 0 0 1 2 3 4 0 1

10 fallos de página

Page 23: Teoría de Sistemas Operativos Administración de la memoria

23

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Anomalía de Belady

2

46

81012

14

1 2 3 4 5 6 7

Page 24: Teoría de Sistemas Operativos Administración de la memoria

24

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Paginación bajo demanda

Inicialmente los procesos de inician sin páginas en memoria

A medida que el programa se ejecuta, ocurren fallos de página ==> después de un tiempo se tienen la mayoría de las páginas y disminuyen los fallos.

Page 25: Teoría de Sistemas Operativos Administración de la memoria

25

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Paginación bajo demanda

104321000

3

4

0

x

0

4

0

1

x

1

0

1

2

x

2

1

2

3

x

3

2

3

4

x

4

21110

322210

4333210

xxxxx

4103210

Page 26: Teoría de Sistemas Operativos Administración de la memoria

26

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Paginación bajo demanda

Un proceso puede provocar muchos fallos ==> disminuye el rendimiento del sistema.

Pero existe la “localidad de referencia”.

Page 27: Teoría de Sistemas Operativos Administración de la memoria

27

Administración de la MemoriaMemoria Virtual

Fallos de página. Algoritmos de reemplazo.

Pre-paginación

Las páginas de un proceso (“conjunto de trabajo”) se cargan antes que él.

El SO debe llevar un registro de las páginas que están en el conjunto de trabajo de cada proceso.

Page 28: Teoría de Sistemas Operativos Administración de la memoria

28

Administración de la MemoriaMemoria Virtual

Tamaño de página

Tamaño proceso : s bytesTamaño página : p bytesTamaño reg. TDV: e bytes

#Páginas/Procesos : s/pEspacio ocupado TDV: (s/p)*eFrag. Inter. Última página : p/2

Costo = (s/p)*e + p/2 ==> p= (2se)1/2

Page 29: Teoría de Sistemas Operativos Administración de la memoria

29

Administración de la MemoriaMemoria Virtual

Para que la memoria virtual funcione sin mayores problemas, deben existir “frames” disponibles.

Fallos de página. Demonios de paginación

Los “demonios de paginación” permiten garantizar aquella oferta de frames.

Page 30: Teoría de Sistemas Operativos Administración de la memoria

30

Administración de la MemoriaMemoria Virtual

SI hay pocos frames libres ==> selecciona las páginas a eliminar (algoritmo de reemplazo)

Fallos de página. Demonios de paginación

Garantizan que los frames estén “limpios”. ==> si las páginas fueron modificadas, las escribe en disco.

Page 31: Teoría de Sistemas Operativos Administración de la memoria

31

Administración de la MemoriaMemoria Virtual