domingo, 28 de noviembre de 2010

4.5 Aspectos de diseño de los sistemas con paginación

El modelo del conjunto del trabajo

En la forma más pura de paginación, los procesos se inician con ninguna de sus páginas en la memoria. El proceso tiene la mayor parte de las páginas que necesita y se dedica a ejecutarse con relativamente pocas fallas de página. Este método se denomina paginación por demanda por que las paginas se cargan solo cuando se piden, no por si solas.

El conjunto de páginas que el proceso está usando actualmente es un conjunto de trabajo. Si todo el conjunto de trabajo esta en la memoria, el proceso se ejecutara sin causar muchas fallas hasta que pase a otra fase de ejecución.

La carga de las páginas antes de dejar que los procesos se ejecuten se denomina prepaginación.

Políticas de asignación Local vs. Global

Los algoritmos locales corresponden a asignar a cada proceso una fracción fija de la memoria. Los algoritmos globales reparten dinámicamente marcos de página entre los procesos ejecutables.

Los algoritmos globales funcionan mejor, cuando el tamaño del conjunto de trabajo puede variar durante la vida de un proceso. Si se emplea un algoritmo local y el conjunto de trabajo crece, habrá thrashing.

Tamaño de página

El tamaño de pagina es un parámetro que el SO puede escoger. Un tamaño de página grande hará que haya mayor proporción de programa que no se utiliza en la memoria que si usan las páginas pequeñas. El empleo de páginas pequeñas implica que los programas, y la tabla de páginas será grande.

En algunos ordenadores, la tabla de páginas debe cargarse en registros de hardware que cada CPU conmuta de un proceso a otro.

Interfaz de memoria virtual

Hasta este punto hemos notado que la memoria virtual es transparente para los procesos y los programadores. Una estrategia para los programadores para controlar su mapa de memoria es permitir que dos o más procesos compartan la misma memoria. Cuando dos o más procesos comparten las páginas, hace posible la compartición de ancho de banda: un proceso escribe en la memoria compartida y el otro la lee.

Otra estrategia de administración avanzada de memoria es la memoria compartida distribuida, es decir, que múltiples procesos en una red compartan un conjunto de páginas, como un solo espacio de direcciones lineal compartido.

1 comentario: