tema10 4
Antecedentes
Memoria virtual – separación de la memoria lógica de la física
Sólo parte del programa necesita estar en memoria en un
momento dado para continuar su ejecución
El espacio de direcciones lógicas puede ser mayor que el
espacio de direcciones físicas
Permite compartir espacios de direcciones entre procesos
Permite una creación de procesos más eficiente
La memoria virtual suele implementarse usando:
Paginación por demanda
Segmentación por demanda
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 2
Silberschatz, Galvin and Gagne ©2005
Memoria Virtual Mayor que la Memoria Física
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 3Silberschatz, Galvin and Gagne ©2005
Espacio de Direcciones Virtuales
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 4
Silberschatz, Galvin and Gagne ©2005
Paginación por Demanda
Trae una página a memoria sólo cuando hace falta
La E/S se reduce
Se requiere menos memoria
La respuesta es más rápida
Puede haber más procesos en memoria
Se necesita una página la página es referenciada
referencia inválida aborta
no está en memoria se trae a memoria
“Intercambiador” perezoso – nunca trae una página a memoria
salvo si es necesario
El intercambiador que trabaja con páginas es un paginador
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 5
Silberschatz, Galvin and Gagne ©2005
Bit de Validez
En cada entrada de la tabla de páginas hay un bit de validez
(v en memoria, i no en memoria o acceso ilegal)
Al comienzo el bit de validez es inicializado a i en todas las entradas
Ejemplo de tabla de páginas:
# Marco
Bit de validez
v
v
v
v
i
….
i
i
Tabla de páginas
Durante la traducción de direcciones, si el bit de validez de la entrada de
la tabla de páginas es i fallo de páginaFundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 6
Silberschatz, Galvin and Gagne ©2005
Tabla de Páginas cuando hay Páginas Ausentes
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 7
Silberschatz, Galvin and Gagne ©2005
Fallo de Página
La primera referencia a una página producirá una
excepción capturada por el SO:
fallo de página
1.El SO mira en la tabla de páginas para decidir qué hacer:
Referencia inválida aborta
No está en memoria continúa
2. Obtiene un marco libre
3. Carga la página en el marco
4. Resetea las tablas
5. Establece el bit de validez a v
6. Reinicia la instrucción que causó el fallo de página
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 8
Silberschatz, Galvin and Gagne ©2005Fallo de Página
Instrucciones problemáticas para el reinicio de instrucción
Instrucciones de cadenas
Auto incremento/decremento
Soluciones
Comprobar antes de ejecutar la instrucción que no va a
producirse un fallo de página
Almacenar los valores antiguos en registros temporales
Guardar el estado del microcódigo del procesadorFundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 9
Silberschatz, Galvin and Gagne ©2005
Pasos del Manejo de un Fallo de Páginas
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 10
Silberschatz, Galvin and Gagne ©2005
Rendimiento de la Paginación por Demanda
Tasa de fallo de páginas 0 p 1
si p = 0, no hay fallo de páginas
si p = 1, cada referencia produce un fallo
Tiempo de acceso efectivo (EAT)
EAT = (1 – p) x acceso a memoria
+ p (sobrecarga por fallo de página
+ escribir página
+ traer página
+ sobrecarga de reinicio
)
Fundamentos de los Computadores (ITT, Sist. Electr.), 20052006
Tema 10.4: 11
Silberschatz, Galvin and Gagne ©2005...
Regístrate para leer el documento completo.