lunes, 28 de mayo de 2012

6.7.1 Rango de asignación



La gestión de la memoria virtual para un sistema operativo multiprogramado debe
determinar entre qué páginas se aplica el algoritmo de reemplazo. Hay dos políticas
alternativas:
(a)  Asignación global. Las referencias generadas por todos los programas se
consideran como una secuencia de referencias única, de forma que un fallo de
página producido por un programa puede provocar que salga de memoria
una página de otro programa (esta será la elección más probable para la mayor
parte de los algoritmos de reemplazo, ya que las páginas del proceso en
ejecución son precisamente las más recientemente referenciadas).
 (b)  Asignación local. El algoritmo de reemplazo se aplica exclusivamente entre
las páginas del proceso. Hay que establecer los criterios para el reparto de los
marcos de página entre los procesos. Fundamentalmente hay dos
posibilidades:
(b1) Igual número de marcos para cada proceso. Si hay M marcos de página
y N programas, cada programa dispone de M/N marcos de página. Este
criterio penaliza excesivamente a los programas de gran tamaño.
(b2) Asignación proporcional. Si un proceso i ocupa si
 páginas, definiendo
S=Σsi
  como la suma del tamaño de los N procesos (S>M), la asignación
de páginas para el proceso i, ai
, será:
ai = (si
/S ) M
 Este criterio se puede combinar con la prioridad del proceso.

Las alternativas descritas son extremos entre los que caben soluciones intermedias.
Por ejemplo, la asignación global se puede suavizar introduciendo límites (máximos
y mínimos) en el número de marcos de página que tiene asignado cada proceso.

No hay comentarios:

Publicar un comentario