Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Gestion de Memoria PDF
Gestion de Memoria PDF
Gestin de Memoria
Escuela Universitaria de
Informtica (Segovia) 1
3.1 Definiciones y tcnicas bsicas.
Introduccin:
En la actualidad:
El coste de memoria ha descendido mucho.
El tamao de la memoria principal ha crecido mucho.
Escuela Universitaria de
Informtica (Segovia) 2
3.1 Definiciones y tcnicas bsicas.
Introduccin: Localidad.
Escuela Universitaria de
Informtica (Segovia) 5
3.1 Definiciones y tcnicas bsicas.
Escuela Universitaria de
Informtica (Segovia) 6
3.1 Definiciones y tcnicas bsicas.
Escuela Universitaria de
Informtica (Segovia) 7
3.1 Definiciones y tcnicas bsicas.
Reubicacin:
El programador no conoce qu otros programas residirn en la
memoria en el momento de la ejecucin.
Mientras se est ejecutando el programa, puede que se
descargue en el disco y que vuelva a la memoria principal, pero
en una ubicacin distinta a la anterior (reubicacin).
Se deben traducir las referencias a la memoria encontradas en el
cdigo del programa a las direcciones fsicas reales.
Escuela Universitaria de
Informtica (Segovia) 8
3.1 Definiciones y tcnicas bsicas.
Escuela Universitaria de
Informtica (Segovia) 9
3.1 Definiciones y tcnicas bsicas.
Reubicacin dinmica:
Escuela Universitaria de
Informtica (Segovia) 10
3.1 Definiciones y tcnicas bsicas.
Consecuencia:
Tamao de un proceso limitado al tamao de la memoria
fsica.
Carga dinmica:
Las rutinas no se cargan hasta que se invocan (hasta que el
programa llame a alguna rutina del mismo), mientras tanto
permanecen en disco.
Escuela Universitaria de
Informtica (Segovia) 11
3.1 Definiciones y tcnicas bsicas.
Escuela Universitaria de
Informtica (Segovia) 13
3.1 Definiciones y tcnicas bsicas.
Intercambio (swapping):
Objetivo: Cuando un proceso queda bloqueado o en espera,
la memoria que ocupa podra desasignrsele.
Intercambio: Cuando un proceso pierde la CPU, se vuelca su
imagen de la memoria al disco (swap out). Cuando se
decide reanudar el proceso, se recupera su imagen del disco
(swap in).
Escuela Universitaria de
Informtica (Segovia) 14
3.1 Definiciones y tcnicas bsicas.
Intercambio (swapping):
Problemas:
Aumenta el tiempo de cambio de contexto.
E/S que accede por DMA.
Mejoras:
Varios procesos en memoria.
Intercambio un proceso mientras se ejecuta otro.
Qu se necesita para llevarlo a cabo?
Proceso intercambiador (tipo PMP).
Criterios para elegir vctima (poltica de swapping out).
Espacio en disco para almacenar la imagen de los procesos.
rea especfica para el intercambio (rea de swap).
Ficheros de intercambio.
Criterios para gestionar el espacio de intercambio (poltica de
gestin del rea de swap).
Escuela Universitaria de
Informtica (Segovia) 15
3.1 Definiciones y tcnicas bsicas.
Escuela Universitaria de
Informtica (Segovia) 16
3.1 Definiciones y tcnicas bsicas.
Escuela Universitaria de
Informtica (Segovia) 17
3.1 Definiciones y tcnicas bsicas.
Organizacin lgica:
Los programas se organizan en mdulos.
Los mdulos pueden escribirse y compilarse independientemente.
Pueden otorgarse distintos grados de proteccin (slo lectura,
slo ejecucin) a los mdulos.
Compartir mdulos.
Organizacin fsica:
La memoria disponible para un programa y sus datos puede ser
insuficiente:
Mediante superposicin varios mdulos son asignados a la misma
regin de memoria.
El programador no conoce cunto espacio habr disponible.
Escuela Universitaria de
Informtica (Segovia) 18
3.2 Gestin de memoria contigua.
Asignacin contigua:
Generalmente se divide la
memoria en dos particiones,
una para el SO residente y
otra para los procesos de
usuario (se suele utilizar un
registro base para proteger
al SO).
Escuela Universitaria de
Informtica (Segovia) 19
3.2 Gestin de memoria contigua.
Particiones de la memoria:
Escuela Universitaria de
Informtica (Segovia) 20
3.2 Gestin de memoria contigua.
Particiones estticas:
Escuela Universitaria de
Informtica (Segovia) 21
3.2 Gestin de memoria contigua.
Particiones estticas:
Escuela Universitaria de
Informtica (Segovia) 22
3.2 Gestin de memoria contigua.
Particiones estticas:
Escuela Universitaria de
Informtica (Segovia) 23
3.2 Gestin de memoria contigua.
Fragmentacin:
Escuela Universitaria de
Informtica (Segovia) 24
3.2 Gestin de memoria contigua.
Fragmentacin:
Algoritmo de ubicacin:
Escuela Universitaria de
Informtica (Segovia) 25
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 26
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 27
3.2 Gestin de memoria contigua.
Particiones Dinmicas:
Escuela Universitaria de
Informtica (Segovia) 28
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 29
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 30
3.2 Gestin de memoria contigua.
Solucin: Compactacin.
Escuela Universitaria de
Informtica (Segovia) 31
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 32
3.2 Gestin de memoria contigua.
Algoritmos de ubicacin
con particiones dinmicas:
Ejemplo: Asignacin en
memoria de un bloque de
16M, mediante algoritmos
de ubicacin.
Escuela Universitaria de
Informtica (Segovia) 33
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 34
3.2 Gestin de memoria contigua.
Escuela Universitaria de
Informtica (Segovia) 35
3.2 Gestin de memoria contigua.
Reubicacin:
Escuela Universitaria de
Informtica (Segovia) 36
3.2 Gestin de memoria contigua.
Direcciones:
Direccin lgica:
Es una referencia a una posicin de memoria independiente de la
asignacin actual de datos a la memoria.
Se debe hacer una traduccin a una direccin fsica.
Direccin relativa:
La direccin se expresa como una posicin relativa a algn punto
conocido.
Direccin fsica:
La direccin absoluta o la posicin real en la memoria principal.
Escuela Universitaria de
Informtica (Segovia) 37
3.3 Paginacin.
Paginacin:
Solucin al problema de la fragmentacin externa.
Idea fundamental:
Dividir la memoria fsica (principal) en bloques iguales de tamao
fijo relativamente pequeos llamados marcos.
La memoria lgica (procesos) se divide en bloques del mismo
tamao llamados pginas.
Ejecucin: Las pginas se cargan desde el almacenamiento
auxiliar a un marco de memoria que est disponible.
El sistema operativo mantiene una tabla de pginas para
cada proceso:
Muestra la posicin del marco de cada pgina del proceso.
La direccin de la memoria consta de un nmero de pgina
y de un desplazamiento dentro de la pgina.
Escuela Universitaria de
Informtica (Segovia) 38
3.3 Paginacin.
Nmero de pgina
p: ndice de la tabla
de pginas.
Desplazamiento en
la pgina d.
Escuela Universitaria de
Informtica (Segovia) 39
3.3 Paginacin.
Escuela Universitaria de
Informtica (Segovia) 40
3.3 Paginacin.
Escuela Universitaria de
Informtica (Segovia) 42
3.3 Paginacin.
Esquema de registros:
Problema: El empleo de registros para la TDP es satisfactorio si
la tabla es razonablemente pequea.
Solucin:
Mantener la TDP en memoria.
Registro base de la tabla de pginas que apunta a la TDP:
Cambio de contexto: ms rpido (slo cambiar el valor de este
registro).
Gran inconveniente: tiempo de traduccin.
Escuela Universitaria de
Informtica (Segovia) 43
3.3 Paginacin.
Escuela Universitaria de
Informtica (Segovia) 44
3.3 Paginacin.
TLB:
Escuela Universitaria de
Informtica (Segovia) 45
3.3 Paginacin.
TLB:
Funcionamiento: acceso posicin i
Obtiene el nmero de pgina donde se encuentra i.
Si est en TLB => Obtenemos el marco de pgina donde se
encuentra.
Sino, acceso a la TDP y actualizar TLB.
Si TLB llena => Sustitucin de una de las existentes.
Ojo, cambio de contexto:
Desalojar (borrar) el TLB.
Tasa de aciertos:
Porcentaje de las veces que un nmero de pgina se encuentra
en los registros asociativos.
Buenas tasas de aciertos: 80% - 98%
Ejemplo: Intel 80486 => TLB de 32 entradas.
Sus fabricantes dicen que tiene una tasa de aciertos del 98%.
Escuela Universitaria de
Informtica (Segovia) 46
3.3 Paginacin.
Proteccin:
Escuela Universitaria de
Informtica (Segovia) 47
3.3 Paginacin.
Comparticin:
Escuela Universitaria de
Informtica (Segovia) 48
3.3 Paginacin.
Paginacin multinivel:
Escuela Universitaria de
Informtica (Segovia) 49
3.3 Paginacin.
Paginacin multinivel:
Escuela Universitaria de
Informtica (Segovia) 50
3.3 Paginacin.
Segmentacin:
Escuela Universitaria de
Informtica (Segovia) 52
3.4 Segmentacin.
Hardware de segmentacin:
1. La MMU toma la
parte asociada al
n de segmento se
busca en la TDS.
2. Se verifica si el
desplazamiento est
dentro de los lmites.
3. Indexa el byte
dentro de la memoria
fsica. Sumando el
desplazamiento base.
Escuela Universitaria de
Informtica (Segovia) 53
3.4 Segmentacin.
Hardware de segmentacin:
Escuela Universitaria de
Informtica (Segovia) 54
3.4 Segmentacin.
Implementacin de la TDS:
Escuela Universitaria de
Informtica (Segovia) 55
3.4 Segmentacin.
Ventajas de la segmentacin:
Proteccin y compartimiento:
Escuela Universitaria de
Informtica (Segovia) 56
3.4 Segmentacin.
Escuela Universitaria de
Informtica (Segovia) 57
3.4 Segmentacin.
2. Se verifica que el
desplazamiento est
dentro de los lmites.
3. Se obtiene la TDP de
la TDS y se determina el
MP.