Sistemas operativos modernos
Para entender por qué funciona esta fórmula, regresemos al rectángulo grueso de la figura 4-25. M es el número de marcos de página que hay en la parte superior de M. Un fallo de pá gina se presenta cada vez que un elemento de la cadena de distancias es w -i- 1 o más. La su- matoria de la fórmula anterior calcula el total de las veces que aparecen tales elementos. Este modelo también puede servir para hacer otras predicciones (Maekawa et a l, 1987). 4.6 ASPECTOS DEDISEÑO DE LOS SISTEMAS CON PAGINACIÓN En las secciones anteriores explicamos cómo funciona la paginación, describimos algunos de los algoritmos de reemplazo de páginas básicos y mostramos cómo modelarlos. Sin embargo, no basta con entender sólo la mecánica. Para diseñar un sistema, necesita mucha más informa ción si desea que funcione bien. Es como la diferencia entre saber cómo mover la torre, el ca ballo, el alfil y demás piezas de ajedrez, y ser un buen jugador. En las secciones que siguen examinaremos otros aspectos que los diseñadores de sistemas operafivos deben considerar con detenimiento para obtener un buen desempeño de un sistema de paginación. 4.6.1 Políticas de asignación local y global En las secciones anteriores estudiamos varios algoritmos para escoger la página que será reem plazada cuando se presente un fallo de página. Una cuesfión importante asociada con esta de cisión (que hasta ahora nos hemos cuidado de esconder bajo la alfombra) es cómo debe repartirse la memoria entre los procesos ejecutables que compiten por ella. Demos un vistazo a la figura 4-28a. En ella, tres procesos, A , B y C, consfituyen el conjun to de procesos ejecutables. Supongamos que A causa un fallo de página. ¿El algoritmo de reem plazo de páginas deberá tratar de hallar la página menos recientemente usada considerando sólo las seis páginas que A tiene asignadas en la actualidad, o deberá considerar todas las pá ginas que están en la memoria? Si sólo se examinan las páginas de A, la de menor edad será y45, y tendremos la situación de la figura 4-28b. Por otra parte, si se desaloja la página de menor edad sin considerar a qué proceso perte nece, se escogerá la página 53 y tendremos la situación de la figura 4-28c. El algoritmo de la figura 4-28b es de reemplazo de páginas local, mientras que el de la figura 4-28c es global. Los algoritmos locales equivalen de hecho a asignar una fracción fija de la memoria a cada proceso. Los algoritmos globales asignan en forma dinámica los marcos de páginas entre los pro cesos ejecutables. Así, el número de marcos de página asignados a cada proceso varía con el fiempo. En general, los algoritmos globales funcionan mejor, sobre todo si el tamaño del conjunto de trabajo puede variar durante la vida de los procesos. Si se usa un algoritmo local y el con junto de trabajo crece, habrá hiperpaginación, aunque haya muchos marcos de página desocu pados. Si el conjunto de trabajo se encoge, los algoritmos locales desperdician memoria. Si se usa un algoritmo global, el sistema debe decidir de manera confinua cuántos marcos de pági-
RkJQdWJsaXNoZXIy MjI4NDcx