Apellidos:________________________________ Nombre..:________________________________ Sistemas Operativos Bloque 1 Curso 05-06 – Primera Convocatoria Tiempo: 20 minutos. Cuestión 1 Enumere qué ventajas tiene la implementación de llamadas al sistema mediante interrupciones frente a la implementación mediante llamada a rutinas. (3 puntos) 1. La conmutación a modo supervisor se hace de manera atómica e implícita a la propia instrucción que produce la llamada. 2. El propio hardware provee el mecanismo por el que se determina la dirección de la rutina de entrada al SO, abstrayendo al proceso de estos detalles. 3. Posibilita que un fallo de protección o un error causado por una instrucción sea tratado como una llamada implícita al SO Cuestión 2 ¿Qué inconveniente tiene el método de planificación “primero el más corto con apropiación” (PSJN) sobre su versión no apropiativa (SJN)? (3 puntos). En la versión no apropiativa del algoritmo, los procesos largos pueden ver indefinidamente aplazado el inicio de su ejecución mientras lleguen procesos cortos al sistema. No obstante, una vez comenzada la ejecución, el proceso largo tiene la garantía de poder terminar. En la versión apropiativa, al problema del aplazamiento indefinido en el comienzo de la ejecución se le añade el hecho de que una vez comenzada la ejecución el proceso largo puede ser apropiado, y ver aplazada de manera indefinida su terminación si llegan continuamente procesos más cortos que el tiempo restante para terminación, por lo que no se garantiza la terminación una vez comenzada la ejecución. Cuestión 3 En un sistema en el que se ejecutan 6 procesos, se emplea el método de las matrices binarias de relación para detectar interbloqueos. En un momento dado, a partir de la matriz de recursos asignados (A) y de la matriz de procesos en espera (W) se ha calculado el cierre transitivo: 0 0 1 6 i T+= ∑ (W × A) = 1 i =1 0 0 1 1 0 0 0 0 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 1 1 1 0 0 1 1 ¿Existe en dicho instante algún ciclo de procesos interbloqueados en el sistema? En caso afirmativo, indique cuántos ciclos de procesos interbloqueados hay y qué procesos los componen, siendo P1 el proceso de la primera fila/columna, P2 el de la segunda, y así sucesivamente (4 puntos). Dado que hay procesos que tienen un 1 en la diagonal principal, hay procesos que están interbloqueados. Y dado que existen dos configuraciones distintas de unos y ceros en las filas, (0 1 0 0 1 1) y (1 0 1 1 0 0), hay dos ciclos de procesos interbloqueados. Uno de ellos está compuesto por los procesos P2, P5 y P6 (nótese que P1 no está en el ciclo pues no tiene un 1 en la diagonal principal, si bien tiene la misma configuración de unos y ceros pues esperará a los procesos del ciclo) y otro compuesto por los procesos P3 y P4. Apellidos:________________________________ Nombre..:________________________________ Sistemas Operativos Bloque 2 Curso 05-06 – Primera Convocatoria Tiempo: 20 minutos. Cuestión 1 ¿Qué inconvenientes tiene la entrada/salida guiada por programa frente la entrada/salida guiada por interrupciones? ¿En qué casos es preferible (o al menos admisible) la primera? (3 puntos). La entrada/salida guiada por programa tiene como principal inconveniente la espera ocupada que produce mientras espera que el dispositivo (o dispositivos) esté preparado. En caso de que el sistema tenga que realizar otras actividades, además de controlar los dispositivos, introduce la dificultad de que los dispositivos deben ser muestreados periódicamente con una periodicidad menor que el tiempo de servicio del dispositivo más rápido, lo cual puede ser complicado. Por ello, en general sólo es admisible su uso cuando se puede determinar de antemano cuándo el dispositivo a controlar va a requerir servicio y además el tiempo de respuesta del dispositivo es del mismo orden de tiempo que la velocidad de ejecución de la CPU (lo que hace la espera ocupada razonablemente corta). También es admisible su uso en sistemas dedicados exclusivamente al control de dispositivos. Cuestión 2 En el diseño de un grabador de DVD con disco duro, se consideran por su bajo coste los dos modelos de discos de Seagate cuyas características se muestran a continuación. Los archivos de audio y vídeo serán normalmente archivos de gran tamaño que ocuparán un considerable número de cilindros físicamente adyacentes. Para la grabación y reproducción de este tipo de archivos es fundamental que el disco sea capaz de mantener una elevada velocidad de transferencia durante la operación. A la vista de dichas características y sin tener en cuenta diferencias de precio, ¿cuál de los discos sería el más apropiado para nuestro sistema? ¿Por qué? (3 puntos). Modelo Capacidad Velocidad de rotación Tiempo medio de búsqueda ST380020ACE ST380021A 80Gb 80Gb 5.400 r.p.m. 7.200 r.p.m. 8,9 ms 9,5 ms Al transferirse archivos que ocuparán cilindros consecutivos, de los tres tiempos que depende el tiempo de acceso (tiempo de búsqueda, demora de rotación y tiempo de transferencia), el que menos impacto tendrá será el tiempo de búsqueda pues una vez localizado el sector en que comienza el archivo, se transferirán cilindros completos y el paso al cilindro siguiente conllevará el tiempo mínimo de búsqueda. Por tanto, el mayor impacto lo tendrá el tiempo de transferencia, que depende inversamente de la velocidad de rotación. Es por ello por lo que será preferible el modelo ST380021A que tiene una mayor velocidad de rotación, a pesar de que su tiempo medio de búsqueda sea ligeramente superior. Cuestión 3 En un sistema con memoria virtual en el que se utiliza el algoritmo LRU (página menos recientemente usada) como criterio de sustitución, se ejecuta un proceso que ejecuta la siguiente cadena de referencias: 1,2,3,2,3,4,3,4,5,6,7,8,6,2,5. ¿Cuántos fallos de página se producirían si el proceso se ejecuta con 5 marcos? ¿Cuáles de ellos se deben al arranque en frío? Indique cada vez que efectúe una sustitución qué página sustituye a qué página. Si el proceso se ejecutase con 6 marcos, ¿cuántos fallos de página se producirían como máximo? (4 puntos). 1 1 2 3 2 3 4 3 4 5 6 7 8 6 2 5 2 3 2 3 4 3 4 5 6 7 8 6 2 5 1 2 3 2 3 4 3 4 5 6 7 8 6 2 1 1 2 2 2 3 4 5 6 7 8 6 1 1 1 2 3 4 5 5 7 8 1 2 3 4 4 5 7 A.F. 6S1 7S2 8S3 1 A.F. A.F. A.F. A.F. 2S4 Se producen 9 fallos de página de los que los marcados como A.F. son debidos al arranque en frío, y los indicado como xSy significan “página x sustituye a página y”. Si se ejecutase la cadena de referencia con 6 marcos, al no producir anomalía de Belady el algoritmo LRU por ser algoritmo de pila, se producirían como mucho 9 fallos de página.