14 de julio de 2000
Universidad de Las Palmas de Gran Canaria
Escuela Universitaria de Informática
Facultad de Informática
Sistemas Operativos
Convocatoria de  junio, año 2000
7 de julio de 2000

Todas las preguntas valen 2 puntos. Dispone de 4 horas para completar el examen.


1 TEST. En cada uno de los siguientes apartados, señale cuál opción es correcta. En caso de que existan varias opciones ciertas, se considerará como correcta la más completa o precisa. Las preguntas no contestadas no puntúan; las contestadas erróneamente penalizan un tercio de su valor. Señale sus respuestas rodeando con un círculo la opción correcta. Si se equivoca, tache la respuesta incorrecta y rodee la opción que considere correcta. Escriba con tinta. Las preguntas respondidas con lápiz o con varios círculos no tachados se considerarán no contestadas.


1. Una llamada al sistema

  1. cambia de modo usuario a modo núcleo
  2. es un tipo especial de programa del sistema
  3. es una interfaz con el intérprete de órdenes
  4. todas las anteriores son ciertas

2. Un manejador de dispositivo es
  1. hardware que controla un dispositivo
  2. software que controla un dispositivo
  3. un proceso que controla un dispositivo
  4. todas las anteriores son falsas

3. ¿Cuál de estas combinaciones no se puede dar?
  1. concurrencia sin tiempo compartido
  2. tiempo compartido sin concurrencia
  3. tiempo compartido sin paralelismo
  4. paralelismo sin tiempo compartido

4. El sistema operativo UNIX/Linux es un caso de:
  1. sistema de procesamiento por lotes
  2. sistema multiprogramado
  3. sistema de tiempo compartido
  4. sistema no multiprogramado

5. De las siguientes operaciones, la que menos tiempo ha de consumir es:
  1. traducción de una dirección lógica a dirección física
  2. cambio de contexto
  3. detección de interbloqueo
  4. gestión de un fallo de página

6. ¿Qué política de planificación de procesos logra un reparto más equitativo del tiempo del procesador?
  1. FCFS
  2.  SJF
  3.  Métodos basados en prioridades
  4. Round Robin

7. ¿En qué política de planificación de procesos podemos aplicar intercambio (swapping)?
  1. FCFS
  2.  SJF
  3.  Métodos basados en prioridades
  4. En las tres anteriores

8. Una condición no necesaria para la aparición del interbloqueo es
  1. la existencia de recursos con número finito de ejemplares
  2. la posibilidad de espera con retención de recursos
  3. la existencia de recursos que exigen exclusión mutua
  4. la aparición de un estado inseguro

9. ¿En cuál de estas políticas de gestión de memoria la fragmentación externa supone un mayor problema?
  1. contigua con particiones múltiples (MFT)
  2. segmentación
  3.  paginación
  4.  segmentación combinada con paginación

10. La utilización de TLB (registros asociativos)
  1. es conveniente si se utiliza paginación
  2. es conveniente si se utiliza segmentación
  3. es conveniente en ambos casos
  4. es imprescindible en ambos casos

11. En un sistema con memoria virtual, el tamaño del espacio lógico de un proceso
  1. debe ser menor que la memoria real disponible
  2. debe ser mayor que la memoria real disponible
  3. puede ser mayor que la memoria real disponible
  4. debe ser exactamente igual que la memoria real disponible

12. ¿Cuál de estas operaciones en un sistema de paginación por demanda corre a cargo del hardware?
  1. traducción de dirección lógica a dirección física
  2. aplicación de la política de reemplazo de páginas
  3. confección de la tabla de páginas
  4. colocar el valor adecuado en el bit de validez

13. ¿En cuál de las siguientes políticas es más sencillo hacer crecer de tamaño un archivo, considerando el peor caso?
  1. contigua
  2.  enlazada
  3.  indexada
  4.  la dificultad es similar en todas ellas

14. ¿En cuál de estas políticas es más costoso el acceso directo a archivos?
  1. contigua
  2.  enlazada
  3.  indexada
  4.  el coste es similar en todas ellas

15. La eliminación de un archivo o directorio es más complicada en los sistemas de archivos:
  1. con dos niveles de directorios
  2. en forma de árbol
  3. en forma de grafo acíclico
  4. en forma de grafo general


2 Responda brevemente a las siguientes preguntas sobre el sistema operativo Nachos:
  1. ¿Para qué sirve la operación Yield() ?
  2. ¿Qué política de gestión de memoria adopta el código fuente original de Nachos?
  3. ¿Cómo se pasa en Nachos de modo usuario a modo núcleo y viceversa?
  4. ¿Por qué los programas de usuario se compilan por separado del Nachos? ¿Por qué se utiliza un compilador diferente para ellos?


3 En un sistema de memoria virtual, considere esta cadena de referencias a memoria:
4,2,1,2,3,1,2,4,1,2,3,2,4,2,3
Suponiendo que disponemos de tres marcos que inicialmente están libres, ¿la política óptima da un mejor resultado que la LRU?


4 Para los tres políticas básicas de asignación de espacio para archivos (contigua, enlazada e indexada), analice en cuál de ellas es más probable que un daño en un bloque físico al azar produzca la pérdida de la totalidad de un archivo. 


5 En sistema multitarea queremos administrar el acceso a un recurso de uso exclusivo. Los procesos adquieren y liberan el recurso mediante las funciones enteras int Pido_Recurso(int pid) e int Libero_Recurso(int pid), respectivamente. El parámetro pid sirve de identificador de proceso. Se trata de implementar estas dos subrutinas utilizando cerrojos y variables condición como herramientas de sincronización. Su implementación deberá cumplir estas especificaciones:  Puede realizar la implementación en cualquier especificación algorítmica que se pueda entender. Acuérdese de declarar las variables globales, en caso de que su implementación las requiera.