Final_2015-05-27
Final_2015-05-27
Final_2015-05-27
:
Final de Sistemas 27/05/2015
Operativos
A) Teoría
: Explícitamente defina como o
VERDADERA FALSA
cada una de estas afirmaciones justificando brevemente.
Petros está revisando el código fuente del kernel del Sistema Operativo Natix. Al llegar al módulo de procesos, se da cuenta de
que el único bloque de control que encuentra presente es el PCB.
La documentación del File System de este Sistema menciona un módulo que realiza varios backups por dia, de dos formas
distintas. La primera realiza por hora un nuevo resguardo completo de todo el Sistema (administrando el espacio usando
asignación contigua). La segunda, realiza un resguardo completo al comienzo del día, y luego aplica sobre dicho backup los
nuevos cambios durante el día, hora por hora, hasta el día siguiente.
3) Es conveniente que la administración del espacio, en el segundo caso, también utilice un esquema asignación
contigua.
Corriendo concurrentemente algunos procesos de prueba, Petros concluye que: los procesos cortos (pocas ráfagas y e/s cortas)
finalizan rápido, los procesos I/O bound tienen un muy buen tiempo de respuesta, los procesos CPU bound no sufren de inanición,
no se utilizan prioridades puras ni colas multinivel y existe un alto overhead ante un cambio de proceso.
Por último, para evitar problemas de sincronización, modifica el código fuente del compilador default del sistema, para que rodee
de semáforos mutex cualquier sentencia que haga uso de un recurso compartido.
5) Si bien esta solución tiene un costo alto, elimina definitivamente la posibilidad de que un recurso quede en estado
inconsistente
B) Práctica
: resuelva los ejercicios justificando las respuestas
1)
Para combatir deadlocks, este Sistema utiliza la estrategia de Evasión. En un instante determinado, se obtiene la siguiente
información sobre los procesos que se encuentran en ejecución:
Necesidad máxima Recursos asignados Sabiendo que los recursos totales del sistema son
Totales = (3, 3, 3, 3)
R1 R2 R3 R4 R1 R2 R3 R4
a. Indique si el sistema está en Estado Seguro
P1 3 2 2 2 P1 1 1 1 0
b. ¿Podrán ser otorgados los pedidos P1 => 1R1 y P2
=> 1R4, respectivamente y en ese orden?
P2 2 2 0 1 P2 0 0 0 0
c. ¿Qué pedido debería realizarse para que ocurra un
P3 1 1 1 3 P3 0 1 1 1
deadlock?
2) El Sistema usa también Segmentación paginada (en 2 niveles) para administrar la memoria, con direcciones de 64 bits (tanto
físicas como lógicas). Las tablas de segmentos tienen 64 entradas, el primer nivel de paginación utiliza 18 bits, el segundo 20 bits
y los frames son de 1MB cada uno. Se está corriendo en este Sistema el proceso “Benchmark” cuyo espacio de direcciones se
referencia usando sólo el segmento 0, y pesa 2500 Bytes.
a. Indique si las referencias 0000|0000|0000|1010h y 0000|0000|00F0|0011h son válidas, mostrando cómo sería el proceso
de traducción a direcciones físicas.
b. Indique el contenido de la TLB tras los accesos anteriores. Tip: Puede usar P o F para representar páginas o frames cuya
dirección desconoce.
El tiempo de duración del examen final será de 90’ a contar desde el momento de comienzo del mismo. Si el alumno por algún
motivo comenzara más tarde sólo podrá utilizar el tiempo remanente. Utilice hojas separadas para la teoría / ejercicios.
Nota
:
Final de Sistemas 27/05/2015
Operativos
c. Indique el espacio ocupado por las estructuras necesarias para ejecutar este proceso
Teoría:
1) Falso, con una biblioteca se podrían correr ULTs, sin que el SO sepa de TCBs.
2) Verdadero, ante un pedido a un módulo del SO que esté fuera del kernel, será necesario un cambio de modo, con lo cual es
probable que la cantidad mayor se deba a un microkernel.
3) Falso, si los archivos se modifican es conveniente usar otro esquema, ya que les será difícil crecer si no.
4) Verdadero, todo nos lleva a pensar en SJF. La ausencia de inanición nos haría pensar en un mecanismo de aging. Y el
overhead en que se usa algún tipo de HRRN o bien estimaciones de ráfagas.
5) Falso, si hay una mala sincronización podríamos tener problemas de consistencia. Por ej, que un consumidor lea antes de que
un productor escriba en una estructura compartida.
Practica:
1.
Necesidad futura Recursos asignados
R1 R2 R3 R4 R1 R2 R3 R4
a. Disponibles = (2,1,1,2) => Chequeo Estado
P1 2 1 1 2 P1 1 1 1 0
Seguro
Atiendo a P3 y termina => D = (2, 2, 2, 3) P2 2 2 0 1 P2 0 0 0 0
Atiendo a P1 y termina => D = (3, 3, 3, 3)
Atiendo a P2 y termina => D = (3, 3, 3, 3) P3 1 0 0 2 P3 0 1 1 1
2. 64 bits > 6 segmento | 18 tabla de páginas 1er nivel | 20 tabla de páginas 2do nivel | 20 desplazamiento en la página
a. 2500 bytes > 1 página => Las direcciones de este proceso pueden estar en S = 0, TP1 = 0, TP2 = 0
001010h => últimos 5 valores para el desplazamiento => S = 0, TP1 = 0, TP2 = 0, Offset = 01010h => Válida
F00011h => últimos 5 valores para el desplazamiento => S = 0, TP1 = 0, TP2 = 15, Offset = 00011h => Inválida
b. La TLB tendría una única entrada con contenido válido: 0 | F (En formato Página | Frame)
Tabla de segmentos => Cada entrada tiene base y límite => 64 entradas x (64 bits + 64 bits) = 1KB
Tabla de páginas 1er nivel => Cada entrada tiene la dirección de la tabla de 2do nivel => 2^18 entradas x 64 bits = 2MB
Tabla de páginas 2do nivel => Cada entrada tiene la dirección del frame => 2^20 entradas x 64 bits = 8MB
Total = 1 TS + 1 TP1 + 1 TP2 = 10MB + 1KB (Asumendo que las TP de 2do nivel se crean si son necesarias)
Otra variante = 1 TS + 1 TP1 + 2^18 TP2 = 1KB + 2 MB + 2TB (Asumiendo que todas las TP 2do nivel se crearon)
El tiempo de duración del examen final será de 90’ a contar desde el momento de comienzo del mismo. Si el alumno por algún
motivo comenzara más tarde sólo podrá utilizar el tiempo remanente. Utilice hojas separadas para la teoría / ejercicios.
Nota
:
Final de Sistemas 27/05/2015
Operativos
Nota: Recordar que las direcciones se completan con ceros. Por ejemplo, F00011h podría haber sido 0000 0000 00F0 0011
El tiempo de duración del examen final será de 90’ a contar desde el momento de comienzo del mismo. Si el alumno por algún
motivo comenzara más tarde sólo podrá utilizar el tiempo remanente. Utilice hojas separadas para la teoría / ejercicios.