Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Samanta Cueva
spcueva@utpl.edu.ec
Fundamentos
La tcnica de Memoria Virtual es un mecanismo que permite la ejecucin de
procesos que no se encuentran completamente en la memoria.
Una ventaja es que los programas pueden tener un tamao mayor que la
propia memoria fsica
La memoria virtual no resulta fcil de implementar y puede reducir
sustancialmente el rendimiento del sistema si se la utiliza sin el cuidado.
Requisitos
Colocar el espacio completo de direcciones lgicas dentro de la memoria fsica
Limita el tamao de los programas, de manera que stos no puedan exceder
del tamao de la propia memoria fsica.
Fundamentos
Se ha comprobado que en muchos casos no es necesario tener el programa
completo para poder ejecutar:
Los programas incluyen cdigo para tratar las condiciones de error poco
usuales (stos errores ocurren rara vez).
A las matrices, a las listas y a las tablas se les suele asignar ms memoria de
la que realmente necesitan.
Fundamentos
La posibilidad de ejecutar un programa que slo se encontrar parcialmente en
la memoria proporciona muchas ventajas:
Los programas ya no estarn restringidos por la cantidad de memoria
fsica disponible, se podrn escribir programas para un espacio de
direcciones virtual extremadamente grande.
Cada programa de usuario podra ocupar menos memoria fsica, se podrn
ejecutar ms programas al mismo tiempo.
Fundamentos
La memoria virtual incluye la separacin de la memoria lgica tal como la
percibe el usuario con respecto a la memoria fsica.
La memoria virtual facilita la tarea de programacin por que el programador ya
no tiene por que preocuparse de la cantidad de memoria fsica disponible sino
en el problema que deba resolver con su programa.
La MMU (Unidad de manejo de memoria) tiene la responsabilidad de
establecer la correspondencia entre las pginas lgicas y los marcos de pgina
fsica de la memoria.
invlido
Cuando se configura este bit como vlido, la pgina asociada ser legal (memoria).
Cuando se configura este bit como invlido, la pgina no es vlida y est
actualmente en el disco.
memoria?
El acceso a una pgina marcada como invlida provoca una interrupcin de fallo de pgina, el
procedimiento a tratar el fallo de pgina es:
Sustitucin de Pginas
Cuando se est ejecutando un proceso de usuario, se produce un fallo de pgina, el SO
determina donde reside la pgina deseada dentro del disco y entonces se encuentra con que no
haya ningn marco libre en la lista de marcos libres, toda la memoria esta siendo utilizada, para
esto se utiliza la tcnica de sustitucin de pginas
Si no hay ningn marco libre, localizamos uno que no este siendo actualmente utilizado y lo
liberamos.
El mecanismo de sustitucin de pginas es:
Hallar la ubicacin de la pgina deseada dentro del disco.
Localizar un marco libre.
Si hay un marco libre utilizarlo
Si no hay seleccionar una vctima (algoritmo de sustitucin)
LRU asocia con cada pgina el instante correspondiente al ltimo uso de dicha pgina.
Contadores: asociamos con cada entada en la tabla de pginas un campo de tiempo uso y
aadimos a la CPU un reloj lgico o contador.
El reloj se incrementa con cada referencia a memoria .
As tenemos el tiempo de la ltima referencia a cada pgina
Podremos sustituir la pgina que tenga el valor temporal menor
Pila: mantener una pila de nmeros de pgina, cada vez que se hace referencia a una pgina, se
extrae esa pgina de la pila y se la coloca en la parte superior.
La pgina mas recientemente utilizada se encontrar siempre en la parte superior de la pila.
Si el desplazamiento es:
00000000
La pgina no habr sido utilizada en los ltimos 8 perodos de tiempo.
Asignacin de Marco
Cmo asignamos la cantidad fija de memoria libre a los procesos?
No podemos por ejemplo asignar un nmero de marcos superior al nmero
total de marcos disponibles
Debemos asignar al menos un nmero mnimo de marcos (rendimiento)
A medida que el nmero de marcos asignados a un proceso se reduzca se
incrementa el nmero de fallos.
El nmero mnimo de marco esta definido por la arquitectura informtica
La formas ms fcil de repartir m marcos entre n procesos es dar a dar uno un
nmero igual de marcos (asignacin equitativa)
m/n
Asignacin de Marco
Otra alternativa es darse cuenta que los diversos procesos necesitan
cantidades diferentes de memoria
Asignacin Proporcional asignando la memoria disponible a cada proceso
de acuerdo al tamao de ste.
S = Si
ai = si /S * m
De esta forma, ambos procesos compartirn los marcos disponibles de
acuerdo a sus necesidades, en lugar de repartir los marcos equitativamente.
Asignacin de Marco
Asignacin Global y Local
Sustitucin Global: permite que un proceso seleccionar un marco de
sustitucin de entre el conjunto de todos los marcos disponibles, incluso si
dicho marco esta asignado a otro proceso.
Sustitucin Local: cada proceso solo efecta esa seleccin entre su
propio conjunto de marcos asignados
Sobrepaginacin
Si un proceso no dispone de suficientes marcos generar
rpidamente fallos de pgina.
Deber sustituir alguna pgina sin embargo como todas sus
pginas se estn usando activamente se ver forzado a sustituir una
pgina que volver a ser utilizada enseguida.
Bibliografa
Fundamentos de Sistemas
Silberschatz, Galvin, Gagne
Operativos,
Sptima
Edicin,