1 Tarea 4.2 1. Cuál es la diferencia entre paginación simple y paginación en memoria virtual? En memoria virtual no es necesario que todas las páginas estén en marcos de la memoria principal. Las páginas se pueden leer cuando se necesiten. Y cada vez que se carga una página en memoria principal se puede exigir la descarga de otra en el disco. 2. Explique la Hiperpaginación. La hiperpaginación es el excesivo intercambio de fragmentos de procesos que se lleva a cabo entre el sistema operativo y la memoria. Aquí el procesador consumirá más tiempo en los intercambios de los fragmentos que ejecutando las instrucciones del usuario. 3. Por que es el principio de cercanía crucial para el uso de memoria virtual? El principio de cercanía se convierte en crucial ya que este nos dice que las referencias a programas y datos dentro de un proceso pueden agruparse. Por lo tanto en ciertos periodos de tiempo se harán uso de pocos fragmentos de dichos procesos; esto nos ayudará a evitar la hiperpaginación o el intercambio masivo de fragmentos de procesos. 4. Qué elementos se encuentran, normalmente, en una entrada de tabla de páginas? Cada página de un proceso esta formada por un número de página y un desplazamiento. El número de página de la dirección virtual se emplea como índice de esta tabla para buscar el número de marco correspondiente. Este número se combina con el desplazamiento para generar la dirección real deseada.
2 5. Cuál es el propósito del buffer de traducción adelantada? El buffer de traducción adelantada trabaja como la memoria cache del computador; esto quiere decir que el TLB (por sus siglas en ingles, Translation Lookaside Buffer) va a contener aquellas entradas de páginas usadas mas recientemente. 6. Defina brevemente las alternativas en políticas de lecturas de páginas. Paginación por Demanda; se trae una página a la memoria principal sólo cuando se hace referencia a una posición en dicha página. Paginación Previa; se cargan otras páginas distintas a las demandadas debido a un fallo de página. 7. Cuál es la diferencia entre gestión del conjunto residente y política de reemplazo de páginas? Tanto la gestión del conjunto residente, como la política de reemplazo están dadas para sustituir alguna o algunas páginas defectuosas de los procesos en ejecución. La diferencia se encuentra en que la política de reemplazo mantiene todas las páginas del proceso en memoria; lo cual puede hacer un mal uso de la misma. Mientras que la gestión del conjunto residente solo llevara las páginas necesarias para que el proceso se ejecute y si alguna página sufre deterioro el sistema operativo buscara y la reemplazará. 8. Cuál es la relación entre los algoritmos de reemplazo de paginas FIFO y del reloj? La relación existente entre estos algoritmos es que ambos necesitan tener un puntero o un bit de control, para llevar un control de las páginas cargadas en memoria. La diferencia esta en que el algoritmo del reloj al detectar un bit en 1 descarta el marco de página que lo contenga. 9. Cuál es la ventaja del almacenamiento intermedio de páginas?
3 Lo importante de esta operación es que la página a reemplazar permanece en la memoria. Así pues, si el proceso hace referencia a dicha página, se devuelve al conjunto residente del proceso con un coste pequeño. En realidad, las listas de páginas libres y modificadas actúan como una cache de páginas. La lista de páginas modificadas tiene otra función provechosa: las páginas modificadas son reescritas por bloques, en vez de una a una. Esto reduce significativamente el número de operaciones de E/S y, por lo tanto, la cantidad de tiempo de acceso al disco. 10. Por qué no es posible combinar una política de reemplazo global y una política de asignación fija? Esto se da ya que la política global ve todas las páginas de la memoria como candidatas para reemplazar, independiente del proceso particular a quien pertenezca. La asignación fija va a buscar las páginas de su propio proceso para reemplazar una deteriorada. 11. Cuál es la diferencia entre un conjunto residente y un conjunto de trabajo? El conjunto de trabajo hace referencia a las paginas accesadas por un proceso en un instante de tiempo. El conjunto residente esta basado en el reemplazo de páginas deterioradas de los procesos. 12. Cuál es la diferencia entre vaciado por demanda y vaciado previo? Con vaciado por demanda una página se escribirá en la memoria secundaria sólo cuando haya sido elegida para reemplazarse. El vaciado previo escribe las páginas modificadas antes de que se necesiten sus marcos, de formas que las páginas puedan escribirse por lotes.
4 Problemas. 1. Un proceso tiene asignados 4 marcos de páginas. (Todos los números siguientes son decimales y todo está numerado empezando por cero.) El instante de la última carga de páginas en cada marco y los bits de referencia (R) y modificación (M) para cada marco son los dados (los instantes se dan en pulsos del reloj del procesador desde el instante 0 hasta el suceso, no el número de pulsos desde el suceso hasta el instante actual. Número de Marco de Instante Instante Bit R Bit M página virtual Página de Carga de Referencia 2 0 60 161 0 1 1 1 130 160 0 0 0 2 26 162 1 0 3 3 20 163 1 1 Se produjo un fallo en la pagina virtual 4. Qué marco reemplazará su contenido para cada una de las siguientes políticas de gestión de memoria?
5 FIFO; Mediante este algoritmo el marco 4 será reemplazado por la pagina #0 con el marco #2 ya que es el que le sigue. LRU; Al igual que FIFO la pagina 0 y el marco 2 reemplazara dicha información ya que como le sigue y es una de las primeras cargadas. RELOJ; Tanto este algoritmo como el de OPTIMO actuaran de la misma forma que los anteriores, esto es por que las paginas se están cargando y se leerán una y otra vez las mismas paginas. 1.1 Dado el estado de memoria anterior, inmediatamente antes del de página, considérese la siguiente serie de referencias a páginas virtuales. 4, 0, 0, 0, 2, 4, 2, 1, 0, 3, 2
6 Cuantos fallos de página se producirán sí se emplea la política de conjunto de trabajo con un tamaño de ventana de cuatro en vez con asignación fija? 2. Un proceso hace referencia a cinco paginas A, B, C, D y E, en el siguiente orden. A; B; C; D; A; B; E; A; B; C; D; E Supóngase que el algoritmo de reemplazo es el de FIFO y determines el número de transferencia de páginas durante esta secuencia de referencias, comenzando con la memoria principal vacía con 3 marcos de página. Repítase para 4 marcos de páginas.
7 Para 3 marcos Para 4 marcos 3. Un proceso contiene 8 páginas virtuales en el disco y se asignan con una ubicación fija de cuatro marcos de página en la memoria principal. Se produce la siguiente serie de páginas: 1, 0, 2, 2, 1, 7, 6, 7, 0, 1, 2, 0, 3, 0, 4, 5, 1, 5, 2, 4, 5, 6, 7, 6, 7, 2, 4, 2, 7, 3, 3, 2, 3 Muéstrese la sucesión de páginas residentes en los 4 marcos usando la política de reemplazo LRU. Calcule la tasa de aciertos en la memoria principal. Considérese que los marcos están inicialmente vacíos. Repita el apartado (a) para la política de reemplazo FIFO. Compare las dos tasas de acierto y comente la efectividad del uso FIFO como aproximación LRU con respecto a esta serie particular.
8 En LRU las páginas 1, 0, 7 y 6 son muy referidas, mientras que en FIFO esto no influye.