La memoria virtual permite ejecutar procesos cuya memoria reside en disco. El paginador carga las páginas necesarias a memoria principal. Existen intercambios hacia adentro y hacia fuera para mover páginas entre memoria principal y virtual. La sobre paginación ocurre cuando un proceso pasa más tiempo en actividades de paginación que en ejecución, lo que reduce el rendimiento.
2. Es una técnica que que pueden no estar
MEMORIA permite la ejecución completamente en
VIRTUAL de procesos memoria
3.
4.
5.
6. Los procesos residen en memoria secundaria (disco), para ejecutar un proceso el
paginador trae aquellas páginas necesarias a memoria principal, disminuyendo el tiempo
necesario y la cantidad de memoria física o real necesaria.
EXISTEN DOS TIPOS DE INTERCAMBIOS:
Intercambio • quiere decir llevar las
páginas desde la memoria
hacia virtual (disco) hacia la
adentro: memoria principal.
• quiere decir llevar las
Intercambio páginas desde la memoria
principal a la memoria
hacia fuera: virtual (disco).
7. El hardware es quien se hace cargo de distinguir entre las páginas que están en
memoria principal y las que están en memoria virtual.
PUEDEN PRODUCIRSE DOS SITUACIONES:
8. página
marcada
como
inválida
Si una página es marcada
como inválida nunca se la
requiere, el proceso se
ejecuta normalmente
como si todas las páginas
estuvieran residentes en
memoria
9. es requerir una página que no está
presente en memoria principal, esto
Fallo de página puede ocurrir con cualquier referencia a
memoria.
10. Significa “El menos recientemente usado”, es decir
se analiza el pasado reciente, por tanto se asocia a
dicha página la hora del último uso y se
seleccionará aquella que tiene el período más largo
sin haber sido usada.
11. Como siempre el problema son las implementaciones, existen
dos planteamientos:
• Relacionando con cada página la hora de uso.
• Mediante una pila, ubicando en el tope la página más
recientemente usada y en el fondo las que menos se usan.
Para analizar el algoritmo, no olvide analizar hacia atrás en el
tiempo. Cadena de referencias:
7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1
12. :
• La menos frecuentemente utilizada:
(LFU left frequently used) Cada página maneja un contador
que se incrementa cada vez que se la use, la que tiene un
contador con un valor mayor es la que permanece en
memoria. El inconveniente de este algoritmo es que si una
página fue usada antes con mucha frecuencia. tendrá un
contador elevado, y deja de utilizarse, sin embargo
permanece en memoria, para evitar ello cada cierto intervalo
desplaza el contador un bit a la derecha, con el fin de que en
un momento dado pueda ser descargada.
13. • La más frecuentemente utilizada:
(MFU MOST FREQUENTLY USED) si el
contador de la página es el menor, puede
suponerse que es la página que acaba de ser
traída a la memoria y todavía está por ser
usada.
14.
15. • El número mínimo de marcos
La multiprogramación, es libres, asignados a un proceso
decir más de un proceso están definidas por
almacenado en memoria, la arquitectura de las • El número máximo de
provoca al instrucciones (ejemplo marcos libres, depende de
sistema operativo dificultad instrucciones que usan la cantidad de memoria
en dividir el número de direccionamiento disponible
marcos libres entre los indirecto, requerirán más de un
marco) y de la arquitectura del
procesos.
computador
16. Algoritmos de Asignación
Los algoritmos de asignación de marcos, consideran el nivel de
multiprogramación, a
mayor número de procesos, menor número de marcos, existen
los siguientes algoritmos:
• Asignación equitativa.: Por ejemplo si hay 5 procesos y 93
marcos, cada proceso tendrá 18 marcos. Y los 3 restantes serán
marcos libres. En este caso está dejándose de lado el concepto
de jerarquía de procesos, todos son iguales
• Asignación proporcional: El parámetro de asignación, es el
tamaño del proceso, a mayor tamaño mayor número de marcos
disponibles. De igual manera no se considera la prioridad de
procesos.
17. • Asignación global y local: La asignación global, es el
algoritmo con mayor efectividad, pues, un proceso con
mayor prioridad, puede tomar marcos asignados a otros
procesos de menor prioridad, y asignarse para su mejor
desempeño, esto implica, que el número de marcos
asignados cambia.
•La asignación local: Es un algoritmo que solo toma de
entre sus marcos asignados, esto implica que el número de
marcos asignados no cambia.
18.
19. Sobre paginación o trashing:
Significa, alta actividad de paginación.
Si el proceso pasa más tiempo es esta actividad que en ejecución,
se dice que el trashing está presente, por tanto habrá graves
problemas de desempeño, pues, el uso del CPU será bajo y en
contraparte se ejecutarán un exceso de operaciones de E/S.
La razón para una sobre paginación, es la
multiprogramación:
Cuando el Sistema Operativo detecta que la CPU no está siendo
utilizada, permite que otro proceso sea almacenado en memoria.
Si se aplica la asignación global como algoritmo de reemplazo de
páginas, significa que, ciertos procesos producen fallos, por tanto,
quitarían marcos de otros procesos, esto implica que las
operaciones de E/S para traer y llevar marcos serán mayores que el
uso de CPU.
20. En conclusión la sobre paginación, provoca la
utilización mínima de CPU, mayor fallos de páginas.
Una solución podría ser aplicar el algoritmo de
reemplazo de páginas de asignación local, es decir los
procesos, solo pueden manipular sus marcos, para
evitar el robo de marcos de otros procesos.