Universidad de Las Palmas de Gran Canaria Escuela Universitaria de Informática Sistemas Operativos Primer Parcial, curso 1994/1995 15 de febrero de 1995 1 (2 puntos) Mencione y comente al menos tres características (sustancialmente diferentes) en el funcionamiento de un sistema informático, por las cuales se podría afirmar que éste es multitarea. Mencione y comente al menos tres situaciones diferentes, en el contexto de un sistema operativo, en las que surja el riesgo de postergación indefinida o inanición; además, indique si existe o no solución para cada una de ellas. Enumere las posibles ventajas que aporta la planificación de procesos con multicolas frente los métodos con una sola cola. 2 (1½ puntos) Considere que, en un momento dado, existen las siguientes peticiones de uso de CPU en un sistema informático, expresadas aquí como unidades de tiempo demandadas por cada uno de los procesos: proceso A proceso B proceso C proceso D proceso E 2 u.t. 1 u.t. 8 u.t. 3 u.t. 5 u.t. Asumiendo que los procesos están encolados en el mismo orden arriba mostrado, planifique su ejecución según estos cuatro métodos: a)FCFS; b)SJF; c)Round-Robin (cuanto=1); d)Round-Robin (cuanto=3). La planificación ha de mostrar al menos qué proceso ocupa la CPU en cada unidad de tiempo. Se consideran inexistentes o despreciables los tiempos invertidos en actividades ajenas a la mera ejecución de estos procesos. Obtenga además las siguientes estadísticas sobre cada planificación: a) tiempo medio de retorno; b) tiempo medio de espera; c) varianza del tiempo de espera. A la vista de los estadísticos, indique si se manifiestan algunas de las propiedades distintivas de cada uno de los métodos. 3 (1½ puntos) En un sistema concurrente existen dos tipos de procesos, A y B, que compiten por utilizar cierto recurso. Al recurso se accede mediante la rutina de solicitarlo, esperar hasta que se pueda usar, usarlo y luego liberarlo. En cualquier momento puede haber un máximo de N procesos de cualquier tipo usando el recurso (N es constante). Por otro lado, para que un proceso de tipo A pueda entrar a emplear el recurso, debe haber al menos el doble de procesos de tipo B que procesos de tipo A dentro del recurso. Diseñe un algoritmo que cumpla con estas reglas de funcionamiento, utilizando para ello cualquiera de las herramientas de programación concurrente vistas en la asignatura. NOTA: si la solución se basa exclusivamente en semáforos, la pregunta se puntuará sobre un máximo de 2½ puntos. 4 (2 puntos) ¿Son ciertas las siguientes afirmaciones? Razone sus respuestas. A) La existencia del área de intercambio en un sistema implica la existencia de memoria virtual. B) En un sistema monousuario la memoria virtual carece de utilidad. C) En sistemas paginados el problema de la ubicación es sencillo de resolver; su solución consiste simplemente en buscar una celda disponible mediante la tabla de celdas de página. D) La paginación es mejor que la segmentación puesto que cumple mejor los objetivos de la gestión de memoria. E) La tasa de fallos de página de un proceso se disminuye aumentándole su número de páginas en memoria. Sea la siguiente secuencia de referencias a página (en hexadecimal) realizadas por un proceso: 75, 144, 75, 263, 75, 168, 75, 144, 179, 144, A2, 263. Asumiendo un número máximo de tres páginas en memoria, calcule la tasa de fallos para cada una de las siguientes políticas de sustitución: A) Algoritmo óptimo, B) LRU, C) NRU. 5 (3 puntos) TEST. En cada uno de los 30 apartados numerados, señale cuál opción es correcta. En caso de que existan varias opciones ciertas, se considerará como correcta la más completa. La puntuación absoluta de esta pregunta se establecerá a partir de la fórmula puntuación = 1/10 x respuestas correctas - 1/30 x respuestas erróneas Observe que las preguntas no contestadas no puntúan, y que las contestadas erróneamente penalizan. Señale con bolígrafo sus respuestas sobre estas hojas de enunciado, rodeando la letra de la opción correcta con un redondel. Si se equivoca, enmiende la respuesta con una tachadura en la opción incorrecta y rodee la letra que considere correcta. Las preguntas respondidas con lápiz o con múltiples redondeles no tachados se considerarán no contestadas. 1) Para garantizar la integridad y la protección de un sistema informático, estas funciones han de estar necesariamente implementadas en circuitería: a) temporizador (timer) del sistema b) guardar en la pila el estado del procesador c) sistema de ficheros d) acceso directo a memoria 2) Los objetivos de los sistemas distribuidos son: a) Gestionar el procesamiento distribuido b) Aprovechar la tolerancia a fallos c) a) y b) son ciertas d) ninguna de las anteriores 3) Un sistema operativo nunca... a) pretende simplificar las tareas del usuario b) ha de disminuir la capacidad ofrecida por los recursos del hardware c) permite utilizar directamente los periféricos d) realiza trabajo productivo para el usuario 4) El procesamiento por lotes... a) surgió como avance respecto al modo batch b) es menos eficiente que el buffering c) agrupa las tareas en lotes planificados mediante un Round-Robin d) puede ser multiprogramado y además multiusuario 5) El modo dual de operación significa o implica que a) no se puede acceder la memoria del sistema operativo b) el sistema protege los ficheros de distintos usuarios c) determinadas operaciones han de ser privilegiadas d) se genera una excepción siempre que se pretende acceder a los datos de otro usuario 6) El procesamiento off-line es... a) un esquema de gestión de la entrada/salida b) incompatible con el tiempo compartido c) volcar los resultados en tarjetas perforadas, antes de escribirlos a una cinta. d) más veloz que el buffering 7) La afirmación de que un sistema operativo es un programa dirigido por eventos implica que a) responde a interrupciones b) atiende eventos generados por los periféricos c) atiende eventos generados por los programas d) son ciertas todas las anteriores 8) Las llamadas al sistema... a) cambian hacia modo supervisor b) suelen apoyarse en instrucciones de máquina especiales c) son generadas por los programas del usuario d) todas las anteriores son ciertas 9) Si un sistema operativo dispone de una tabla en memoria con los puntos de entrada a los distintos servicios del sistema, utilizados por una típica instrucción de máquina TRAP, a) el acceso a la tabla ha de ser restringido b) la instrucción TRAP ha de ser privilegiada c) al hacer un cambio de contexto hay que guardar en otra área el estado de la tabla para el proceso entrante d) al hacer un cambio de contexto hay que guardar en otra área el estado de la tabla para el proceso saliente 10) El modelo más modular de diseño de un sistema operativo, de los aquí enumerados, es: a) el monolítico b) el de máquina extendida c) el jerárquico d) el de clientes y servidores 11) Un sistema operativo no puede ser a) por lotes y multiprogramado b) multiusuario y de tiempo real c) distribuido y uniprogramado d) jerárquico y uniusuario 12) El usuario puede invocar a los servicios del sistema a través de... a) el intérprete de órdenes b) las interrupciones del sistema c) el modo dual de operación d) el comando de llamada 13) En un sistema se observa que un proceso de edición de un usuario no es atendido hasta pasadas dos horas. Esto quiere decir que a) el sistema no es multiusuario b) el sistema es de tiempo compartido c) el sistema no es de tiempo compartido d) el sistema no es interactivo 14) De los elementos enumerados a continuación, el que menos influye en el tamaño óptimo del cuanto de tiempo de un Round- Robin es: a) el repertorio de instrucciones de la máquina b) la velocidad de acceso al disco c) el número medio previsto de procesos en cola d) los requerimientos de tiempos de respuesta del sistema 15) El planificador a largo plazo de procesos a) debe existir en todo sistema multiprogramado b) realiza los cambios de contexto c) puede ayudar a mantener los dispositivos de E/S más ocupados d) todas las anteriores son falsas 16) La gestión de procesos en UNIX... a) se corresponde con un modelo multicola sin realimenta- ción b) planifica los procesos del sistema mediante un algoritmo aproximado al SJF c) da más preferencia a los procesos intensivos en E/S d) mantiene un riesgo de inanición sobre los procesos intensivos en CPU 17) Los monitores, comparados con las regiones críticas con- dicionales, a) son más potentes para especificar concurrencia b) son menos potentes a la hora de establecer la exclusión mutua c) aportan una mayor modularidad a los programas d) consiguen dar una solución válida al interbloqueo 18) La situación consistente en que un proceso consume tiempo de CPU a la vez que se halla en situación de bloqueo por un evento se conoce como a) inanición b) interbloqueo c) bloqueo indefinido d) espera activa 19) En la planificación de procesos: a) para conseguir un sistema interactivo, es conveniente utilizar un SJF expropiativo (preemptive) b) el efecto convoy desaparece si se aplica un Round-Robin como política de planificación de procesos c) utilizando métodos con prioridades puede aparecer el problema del interbloqueo de procesos menos favorecidos d) todas las anteriores son ciertas 20) La técnica del envejecimiento de procesos a) se aplica a los métodos multicolas y ayuda a seleccionar posibles procesos perjudicados b) evita efectos indeseados en los métodos con prioridades c) atenúa el efecto perjudicial del cambio de contexto d) a) y b) son ciertas 21) La instrucción de máquina JOIN: a) permite construir por sí sola cualquier grafo de prece- dencia de procesos b) es una herramienta de creación de procesos menos potente que la sentencia concurrente c) es una herramienta de sincronización de procesos d) lleva como operando una dirección de memoria a la que salta el flujo de ejecución bajo ciertas condiciones 22) Una solución correcta al problema de la sección crítica: a) debe garantizar la exclusión mutua b) debe garantizar que un proceso no interesado en entrar en sección crítica no impida a otros procesos inter- esados entrar en ella c) a) y b) son ciertas d) a) es cierta y b) lo sería sólo cuando se desea obtener una mayor velocidad en la gestión de la entrada en sección crítica 23) Las regiones críticas condicionales a) permiten resolver más problemas de sincronización que las regiones críticas simples b) permiten resolver más problemas de sincronización que los semáforos c) a) y b) son ciertas d) a) es falsa 24) En un canal de capacidad nula a) sólo se puede efectuar la transmisión si los dos ex- tremos de la comunicación están disponibles para ello b) sólo se pueden transmitir datos de un tipo predeter- minado c) sólo se puede almacenar un mensaje pendiente de recibo d) sólo existe un rendez-vous por transacción entre mensajes 25) El problema de la sección crítica aparece porque a) existen sistemas de memoria compartida aparte de los de paso de mensajes b) la espera activa es insuficiente para resolver la exclusión mutua de procesos concurrentes c) la ejecución de porciones de código del sistema opera- tivo accediendo a tablas protegidas ha de efectuarse en exclusión mutua d) varios procesos concurrentes pueden acceder a un mismo conjunto de datos 26) Las instrucción P ó WAIT sobre un semáforo a) no ha de ser atómica si se trata de un semáforo binario b) duerme siempre al proceso llamador hasta que otro proceso ejecute una V o SIGNAL sobre el mismo semáforo c) a) y b) son ciertas d) b) es falsa 27) Un proceso en estado de bloqueo a) siempre espera por la ocurrencia de un evento b) siempre espera por la conclusión de una actividad de E/S c) reside en la cola de preparados en espera de entrar nuevamente en la CPU d) reside en la cola de procesos de baja prioridad 28) El dotar de soporte para la concurrencia a un sistema informático uniprocesador a) nunca aumentará la velocidad del mismo, dado que sólo existe un procesador b) puede aumentar la velocidad del mismo, aunque sólo disponga de un procesador c) exige la creación de distintas estructuras de datos para distinguir a los usuarios potenciales del sistema d) complica necesariamente la interacción con el sistema 29) Los métodos expropiativos (preemptive) de planificación de procesos... a) han de incluir técnicas que eliminen el riesgo de interbloqueo b) han de incluir técnicas que eliminen el riesgo de inanición c) son la única forma de dotar de interactividad al sistema d) son eficientes frente a los no expropiativos si hay una adecuada mezcla de procesos intensivos en CPU y en E/S 30) Un sistema operativo nunca: a) administra recursos físicos b) incrementa la velocidad de la CPU c) controla el acceso de humanos al sistema informático d) ocupa tiempo de CPU aprovechable en otras actividades Dispone de cuatro horas para concluir este examen. Aproveche su tiempo y no deje de consultar sus dudas. Razone adecuadamene sus respuestas. No dé por supuesto nada: sea lo más claro posible y no deje lagunas a la libre interpretación del evaluador. Ánimo o suerte, lo que usted prefiera.