Examenes Con Soluciones SO
Examenes Con Soluciones SO
1.- Implementar el seudo-código correspondiente para que tres procesos que comparten un recurso lo hagan de manera
exclusiva.
Process Padre
begin
inicializa(mutex, 1); /*inicialización del semáforo binario mutex*/
Cobegin /*ejecución concurrente de P1, P2 y P3*/
P1; P2; P3;
coend;
end;
2.- Un sistema posee una memoria física de 64Kbytes dividido en marcos de páginas de tamaño 4Kbytes. Un programa
tiene un código de tamaño 32768 bytes, un conjunto de datos de 16386 bytes y una pila de 15870 bytes. ¿Se podrá cargar
este programa en la memoria? Razonar si influye el tamaño de la página.
Si se calcula el tamaño del archivo total 32768+16386+15870=65024 bytes = 63.5 kbytes se puede observar que es
menor que el tamaño dado para alojar el proceso de 64 kbytes. Por lo tanto, si ahora el proceso no cabe, es debido al tipo
de gestión de memoria que se está utilizando y en concreto a la porción de memoria que se desaprovecha en este
esquema. Concretando, en la paginación, al ser el tamaño del proceso independiente del tamaño de la página, la última
página no se carga por completo, desperdiciando esa porción de memoria. A esto se denomina fragmentación interna de
página. Es de esperar una fragmentación interna de media página por proceso, o en este caso por segmento (al ser el
esquema de memoria segmentación con paginación.. Esta consideración sugiere que es más deseable tener páginas
pequeñas, de esta forma la porción desaprovechada será menor (se puede repetir los cálculos con un tamaño de páginas
de 512 bytes y comprobar que entonces si es posible alojar al proceso); En cualquier caso no se debe olvidar que esto
supone tener más páginas, pudiendo dar lugar a tablas excesivamente grandes.
3.- En un sistema operativo se utiliza una estructura de nodos-i parecida a la de Unix. Los bloques son de 1024 bytes.
Calcular el tamaño máximo de un archivo en bloques, según los dos siguientes supuestos:
a) La tabla de archivos abiertos tiene una entrada para cada archivo con un campo de 64 bits que indica el
desplazamiento.
b) El nodo-i tiene ocho entradas de direccionamiento directo, una de direccionamiento indirecto simple y otra
direccionamiento indirecto doble.
a). Teniendo en cuenta el campo del desplazamiento en la tabla de archivos abiertos: 64 bits
El offset máximo que se puede tener en un fichero será de 264 bytes. Pasándolo a bloques:
264
10
= 254 bloques
2
b). Según la estructura del sistema de archivos, el número máximo de bloques asignados a un archivo en su nodo-i (en bloques)
Directo 8 bloques
Hay que tener en cuenta que al ser el tamaño de un bloque de 1024 bytes y el tamaño de un puntero a
bloque de 16 bits=2 bytes, el número de punteros a bloques que cabe en un bloque de punteros es:
1024/2=512 punteros.
¿Hecho?
NO
SI Instrucción siguiente
SISTEMAS OPERATIVOS I Junio 2000
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 2086 Tipo de Examen: A
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 2092 Tiempo: 2 horas
NINGÚN TIPO DE MATERIAL PERMITIDO.
INSTRUCCIONES: Complete TODOS los datos que se piden en la hoja de lectura óptica y ENTRÉGUELA
OBLIGATORIAMENTE junto con la hoja de examen de los 4 ejercicios. La puntuación del examen es la siguiente: el test vale 2
puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2 puntos y las respuestas erróneas del test descuentan 0.1
puntos. El test es eliminatorio, debiendo obtener una calificación mínima de 1 punto para superarlo.
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- En la planificación por prioridad circular o Round Robin:
a) El proceso preparado que pasa a ejecución corresponde al de tiempo de ejecución restante más corto.
b) De acuerdo a su prioridad cada proceso preparado pasa a ejecución durante una cota de tiempo llamada cuanto.
c) De forma secuencial cada proceso preparado pasa a ejecución durante una cota de tiempo llamada cuanto.
d) El proceso preparado que pasa a ejecución corresponde al de mayor prioridad asignada.
2.- El tiempo de retorno o regreso corresponde:
a) Al tiempo que el proceso espera hasta que se le concede el procesador.
b) Al tiempo que transcurre desde que un proceso se crea hasta que se completa por el sistema.
c) Al porcentaje del tiempo medio de utilización del procesador.
d) A la medida del número de procesos completados por unidad de tiempo.
3.- Para la evitación de interbloqueos se utiliza:
a) El algoritmo del banquero.
b) Grafos de asignación de recursos.
c) El método de marcación de tiempo de Lamport.
d) Los interbloqueos no se pueden evitar, sólo detectar.
4.- La sincronización mediante monitor:
a) Esta implícita, basta con invocar al procedimiento correspondiente del monitor.
b) Se consigue porque existe una cola asociada a cada procedimiento del monitor.
c) Se consigue porque existe una única cola asociada a todos los procedimientos del monitor.
d) Se consigue mediante la utilización de variables de condición.
5.- La orden Link (enlazar):
a) En el directorio actual, crea una entrada para un nuevo subdirectorio o archivo.
b) Permite que un archivo o subdirectorio aparezca en varios directorios.
c) Establece la conexión entre varios archivos.
d) Crea un enlace entre los archivos que se desea pertenezcan a un mismo directorio.
6.- La anomalía de Belady consiste en que:
a) Al aumentar el grado de multiprogramación, aumentan los fallos de página.
b) Al aumentar el número de marcos de página para asignación, aumentan los fallos de página.
c) Al disminuir el número de marcos de página para asignación, aumentan los fallos de página.
d) Al disminuir el tamaño de las páginas, aumentan los fallos de página.
7.- El mapa de bits sirve:
a) Para mantener una lista del espacio libre en disco.
b) Para mantener una lista de los bloques que se han modificado y deben ser actualizados en el disco.
c) Para indicar que bloques componen la caché del disco.
d) Como contador de las señales generadas de forma periódica por el reloj en tiempo real, RTR.
8.- El tiempo de búsqueda corresponde a:
a) El tiempo que tarda el algoritmo de sustitución en seleccionar una página cuando se produce un fallo de página.
b) El tiempo que se tarda en la transferir los datos en un disco.
c) El tiempo medio que tarda el sector en estar debajo de la cabeza de lectura/escritura del disco.
d) El tiempo necesario para que las cabezas del disco se desplacen al cilindro adecuado.
9.- Un sistema operativo independiente de dispositivo:
a) Indica que el sistema operativo está liberado de realizar la gestión de E/S.
b) La gestión de E/S no es capaz de distinguir entre los diferentes periféricos.
c) Designa de manera uniforme a cada uno de los dispositivos, por ejemplo, en Unix se referencian como archivos.
d) No utiliza manejadores de dispositivo, sólo de interrupciones.
10.- Entre las distintas formas de conectarse los procesadores para formar un sistema multiprocesador se encuentra:
a) El Sistema maestro/esclavo.
b) El bus compartido.
c) El mecanismo de llamada a procedimiento remoto.
d) En Unix, los tubos o pipes.
SISTEMAS OPERTIVOS I Junio 2000 – Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 2086
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 2092 Tiempo: 2 horas
NINGÚN TIPO DE MATERIAL PERMITIDO.
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). La puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- Implementar el seudo-código correspondiente para lograr la sincronización de tres procesos (P1, P2 y P3) de forma
que se establezca el orden de ejecución P1, P3 y P2. Así, primero se ejecuta P1 y cuando finaliza P1 se puede ejecutar P3,
y cuando finaliza P3 se puede ejecutar P2 y cuando finaliza P2 se puede ejecutar P1 y así sucesivamente.
Process Padre
begin
inicializa(finP1, 0); /*inicialización del semáforo binario finP1*/
inicializa(finP2, 1); /*inicialización del semáforo binario finP2*/
inicializa(finP3, 0); /*inicialización del semáforo binario finP3*/
Cobegin /*ejecución concurrente de P1, P2 y P3*/
P1;P2;P3;
coend;
end;
2.- Un computador utiliza el sistema de los asociados para la administración de su memoria. Explicar brevemente en que
consiste este sistema. Si se tiene al principio un bloque de 4Mb, después de solicitar espacios de 100kb, 400kb, 800kb,
300kb y 250kb. ¿Cuál es la distribución de la memoria?
El sistema de los asociados corresponde a una estrategia de asignación-desasignación de la memoria que facilita la fusión
del espacio libre mediante la asignación de áreas libres con afinidad para recombinar. Los tamaños de los bloques libres
en este sistema son potencias enteras de la base 2. A cada área de memoria se le asocia un campo de estado para indicar si
está siendo utilizada o no. Las peticiones de memoria se redondean a la siguiente potencia entera de base 2. Cuando se
solicita un bloque libre de tamaño 2k y no hay ninguno disponible, se divide un bloque del siguiente tamaño mayor,
2k+1, en dos mitades (dos socios) para satisfacer la petición. Cuando se libera un bloque, un sencillo test puede revelar si
su socio está libre, también. Si es así, ambos bloques se recombinan para formar el bloque original dos veces mayor.
P1 P1 P1 P1 P1
128Kb 128Kb 128Kb 128Kb 128Kb
256Kb 256Kb 256Kb 256Kb P5
512Kb P2 P2 P2 P2
1Mb 1Mb P3 P3 P3
4Mb
P4 P4
512Kb 512Kb
2Mb 2Mb 2Mb
1Mb 1Mb
3.- Especificación funcional de la operación con archivos: DELETE (Borrar).
Llamada: DELETE(nombre_archivo)
4.- Un disco que posee 200 pistas (numeradas de 0 a 199) tiene la siguiente cola de peticiones de acceso:
81, 142, 86, 172, 89, 145, 97, 170, 125
La posición inicial de la cabeza de lectura/escritura está en la pista número 100.
¿Cuál es la longitud media de búsqueda para satisfacer estas solicitudes con los siguientes algoritmos de planificación del
disco?.
a) Planificación FCFS (First come-First Served)
b) Planificación SSTF (Shortest Service Time First)
¿Qué inconvenientes presentan estos dos algoritmos?
a) Planificación FCFS: En este algoritmo la primera petición que llega es la primera que se sirve:
Inconveniente: Los movimientos bruscos de vaivén a los que se ve sometida la cabeza de lectura/escritura, pudiendo
llegar a problemas físicos del equipo.
b) Planificación SSTF: Este algoritmo consiste en atender la petición que requiere el menor movimiento de la cabeza de
lectura/escritura desde su posición actual.
1.- En un pabellón de deportes existen 10 pistas para jugar a baloncesto. Evidentemente, para jugar un encuentro se
precisa de un balón. Existe una caja donde están todos los balones. El delegado de campo coloca 8 balones en dicha caja.
A la hora de apertura del pabellón van llegando los equipos para jugar. Cuando dos quipos están de acuerdo en jugar
cogen un balón de la caja. Sincronizar, utilizando semáforos, los partidos a celebrarse.
program baloncesto;
var cesta: semaforo general;
process partido (i: integer);
begin
wait(cesta);
juega el partido;
signal(cesta);
end;
{process padre}
begin
init(cesta,8);
cobegin
for i=1 to N partido(i);
coend;
end;
2.- Demostrar que en un sistema de gestión de memoria virtual basada en demanda de página, el tiempo promedio de
acceso, tpa, es directamente proporcional a la probabilidad de que ocurra un fallo de página, p (0 £ p £ 1). Calcular dicho
tiempo promedio si el tiempo de acceso a memoria, am, es de 100 ns, el tiempo de resolución de un fallo de página, fp, es
de 1 ms y la probabilidad de que ocurra un fallo de página es del 1%.
tpa = (1 - p) ´ am + p ´ fp = am + ( fp - am) ´ p
Si la probabilidad de que ocurra un fallo es del 1%, entonces es igual a p= 0,01, entonces:
1. Tiempo de búsqueda:
Si la cabeza de lectura se encuentra en la pista correcta Þ tiempo de búsqueda es nulo.
2. El retardo rotacional:
El tiempo medio en posicionarse el sector 0 en la cabeza de lectura, que corresponde a media revolución
b 16 ´ 1024 60
tt = = = = 0,1666 s
P ´ f 16 ´ 1024 ´ 360 / 60 360
4.- Supóngase un sistema distribuido con tres procesos P1, P2 y P3 con marcas de tiempo 8, 3 y 5 respectivamente. Los procesos P1 y
P3 desean entrar en una sección crítica. Aplicar el algoritmo de las colas distribuidas, explicándolo, para determinar en que orden
entrarán en dicha sección crítica.
P1 P1
MT=8 MT=8
8 5
8
P3 P3
P2 MT=5 P2 MT=5
5
a) b)
P1
MT=8
P3
P2
MT=5
c)
Explicación: Páginas 393-395 del libreo de texto.
Aplicación: P1 envía mensaje de solicitud : solicita(P1,8,1) a los procesos P2 y P3.
P3 3 también envía un mensaje solicita (P3,5,3) a los otros dos procesos.
Cuando el proceso P2 recibe estos mensajes responde de inmediato, porque no desea entrar en la sección crítica.
Al llegar a P1 el mensaje de solicitud de P3 responde asimismo de forma inmediata, puesto que su marca de tiempo 8 es mayor que la
del mensaje que le llega 5.
Cuando P3 recibe el mensaje de solicitud de P1 difiere su respuesta, puesto que la marca de tiempo del mensaje es mayor que la suya.
Al recibir las respuestas de los procesos P1 y P2 (del resto de los procesos) P3 puede entrar en su sección crítica; al salir de ella envía
su respuesta a P1 (la que había diferido), el cual puede entonces entrar (al tener respuesta del resto de los procesos).
Curso 99-00
1ª Semana 2ª Semana Septiembre Reserva
(Tipo A) (Tipo A) (Tipo A) (Tipo A)
C C B B
A B A A
D A B B
A D C C
C B B A
B B D C
A A A A
C D D D
C C B D
D B C B
Curso 00-01
1ª Semana 2ª Semana Septiembre Reserva
(Tipo A) (Tipo A) (Tipo A) (Tipo A)
B B B C
D C D C
C D A B
B C D A
B A A D
A A C C
A A C B
B C A A
D C B B
A A C A
SISTEMAS OPERATIVOS I Mayo 2001
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208 Tipo de Examen: A
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
INSTRUCCIONES: Complete TODOS los datos que se piden en la hoja de lectura óptica y
OBLIGATORIAMENTE junto con la hoja de examen de los 4 ejercicios. La puntuación del examen es la siguiente: el test vale 2
puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2 puntos y las respuestas erróneas del test descuentan 0.1
puntos. El test es eliminatorio, debiendo obtener una calificación mínima de 1 punto para superarlo.
Test: Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Se tienen 3 procesos: P1, P2 y P3, con tiempos de ejecución: 65, 45 y 120 ms, respectivamente. Si actúa el planificador
a corto plazo según el algoritmo SJF (Short Job First) se obtiene que:
a) Los procesos se encuentran en la lista de preparados en el orden: P2, P1 y P3.
b) Los procesos se ejecutan en el orden: P2, P1 y P3.
c) Los procesos se ejecutan en el orden de llegada al sistema: P1, P2 y P3.
d) Los procesos se ejecutan según la prioridad que posean los procesos.
2.- El algoritmo de Perterson corresponde a:
a) Una estrategia de sincronización de procesos.
b) Una método de ordenación de sucesos en un sistema distribuido.
c) Una política de sustitución de páginas al producirse un fallo de página.
d) Una solución al problema de la exclusión mutua.
3.- la espera activa corresponde a:
a) La acción de bloqueo que realiza un semáforo sobre un proceso.
b) El estado bloqueado de un proceso pero no retirado a memoria secundaria.
c) Cuando un proceso se mantiene chequeando una condición y, por lo tanto, consumiendo ciclos de CPU.
d) La espera que realiza la operación wait sobre una variable de condición en un monitor.
4.- Para lograr la exclusión mutua de una sección crítica donde se accede a un recurso compartido inicialmente disponible
a) El semáforo binario debe inicializarse a cero.
b) El semáforo binario debe inicializarse a uno.
c) La inicialización del semáforo binario depende del recurso que se comparta.
d) Los semáforos no sirven para lograr la exclusión mutua de las secciones críticas.
5.- Para una dirección lógica de 32 bits con el formato [número de pág. (22bits), desplazamiento de la pág.(10 bits)]:
a) El número de páginas totales es de 22 y el tamaño de la página es de 10 bytes.
b) El número de páginas totales es de 222 y el tamaño de la página de 210 bytes.
c) El número de páginas totales es de 232 pero el tamaño de la página depende del marco de página.
d) El número de páginas totales es de 222 pero el tamaño de la página depende del marco de página.
6.- Con el esquema de gestión de memoria mediante particiones fijas se produce:
a) Fragmentación interna.
b) Fragmentación externa.
c) Fragmentación de tablas.
d) No existe fragmentación.
7.- Dada la cola de peticiones de acceso a disco 81, 115, 86, 145, 89, 115, 3. Si la cabeza está situada en la pista 100 en
1.- (2,5 puntos) En una tienda de mascotas están teniendo problemas para tener a todos sus hamsters felices. Los hamsters
comparten una jaula en la que hay un plato con comida y una rueda para hacer ejercicio. Todos los hamsters quieren
inicialmente comer del plato y, después, correr en la rueda. Pero se encuentran con el inconveniente de que sólo tres de
ellos pueden comer del plato al mismo tiempo y sólo uno puede correr en la rueda. Define un proceso que ejecuten los
hamsters concurrentemente de forma que sincronicen estas actividades usando semáforos.
module Hamsters_felices
var
semaphore: puedo_comer {general}
rueda {binario}
Process HamsterX;
begin
loop Process Padre;
begin begin
wait(puedo_comer); inicializa (puedo_comer=3);
comer(); inicializa (rueda=1);
signal(puedo_comer);
wait(rueda); cobegin
montar_en_rueda(); Hamsters;
signal(rueda); coend;
end; end;
end;
2.- (2 puntos) Se tiene un sistema que utiliza gestión de memoria por demanda de página. La tabla de páginas se mantiene
en registros. Si tiene lugar un fallo de página, para cargar la página que se solicita, son necesarios 8 milisegundos si una
página vacía está disponible o la página a reemplazar no ha sido modificada, y 20ms si la página a reemplazar ha sido
modificada. El tiempo de acceso a memoria es de 1 microsegundo. Asumiendo que el 70% de las veces la página a ser
reemplazada se ha modificado ¿Cuál es la razón de fallos de página aceptable para que el tiempo de acceso promedio no
sea más de 200 microsegundos ?
x<0,012
3.- (2 puntos) Dada la información de la tabla, completar el diagrama de Gantt de acuerdo con la actuación del planificador
a corto plazo según el algoritmo SRT (tener en cuenta que los procesos se sitúan en la cola de procesos preparados según
van llegando). Para ello marcar en cada cuadrante que proceso se está ejecutando en ese instante. Completar la tabla con
el tiempo de retorno y el tiempo de espera de cada proceso para este algoritmo.
SRT
A B B D C C C E E E E E A A A A A A A A A
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
t(ms)
4.- (1,5 puntos) Explicar la técnica de la utilización de cachés de disco. Por qué se utiliza y los problemas que pueden
surgir en las peticiones de escritura al disco.
página 244
SISTEMAS OPERATIVOS I Junio 2001
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208 Tipo de Examen: A
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
INSTRUCCIONES: Complete TODOS los datos que se piden en la hoja de lectura óptica y
OBLIGATORIAMENTE junto con la hoja de examen de los 4 ejercicios. La puntuación del examen es la siguiente: el test vale 2
puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2 puntos y las respuestas erróneas del test descuentan 0.1
puntos. El test es eliminatorio, debiendo obtener una calificación mínima de 1 punto para superarlo.
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Se tienen 3 procesos: P1, P2 y P3, con tiempos de ejecución: 65, 45 y 120 ms, respectivamente. Si actúa el planificador
a largo plazo según el algoritmo SJF (Short Job First) se obtiene que:
a) Los procesos se encuentran en la lista de preparados en el orden de llegada: P1, P2 y P3.
b) Los procesos se encuentran en la lista de preparados en el orden: P2, P1 y P3.
c) Los procesos se ejecutan en el orden de llegada: P2, P1 y P3.
d) Los procesos se ejecutan según la prioridad que posean los procesos.
2.- El análisis de un grafo de asignación de recursos sirve para:
a) La prevención de interbloqueos.
b) La evitación de interbloqueos.
c) La detección de interbloqueos.
d) La recuperación de interbloqueos.
3.- Si se usa un semáforo para lograr la sincronización de procesos:
a) Éste se debe inicializar al número de procesos que se desean sincronizar.
b) Se deben incluir variables de condición, pues el semáforo únicamente proporciona exclusión mutua.
c) Las operaciones wait y signal se utilizan dentro de un mismo proceso.
d) Las operaciones wait y signal se utilizan en procesos separados.
4.- La comunicación es asíncrona cuando el proceso que envía el mensaje:
a) Sólo prosigue su tarea cuando el mensaje ha sido recibido.
b) Sólo prosigue su ejecución cuando ha recibido una respuesta del receptor.
c) Sigue su ejecución sin preocuparse de si el mensaje se recibe o no.
d) Lo realiza de manera indirecta, es decir, a través de un buzón.
5.- Para una dirección lógica con el formato [número de segmento (2bits), número de página (16bits), desplazamiento de
1.- (2,5 puntos Un ordenador es conectado a un servidor de tres impresoras idénticas. Este servidor se define mediante un
array llamado printers inicializado a -1 para indicar que las impresoras están libres, como se muestra a través de la
ejecución del procedimiento Inicializar_impresoras() dado en la solución. Un proceso que desea usar la impresora debe
ejecutar un procedimiento Obtener_impresora() y cuando finaliza debe ejecutar otro procedimiento llamado
Dejar_impresora(). Escribir el código de ambos procedimientos y definir los semáforos necesarios para que:
a) Se regule en uso de las impresoras de forma que un proceso deba esperar hasta que haya impresoras disponibles.
b) Se asigne al proceso solicitante la primera impresora libre. Para ello se cargará el identificador del proceso en la
posición del array correspondiente. Por ejemplo, si un proceso con identificador=10 quiere usar una impresora,
buscará la primera que esté libre. Si está es la última de las tres, entonces se ejecutará printers[2]=10.
Solución:
2.- (2 puntos) Se tiene un sistema que utiliza gestión de memoria por demanda de página. Cada acceso a memoria principal
tarda 1 microsegundo. Las direcciones son traducidas a través de la tabla de páginas en memoria principal. Entonces, cada
referencia a memoria, que se solicita a través de la tabla, conlleva dos accesos. Para mejorar este tiempo hemos añadido
una memoria asociativa de forma que si la entrada a la tabla de páginas está en la memoria asociativa entonces la
referencia a memoria solicitada se reduce a un único acceso. Por otra parte, si tiene lugar un fallo de página el tiempo de
acceso a la página del disco así como su transferencia es de 20 milisegundos. Asumiendo que el 80% de los accesos es en
memoria asociativa y que de la parte restante el 10% causa fallos de página, ¿cuál es el tiempo de acceso promedio?
A A B B C C A A D E E C A A E E A A E A A
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
t(ms)
4.- (1,5 puntos) Explicar el método de Marcación de tiempo propuesto por Lamport (1978). ¿Por qué es necesario?
página 389
SISTEMAS OPERATIVOS I Septiembre 2001 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208 Tipo de Examen: A
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 Tiempo: 2 horas
INSTRUCCIONES: Complete TODOS los datos que se piden en la hoja de lectura óptica y ENTRÉGUELA
OBLIGATORIAMENTE junto con la hoja de examen de los 4 ejercicios. La puntuación del examen es la siguiente: el test vale 2
puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2 puntos y las respuestas erróneas del test descuentan 0.1.
El test es eliminatorio, debiendo obtener una calificación mínima de 1 punto para superarlo. NINGÚN MATERIAL PERMITIDO
Test: Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Sean dos procesos: P1 con tiempo de ejecución de 20ms y P2 con 15ms. El planificador a corto plazo actúa según un
Round Robin con quanto de 10ms y tiempo de conmutación de tarea de 5ms. Marcar el tiempo de retorno (regreso) de P1.
a) 30ms.
b) 40ms.
c) 45ms.
d) 50ms.
2.- El planificador a medio plazo selecciona un proceso
a) De entre los recién llegados para pasar a la cola de preparados.
b) De entre los de la cola de preparados para pasar a ejecución.
c) De entre los suspendidos en memoria principal para pasar a la cola de preparados.
d) De entre los suspendidos en memoria secundaria para pasar a la cola de preparados.
3.- La operación de espera de un semáforo y de una variable de condición de un monitor se diferencian en:
a) que en el caso de la variable de condición siempre se suspende el proceso que la emite.
b) que en el caso de la variable de condición no se elimina la espera activa.
c) No existe diferencia pues en ambos casos sirve para lograr la exclusión mutua de la sección crítica.
d) No existe diferencia pues en ambos casos sirve como mecanismo para lograr la sincronización.
4.- Un semáforo general inicializado a N:
a) Corresponde a N semáforos binarios compartidos entre varios procesos.
b) Corresponde a un semáforo binario compartido entre N procesos.
c) Sirve para proteger a un recurso compartido entre N procesos.
d) Sirve para proteger a N recursos similares compartidos entre varios procesos.
5.- En un sistema con gestión de memoria de particiones fijas de tamaño 500Kb si se aloja un proceso de 450Kb:
a) Se produce una fragmentación interna de 50Kb.
b) Se produce una fragmentación externa de 50Kb.
c) Se crea una nueva partición libre de 50Kb.
d) Se crea una nueva partición libre de 550Kb, al unirse el resto de 50Kb con la adyacente libre de 500Kb.
6.- La tabla de páginas indica que la página 2 tiene asociado el marco de número 3. El tamaño de la página es de 1Kb.
¿Cuál es la dirección física para la dirección virtual (2, 326) dada en el formato (nº pag., desplazamiento en la pag.):
a) 3+326.
b) 1´1024+326.
c) 3´ ´ 1024+326.
d) Se necesita conocer el tamaño del marco.
7.- El método de listas enlazadas para la asignación del espacio en disco presenta el siguiente inconveniente:
a) Es necesario conocer el tamaño máximo de archivo en el momento de su creación.
b) La fragmentación externa resultante en el disco.
c) El acceso aleatorio a un archivo es extremadamente lento.
d) La pérdida de espacio debido a las tablas de índices.
8.- En la lectura de un archivo, el acceso secuencial se diferencia del acceso aleatorio en que se puede suponer que:
a) Una vez leída la primera pista, en las restantes el tiempo de búsqueda es despreciable.
b) Una vez leída la primera pista, en las restantes el retardo rotacional es despreciable.
c) Una vez leída la primera pista, en las restantes el tiempo de transferencia es despreciable.
d) No existe diferencia alguna debido al tipo de acceso.
9.- El algoritmo FIFO (First Come First Served) para peticiones pendientes de disco tiene el inconveniente de:
a) El bloqueo indefinido o cierre de algunas peticiones.
b) Los movimientos bruscos de vaivén a los que está sometida la cabeza de lectura/escritura.
c) El retraso en las peticiones que se corresponden con posiciones que están por detrás de la cabeza.
d) Las desventajas sobre peticiones intermedias frente a las localizadas en los cilindros más internos y externos.
10.- Un método para la prevención de interbloqueos en sistemas distribuidos es mediante:
a) El algoritmo de Colas distribuidas.
b) El algoritmo de Paso de testigo.
c) El algoritmo de Espera-muerte.
d) El algoritmo de Chandy.
SISTEMAS OPERATIVOS I Septiembre 2001 – Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) Considérese las siguientes relaciones de precedencia entre procesos:
· P1 antes de P2 y P3
· P2 antes de P4 y P5
· P3 antes de P5
· P6 después de P3 y P4
donde Pi antes de Pj significa que la ejecución de Pi debe ser completada antes de que la ejecución de Pj comience y Pi
después de Pj, lo contrario.
Definir, inicializar y utilizar los necesarios en el cuerpo de cada proceso de forma que se fuerce a que se verifiquen las
relaciones de precedencia establecidas.
Definición de semáforos:
Semaphore: P12, P13, P24, P25, P 35, P36, P46; {binary} (Initializate:=0)
Definición de semáforos:
2.- (2 puntos) Considera un programa que genera una secuencia de referencias a direcciones virtuales que corresponde a la
siguiente secuencia de referencias de páginas:
1, 2, 3, 4, 1, 2, 5, 6, 1, 3, 1, 2, 5
Mostrar como las páginas son alojadas en memoria física (colocando dichas páginas en los correspondientes cuadrantes
“Marco1”, “Marco2”, ...) e indicar donde tienen lugar los fallos de página (mediante una X en la casilla “Fallos de pág.”)
y el total de ellos, para los dos algoritmos siguientes. ¿Cuál es mejor? ¿Se puede mejorar el resultado?. Inicialmente se
dispone de 5 marcos vacíos.
a) LRU: Se sustituye la página que menos se ha usado recientemente.
Marco1 --- 1 2 3 4 1 2 5 6 1 3 1 2 5
Marco2 --- --- 1 2 3 4 1 2 5 6 1 3 1 2
Marco3 --- --- --- 1 2 3 4 1 2 5 6 6 3 1
Marco4 --- --- --- --- 1 2 3 4 1 2 5 5 6 3
Marco5 --- --- --- --- --- --- --- 3 4 4 2 2 5 6
Fallos de pág X X X X X X X 7
Marco1 --- 1 2 3 4 1 2 5 6 1 3 1 2 5
Marco2 --- --- 1 2 3 4 1 2 5 6 1 3 1 2
Marco3 --- --- --- 1 2 3 4 1 2 5 6 6 3 1
Marco4 --- --- --- --- 1 2 3 4 1 2 5 5 6 3
Marco5 --- --- --- --- --- --- --- 3 3 3 2 2 5 6
Fallos de pág X X X X X X 6
Razonamiento: Con el óptimo se obtiene mejor resultado que con el LRU, como era de esperar. No se pueden disminuir
más los fallos de página ya que se ha llegado al número mínimo pues coincide con el número de páginas diferentes que se
referencian.
1. Valor máximo que puede soportar el campo tamaño del descriptor del fichero: 4bytes ⇒232 bytes
2. El número máximo de bloques de un fichero está determinado por el número de bloques a los que se puede tener
acceso a través de un descriptor de fichero:
a. Puntero directo: 1bloque
b. Puntero indirecto: (tamaño del bloque/tamaño del puntero):2Kbytes/8bytes=256 punteros⇒256 bloques
c. Puntero indirecto doble: 256 bloques de punteros, cada uno apuntado a 256
bloques⇒256*256=65536bloques
TOTAL= 1+256+65536=65793bloques*2Kbytes/bloque=131586 bytes
3. Para direccionar un bloque se utilizan punteros de 64 bits ⇒ se podrán direccionar 264 bloques
4. El tamaño del mapa de bloques en bit= N*2048*8, será el número máximo de bloques que puede tener el
dispositivo de almacenamiento. De éstos el número de bloques reservados para ficheros es:
D= N*2048*8-1-N-1-K
Curso 99-00
1ª Semana 2ª Semana Septiembre Reserva
(Tipo A) (Tipo A) (Tipo A) (Tipo A)
C C B B
A B A A
D A B B
A D C C
C B B A
B B D C
A A A A
C D D D
C C B D
D B C B
Curso 00-01
1ª Semana 2ª Semana Septiembre Reserva
(Tipo A) (Tipo A) (Tipo A) (Tipo A)
B B B C
D C D C
C D A B
B C D A
B A A D
A A C C
A A C B
B C A A
D C B B
A A C A
SISTEMAS OPERATIVOS I Mayo 2002
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) Tres procesos, P1, P2 y P3 tienen prioridades de 1, 5 y 10, respectivamente (10 es prioridad más alta que 1).
Los procesos ejecutan el siguiente código:
Los semáforos X e Y están inicializados a 1. El código_A necesita 2 ms de tiempo para ejecutarse, el codigo_B 4 ms y
las secciones criticas 6 ms. Las operaciones wait y signal son instantáneas y no consumen tiempo. P1 comienza a
ejecutarse a los 0 ms, P2 a los 4 ms y P3 a los 8 ms. Hay una única CPU y el algoritmo de planificación utilizado para
determinar que proceso se ejecuta en cada instante es el de prioridades expropiativo. Marcar en el diagrama siguiente en
cada instante de tiempo que parte de código (A si es código_A, B si es código_B, X si es seccióncritica _X y Y si es
seccióncritica _Y) se está ejecutando del proceso correspondiente. Calcular el rendimiento medio y el tiempo de retorno
de cada proceso:
ms:0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
P1 A A X X X X X X B B B B
P2 A A Y Y Y Y Y Y B B B B
P3 A A X X X X X X B B B B
El rendimiento: Es una medida del número de procesos completados por unidad de tiempo.
El tiempo de regreso o retorno: Es el intervalo de tiempo que transcurre desde que un proceso se crea o presenta hasta
que se completa por el sistema
2.- (2 puntos) En un sistema con intercambio, se disponen de huecos libres de distintos tamaños en el siguiente
orden: 5 Mb, 2 Mb, 9 Mb, 3 Mb, 4 Mb, 7 Mb, 8 Mb, 6 Mb. Se requieren cuatro segmentos de tamaños 6 Mb,
4.5 Mb, 5 Mb, 2.8 Mb. Estudiar que huecos asignaran los algoritmos primero en ajustarse, mejor en ajustarse y
peor en ajustarse. Indicar cuál de ellos aprovecha mejor la memoria y explicar por qué.
Solución:
Primero en ajustarse Segmento Hueco asignado Fragmento
6 Mb 9 Mb 3 Mb
4.5 Mb 5 Mb 0.5 Mb
5 Mb 7 Mb 2 Mb
2.8 Mb 3 Mb 0.2 Mb
Mejor en ajustarse Segmento Hueco asignado Fragmento
6 Mb 6 Mb 0 Mb
4.5 Mb 5 Mb 0.5 Mb
5 Mb 7 Mb 2 Mb
2.8 Mb 3 Mb 0.2 Mb
Peor en ajustarse Segmento Hueco asignado Fragmento
6 Mb 9 Mb 3 Mb
4.5 Mb 8 Mb 3.5 Mb
5 Mb 7 Mb 2 Mb
2.8 Mb 6 Mb 3.2 Mb
Explicación:
Si las particiones libres dadas se corresponden a una gestión de memoria con particiones fijas se estará
hablando de fragmentación interna no utilizable por ningún otro proceso. En este caso el algoritmo que mejor aprovecha
la memoria es el mejor en ajustarse dado que produce menor fragmentación interna (2.7 Mb frente a 5.7 Mb del algoritmo
primero en ajustarse y 11.7 Mb del peor en ajustarse). Sin embargo, si las particiones libres dadas se corresponden con el
estado de la memoria en un instante dado de una gestión de memoria con particiones variables entonces se estará
hablando de fragmentación externa que en esta caso puede que no lo sea, dado que los nuevos bloques libres son lo
suficientemente grandes para alojar a otros procesos que vengan posteriormente. Por ejemplo en el algoritmo peor en
ajustarse el fragmento de 3 Mb puede servir para alojar al segmento de 2.8 Mb.
3.- (3 puntos) Un disco que posee 200 pistas (numeradas de 0 a 199) tiene la siguiente cola de peticiones de acceso:
81, 142, 86, 172, 89, 145, 97, 170, 125
La posición inicial de la cabeza de lectura/escritura está en la pista número 100.
a)¿Cuál es la longitud media de búsqueda para satisfacer estas solicitudes con el algoritmo de Planificación SSTF?
b) La planificación SSTF tiende a favorecer menos a los cilindros externos e internos que a los de la zona intermedia,
¿Por qué?.¿Existe algún algoritmo que favorezca lo contrario? Si es así, ¿Cuál? y ¿Por qué?.
Solución:
a) Definición Planificación SSTF: Este algoritmo consiste en atender la petición que requiere el menor movimiento de
la cabeza de lectura/escritura desde su posición actual.
Pista a la que se accede 97 89 86 81 125 142 145 170 172 Longitud media
Nº de pistas que se atraviesan 3 8 3 5 44 17 3 25 2 12,22
b)
La planificación SSTF consiste en atender la petición que requiere menor movimiento de la cabeza de lectura/escritura
desde su posición actual. La razón de que se favorezca más a los cilindros intermedios es porque en esta localización la
cabeza se puede mover en los dos sentidos, por lo tanto, será más probable encontrar la siguiente petición a la derecha o a
la izquierda de los intermedios de forma que continúe en la zona intermedia. Por otra parte, en los extremos, cilindros
internos y externos, sólo se tiene una posibilidad de movimiento, un único sentido, que les aleja de dichas zonas y
además, les conduce a las zonas intermedias.
El algoritmo Scan, si la cabeza ya ha pasado por la zona intermedia y se hace una petición ésta tendrá que esperar hasta
que la cabeza vaya y vuelva por el mismo recorrido de cilindros externos. Por lo que éstos se ven favorecidos. El C-Scan
evita éstos al reducir el recorrido en una dirección
SISTEMAS OPERATIVOS I Junio 2002
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) Se tiene una jaula con ratoncillos y se ha diseñado un experimento científico de forma que para acceder a la
comida los ratoncillos deben pasar a la despensa cuya capacidad es para tres ratones. La despensa está rodeada de puertas.
Cada puerta tiene un botón fuera y otro dentro. Los ratones son entrenados para presionar los botones cuando quieran
entrar o salir y sólo un ratoncillo pasará a la despensa cuando las puertas se abran. Cuando los botones son presionados se
realizan las siguientes funciones:
/variables globales*/
type raton_in = integer;
var raton_in = 0;
Este código presenta algunos problemas. Determinarlos y rehacer el código de estos procedimientos usando semáforos de
forma que se resuelvan dichos problemas.
Solución:
Los ratones deben presionar repetidamente los botones si ellos no están dentro.
Los problemas que presenta son:
Si muchos ratones quieren entrar y salir a la vez la variable raton_in no será actualizada correctamente.
2.- (2 puntos) Se dispone de un computador que utiliza el sistema de los asociados para la administración de la memoria.
Inicialmente se dispone de un bloque de 16 Mb, se solicitan los siguientes espacios: el proceso P1: 1Mb, el P2: 1.8 Mb, el
P3: 3.5 Mb, el P4: 1.3 Mb y el P5: 800 Kb. Después de solicitar estos espacios ¿cuál es la distribución de la memoria?
Solución:
P1 P1 P1 P1 P1
1 Mb 1 Mb 1 Mb 1 Mb P5
2 Mb P2 P2 P2 P2
4 Mb 4 Mb P3 P3 P3
16 Mb
P4 P4
2 Mb 2 Mb
8 Mb 8 Mb 8 Mb
4 Mb 4 Mb
3.- (3 puntos) En la figura se presentan los 15 primeros bloques de un dispositivo de almacenamiento secundario (disco)
que en total dispone de 30000 Kbytes. El método que se utiliza para la asignación de espacio en disco es el de
encadenamiento. Cada bloque tiene 512 bytes. En la figura también se representa un fichero llamado examen:
Directorio
0 1 2 3 14 4
Examen
Bloque de
5 6 7 12 8 9 comienzo: 7
3
Bloque de
10 11 12 5 13 14 -1 final: 14
a) Calcular el tamaño máximo (en bytes) de los datos almacenados en el fichero examen.
b) ¿Qué problema presenta el uso de este tipo de asignación de espacio?. ¿Qué método de asignación lo soluciona?.¿Varía
el tamaño máximo de los datos que pueden estar ahora almacenados? ¿Existe pérdida de espacio? Si es así, calcúlelo.
Solución:
a)El fichero examen ocupa cinco bloques: 7, 12, 5, 3, 14
En cada bloque hay que guardar un puntero que indica cual es el siguiente bloque. El espacio real para datos que se puede
almacenar en un bloque será 512 bytes menos los bytes que utilice el puntero.
Así vamos a calcular el tamaño del puntero, que dependerá del número de bloques a direccionar:
30000 Kbytes / 512bytes = 60000 bloques.
Para direccionar 60000 bloques, es necesario que los punteros sean al menos de 16 bits, es decir 2 bytes, por lo tanto, en
b)El acceso aleatorio a archivos encadenados es lento, ya que la localización de un bloque determinado requiere el acceso
a todos los bloques intermedios en la cadena. Para solucionarlo usamos el método de asignación mediante indexación.
El directorio contiene la dirección del bloque donde están los índices a los bloques de datos del archivo. Con esta
organización todo el bloque está disponible para los datos. De esta forma el tamaño máximo de los datos que pueden estar
bloque entero, como los índices son de 2 bytes, el bloque está ocupado por 5 índices u 2 bytes = 10 bytes. Por lo que en el
La asignación mediante indexación presenta sin embargo pérdida de espacio. Si a la tabla de índices se le asigna un
1.- (3 puntos) Una estación de metereología predice automáticamente el tiempo en base a la medida de un aparato. En el
aparato de medida está corriendo un proceso que realiza determinadas observaciones que va colocando en un buffer.
Existe otro proceso que toma cada una de estas observaciones del buffer común, realiza algunos cálculos y predice el
tiempo. Los dos procesos comienzan a ejecutarse a la vez y de forma concurrente. Utilizar semáforos para la solución de
dicho problema y realizar la gestión del buffer de forma circular.
Solución:
b)
3.- (3 puntos) En la figura se representa los primeros 16 bloques de un disco en el que se utiliza el método de asignación
de espacio en disco mediante listas enlazadas. Los bloques corresponden a un sector del disco con tamaño de 4 Kb. La
capacidad del disco es de 1Gb.
a) Calcular el tamaño máximo de los datos almacenados en el archivo fichero.
b) ¿Es posible el acceso directo a los archivos de este sistema?¿es rentable con esta organización de disponer de este
servicio?
0 1 2 3
fichero
4 5 6 7
Inicio=11
Final=12
8 9 10 11
12 13 14 15
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Mayo 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Asignatura 208 INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Asignatura 209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 2 puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2
puntos y las respuestas erróneas del test descuentan 0.1. El test es eliminatorio, debiendo obtener una calificación mínima de 1
punto para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- El planificador a corto plazo según el algoritmo SJF (primera tarea más corta) es el mejor en
a) Minimizar el tiempo de espera
b) Minimizar el rendimiento del sistema
c) Maximizar la eficacia o tiempo medio de utilización de CPU
d) Maximizar el uso de la memoria física.
2.- Que algoritmo es equivalente al Round Robin (Prioridad Circular):
a) FCFS si el cuanto es suficientemente grande.
b) Prioridades si el cuanto es suficientemente grande.
c) SJF si el cuanto es suficientemente grande.
d) Ninguna de las anteriores.
3.- En los instantes 2 y 4 llegan los procesos P1 y P2, respectivamente y en el instante 12 acaba P1 y en el 18, P2:
a) El tiempo de retorno medio es de 15 segundos.
b) El tiempo de retorno medio es de 13 segundos.
c) El tiempo de retorno medio es de 12 segundos.
d) No se puede calcular con estos datos.
4.- Para lograr la ejecución de manera exclusiva de una sección crítica es necesario definir:
a) Una variable de condición si lo que se utiliza es un monitor.
b) Un semáforo inicializado a cero.
c) Un semáforo inicializado a uno.
d) Con sólo dos procesos es imposible el interbloqueo por lo que no hace falta definir nada.
5.- En un sistema operativo multitarea, con 8Kb de espacio lógico de procesos, con páginas de 1Kb y 32 Kb de memoria
física, sin memoria virtual. La dirección lógica está formada por:
a) 3 bits para indicar la página y 10 bits para el desplazamiento
b) 5 bits para indicar la página y 10 bits para el desplazamiento
c) 5 bits para indicar la página y 8 bits para el desplazamiento
d) No tiene sentido que el espacio lógico del proceso sea menor que el espacio físico si no se dispone de un sistema
de memoria virtual
6.- La anomalía de Belady la sufren
a) los algoritmos de reemplazo FIFO
b) los algoritmos de reemplazo óptimos
c) los algoritmos de reemplazo LRU
d) ningún algoritmo de reemplazo.
7.- El algoritmo de reemplazo de memoria virtual que provoca menos fallos de página es:
a) el FIFO
b) el LRU
c) el algoritmo de la segunda oportunidad
d) el algoritmo que utiliza un bit de referencia mas un bit de modificado.
8.- Cual de los siguientes tiempos es el que mejora una caché de disco:
a) el tiempo de posicionamiento
b) el tiempo de latencia
c) el tiempo de acceso al disco
d) cada uno de los anteriores
9.- En el caso de un acceso secuencial a varios bloques de datos de un archivo:
a) es mas eficiente si se utiliza una asignación contigua de los bloques de datos
b) es mas eficiente si se utiliza un sistema de indexación
c) es mas eficiente si se utiliza listas enlazadas
d) la eficiencia depende de la capacidad del disco y de la cantidad de memoria del sistema
10.- El algoritmo de colas distribuidas:
a) Es un algoritmo para lograr la exclusión mutua en sistemas distribuidos.
b) Es un algoritmo para la prevención de interbloqueos en sistemas distribuidos.
c) Es un algoritmo para la detección de interbloqueos en sistemas distribuidos.
d) Es un algoritmo de ordenación de sucesos en sistemas distribuidos.
SISTEMAS OPERATIVOS I Mayo 2003
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) Una estación de metereología predice automáticamente el tiempo en base a la medida de un aparato. El
aparato de medida está corriendo en un proceso que realiza determinadas observaciones que va colocando en un buffer.
Existe otro proceso que toma cada una de estas observaciones del buffer común, realiza algunos cálculos y predice el
tiempo. Los dos procesos comienzan a ejecutarse a la vez y de forma concurrente. Utilizar semáforos para la solución de
dicho problema y realizar la gestión del buffer de forma circular.
Solución:
Program/module Estación de meteorología;
Const Max_tamaño 10
Var
buffer: array[1..Max_tamaño] of observacion;
exmut: semaforo;{semáforo binario}
semquitar, semponer: semaforo; {semáforo general}
Process observacion
begin
espera(semponer)
resultado=realiza_observacion();
espera(exmut);
deja_observación(resultado, ent);
ent=(ent mod Max_tamaño)+1;
señal(exmut);
señal(semquitar);
end;
Process Calculo
begin
espera(semquitar);
espera(exmut);
resultados=coge_observacion(sal);
sal=(sal mod Max_tamaño)+1;
señal(exmut);
señal(semponer);
calcula_prediccion(resultados);
end;
{proceso padre}
inicializar(exmut,1);
inicializar(semponer, Max_tamaño);
inicializar(semquitar, 0);
ent:=sal:=1;
cobegin
Calculo, Observacion;
coend;
En el esquema anterior se ve como se producen los fallos de página y las correspondientes sustituciones.
3.- (3 puntos) En la figura se representa los primeros 16 bloques de un disco en el que se utiliza el método de asignación
de espacio en disco mediante listas enlazadas. Los bloques corresponden a un sector del disco con tamaño de 4 Kb. La
capacidad del disco es de 1Gb.
a) Calcular el tamaño máximo de los datos almacenados en el archivo fichero.
b) ¿Es posible el acceso directo a los archivos de este sistema?¿es rentable con esta organización de disponer de este
servicio?
0 1 2 3
fichero
4 5 6 7
Inicio=11
Final=12
8 9 10 11
12 13 14 15
Solución:
b) Los archivos encadenados son adecuados para el acceso secuencial ya que cada bloque que está siendo procesado
contiene la dirección del siguiente bloque en línea. Por otro lado el acceso directo a archivos encadenados sería lento, ya
que la localización de un bloque determinado requiere el acceso a todos los bloques intermedios en la cadena. No será
rentable.
SISTEMAS OPERATIVOS I Tipo de Examen: A Junio 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Asignatura 208 INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Asignatura 209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 2 puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2
puntos y las respuestas erróneas del test descuentan 0.1. El test es eliminatorio, debiendo obtener una calificación mínima de 1
punto para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- El planificador a corto plazo que nunca provocará inanición entre los procesos es
a) SJF (primero la tarea más corta).
b) Round Robin (Prioridad circular).
c) Planificación por prioridades.
d) Ninguna de las anteriores.
2.- Un proceso que está en estado preparado
a) Puede ser elegido por el planificador a largo plazo para ser ejecutado.
b) Le falta memoria para ser ejecutado.
c) Está pendiente de realizar una operación de Entrada/salida.
d) Tiene el código que ha de ejecutarse cargado en memoria.
3.- ¿Para qué algoritmo de planificación no tiene sentido aplicar la expropiación?:
a) FCFS.
b) Prioridades.
c) SJF.
d) Ninguno de los anteriores.
4.- La ventaja en el uso de los monitores frente a los semáforos es que:
a) No se produce espera activa.
b) No se produce interbloqueo.
c) La sincronización está implícita, basta con invocar el procedimiento del monitor.
d) La exclusión mutua está implícita, basta con invocar el procedimiento del monitor.
5.- Con una política de asignación contigua del espacio de los procesos y comparticiones fijas:
a) Tiene mas fragmentación interna que en una política de particiones variables.
b) Todas las particiones tendrán siempre el mismo grado de ocupación.
c) Se necesita implementar un mecanismo de compactación para tener un sistema eficiente.
d) Únicamente se podrá implementar si se tiene reubicación dinámica.
6.- En un sistema operativo multitarea con 1 Mb de memoria virtual, 16 Kb de espacio lógico de los procesos, páginas de
512 bytes y 32 Kb de memoria física, la dirección física está formada por:
a) 11 bits para indicar el marco y 9 para el desplazamiento.
b) 6 bits para indicar el marco y 9 para el desplazamiento.
c) 5 bits para indicar el marco y 9 para el desplazamiento.
d) 6 bits para indicar el marco y 5 para el desplazamiento.
7.- En un sistema de gestión de memoria paginada, la gestión de la memoria libre provoca que los procesos tengan:
a) Fragmentación interna únicamente si la gestión se realiza mediante mapa de bits.
b) Fragmentación interna únicamente si la gestión se realiza mediante listas enlazadas.
c) Fragmentación interna independientemente de cómo se realice la gestión.
d) Fragmentación externa independiente de cómo se realice la gestión.
8.- El tiempo que tarda el cabezal de un disco en situarse sobre la pista solicitada es el:
a) Tiempo de posicionamiento o tiempo de búsqueda.
b) El tiempo de latencia o retardo rotacional.
c) El tiempo de transferencia.
d) Todos los anteriores.
9.- Si un sistema de nodos-i tiene 2 punteros directos de 2 bytes cada puntero y 1 puntero indirecto con un bloque de datos
de 1Kb:
a) Se podrán tener ficheros con un máximo de 514 Kb de longitud.
b) Se podrán tener ficheros con un máximo de 1026 Kb de longitud.
c) Se podrán tener ficheros con un máximo de 4 Kb de longitud.
d) No se puede saber la medida máxima del fichero con estos datos.
10.- Un método para la prevención de interbloqueos en sistemas distribuidos es mediante:
a) El algoritmo de Colas distribuidas.
b) El algoritmo de Paso de testigo.
c) El algoritmo de Espera-muerte.
d) El algoritmo de Chandy.
SISTEMAS OPERATIVOS I Junio 2003
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
x BuscaPrimos que calcula el número primo con la función esPrimo(valor_del_número_primo) y lo mete a un buzón.
1.- (3 puntos) Se quiere escribir los números primos del 1 al 1000 en números romanos. Para ello se tienen dos procesos:
x EscribePrimos que toma el número primo del buzón y lo imprime con la función
escribeRomano(valor_del_número_primo).
Resolver este problema de forma que se permita la ejecución concurrente de ambos procesos utilizando mensajes con
buzones de capacidad ilimitada. Tener en cuenta un centinela para decirle al proceso EscribePrimos cuándo debe
terminar.
Solución:
2.- (2 puntos) Se dispone de un sistema operativo con gestión de memoria virtual por demanda de páginas. Un programa
que ocupa 9 páginas se carga para su ejecución. Inicialmente se cargan las páginas 0 y 5 en los marcos 9 y 3
respectivamente.
a) Dibujar la tabla de páginas para esta situación y la parte de la memoria principal correspondiente.
b) Si la asignación se hace con cuatro marcos de página, con prepaginación de una página. Calcular los fallos de
páginas que se producen con los algoritmos LRU y de la segunda oportunidad para la siguiente cadena de
referencia.
7 5 6 1 0 8 3 4 3 3 1 2 8 6 2 3 5 3 4
Solución:
3.- (3 puntos) En un sistema operativo se dispone de una estructura de nodos-i para la gestión de los archivos. Los bloques
son de 2Kb, las entradas de los nodos-i dedican 10 bytes para indicar el tamaño de los archivos y 8 bytes a los punteros a
los bloques. El nodo-i tiene 16 entradas de direccionamiento directo, una de direccionamiento indirecto simple y otra de
direccionamiento indirecto doble. La tabla de archivos abiertos tiene una entrada para cada archivo abierto con un campo
de 10 bytes que indica el desplazamiento.
a) Calcular el tamaño máximo de un archivo que utiliza toda la capacidad del disco
b) ¿Se modificaría el tamaño si el puntero a los bloques fuera sólo de 4Kb?¿Por qué?
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Junio 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Asignatura 208 INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Asignatura 209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 2 puntos y los ejercicios 8 puntos. Las respuestas correctas del test puntúan 0.2
puntos y las respuestas erróneas del test descuentan 0.1. El test es eliminatorio, debiendo obtener una calificación mínima de 1
punto para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- El planificador a corto plazo que nunca provocará inanición entre los procesos es
a) SJF (primero la tarea más corta).
b) Round Robin (Prioridad circular).
c) Planificación por prioridades.
d) Ninguna de las anteriores.
2.- Un proceso que está en estado preparado
a) Puede ser elegido por el planificador a largo plazo para ser ejecutado.
b) Le falta memoria para ser ejecutado.
c) Está pendiente de realizar una operación de Entrada/salida.
d) Tiene el código que ha de ejecutarse cargado en memoria.
3.- Para que algoritmo de planificación no tiene sentido aplicar la expropiación:
a) FCFS.
b) Prioridades.
c) SJF.
d) Ninguno de los anteriores.
4.- La ventaja en el uso de los monitores frente a los semáforos es que:
a) No se produce espera activa.
b) No se produce interbloqueo.
c) La sincronización está implícita, basta con invocar el procedimiento del monitor.
d) La exclusión mutua está implícita, basta con invocar el procedimiento del monitor.
5.- Con una política de asignación contigua del espacio de los procesos y comparticiones fijas:
a) Tiene mas fragmentación interna que en una política de pariciones variables
b) Todas las particiones tendrán siempre el mismo grado de ocupación
c) Se necesita implementar un mecanismo de compactación para tener un sistema eficiente
d) Únicamente se podrá implementar si se tiene reubicación dinámica
6.- En un sistema operativo multitarea con 1Mb de memoria virtual, 16 Kb de espacio lógico de los procesos, páginas de
512 bytes y 32 Kb de memoria física, la dirección física está formada por:
a) 11 bits para indicar el marco y 9 para el desplazamiento
b) 6 bits para indicar el marco y 9 para el desplazamiento
c) 5 bits para indicar el marco y 9 para el desplazamiento
d) 6 bits para indicar el marco y 5 para el desplazamiento
7.- En un sistema de gestión de memoria paginada, la gestión de la memoria libre provoca que los procesos tengan:
a) fragmentación interna únicamente si la gestión se realiza mediante mapa de bits
b) fragmentación interna únicamente si la gestión se realiza mediante listas enlazadas
c) fragmentación interna independientemente de cómo se realice la gestión
d) fragmentación externa independiente de cómo se realice la gestión
8.- El tiempo que tarda el cabezal de un disco en situarse sobre la pista solicitada es el:
a) tiempo de posicionamiento
b) el tiempo de latencia
c) el tiempo de transferencia
d) todos los anteriores
9.- Si un sistema de nodos-i tiene 2 punteros directos de 2 bytes cada puntero y 1 puntero indirecto con un bloque de datos
de 1Kb:
a) se podrán tener ficheros con un máximo de 514 Kb de longitud
b) se podrán tener ficheros con un máximo de 1026 Kb de longitud
c) se podrán tener ficheros con un máximo de 4 Kb de longitud
d) no se puede saber la medida máxima del fichero con estos datos
10.- Un método para la prevención de interbloqueos en sistemas distribuidos es mediante:
a) El algoritmo de Colas distribuidas.
b) El algoritmo de Paso de testigo.
c) El algoritmo de Espera-muerte.
d) El algoritmo de Chandy.
SISTEMAS OPERATIVOS I Junio 2003
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
x BuscaPrimos que calcula el número primo con la función esPrimo(valor_del_número_primo) y lo mete a un buzón.
1.- (3 puntos) Se quiere escribir los números primos del 1 al 1000 en números romanos. Para ello se tienen dos procesos:
x EscribePrimos que toma el número primo del buzón y lo imprime con la función
escribeRomano(valor_del_número_primo).
Resolver este problema de forma que se permita la ejecución concurrente de ambos procesos utilizando mensajes con
buzones de capacidad ilimitada. Tener en cuenta un centinela para decirle al proceso EscribePrimos cuándo debe
terminar.
Solución:
Program/module Primos_en_Romano;
Type mensaje= .../*definición del tipo de datos del mensaje*/
Process BuscaPrimos
Var i : mensaje;
begin
For i:=1 to 1000 do
if esPrimo(i) then
send(i, buzon);
send(0, buzon); /*centinela para indicar que ya no se va a enviar más*/
end;
Process EscribePrimos
Var i : mensaje;
begin
receive(i, buzon);
while i<>0 do
begin
escribeRomano(i);
receive(i, buzon);
end;
end;
{proceso padre}
crear_buzon(buzon);
cobegin
Buscaprimos, Escribeprimos;
coend;
2.- (2 puntos) Se dispone de un sistema operativo con gestión de memoria virtual por demanda de páginas. Un programa
que ocupa 9 páginas se carga para su ejecución. Inicialmente se cargan las páginas 0 y 5 en los marcos 9 y 3
respectivamente.
a) dibujar la tabla de páginas para esta situación y la parte de la memoria principal correspondiente.
b) Si la asignación se hace con cuatro marcos de página, con prepaginación de una página. Calcular los fallos de
páginas que se producen con los algoritmos LRU y de la segunda oportunidad para la siguiente cadena de
referencia.
7 5 6 1 0 8 3 4 3 3 1 2 8 6 2 3 5 3 4
Solución:
a)
Nº de página Marco de página Bit presente/ausente
0 9 1
1 X 0
2 X 0
3 X 0
4 X 0
5 3 1
6 X 0
7 X 0
8 X 0
Segunda oportunidad
7 5 6 1 0 8 3 4 4 4 1 2 8 6 6 6 5 5 4
X 7 5 6 1 0 8 3 3/1 3/1 4 1 3/0 8 8 8 3/0 3/1 5
X X 7 5 6 1 0 8 8 8 3/1 4 2 3 3 3/1 2/0 2 3/1
X X X 7 5 6 1 0 0 0 8 3/1 1 2 2/1 2/1 6 6 2
F F F F F F F F F F F F F
3.- (3 puntos) En un sistema operativo se dispone de una estructura de nodos-i para la gestión de los archivos. Los bloques
son de 2Kb, las entradas de los nodos-i dedican 10 bytes para indicar el tamaño de los archivos y 8 bytes a los punteros a
los bloques. El nodo-i tiene 16 entradas de direccionamiento directo, una de direccionamiento indirecto simple y otra de
direccionamiento indirecto doble. La tabla de archivos abiertos tiene una entrada para cada archivo abierto conuncampo
de 10 bytes que indican el desplazamiento
a) Calcular el tamaño máximo de un archivo que utiliza toda la capacidad del disco
b) ¿Se modificaría el tamaño si el puntero a los bloques fuera sólo de 4Kb?¿Por qué?
Solución:
a)
-> Tamaño máximo según la estructura del sistema de archivos, número máximo de bloques asignados a un archivo en su
nodo-i (en bloques):
El tamaño de un bloque es de 2Kb=2048 bytes.
El tamaño de un puntero a bloques es de 8 bytes.
El nº de punteros que caben en un bloque de punteros es de: 2048/8=256 punteros.
Bloques directos: 16 bloques.
Indirecto simple: 2048/8= 256 bloques .
Indirecto doble: 256*256= 65536 bloques.
Total: 65808
-> teniendo en cuenta el campo de tamaño de archivo en el nodo-i: 10 bytes: 80 bits
El tamaño máximo de un fichero será de 280, en bloques 280/211= 269bloques
-> teniendo en cuenta el campo de desplazamiento en la tabla de archivos abierta: 10 bytes: 80 bits
Será de 280, en bloques 280/211= 269bloques
-> según el tamaño de un puntero:
un puntero está dado con 8 bytes=64 bits.
Luego el numero máximo de bloques que puede direccionar es de: 264
Luego el tamaño viene marcado por la primera opción: 65808 bloques= 131616Kb
b) Un puntero de ese tamaño no entra en un bloque, luego no se podría dar esta situación.
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Asignatura 208 INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Asignatura 209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA. Cualquier examen que no venga
acompañado de esta hoja de enunciados no será corregido. Complete TODOS los datos que se piden en la hoja de lectura óptica o en
caso contrario su examen no será corregido. La puntuación del examen es: 2 puntos el test y 8 puntos los ejercicios. Las respuestas
correctas del test puntúan 0.2 puntos y las erróneas descuentan 0.1. El test es eliminatorio, debiendo obtener una calificación mínima de
1 punto para superarlo. NINGÚN MATERIAL PERMITIDO, excepto calculadora no programable. Tiempo (test+ejercicios): 2 horas.
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- ¿Cuál de estas transiciones de estados de un proceso jamás se produce en un sistema normal?
a) de “bloqueado” a “preparado”.
b) de “preparado” a “bloqueado”.
c) de “activo” a “preparado”.
d) de “activo” a “bloqueado”.
2.- La técnica de planificación Round-Robin:
a) En general, da mejores tiempos de espera que el FCFS.
b) Minimiza el tiempo medio de retorno.
c) Maximiza el rendimiento del sistema.
d) Permite acotar el tiempo de respuesta máximo.
3.- En el interbloqueo, la estrategia que puede dar lugar a una muy baja utilización de recursos es
a) Estrategia liberal.
b) Estrategia de detección y recuperación.
c) Estrategia de prevención.
d) Estrategia de evitación.
4.- Un semáforo tiene actualmente el valor 2. Si se ejecuta una operación wait o espera sobre él, ¿qué sucederá?
a) El proceso que ejecuta la operación se bloquea hasta que otro ejecute una operación signal o señal.
b) Tras hacer la operación, el proceso continuará adelante sin bloquearse.
c) El proceso continuará adelante sin bloquearse, y si previamente existían procesos bloqueados a causa del
semáforo, se desbloqueará uno de ellos.
d) Un semáforo jamás podrá tener el valor 2, si su valor inicial era 0 (cero) y se ha operado correctamente con él.
5.- En un sistema operativo multitarea, con 8 Kbytes de espacio lógico de proceso, con páginas de 1 Kbytes y 32 Kbytes
de memoria física y sin memoria virtual, la tabla de páginas ocupará
a) 8*5 bits.
b) 32*5 bits.
c) 8*3 bits.
d) 32*3 bits.
6.- Si hay un aumento del número de marcos de páginas, el número de fallos de página en memoria:
a) Disminuye.
b) Aumenta.
c) Permanece igual.
d) Puede aumentar o disminuir.
7.- La interrupción de fallo de página la puede producir:
a) El proceso que está en “ejecución” (activo).
b) El proceso que esta en el estado “preparado”.
c) El proceso que está bloqueado, esperando una página del disco.
d) Desde cualquier estado de los anteriores.
8.- El tiempo que tarde el cabezal del disco en situarse sobre la pista solicitada es el:
a) Tiempo de posicionamiento.
b) Tiempo de latencia.
c) Tiempo de transferencia.
d) La suma de los tiempos anteriores.
9.- En un sistema de archivos con indexación simple. Los punteros del bloque índice de primer nivel
a) Apuntan a otros nodos-i.
b) Apuntan a bloques de datos.
c) Apuntan a bloques de punteros que apuntan a bloques de datos.
d) Apunta a un fichero.
10.- Un sistema operativo en el que los usuarios están enterados de la multiplicidad de máquinas y para acceder
sus recursos necesitan conectarse al computador remoto apropiado es un
a) Sistema operativo distribuido.
b) Sistema operativo de red.
c) Sistema operativo centralizado.
d) Ninguno de los anteriores.
SISTEMAS OPERATIVOS I Septiembre 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) Un transbordador permite pasar coches de un lado de un río al otro. Los coches viajan por el lado este del
río, cruzan el río y viajan por el lado oeste (nunca vuelven). El transbordador tiene una cabida de 10 coches y espera a
estar lleno para cruzar el río. Cuando ha cruzado y descargado los coches, vuelve vacío. El transbordador está YA
implementado con dos procedimientos ir y volver (estas funciones están definidas y listas para usarse). ir hace que el
transbordador cruce con los coches y volver lo hace volver vacío.
Se trata de implementar este problema con procesos (coches), resolviendo la concurrencia con el empleo de un monitor.
Para ello rellenar las líneas que faltan del código siguiente.
Implementar el problema teniendo en cuenta que la operación signal o señal de la variable de condición impone que, de
ejecutarse en un procedimiento del monitor, debe ser la última instrucción que se ejecute antes de terminar. Esto significa
que en el caso en que quiera desbloquear a varios procesos debe hacerse en cadena, esto es, el que sale debe desbloquear
al siguiente.
Solución:
monitor transbordador;
Program/module Cruce_Rio;
from condiciones import condicion, espera, señal;
Process CocheX;
import ir, volver;
begin
export cruzar;
viajar_este;
var
-----------------------
----------------------
viajar_oeste;
----------------------
end;
Procedure cruzar;
begin begin
---------------- cobegin
---------------- Coches;
coend;
end;
end
begin {incialización del monitor}
-----------------
end;
2.- (2 puntos) Se tiene un sistema que utiliza gestión de memoria paginada. El espacio de direccionamiento virtual es de
10 páginas de 1024 palabras (1 palabra = 2 bytes). La memoria física está dividida en 32 marcos.
a) ¿Cuántos bits componen una dirección virtual?
b) ¿Cuántos bits componen una dirección física?
Solución:
3.- (3 puntos) En un sistema operativo se utiliza una estructura de nodos-i parecida a la de Unix. Los bloques son de
1024 bytes. Las entradas en los nodos-i dedican 64 bits al tamaño del archivo y 16 bits a los punteros de los bloques. El
nodo-i tiene ocho entradas de direccionamiento directo, una de direccionamiento indirecto simple y otra de
direccionamiento indirecto doble. La tabla de archivos abiertos tiene una entrada para cada archivo con un campo de 64
bits que indica el desplazamiento. Calcular el tamaño máximo de un archivo que utiliza todo el disco.
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Asignatura 208 INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Asignatura 209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA. Cualquier examen que no venga
acompañado de esta hoja de enunciados no será corregido. Complete TODOS los datos que se piden en la hoja de lectura óptica o en
caso contrario su examen no será corregido. La puntuación del examen es: 2 puntos el test y 8 puntos los ejercicios. Las respuestas
correctas del test puntúan 0.2 puntos y las erróneas descuentan 0.1. El test es eliminatorio, debiendo obtener una calificación mínima de
1 punto para superarlo. NINGÚN MATERIAL PERMITIDO, excepto calculadora no programable. Tiempo (test+ejercicios): 2 horas.
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- ¿Cuál de estas transiciones de estados de un proceso jamás se produce en un sistema normal?
a) de “bloqueado” a “preparado”.
b) de “preparado” a “bloqueado”.
c) de “activo” a “preparado”.
d) de “activo” a “bloqueado”.
2.- La técnica de planificación Round-Robin:
a) En general, da mejores tiempos de espera que el FCFS.
b) Minimiza el tiempo medio de retorno.
c) Maximiza el rendimiento del sistema.
d) Permite acotar el tiempo de respuesta máximo.
3.- En el interbloqueo, la estrategia que puede dar lugar a una muy baja utilización de recursos es
a) Estrategia liberal.
b) Estrategia de detección y recuperación.
c) Estrategia de prevención.
d) Estrategia de evitación.
4.- Un semáforo tiene actualmente el valor 2. Si se ejecuta una operación wait o espera sobre él, ¿qué sucederá?
a) El proceso que ejecuta la operación se bloquea hasta que otro ejecute una operación signal o señal.
b) Tras hacer la operación, el proceso continuará adelante sin bloquearse.
c) El proceso continuará adelante sin bloquearse, y si previamente existían procesos bloqueados a causa del
semáforo, se desbloqueará uno de ellos.
d) Un semáforo jamás podrá tener el valor 2, si su valor inicial era 0 (cero) y se ha operado correctamente con él.
5.- En un sistema operativo multitarea, con 8 Kbytes de espacio lógico de proceso, con páginas de 1 Kbytes y 32 Kbytes
de memoria física y sin memoria virtual, la tabla de páginas ocupará
a) 8*5 bits.
b) 32*5 bits.
c) 8*3 bits.
d) 32*3 bits.
6.- Si hay un aumento del número de marcos de páginas, el número de fallos de página en memoria:
a) Disminuye.
b) Aumenta.
c) Permanece igual.
d) Puede aumentar o disminuir.
7.- La interrupción de fallo de página la puede producir:
a) El proceso que está en “ejecución” (activo).
b) El proceso que esta en el estado “preparado”.
c) El proceso que está bloqueado, esperando una página del disco.
d) Desde cualquier estado de los anteriores.
8.- El tiempo que tarde el cabezal del disco en situarse sobre la pista solicitada es el:
a) Tiempo de posicionamiento.
b) Tiempo de latencia.
c) Tiempo de transferencia.
d) La suma de los tiempos anteriores.
9.- En un sistema de archivos con indexación simple. Los punteros del bloque índice de primer nivel
a) Apuntan a otros nodos-i.
b) Apuntan a bloques de datos.
c) Apuntan a bloques de punteros que apuntan a bloques de datos.
d) Apunta a un fichero.
10.- Un sistema operativo en el que los usuarios están enterados de la multiplicidad de máquinas y para acceder
sus recursos necesitan conectarse al computador remoto apropiado es un
a) Sistema operativo distribuido.
b) Sistema operativo de red.
c) Sistema operativo centralizado.
d) Ninguno de los anteriores.
SISTEMAS OPERATIVOS I Septiembre 2003 - Original
INFORMÁTICA DE SISTEMAS - Código Carrera 40 - Código Asignatura 208
INFORMÁTICA DE GESTIÓN - Código Carrera 41 - Código Asignatura 209 Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) Un transbordador permite pasar coches de un lado de un río al otro. Los coches viajan por el lado este del
río, cruzan el río y viajan por el lado oeste (nunca vuelven). El transbordador tiene una cabida de 10 coches y espera a
estar lleno para cruzar el río. Cuando ha cruzado y descargado los coches, vuelve vacío. El transbordador está YA
implementado con dos procedimientos ir y volver (estas funciones están definidas y listas para usarse). ir hace que el
transbordador cruce con los coches y volver lo hace volver vacío.
Se trata de implementar este problema con procesos (coches), resolviendo la concurrencia con el empleo de un monitor.
Para ello rellenar las líneas que faltan del código siguiente.
Implementar el problema teniendo en cuenta que la operación signal o señal de la variable de condición impone que, de
ejecutarse en un procedimiento del monitor, debe ser la última instrucción que se ejecute antes de terminar. Esto significa
que en el caso en que quiera desbloquear a varios procesos debe hacerse en cadena, esto es, el que sale debe desbloquear
al siguiente.
Solución:
3.- (3 puntos) En un sistema operativo se utiliza una estructura de nodos-i parecida a la de Unix. Los bloques son de 1024
bytes. Las entradas en los nodos-i dedican 64 bits al tamaño del archivo y 16 bits a los punteros de los bloques. El nodo-i
tiene ocho entradas de direccionamiento directo, una de direccionamiento indirecto simple y otra de direccionamiento
indirecto doble. La tabla de archivos abiertos tiene una entrada para cada archivo con un campo de 64 bits que indica el
desplazamiento. Calcular el tamaño máximo de un archivo que utiliza todo el disco.
Solución:
Para calcular el tamaño del un fichero hay que ver todos los parámetros que pueden limitar dicho tamaño y buscar cual
es el más restrictivo. El cálculo se va a realizar en número de bloques de ficheros. A continuación se va a hacer este
cálculo según determinados parámetros:
1. Teniendo en cuenta el campo de tamaño del archivo en el nodo-i : 64 bits
El tamaño máximo de un fichero, si se tuviera en cuenta únicamente esta limitación sería de 264 bytes. Pasándolo a
bloques : 264/210=254
3. Según la estructura del sistema de archivos, el número máximo de bloques asignados a un archivo en su nodo-i (en
bloques)
Directo 8 bloques
Indirecto simple 1024/2 512 bloques
Indirecto doble (1024/2)*(1024/2) 262.144 bloques
===================================================================
Total de bloques 262.664 bloques
Hay que tener en cuenta que al ser el tamaño de un bloque de 1024 bytes y el tamaño de un puntero a bloque de 16
bits2 bytes, el número de punteros a bloques que caben en un bloque de punteros es de 1024/2 = 512 punteros.
1.- (3 puntos) En una clínica de traumatologica hay tres secciones diferentes: Médico, Escayola y Rayos-X. Los enfermos
acceden a la clínica y esperan a que les atienda una enfermera que les indica la sala a la que deben acceder. De forma que
la sección Medico tiene una sala de espera para 20 enfermos, Escoyola tiene una sala de espera para 6 enfermos y Rayos-
X No espera. Realizar un programa concurrente de forma que utilizando semáforos coordine las tareas de los enfermos.
Solución:
2.- (3puntos). Deducir las expresiones y calcular el tiempo que es necesario para leer 5 bloques consecutivos de un
archivo en un sistema con:
a) Asignación contigua.
b) Asignación mediante listas enlazadas.
c) Asignación mediante indexación.
Considerar que el tiempo de búsqueda es tb=15 ms, el retardo rotacional tr=10 ms, y el tiempo de transferencia de los
datos de un bloque tt=1.2 ms
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Mayo 2004 - Original
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo 54209 .
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- En un sistema de planificación por prioridades expropiativo llega un proceso en el instante 4 con prioridad máxima.
Este proceso se ejecuta durante 2s, después realiza una operación de E/S durante 3s y para acabar se ejecuta durante 5 s.
¿Cuál es el tiempo de retorno de este proceso? (Despreciar los tiempos de conmutación de tarea)
a) 14s b) 10s c) 7s d) Ninguno de los anteriores
2.- Para la siguiente tabla, determinar el tiempo de retorno y de espera para P2 al aplicar el algoritmo de planificación a
corto plazo Round Robin (Prioridad Circular) con cuanto de 3s.
Proceso Tiempo de llegada (s) Tiempo de ejecución (s)
P1 0 9
P2 1 5
P3 2 2
a) 13 y 8 s b) 14 y 9 s c) 12 y 7 s d) Ninguno de los anteriores
3.- Repetir el problema anterior para el algoritmo de planificación a corto plazo SRT.
a) 8 y 3 s b) 15 y 10 s c) 7 y 2 s d) Ninguno de los anteriores
4.- ¿Cuál de las siguientes condiciones no se cumple en un interbloqueo?
a) Sólo un proceso puede usar un recurso cada vez.
b) Un proceso puede retener algunos mientras espera que se le asignen otros que ha solicitado.
c) Los procesos pueden verse forzados a abandonar recursos retenidos.
d) Un circulo vicioso de espera.
5.- ¿Cuál de las siguientes afirmaciones es falsa en un sistema multiprogramado con una única CPU?
a) Se pueden ejecutar N procesos concurrentemente.
b) Se pueden ejecutar N procesos en paralelo.
c) Se pueden tener N procesos, tantos como indique el grado de multiprogramación.
d) Se pueden tener N procesos, cada uno definido según su bloque de control de procesos.
6.- Considerando que la memoria principal está compuesta por cuatro marcos de página y que un programa se ha dividido
en 8 páginas (numeradas de 0 a 7), con la siguiente cadena de referencia: 0 1 7 2 3 2 7 1 0 3
¿Cuántos fallos de página ocurrirán utilizando el algoritmo FIFO si los cuatro marcos de página están vacíos al inicio?
a) 6 b) 8 c) 10 d) 7
7.- El principio de localidad se refiere a que:
a) las referencias de los programas tienden a agruparse en pequeñas zonas del espacio de direcciones, y estas
localizaciones tienden a cambiar solo intermitentemente.
b) las referencias a la memoria se localizan en el mismo segmento.
c) Los programas se cargan en segmentos contiguos de memoria.
d) hay una situación de localización de todo el espacio de direcciones de un programa.
8.- La diferencia entre un gusano y un virus es:
a) que el gusano es un programa en si mismo y el virus es parte del código de un programa.
b) que el gusano es parte del código de un programa, y el virus es un programa en si mismo
c) que el gusano realiza acciones dentro de un programa y el virus es externo al programa
d) que el gusano es parte del sistema operativo y el virus es parte de los programas de usuario.
9.- El retardo rotacional es el tiempo:
a) medio que tarda el sector en estar debajo de la cabeza de lectura /escritura.
b) que se tarda en transferir los datos.
c) necesario para que las cabezas se desplacen al cilindro adecuado.
d) que se estima en escribir un dato.
10.- En un sistema con gestión de memoria paginada el espacio de direccionamiento virtual es de 30 páginas de 1024
palabras. La memoria física está dividida en 32 marcos. ¿Cuántos bits componen una dirección virtual?
a) 10 b) 15 c) 20 d) Ninguna de las anteriores
SISTEMAS OPERATIVOS I Mayo 2004
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 53209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En una clínica de traumatologica hay tres secciones diferentes: Médico, Escayola y Rayos-X. Los enfermos
acceden a la clínica y esperan a que les atienda una enfermera que les indica la sala a la que deben acceder. De forma que
la sección Medico tiene una sala de espera para 20 enfermos, Escoyola tiene una sala de espera para 6 enfermos y Rayos-
X No espera. Realizar un programa concurrente de forma que utilizando semáforos coordine las tareas de los enfermos.
Solución:
Program/module clinica;
process enfermoX;
begin
while true do
begin
wait(enfermera);
{indica destino}
readln(destino);
signal(enfermera);
if destino = medico then
begin
wait(sala_medico);
{diagnostico}
signal(sala_medico);
end;
if destino = escayola then
begin
wait(sala_escayola);
{pone escayola}
signal(sala_escayola);
end;
if destino = rayos_X then
begin
{hace placas}
end;
end;
end;
begin
inicializa(enfermera, 1);
inicializa(sala_medico, 20);
inicializa(sala_escayola, 6);
cobegin
enfermos;
coend
end;
2.- (3puntos). Deducir las expresiones y calcular el tiempo que es necesario para leer 5 bloques consecutivos de un
archivo en un sistema con:
a) Asignación contigua.
b) Asignación mediante listas enlazadas.
c) Asignación mediante indexación.
Considerar que el tiempo de búsqueda es tb=15 ms, el retardo rotacional tr=10 ms, y el tiempo de transferencia de los
datos de un bloque tt=1.2 ms
Solución:
a) asignación contigua: t=tb+tr+N*tt = 15 + 10 + 5*1.2
b) asignación mediante listas enlazadas: t=N*(tb+tr+tt) = 5*(15+10+1.2)
c) asignación mediante indexación: t= (N+1)*(tb+tr+tt) = 6*(15+10+1.2)
ver también la explicación del problema 5-8
Solución del ejercicio 1.
P1 E/S P1
4 6 9 14
P1 P1 P1 P2 P2 P2 P3 P3 P1 P1 P1 P2 P2 P1 P1 P1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Tiempo de retorno:
P1 = 16s
P2 = 13-1 = 12s
P3 = 8-2 = 6s
Tiempo de espera:
P1 = 16-9 = 6s
P2 = 12-5 = 7s
P3 = 6-2 = 4s
SRT:
P1 P2 P3 P3 P2 P2 P2 P2 P1 P1 P1 P1 P1 P1 P1 P1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Tiempo de retorno:
P1 = 16s
P2 = 8-1 = 7s
P3 = 4-2 = 2s
Tiempo de espera:
P1 = 16-9 = 6s
P2 = 7-5 = 2s
P3 = 2-2 = 0s
Solución 6.-
0 1 7 2 3 3 3 3 0 0
X 0 1 7 2 2 2 2 3 3
X X 0 1 7 7 7 7 2 2
X X X 0 1 1 1 1 7 7
F F F F F F
6 fallos de página
Solución al 10
La memoria tiene 65536/512=128 marcos
El código necesita 32768/512=64 paginas
Los datos: 16386/512=33 paginas
La pila: 15870/512=31 paginas
En total 128 páginas. luego es posible
SISTEMAS OPERATIVOS I Tipo de Examen: A Junio 2004 - Original
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 54209 .
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- En los instantes 2 y 4 llegan los procesos P1 y P2 al sistema. En el instante 12 acaba P1 y en el instante 18 termina P2.
¿Cuál es el tiempo de retorno medio?
a) 15s b) 13s c) 12s d) Ninguno de los anteriores
2.- Para la siguiente tabla, determinar el tiempo de retorno y de espera para P3 al aplicar el algoritmo de planificación a
corto plazo Round Robin (Prioridad circular) con cuanto de 3s.
Proceso Tiempo de llegada (s) Tiempo de ejecución (s)
P1 0 9
P2 1 5
P3 2 2
a) 8 y 6 s b) 7 y 5 s c) 6 y 4 s d) Ninguno de los anteriores
3.- Repetir el problema anterior para el algoritmo de planificación a corto plazo SRT.
a) 4 y 2 s b) 9 y 7 s c) 2 y 0 s d) Ninguno de los anteriores
4.- ¿Cuál de las siguientes afirmaciones sobre semáforos es falsa?
a) Causan pérdidas de tiempo debido a esperas ocupadas.
b) Permiten realizar la sincronización de procesos.
c) Pueden implementarse mediante paso de mensajes
d) Las operaciones signal y wait son operaciones atómicas.
5.- ¿Cuál de las siguientes afirmaciones es falsa con respecto a la evitación de interbloqueos?
a) Para predecir bloqueos se debe conocer la demanda de recursos por anticipado.
b) El número total de procesos y total de recursos debe de ser fijo.
c) Supone que los procesos no pueden finalizar mientras mantengan recursos apropiados.
d) El orden de ejecución de los procesos debe de estar forzado por condiciones de sincronización.
6.- La fragmentación externa corresponde
a) al espacio interno de una partición que se malgasta cuando el bloque de datos cargado es más pequeño que la
partición.
b) al hecho de que una partición disponible no se utiliza porque es muy pequeña para cualquiera de las tareas que
esperan cargarse en memoria.
c) a las particiones desperdiciadas cuando se carga un nuevo proceso.
d) a la circunstancia de bloquear un proceso al no disponer de espacio en memoria.
7.- Dadas tres subrutinas de 700, 200 y 500 palabras respectivamente. Determine la cantidad de memoria desperdiciada
debido a la fragmentación interna cuando las tres subrutinas se cargan en la memoria, utilizando tamaños de páginas de
200 palabras
a) 100 b) 200 c) 500 d) 700
8.- Un caballo de Troya es
a) un programa o procedimiento útil o de apariencia útil que contiene un código que realiza una función dañina o
no deseada.
b) es parte del código de un programa que simula el funcionamiento de otro programa.
c) es un caso especial de virus informático que se transmite al copiarlo en dispositivos de almacenamiento.
d) es un programa utilizado para detectar falsos ataques informáticos.
9.- Considerando que la memoria principal está compuesta por cuatro marcos de página y que un programa se ha dividido
en 8 páginas (numeradas de 0 a 7), con la siguiente cadena de referencia: 0 1 7 2 3 2 7 1 0 3
¿Cuántos fallos de página ocurrirán en las mismas condiciones pero utilizando LRU?
a) 6 b) 8 c) 10 d) 7
10.- Un sistema posee una memoria física de 64 Kb dividido en marcos de páginas de 512 bytes. Un programa tiene un
código de tamaño 32768 bytes, datos de 16386 bytes y una pila de 15870 bytes. ¿Se puede cargar este programa en
memoria?
a) Imposible b) Sólo el código c) Posible d) Se puede si no se carga la pila
SISTEMAS OPERATIVOS I Junio 2004
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 54209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 80% de la calificación final.
1.- (3 puntos) En un cuartel hay un comedor para 500 soldados. El soldado cuando quiere comer entra en el recinto y coge
una bandeja con comida en uno de los 5 mostradores que existen para tal efecto; la bandeja tiene un vaso de agua o un
botellín de refresco, si escoge esto último necesita uno de los 50 abridores. Si quiere postre se dirige a uno de los 3
mostradores que lo despachan; Cuando finaliza la comida sale del recinto. Realizar un programa concurrente de forma
que utilizando semáforos coordine las tareas de los soldados.
Solución:
2.- (3 puntos) En un sistema que utiliza gestión de memoria segmentada, se tiene la siguiente tabla de segmentos:
1.- (3 puntos) En un cuartel hay un comedor para 500 soldados. El soldado cuando quiere comer entra en el recinto y coge
una bandeja con comida en uno de los 5 mostradores que existen para tal efecto; la bandeja tiene un vaso de agua o un
botellín de refresco, si escoge esto último necesita uno de los 50 abridores. Si quiere postre se dirige a uno de los 3
mostradores que lo despachan; Cuando finaliza la comida sale del recinto. Realizar un programa concurrente de forma
que utilizando semáforos coordine las tareas de los soldados.
Solución:
program/module comida_cuartel;
process soldadoX;
var abrir , postre : boolean;
begin
while true do
begin
wait(recinto);
{entrar}
wait(comida);
{Bandeja}
signal(comida);
readln(abrir);
if abrir then
begin
wait(abridor);
{abre}
signal(abridor);
end;
readln(postre);
if postre then
begin
wait(postre);
{come postre}
signal(postre);
end;
{comer}
signal(recinto);
end;
end;
begin
inicializa(recinto, 500);
inicializa(comida, 5);
inicializa(abridor, 50);
inicializa(postre, 3);
cobegin
soldados;
coend;
end;
2.- (3 puntos) En un sistema que utiliza gestión de memoria segmentada, se tiene la siguiente tabla de segmentos:
a) Ver figura
Error de direccionamiento
Dirección lógica no
Número de
Desplazamiento <
segmento
Base Tamaño
P1 P1 P1 P2 P2 P2 P3 P3 P1 P1 P1 P2 P2 P1 P1 P1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Tiempo de retorno:
P1 = 16sg
P2 = 13-1 = 12sg
P3 = 8-2 = 6sg
Tiempo de espera:
P1 = 16-9 = 6sg
P2 = 12-5 = 7sg
P3 = 6-2 = 4sg
SRT:
P1 P2 P3 P3 P2 P2 P2 P2 P1 P1 P1 P1 P1 P1 P1 P1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Tiempo de retorno:
P1 = 16sg
P2 = 8-1 = 7sg
P3 = 4-2 = 2sg
Tiempo de espera:
P1 = 16-9 = 6sg
P2 = 7-5 = 2sg
P3 = 2-2 = 0sg
Solución al 10
La memoria tiene 65536/512=128 marcos
El código necesita 32768/512=64 paginas
Los datos: 16386/512=33 paginas
La pila: 15870/512=31 paginas
En total 128 páginas. luego es posible
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2004 - Original
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo 54209 .
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Si el tiempo de retorno de un proceso, P1, es de 30 ms y el tiempo de espera es de 20 ms. ¿Cuál es su eficacia?
a) 66,66% b) 100% c) 33,33% d) Ninguno de los anteriores
2.- Sean dos procesos, P1 con tiempo de ejecución de 20 ms y P2 con 15 ms. El planificador a corto plazo actúa según el
algoritmo de prioridad circular con cuanto de 10 ms y tiempo de conmutación de tarea de 5ms. Marcar el tiempo de
retorno de P2.
a) 50ms b) 55ms c) 60ms d) Ninguno de los anteriores
3.- Indique si las siguientes afirmaciones son verdaderas:
I. Cuando en un sistema operativo con planificación por prioridad circular el cuanto se elige próximo al tiempo
invertido en la conmutación de procesos el rendimiento es bajo.
II. El algoritmo de planificación que minimiza el tiempo de espera medio es el FIFO.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
4.- Indique si las siguientes afirmaciones son verdaderas:
I. La existencia de un ciclo en un grafo de asignación de recursos es siempre condición necesaria y suficiente para
que haya un interbloqueo.
II. Es posible un interbloqueo en el que intervenga un único proceso.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
5.- Indique si las siguientes afirmaciones son verdaderas:
I. Para lograr la ejecución de manera exclusiva de una sección crítica es necesario definir una variable de condición
si lo que se utiliza es un monitor.
II. Un semáforo tiene actualmente el valor 2. Si un proceso ejecuta una operación wait o espera sobre él, tras hacer
la operación, el proceso continuará adelante sin bloquearse.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
6.- En un sistema de gestión de memoria con particiones fijas, hay 7 Mb asignados a los usuarios que se reparten en 7
particiones de 1 Mb, la cola de tareas contiene tareas con requerimientos de 400 Kb, 1600 Kb, 300 Kb, 900 Kb, 200 Kb,
500 Kb, y 800 Kb. Indique cual es la fragmentación interna y externa que se produce:
a) La fragmentación interna es de 1600 Kb y la externa es de 1024 Kb.
b) La fragmentación interna es de 3044 Kb y la externa de 1600 Kb.
c) La fragmentación interna es de 3044 Kb y la externa de 1024 Kb.
d) No hay ningún tipo de fragmentación.
7.- Se tiene un sistema con paginación con toda la tabla de páginas almacenada en memoria. Si una referencia de
memoria tarda 70 ns. ¿Cuánto tarda una referencia a la memoria paginada?
a) 70 ns b) 140 ns c) 210 ns d) 105 ns
8.- En un sistema con gestión de memoria paginada el espacio de direccionamiento virtual es de 30 páginas de 1024
palabras. La memoria física está dividida en 64 marcos. ¿Cuántos bits componen una dirección física?
a) 16 b) 15 c) 20 d) 5
9.- ¿Cuántos disquetes de 1.40 Mb de capacidad se necesitan para hacer una copia de seguridad de un disco de 300 Mb?
a) 130 b) 215 c) 300 d) 150
10.- indique si las siguientes afirmaciones son correctas:
I. Los directorios son, básicamente, tablas simbólicas de archivos.
II. Los archivos son estructuras de datos que contienen la información de los directorios.
a) I: sí, II: sí b) I: sí, II: no c) I: no, II: sí d) I: no, II: no
SISTEMAS OPERATIVOS I Septiembre 2004- ORIGINAL
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 54209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) Un grupo de amiguitos se ha reunido a merendar un gran plato de M galletas. Cuando un niño quiere comer,
el mismo se sirve una galleta, a menos que esté vacío el plato. En ese caso, el niño avisa a la mamá y espera a que ésta
rellene el plato. Implementar el código de las acciones de los niños y de la mamá usando semáforos.
Solución:
2.- (3 puntos)
Se ha diseñado un sistema operativo parecido a UNIX con una estructura formada por bloques de 4 Kb, como el
mostrado en la figura.
N bloques de mapa de M bloques de mapa
1 bloque de arranque R bloques de nodos-i S bloques de archivos
bloques de nodos-i
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2004 - Original
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo 54209 .
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Si el tiempo de retorno de un proceso, P1, es de 30 ms y el tiempo de espera es de 20 ms. ¿Cuál es su eficacia?
a) 66,66% b) 100% c) 33,33% d) Ninguno de los anteriores
2.- Sean dos procesos, P1 con tiempo de ejecución de 20 ms y P2 con 15 ms. El planificador a corto plazo actúa según el
algoritmo de prioridad circular con cuanto de 10 ms y tiempo de conmutación de tarea de 5ms. Marcar el tiempo de
retorno de P2.
a) 50ms b) 55ms c) 60ms d) Ninguno de los anteriores
3.- Indique si las siguientes afirmaciones son verdaderas:
I. Cuando en un sistema operativo con planificación por prioridad circular el cuanto se elige próximo al tiempo
invertido en la conmutación de procesos el rendimiento es bajo.
II. El algoritmo de planificación que minimiza el tiempo de espera medio es el FIFO.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
4.- Indique si las siguientes afirmaciones son verdaderas:
I. La existencia de un ciclo en un grafo de asignación de recursos es siempre condición necesaria y suficiente para
que haya un interbloqueo.
II. Es posible un interbloqueo en el que intervenga un único proceso.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
5.- Indique si las siguientes afirmaciones son verdaderas:
I. Para lograr la ejecución de manera exclusiva de una sección crítica es necesario definir una variable de condición
si lo que se utiliza es un monitor.
II. Un semáforo tiene actualmente el valor 2. Si un proceso ejecuta una operación wait o espera sobre él, tras hacer
la operación, el proceso continuará adelante sin bloquearse.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
6.- En un sistema de gestión de memoria con particiones fijas, hay 7 Mb asignados a los usuarios que se reparten en 7
particiones de 1 Mb, la cola de tareas contiene tareas con requerimientos de 400 Kb, 1600 Kb, 300 Kb, 900 Kb, 200 Kb,
500 Kb, y 800 Kb. Indique cual es la fragmentación interna y externa que se produce:
a) La fragmentación interna es de 1600 Kb y la externa es de 1024 Kb.
b) La fragmentación interna es de 3044 Kb y la externa de 1600 Kb.
c) La fragmentación interna es de 3044 Kb y la externa de 1024 Kb.
d) No hay ningún tipo de fragmentación.
7.- Se tiene un sistema con paginación con toda la tabla de páginas almacenada en memoria. Si una referencia de
memoria tarda 70 ns. ¿Cuánto tarda una referencia a la memoria paginada?
a) 70 ns b) 140 ns c) 210 ns d) 105 ns
8.- En un sistema con gestión de memoria paginada el espacio de direccionamiento virtual es de 30 páginas de 1024
palabras. La memoria física está dividida en 64 marcos. ¿Cuántos bits componen una dirección física?
a) 16 b) 15 c) 20 d) 5
9.- ¿Cuántos disquetes de 1.40 Mb de capacidad se necesitan para hacer una copia de seguridad de un disco de 300 Mb?
a) 130 b) 215 c) 300 d) 150
10.- indique si las siguientes afirmaciones son correctas:
I. Los directorios son, básicamente, tablas simbólicas de archivos.
II. Los archivos son estructuras de datos que contienen la información de los directorios.
a) I: sí, II: sí b) I: sí, II: no c) I: no, II: sí d) I: no, II: no
Solución del ejercicio 1.
Cuestión 2.14
Tiempo de Ejecución Real, U: Tiempo de retorno (R)-Tiempo de espera (E):
30-20=10s
Eficacia = (U/T)*100= (10/30)*100=33,33%
1.- (3 puntos) Un grupo de amiguitos se ha reunido a merendar un gran plato de M galletas. Cuando un niño quiere comer,
el mismo se sirve una galleta, a menos que esté vacío el plato. En ese caso, el niño avisa a la mamá y espera a que ésta
rellene el plato. Implementar el código de las acciones de los niños y de la mamá usando semáforos.
Solución:
Program/Module Merienda;
var
n_galletas: integer;
mutex, despierta_mama, seguir_merienda: semaforo;
Process NiñoX;
Process Mama;
begin
begin
while true do
while true do
begin
begin
wait(mutex);
wait(despierta_mama);
if n_galletas:=0 then
/*rellena el plato de galletas*/
begin
n_galletas:=M;
signal(despierta_mama);
signal(seguir_merienda);
wait(seguir_merienda);
end;
end;
end;
else
begín
/*coger galleta*/
n_galletas:=n_galletas-1;
signal(mutex);
end
end;
end;
begin
n_galletas:=M;
inicializa(mutex,1);
inicializa(despierta_mama,0);
iniciliza(seguir_merienda,0);
cobegin
Niños, Mama;
coend;
end;
2.- (3 puntos)
Se ha diseñado un sistema operativo parecido a UNIX con una estructura formada por bloques de 4 Kb, como el
mostrado en la figura:
N bloques de mapa de M bloques de mapa
1 bloque de arranque R bloques de nodos-i S bloques de archivos
bloques de nodos-i
Solución:
a) El número de ficheros está restringido por el número de nodos-i disponibles. Este número viene determinado por
los M=1 bloques de mapa de nodos-i, cuyos bits son utilizados para indicar que nodos-i están libres y cuales
ocupados. Así, el número posible de nodos-i y, por tanto, de ficheros está determinado por el número de bits de
este mapa:
El sistema está preparado para alojar los 32768 ficheros calculados. Por lo que tiene espacio para 32768
nodos-i, aunque solo se tengan 128 archivos. El número de nodos-i por bloque será:
(4*1024bytes)/32 = 128 nodos-i/bloque
El número de bloques R será:
R = 32768 / 128 = 256 bloques
Para manejar esta cantidad de bloques, hacen falta otros tantos bits. En cada bloque caben 32768 bits, por
tanto se necesitan:
1.- (3 puntos) Se pide escribir un programa que conste de dos procesos concurrentes A y B sincronizados mediante dos
semáforos de tal manera que el resultado final de la ejecución sea que los procesos escriban en la salida estándar en
Solución:
2.- (3puntos).
En un sistema que implementa memoria virtual mediante demanda de páginas, un proceso genera la siguiente secuencia
de referencias a páginas de memoria:
2 5 1 3 5 0 4 1 0 8 7 9 5 7 1 0 2 5 9 8 2
Con 5 marcos de página inicialmente vacíos estudiar:
a) Cuantos fallos de página se producen si se utiliza el algoritmo LRU para la sustitución de páginas.
b) Cuantos fallos de página se produce si el algoritmo utilizado es el FIFO.
c) Razonar si aumentando indefinidamente el número de marcos de página se mejoraría la tasa de fallos de página.
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Mayo 2005 - Original
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo 54209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Para la siguiente tabla, determinar el tiempo de retorno y de espera para P2 al aplicar el algoritmo de planificación a
corto plazo Round Robin (Prioridad Circular) con cuanto de 3s.
Proceso Tiempo de llegada (s) Tiempo de ejecución (s)
P1 0 9
P2 1 5
P3 2 2
a) 13 y 8 s b) 14 y 9 s c) 12 y 7 s d) Ninguno de los anteriores
2.- Indique si las siguientes afirmaciones son verdaderas:
I. Con el algoritmo de planificación SRT la llegada de un nuevo proceso al sistema provoca siempre el desalojo del
proceso actualmente en ejecución.
II. El algoritmo de planificación SJF concede la CPU al proceso que ocupa menos espacio en memoria.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
3.- Considere un semáforo cuyo valor actual es 3. Una operación de señal sobre el mismo...
a) Deja un valor de 2 en el semáforo
b) Deja un valor de 4 en el semáforo
c) Deja un valor de 4 en el semáforo excepto si existen procesos en espera por el mismo, en cuyo caso queda con 3
d) Deja un valor de 4 en el semáforo y despierta a uno de los procesos en espera, si lo hay, en cuyo caso queda con 3
4.- Los semáforos son herramientas de:
a) Comunicación entre procesos b) Sincronización entre procesos
c) Planificación de procesos d) Todas las anteriores son ciertas
5.- En el interbloqueo, la estrategia que requiere declarar por adelantado los recursos máximos necesarios es:
a) Prevención del interbloqueo mediante negación de retención y espera
b) Prevención del interbloqueo mediante espera circular
c) Detección y recuperación
d) Evitación mediante el algoritmo del banquero
6.- El término reubicable se refiere a:
a) La asignación a un programa de un conjunto fijo de direcciones de memoria especificadas en tiempo de ejecución.
b) La posibilidad de cargar y ejecutar un programa dado en un lugar arbitrario de memoria.
c) Las operaciones de eliminar de la memoria principal procesos suspendidos, llevarlos al disco y cargar del disco a la
memoria principal procesos para su ejecución.
d) Las tareas del sistema operativo realizadas en tiempo de ejecución.
7.- En un sistema de archivos tipo UNIX, un nodo-i es:
a) Un nodo de un esquema en la representación de datos del sistema.
b) Un tipo determinado de archivo del sistema operativo, para la gestión de los procesos en ejecución.
c) Una estructura de control que contiene información clave de un archivo necesaria para el sistema operativo.
d) Un registro de memoria principal para el acceso al sistema de almacenamiento de información.
8.- Un computador funciona a una velocidad de 107 ciclos/segundo, una instrucción emplea 4 ciclos máquina, y una
operación de lectura/escritura de memoria tarda 1 ciclo máquina. Si se emplean 3 instrucciones en transferir cada palabra,
la máxima velocidad de transferencia de datos utilizando E/S controlada por programa es:
a) 525.000 palabras/segundo b) 2.048 palabras/segundo
c) 833.333 palabras/segundo d) 10.000.000 palabras/segundo
9.- Suponiendo que el directorio actual es /usr/soi, indicar cual de los siguientes nombres de ruta para el archivo
/usr/soi/docum no es correcto
a) docum b) ../docum c)../soi/docum d) ./docum
10.- ¿Cuál es la página que se sustituirá en el algoritmo de sustitución “óptimo”?
a) la utilizada menos frecuentemente b) la que se utilizó la última vez
c) la siguiente que se va a utilizar d) la que tardará más en volverse a utilizar
SISTEMAS OPERATIVOS I Mayo 2005
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 53209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) Se pide escribir un programa que conste de dos procesos concurrentes A y B sincronizados mediante dos
semáforos de tal manera que el resultado final de la ejecución sea que los procesos escriban en la salida estándar en
Solución:
Program/Module Presentación;
var
A_continua, B_continua: semaforo;
Process A;
begin
put("Hola soy A");
signal(B_continua);
wait(A_continua);
put("Se despide A");
signal(B_continua);
end;
Process B;
begin
wait(B_continua);
put("Hola soy B");
signal(A_continua);
wait(B_continua);
put("Se despide B");
end;
begin
inicializa(A_continua, 0);
inicializa(B_continua, 0);
cobegin
A, B;
coend;
end;
2.- (3puntos).
En un sistema que implementa memoria virtual mediante demanda de páginas, un proceso genera la siguiente secuencia
de referencias a páginas de memoria:
2 5 1 3 5 0 4 1 0 8 7 9 5 7 1 0 2 5 9 8 2
Con 5 marcos de página inicialmente vacíos estudiar:
a) cuantos fallos de página se producen si se utiliza el algoritmo LRU para la sustitución de páginas
b) cuantos fallos de página se produce si el algoritmo utilizado es el FIFO
c) razonar si aumentando indefinidamente el número de marcos de página se mejoraría la tasa de fallos de página.
Solución:
a) Este algoritmo sustituye la página en memoria que no ha sido referenciada en memoria desde hace mas tiempo.
2 5 1 3 5 0 4 1 0 8 7 9 5 7 1 0 2 5 9 8 2
X 2 5 1 3 5 0 4 1 0 8 7 9 5 7 1 0 2 5 9 8
X X 2 5 1 3 5 0 4 1 0 8 7 9 5 7 1 0 2 5 9
X X X 2 2 1 3 5 5 4 1 0 8 8 9 5 7 1 0 2 5
X X X X X 2 1 3 3 5 4 1 0 0 8 9 5 7 1 0 0
F F F F F F F F F F F F F F F
2 5 1 3 3 0 4 4 4 8 7 9 5 5 1 0 2 2 2 8 8
X 2 5 1 1 3 0 0 0 4 8 7 9 9 5 1 0 0 0 2 2
X X 2 5 5 1 3 3 3 0 4 8 7 7 9 5 1 1 1 0 0
X X X 2 2 5 1 1 1 3 0 4 8 8 7 9 5 5 5 1 1
X X X X X 2 5 5 5 1 3 0 4 4 8 7 9 9 9 5 5
F F F F F F F F F F F F F F
c) Hay que tener en cuenta que tenemos 9 páginas diferentes (10, si se cuenta la 6, aunque no se ha referenciado en el
enunciado), luego como mínimo tenemos que tener 9 fallos de página (10 si no contamos la 6). En cuanto tengamos un
número de marcos de página que ya nos permita tener 10 fallos de página, aunque aumentemos el número de marcos, los
fallos no los reduciremos.
SISTEMAS OPERATIVOS I Tipo de Examen: A Junio 2005 - Original
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 54209 .
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Calcular el tiempo de retorno y de espera para P2 (ver tabla) al aplicar el algoritmo de planificación a corto plazo SRT.
Proceso Tiempo de llegada (s) Tiempo de ejecución (s)
P1 0 9
P2 1 5
P3 2 2
a) 8 y 3 s b) 15 y 10 s c) 7 y 2 s d) Ninguno de los anteriores
2.- Indique si las siguientes afirmaciones son verdaderas:
I. Cuando se planifica mediante Round Robin, se puede producir un cambio de contexto antes del final de la rodaja
de tiempo
II. Cuando se planifica mediante Round Robin, un proceso puede ejecutarse durante dos rodajas de tiempo
consecutivas.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
3.- Indique si las siguientes afirmaciones son verdaderas:
I. La instrucción de espera sobre un semáforo duerme siempre al proceso llamador
II. El problema de la sección crítica aparece porque varios procesos concurrentes pueden acceder a un mismo
conjunto de datos
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
4.- El siguiente código pretende gestionar la exclusión mutua en el acceso a una sección crítica, usando la instrucción
atómica swap(a, b) que intercambia los valores de a y b:
flag:=?;
repeat
swap(bloqueo, flag);
until flag=false;
/*sección crítica*/
bloqueo:=?
¿Con qué valores deben sustituirse las interrogaciones para que funciones adecuadamente?
a) flag=false y bloqueo=false b) flag=false y bloqueo=true c) flag=true y bloqueo=false d) flag=true y bloqueo=true
5.- El algoritmo del banquero...
a) requiere la declaración previa de cuántos procesos se van a ejecutar.
b) es un algoritmo de detección de interbloqueo
c) puede retener la ejecución de un proceso, aun cuando existan recursos disponibles para él.
d) sólo es implementable si el número de recursos es ilimitado
6.- Indique si las siguientes afirmaciones son verdaderas:
I. La fragmentación se refiere a la incapacidad del sistema operativo para asignar porciones de memoria no
utilizada.
II. El sistema de los asociados para la gestión de memoria no produce ningún tipo de fragmentación.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
7.- Si encontrándonos en el directorio /usr/man queremos copiar el archivo examen desde este directorio al directorio
/usr/ara, indicar cuál de las siguientes opciones no es correcta:
a) cp examen /usr/ara/examen b) cp /usr/man/examen examen
c) cp examen ../ara/examen d) cp /usr/man/examen /usr/ara/examen
8.- Un disco con 200 pistas (de la 0 a la 199) tiene una cola de peticiones de acceso: 81, 142, 86, 172, 89, 145, 97, 170,
125. La cabeza se encuentra en la pista 100. ¿Cuál es la longitud media de búsqueda para satisfacer estas solicitudes con
el algoritmo de planificación del disco FCFS?:
a) 28 b) 345 c) 58.5 d) 1
9.- Los buffers de E/S corresponden a:
a) Un dispositivo de gestión de las entradas y salidas de datos al computador.
b) Al espacio de la memoria principal que se reserva para el almacenamiento intermedio de datos procedentes (o con
destino) a los periféricos.
c) A la parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y de salida.
d) A los dispositivos de almacenamiento secundario que se sitúan entre el mundo físico y el computador.
10.- ¿Cuál es la página que se sustituye en el algoritmo de sustitución FIFO?
a) la que lleva mas tiempo en memoria b) la que tardará más en volverse a utilizar
c) la utilizada menos frecuentemente d) la siguiente que se va a llamar
SISTEMAS OPERATIVOS I Junio 2005
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 54209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En un sistema concurrente existen dos tipos de procesos, A y B, que compiten por utilizar cierto recurso. En
cualquier momento puede haber un máximo de N procesos de cualquier tipo usando el recurso (N 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 una solución usando semáforos.
Solución:
2.- (3 puntos) En un sistema operativo se utiliza una estructura de nodos-i similar a la de Unix. Los bloques son de 2048
bytes. Las entradas en los nodos-i dedican 64 bits al tamaño del archivo y 32 bits a los punteros de los bloques.
El nodo-i tiene 8 entradas de direccionamiento directo, una de direccionamiento indirecto simple, y otra de
direccionamiento indirecto doble. La entrada de archivos abiertos tiene una entrada para cada archivo con un campo de
64 bits que indica el desplazamiento.
Calcular el tamaño máximo de un archivo que utiliza todo el disco.
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Junio 2005 - Original
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Calcular el tiempo de retorno y de espera para P2 (ver tabla) al aplicar el algoritmo de planificación a corto plazo SRT.
Proceso Tiempo de llegada (s) Tiempo de ejecución (s)
P1 0 9
P2 1 5
P3 2 2
a) 8 y 3 s b) 15 y 10 s c) 7 y 2 s d) Ninguno de los anteriores
2.- Indique si las siguientes afirmaciones son verdaderas:
I. Cuando se planifica mediante Round Robin, se puede producir un cambio de contexto antes del final de la rodaja de
tiempo
II. Cuando se planifica mediante Round Robin, un proceso puede ejecutarse durante dos rodajas de tiempo consecutivas.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
3.- Indique si las siguientes afirmaciones son verdaderas:
I. La instrucción de espera sobre un semáforo duerme siempre al proceso llamador
II. El problema de la sección crítica aparece porque varios procesos concurrentes pueden acceder a un mismo
conjunto de datos
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
4.- El siguiente código pretende gestionar la exclusión mutua en el acceso a una sección crítica, usando la instrucción
atómica swap(a, b) que intercambia los valores de a y b:
flag:=?;
repeat
swap(bloqueo, flag);
until flag=false;
/*sección crítica*/
bloqueo:=?
¿Con qué valores deben sustituirse las interrogaciones para que funciones adecuadamente?
a) flag=false y bloqueo=false b) flag=false y bloqueo=true c) flag=true y bloqueo=false d) flag=true y bloqueo=true
5.- El algoritmo del banquero...
a) requiere la declaración previa de cuántos procesos se van a ejecutar.
b) es un algoritmo de detección de interbloqueo
c) puede retener la ejecución de un proceso, aun cuando existan recursos disponibles para él.
d) sólo es implementable si el número de recursos es ilimitado
6.- Indique si las siguientes afirmaciones son verdaderas:
I. La fragmentación se refiere a la incapacidad del sistema operativo para asignar porciones de memoria no utilizada.
II. El sistema de los asociados para la gestión de memoria no produce ningún tipo de fragmentación.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
7.- Si encontrándonos en el directorio /usr/man queremos copiar el archivo examen desde este directorio al directorio
/usr/ara, indicar cuál de las siguientes opciones no es correcta:
a) cp examen /usr/ara/examen b) cp /usr/man/examen examen
c) cp examen ../ara/examen d) cp /usr/man/examen /usr/ara/examen
8.- Un disco con 200 pistas (de la 0 a la 199) tiene una cola de peticiones de acceso: 81, 142, 86, 172, 89, 145, 97, 170,
125. La cabeza se encuentra en la pista 100. ¿Cuál es la longitud media de búsqueda para satisfacer estas solicitudes con
el algoritmo de planificación del disco FCFS?:
a) 28 b) 345 c) 58.5 d) 1
9.- Los buffers de E/S corresponden a:
a) Un dispositivo de gestión de las entradas y salidas de datos al computador.
b) Al espacio de la memoria principal que se reserva para el almacenamiento intermedio de datos procedentes (o con
destino) a los periféricos.
c) A la parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y de salida.
d) A los dispositivos de almacenamiento secundario que se sitúan entre el mundo físico y el computador.
10.- ¿Cuál es la página que se sustituye en el algoritmo de sustitución FIFO?
a) la que lleva mas tiempo en memoria b) la que tardará más en volverse a utilizar
c) la utilizada menos frecuentemente d) la siguiente que se va a llamar
SISTEMAS OPERATIVOS I Junio 2005
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 54209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En un sistema concurrente existen dos tipos de procesos, A y B, que compiten por utilizar cierto recurso. En
cualquier momento puede haber un máximo de N procesos de cualquier tipo usando el recurso (N 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 una solución usando semáforos.
Solución:
Program/module Compartir_recurso;
Process AX Process BX
begin begin
espera(hueco); espera(hueco);
espera(mutex); espera(mutex);
if 2*procA>procB then procB:=procB+1;
begin if (espera >0) and (2*procA<=procB) then
espera:=espera+1; señal(avisa);
señal(mutex); señal(mutex);
señal(hueco);
espera(avisa); {utiliza el recurso}
espera(hueco);
espera(mutex); espera(mutex);
espera:=espera-1; procB:=procB-1;
end; señal(mutex);
procA:=ProcA+1; señal(hueco);
señal(mutex); end;
{utiliza el recurso}
espera(mutex);
procA:=ProcA-1;
if (espera >0) and (2*procA<=procB) then
señal(avisa);
señal(mutex);
señal(hueco);
end;
Process Padre
begin
inicializa(mutex, 1);
inicializa(hueco, N);
inicializa(avisa, 0);
ProcA=ProcB=espera=0;
cobegin
As, Bs;
coend
end;
2.- (3 puntos) En un sistema operativo se utiliza una estructura de nodos-i similar a la de Unix. Los bloques son de 2048
bytes. Las entradas en los nodos-i dedican 64 bits al tamaño del archivo y 32 bits a los punteros de los bloques.
El nodo-i tiene 8 entradas de direccionamiento directo, una de direccionamiento indirecto simple, y otra de
direccionamiento indirecto doble. La entrada de archivos abiertos tiene una entrada para cada archivo con un campo de
64 bits que indica el desplazamiento.
Calcular el tamaño máximo de un archivo que utiliza todo el disco.
Solución:
Hay que considerar todos los parámetros que pueden limitar dicho tamaño y buscar el más restrictivo.
1) Considerar la estructura del sistema de archivos, el número máximo de bloques asignado a un archivo en su nodo-i
(bloques).
Como el tamaño de un bloque es de 2.048 bytes, y los punteros son de 32 bits=4 bytes, entonces, el número de punteros a
bloques que caben en un bloque es de 2048/4 = 512 punteros. Por lo tanto tendremos:
2) Considerando el tamaño de un puntero. Como el tamaño de un puntero es de 32 bits, el máximo número de bloques
que se puede referenciar con un puntero es de 232
3) Teniendo en cuenta el tamaño del archivo en el nodo-i, que es de 64 bits. El tamaño máximo considerando sólo esta
limitación sería de 264 bytes, en bloques sería 264/2048 = 264/211 = 253
La solución será por tanto la mas restrictiva que corresponde a la opción 1, por la estructura de archivos.
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2005 - O
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas O
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Indique si las siguientes afirmaciones son verdaderas:
I. Si un sistema no es multiprocesamiento tampoco es multitarea.
II. El estado global del sistema define al conjunto de recursos y procesos y es una constante del sistema operativo.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no
2.- Un proceso en estado bloqueado
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.
3.- Indique si las siguientes afirmaciones son verdaderas:
I. La técnica de envejecimiento en la estrategia de planificación por prioridades se utiliza para evitar el interbloqueo.
II. En los algoritmos de planificación de tipo expropiativo el proceso que se está ejecutando puede ser interrumpido
por parte del sistema operativo
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no
4.- Considere un semáforo cuyo valor actual es 6. Una operación de señal sobre el mismo...
a) Deja un valor de 5 en el semáforo.
b) Deja un valor de 7 en el semáforo.
c) Deja un valor de 7 en el semáforo excepto si existen procesos en espera por el mismo, en cuyo caso queda con 6.
d) Los valores de un semáforo sólo pueden ser de 0 o 1.
5.- Indique si las siguientes afirmaciones son verdaderas:
I. Los monitores son herramientas que por si mismas permiten la compartición de datos por procesos concurrentes
II. Los monitores son herramientas que por si mismas permiten la sincronización entre procesos concurrentes
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
6.- El concepto de intercambio se refiere a:
a) La posibilidad de cargar y ejecutar un programa dado en un lugar arbitrario de memoria.
b) La asignación a un programa de un conjunto fijo de direcciones de memoria especificadas en tiempo de ejecución.
c) Las operaciones de eliminar de la memoria principal procesos suspendidos, llevarlos al disco y cargar del disco a la
memoria principal procesos para su ejecución.
d) Las tareas realizadas por el sistema operativo para bloquear un proceso en ejecución.
7.- Una lista de acceso es:
a) Una lista ordenada que enlaza a cada uno de los archivos del sistema.
b) Una lista ordenada con todos los dominios que pueden tener acceso a un determinado objeto (programa, archivo,
etc) y la forma de acceso.
c) Una lista con los punteros que dan acceso a los archivos almacenados en el disco.
d) Una lista con los accesos y los dominios de los sistemas que están conectados.
8.- Un computador funciona a una velocidad de 107 ciclos/segundo, una instrucción emplea 4 ciclos máquina, y una
operación de lectura/escritura de memoria tarda 1 ciclo máquina. Si se emplean 3 instrucciones en transferir cada palabra,
la máxima velocidad de transferencia de datos utilizando un sistema de DMA:
a) 525.000 palabras/segundo b) 10.000.000 palabras/segundo
c) 833.333 palabras/segundo d) Ninguna de las anteriores
9.- Con el concepto de “independencia de dispositivo” nos referimos a:
a) La construcción de dispositivos que sirvan para distintas máquinas.
b) La utilización de las funciones del sistema operativo específicas para cada uno de los dispositivos.
c) La abstracción que algunos sistemas operativos realizan del sistema de E/S.
d) Los sistemas de E/S que dependen únicamente del sistema operativo.
10.- La fragmentación externa ocurre cuando:
a) Dentro de una partición hay una parte de memoria que no se puede utilizar.
b) Se desperdicia memoria en variables no utilizadas por el programa.
c) No se utiliza una partición libre porque es pequeña para las tareas que esperan.
d) Se utilizan todas las particiones libres aunque las tareas que esperan sean mas grandes que ellas.
SISTEMAS OPERATIVOS I Septiembre 2005 - O
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _______________________ Código asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En el parque de atracciones se ha establecido límite de usuarios por razones de seguridad (para ello se han
instalado unos torniquetes a la entrada y a la salida que controlan en todo momento el número de personas en el parque)
de forma que cuando está completo se debe esperar para entrar que alguien salga. En los días de vacaciones se forman
largas colas, por lo que el parque ha decidido crear una entrada VIP, más cara que la NORMAL, pero que da preferencia a
la hora de acceder a las instalaciones cuando el parque está lleno. Realizar el código de entrada y salida del parque, de
forma que cuando alguien abandona el parque, si este estaba lleno, su lugar será ocupado por una persona con entrada
VIP, si no hubiera personas con entrada VIP esperando, entonces su lugar será ocupado por una persona con entrada
NORMAL. Definir los procesos EntradaX y SalidaX que se ejecutan cuando una persona entra o sale del parque. Utilizar
semáforos para gestionar la capacidad del parque y las colas de espera.
Solución:
2.- (3puntos).
Una memoria virtual dispone de 9 marcos para programas. En un momento dado se está ejecutando el proceso P1, que
tiene concedidos 3 marcos, y P2 y P3 solicitan memoria para ejecutarse (el tamaño de P2 es el doble que el de P3, 1024 y
512 Kb respectivamente). Para ello, se realiza un reparto de todos los marcos libres de forma proporcional al tamaño de
los dos procesos y ambos entran en ejecución. Cuando el proceso P3 demanda por primera vez la página 3 el proceso
P1 termina y sus marcos se reparten entre los procesos P2 y P3 de forma proporcional a sus tamaños.
1 2 1 5 2 3 7 6 5 4 3 7 5 6 7 3 7 6 4 3 7
Compare los resultados de este apartado para las políticas FIFO y LRU.
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2005 - O
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208 INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo 54209
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Indique si las siguientes afirmaciones son verdaderas:
I. Si un sistema no es multiprocesamiento tampoco es multitarea
II. El estado global del sistema define al conjunto de recursos y procesos y es una constante del sistema operativo
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no
2.- 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
3.- Indique si las siguientes afirmaciones son verdaderas:
I. La técnica de envejecimiento en la estrategia de planificación por prioridades se utiliza para evitar el interbloqueo.
II. En los algoritmos de planificación de tipo expropiativo el proceso que se está ejecutando puede ser interrumpido
por parte del sistema operativo
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no
4.- Considere un semáforo cuyo valor actual es 6. Una operación de señal sobre el mismo...
a) Deja un valor de 5 en el semáforo
b) Deja un valor de 7 en el semáforo
c) Deja un valor de 7 en el semáforo excepto si existen procesos en espera por el mismo, en cuyo caso queda con 6
d) Los valores de un semáforo sólo pueden ser de 0 o 1
5.- Indique si las siguientes afirmaciones son verdaderas:
III. Los monitores son herramientas que por si mismas permiten la compartición de datos por procesos concurrentes
IV. Los monitores son herramientas que por si mismas permiten la sincronización entre procesos concurrentes
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
6.- El concepto de intercambio se refiere a:
a) La posibilidad de cargar y ejecutar un programa dado en un lugar arbitrario de memoria.
b) La asignación a un programa de un conjunto fijo de direcciones de memoria especificadas en tiempo de ejecución.
c) Las operaciones de eliminar de la memoria principal procesos suspendidos, llevarlos al disco y cargar del disco a
la memoria principal procesos para su ejecución.
d) Las tareas realizadas por el sistema operativo para bloquear un proceso en ejecución.
7.- Una lista de acceso es:
a) Una lista ordenada que enlaza a cada uno de los archivos del sistema.
b) Una lista ordenada con todos los dominios que pueden tener acceso a un determinado objeto (programa,
archivo, etc) y la forma de acceso.
c) Una lista con los punteros que dan acceso a los archivos almacenados en el disco.
d) Una lista con los accesos y los dominios de los sistemas que están conectados.
8.- Un computador funciona a una velocidad de 107 ciclos/segundo, una instrucción emplea 4 ciclos máquina, y una
operación de lectura/escritura de memoria tarda 1 ciclo máquina. Si se emplean 3 instrucciones en transferir cada palabra,
la máxima velocidad de transferencia de datos utilizando un sistema de DMA:
a) 525.000 palabras/segundo b) 10.000.000 palabras/segundo
c) 833.333 palabras/segundo d) Ninguna de las anteriores
9.- Con el concepto de “independencia de dispositivo” nos referimos a:
a) La construcción de dispositivos que sirvan para distintas máquinas.
b) La utilización de las funciones del sistema operativo específicas para cada uno de los dispositivos.
c) La abstracción que algunos sistemas realizan del sistema de E/S.
d) Los sistemas de E/S que dependen únicamente del sistema operativo.
10.- La fragmentación externa ocurre cuando:
a) Dentro de una partición hay una parte de memoria que no se puede utilizar.
b) Se desperdicia memoria en variables no utilizadas por el programa.
c) No se utiliza una partición libre porque es pequeña para las tareas que esperan.
d) Se utilizan todas las particiones libres aunque las tareas que esperan sean mas grandes que ellas.
SISTEMAS OPERATIVOS I Septiembre 2005 - O
INFORMÁTICA DE SISTEMAS – Plan antiguo: 40208 Plan nuevo: 53208
INFORMÁTICA DE GESTIÓN – Plan antiguo: 41209 Plan nuevo: 53209 2 horas/Ningún material permitido
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _______________________ Código asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En el parque de atracciones se ha establecido límite de usuarios por razones de seguridad (para ello se han
instalado unos torniquetes a la entrada y a la salida que controlan en todo momento el número de personas en el parque)
de forma que cuando está completo se debe esperar para entrar que alguien salga. En los días de vacaciones se forman
largas colas, por lo que el parque ha decidido crear una entrada VIP, más cara que la NORMAL, pero queda preferencia a
la hora de acceder a las instalaciones cuando el parque está lleno. Realizar el código de entrada y salida del parque, de
forma que cuando alguien abandona el parque, su lugar será ocupado por una persona con entrada VIP, si no hubiera
personas con entrada VIP esperando, entonces su lugar será ocupado por una persona con entrada NORMAL. Definir los
procesos Entradas y Salidas que se ejecutan cuando una persona entra o sale del parque. Utilizar semáforos para gestionar
la capacidad del parque y la cola de espera.
Solución:
Program/module Parque_Atracciones;
Process Padre
begin
inicializa(mutex, 1);
inicializa(sem_vip, 0);
inicializa(sem_normal, 0);
usuarios=usuarios_normales=usuarios_vip=0;
cobegin
EntradaS, SalidaS;
coend
end;
2.- (3puntos).
Una memoria virtual dispone de 9 marcos para programas. En ese momento se está ejecutando el proceso P1, que tiene
concedidos 3 marcos, P2 y P3 solicitan memoria para ajustarse (el tamaño de P2 es el doble que el de P3, 1024 y 512 Kb
respectivamente). Se realiza un reparto de todos los marcos libres de forma proporcional al tamaño de los procesos y
ambos entran en ejecución. Cuando el proceso P3 demanda por primera vez la página 3 el proceso P1 termina y sus
marcos se reparten entre los procesos P2 y P3 de forma proporcional a sus tamaños.
1 2 1 5 2 3 7 6 5 4 3 7 5 6 7 3 7 6 4 3 7
Compare los resultados de este apartado para las políticas FIFO y LRU.
Solución:
a) Cuando los procesos P2 y P3 piden memoria el número de marcos libres es 6 pues 3 marcos están asignados al proceso
P1. Como el reparto es proporcional al tamaño de los procesos, se tendrá:
b) La secuencia de peticiones del proceso P3 se puede dividir en dos partes. La primera parte está formada por la
secuencia de peticiones anteriores a la primera petición de la página 3, ya que durante este periodo P3 tiene asignados 2
marcos de página. La segunda parte está formada por el resto de la secuencia y durante este tiempo el proceso P3 tiene
asignados 3 marcos de página.
Para FIFO
1 2 1 5 2 3 7 6 5 4 3 7 5 6 7 3 7 6 4 3 7
X 1 2 2 5 5 3 7 6 5 4 3 7 5 6 6 3 7 7 4 4 4
X 1 1 2 2 5 3 7 6 5 4 3 7 5 5 6 3 3 7 7 7
2 5 3 7 6 5 4 3 7 7 5 6 6 3 3 3
F F F F F F F F F F F F F F F
Para LRU
1 2 1 5 2 3 7 6 5 4 3 7 5 6 7 3 7 6 4 3 7
X 1 2 1 5 2 3 7 6 5 4 3 7 5 6 7 3 7 6 4 3 7
X 1 2 1 5 2 3 7 6 5 4 3 7 5 6 7 3 7 6 4 3
5 2 3 7 6 5 4 3 7 5 6 6 3 7 6 4
F F F F F F F F F F F F F F F F F
RR:
A A A B B B B C C B D D D D E E D - - -
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Tiempo de retorno:
A = 3s
B = 10-1 = 9s
C = 9-3 = 6s
D = 17-9 = 8s
E = 16-12 = 4s
Tiempo de espera:
A = 3-3 = 0s
B = 9-5 = 4s
C = 6-2 = 4s
D = 8-5 = 3s
E = 4-2 = 2s
SRT:
A A A C C B B B B B D D E E D D D - - -
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Tiempo de retorno:
A = 3s
B = 10-1 = 9s
C = 5-3 = 2s
D = 17-9 = 8s
E = 14-12 = 2s
Tiempo de espera:
A = 3-3 = 0s
B = 9-5 = 4s
C = 2-2 = 0s
D = 8-5 = 3s
E = 2-2 = 0s
2 .- (3 puntos)
Tenemos un sistema de gestión de memoria paginada. Cada entrada a la tabla de páginas ocupa 4 bytes. Cada dirección de
memoria tiene 32 bits, 20 para indicar el número de página y 12 para el desplazamiento. El tamaño de las páginas es de 4
Kbytes.
a) ¿Cuántas páginas puede llegar a tener un proceso?
b) ¿Qué tamaño en bytes puede ocupar la tabla como máximo?
c) Un fichero de tamaño 100 Mbytes. ¿Cuánto espacio consumiría en la tabla de páginas?
d) En un instante determinado de tiempo la tabla de páginas es la indicada en la figura. Indicar a que direcciones
físicas de memoria principal corresponden las direcciones lógicas: (0,3000), (1,5050), (2,1058), (3, 515),
(4,2015). Suponer que el marco 0 empieza en la dirección 0.
a)
Si hay 20 bits para indicar el número de página, entonces se podrá tener 220 = 1.048.576 páginas
b)
El tamaño será 220 * 4 bytes = 4.194.304
c)
100 Mb = 100 Mb/ 4 Kb = 25.600 páginas
Luego necesitará 25.600 entradas * 4 = 102.400 bytes. Luego consumirá en tablas 102.400 bytes.
d)
x Tiene tres colas: la primera sigue un algoritmo de planificación Round-Robin o prioridad circular con cuanto de 2 ms;
realimentadas con las siguientes características:
La segunda sigue un algoritmo de planificación Round-Robin con quantum de 4 ms y la tercera sigue una
x Los procesos son degradados de cola si el sistema los expulsa del sistema por vencimiento del cuanto.
x La planificación entre colas es por prioridad siendo la más prioritaria la primera, luego la segunda y después la tercera.
RR(2)
Entrada Salida
RR(4)
Entrada Salida
FIFO
Entrada Salida
FCFS:
Pista a la que
se accede
Nº pistas que
se atraviesan
SSTF:
Pista a la que
se accede
Nº pistas que
se atraviesan
SCAN:
Pista a la que
se accede
Nº pistas que
se atraviesan
LOOK:
Pista a la que
se accede
Nº pistas que
se atraviesan
x Tiene tres colas: la primera sigue un algoritmo de planificación Round-Robin o prioridad circular con cuanto de 2 ms;
realimentadas con las siguientes características:
La segunda sigue un algoritmo de planificación Round-Robin con quantum de 4 ms y la tercera sigue una
x Los procesos son degradados de cola si el sistema los expulsa del sistema por vencimiento del cuanto.
x La planificación entre colas es por prioridad siendo la más prioritaria la primera, luego la segunda y después la tercera.
RR(2) P1
Entrada Salida
RR(4) P4 P3 P2
Entrada Salida
FIFO
Entrada Salida
P1 =8-0=8 ms
P2=9-1=8 ms
P3=22-2=20 ms
P4=19-3=16 ms
2.- (3 puntos) Un planificador de disco que tiene 200 registros (del 0 al 199). Se acaba de atender una petición en el
registro 137 y ahora se está accediendo al registro 118. La cola de peticiones pendientes es: 13, 149, 88, 191, 93, 150,
101, 183, 134. Indicar en que consiste los algoritmos de planificación de disco FCFS, SSTF, SCAN y LOOK. Calcular el
número de pistas que atraviesa la cabeza para satisfacer cada una de las peticiones, utilizando los algoritmos indicados
anteriormente. Comentar cuál es la diferencia entre SCAN y LOOK.
Solución:
FCFS:
SSTF:
SCAN:
LOOK:
La diferencia entre SCAN y LOOK está en que SCAN tiene que llegar hasta el final, por eso cuando pasa de la 13 a la
134 pasa por 147 pistas, y LOOK no tiene que llegar al final, al pasar de la 13 a la 134 pasa solo por 121 pistas.
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas. SO1-S06-O
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.-Indique si las siguientes afirmaciones son verdaderas en un sistema de tiempo compartido:
I. Cuando se planifica mediante Round Robin o prioridad circular, un proceso puede ejecutarse durante dos rodajas de
tiempo (cuantos) consecutivas.
II. En la planificación por Prioridades un proceso puede perder la CPU sin haber realizado ninguna llamada al sistema.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
2.- ¿Cuál es el orden de ejecución de los procesos P1, P2 y P3 según el algoritmo SJF (primera tarea más corta) si sus
tiempos de ejecución son 15 ms, 5 ms y 15 ms y el orden de llegada al sistema es a 0 ms, 5 ms y 10 ms, respectivamente?
a) P1, P2, P1 y P3. b) P1, P2 y P3. c) P2, P1 y P3.
d) No se puede determinar al haber dos procesos con el mismo tiempo de ejecución.
3.-Indique si las siguientes afirmaciones sobre semáforos son verdaderas:
I. Causan pérdidas de tiempo debido a esperas ocupadas o esperas activas.
II. Permiten realizar la sincronización de procesos.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
4.- Indique si las siguientes afirmaciones son verdaderas. Si un proceso está dentro de una sección crítica controlada por
semáforo:
I. Ningún otro proceso puede entrar a esa sección crítica.
II. No puede realizar otra operación de wait o espera sobre otro semáforo.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
5.- Indique si las siguientes afirmaciones son verdaderas:
I. Un estado inseguro siempre conduce a interbloqueo.
II. Las técnicas de evitación de interbloqueos se basan en evitar que se cumplan algunas de las condiciones
necesarias para que se produzca interbloqueo.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
6.- Supongamos un sistema de gestión de memoria virtual con paginación, en el que se utiliza como algoritmo de
reemplazo el LRU. Existe un proceso al que se le asignan 4 marcos durante toda su ejecución y que hace referencia a la
siguiente lista de páginas: 4 8 9 7 3 8 4 8 4 6 8
a) Una vez cargadas las cuatro primeras páginas en memoria, tras la referencia al resto de las páginas de la lista se
producirán 3 fallos de página.
b) Si después de la lista anterior se necesita la página 3 se producirá un fallo de página.
c) Si después de la lista anterior se necesita la página 7 se expulsará a la página 4.
d) Ninguna de las afirmaciones anteriores es cierta.
7.- Cuál de las siguientes afirmaciones es correcta:
a) Según el modelo del conjunto de trabajo, las referencias de los programas tienden a agruparse en amplias zonas del
espacio de direcciones.
b) Siempre que se produce un fallo de página se generan dos operaciones de E/S, una para guardar la página a
expulsar y otra para cargar la página referida.
c) La página que se sustituye con el algoritmo del reloj o segunda oportunidad es la que lleva mas tiempo en memoria.
d) Ninguna de las respuestas anteriores es correcta.
8.- Indique en que nivel del sistema de E/S se efectúa la comprobación del permiso de un usuario para utilizar un
dispositivo.
a) Software del sistema operativo independiente del dispositivo. b) Manejador del dispositivo.
c) Software a nivel de usuario. d) Manejador de interrupciones
9.- ¿Puede la memoria auxiliar o secundaria transferir datos a la memoria principal al mismo tiempo que la CPU lee datos
de esa misma memoria?
a) sí, las transferencias de datos se hacen siempre sin la intervención de la CPU.
b) solo si los datos transferidos son del programa en ejecución.
c) no, en las transferencias de datos tiene que intervenir la CPU.
d) sí, en las transferencias de datos interviene la CPU.
10.- Indique si las siguientes afirmaciones son verdaderas
I. En un esquema de memoria virtual, el número de procesos cargados en memoria no depende del tamaño de los mismos.
II. La tabla de páginas sirve para calcular el número del marco donde está cargada una página de un proceso. Esto supone
la traducción de una dirección lógica a una dirección física.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: ____________________Código de la asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final. SO1-S06-O
1.- (2 puntos) Una tribu de caníbales cenan en comunidad una gran olla que contiene M exploradores cocinados. Cuando
un caníbal quiere comer, él mismo se sirve de la olla un explorador, a menos que esté vacía. Si la olla está vacía, el
caníbal despierta al cocinero y espera a que éste llene la olla. Desarrollar el código de las acciones de los caníbales y el
cocinero usando semáforos.
Solución:
2.- (2 puntos). Considere un sistema de gestión de memoria virtual mediante paginación bajo demanda en el que se han
medido estos tiempos:
· Tiempo medio de acceso a memoria principal: 50 nanosegundos.
· Tiempo medio de resolución de un fallo de página: 20 milisegundos.
· El resto de los tiempos se consideran despreciables
Calcule cuál es la máxima tasa de fallos de página aceptable si queremos mantener el tiempo medio de acceso a memoria
(contando con los fallos de página) por debajo de los 200 nanosegundos.
Solución:
3.- (2 puntos) Suponer un sistema de archivos, parecido al de Unix, cuyos bloques son de tamaño de 1 Kb y los punteros
a bloques son de 4 bytes. Se tienen 10 punteros a bloques directos de datos, un puntero a un bloque indirecto simple y uno
a bloque indirecto doble. Se quiere incrementar el tamaño máximo del fichero. Cuál de las siguientes acciones permitiría
un mayor aumento: Añadir un bloque de triple indirección o incrementar el tamaño del bloque a 4 Kb.
Solución:
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas. SO1-S06-O
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.-Indique si las siguientes afirmaciones son verdaderas en un sistema de tiempo compartido:
[Link] se planifica mediante Round Robin o prioridad circular, un proceso puede ejecutarse durante dos rodajas de
tiempo (cuantos) consecutivas.
II. En la planificación por Prioridades un proceso puede perder la CPU sin haber realizado ninguna llamada al sistema.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
2.- ¿Cuál es el orden de ejecución de los procesos P1, P2 y P3 según el algoritmo SJF (primera tarea más corta) si sus
tiempos de ejecución son 15 ms, 5 ms y 15 ms y el orden de llegada al sistema es a 0 ms, 5 ms y 10 ms, respectivamente?
a) P1, P2, P1 y P3. b) P1, P2 y P3. c) P2, P1 y P3.
d) No se puede determinar al haber dos procesos con el mismo tiempo de ejecución.
3.-Indique si las siguientes afirmaciones sobre semáforos son verdaderas:
I. Causan pérdidas de tiempo debido a esperas ocupadas o esperas activas.
II. Permiten realizar la sincronización de procesos.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
4.- Indique si las siguientes afirmaciones son verdaderas. Si un proceso está dentro de una sección crítica controlada por
semáforo:
I. Ningún otro proceso puede entrar a esa sección crítica.
II. No puede realizar otra operación de wait o espera sobre otro semáforo.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
5.- Indique si las siguientes afirmaciones son verdaderas:
I. Un estado inseguro siempre conduce a interbloqueo.
II. Las técnicas de evitación de interbloqueos se basan en evitar que se cumplan algunas de las condiciones
necesarias para que se produzca interbloqueo.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
6.- Supongamos un sistema de gestión de memoria virtual con paginación, en el que se utiliza como algoritmo de
reemplazo el LRU. Existe un proceso al que se le asignan 4 marcos durante toda su ejecución y que hace referencia a la
siguiente lista de páginas: 4 8 9 7 3 8 4 8 4 6 8
a) Una vez cargadas las cuatro primeras páginas en memoria, tras la referencia al resto de las páginas de la
lista se producirán 3 fallos de página.
b) Si después de la lista anterior se necesita la página 3 se producirá un fallo de página.
c) Si después de la lista anterior se necesita la página 7 se expulsará a la página 4.
d) Ninguna de las afirmaciones anteriores es cierta.
7.- Cuál de las siguientes afirmaciones es correcta:
a) Según el modelo del conjunto de trabajo, las referencias de los programas tienden a agruparse en amplias zonas del
espacio de direcciones.
b) Siempre que se produce un fallo de página se generan dos operaciones de E/S, una para guardar la página a
expulsar y otra para cargar la página referida.
c) La página que se sustituye con el algoritmo del reloj o segunda oportunidad es la que lleva mas tiempo en memoria.
d) Ninguna de las respuestas anteriores es correcta.
8.- Indique en que nivel del sistema de E/S se efectúa la comprobación del permiso de un usuario para utilizar un
dispositivo.
a) Software del sistema operativo independiente del dispositivo. b) Manejador del dispositivo.
c) Software a nivel de usuario. d) Manejador de interrupciones
9.- ¿Puede la memoria auxiliar o secundaria transferir datos a la memoria principal al mismo tiempo que la CPU lee datos
de esa misma memoria?
a) sí, las transferencias de datos se hacen siempre sin la intervención de la CPU.
b) solo si los datos transferidos son del programa en ejecución.
c) no, en las transferencias de datos tiene que intervenir la CPU.
d) sí, en las transferencias de datos interviene la CPU.
10.- Indique si las siguientes afirmaciones son verdaderas
[Link] un esquema de memoria virtual, el número de procesos cargados en memoria no depende del tamaño de los mismos.
II. La tabla de páginas sirve para calcular el número del marco donde está cargada una página de un proceso. Esto supone
la traducción de una dirección lógica a una dirección física.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
PLANTILLA DE SOLUCIONES SEPTIEMBRE ORIGINAL 2006:
1 A D A
2 B A C
3 C A A
4 B D D
5 D A A
6 A A B
7 D B A
8 A C B
9 C B C
10 A C D
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: ____________________Código de la asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final. SO1-S06-O
1.- (2 puntos) Una tribu de caníbales cenan en comunidad una gran olla que contiene M exploradores cocinados. Cuando
un caníbal quiere comer, él mismo se sirve de la olla un explorador, a menos que esté vacía. Si la olla está vacía, el
caníbal despierta al cocinero y espera a que éste llene la olla. Desarrollar el código de las acciones de los caníbales y el
cocinero usando semáforos.
Solución:
program cena;
var
olla, i:integer;
mutex, comer,cocina: semáforo;
process canibalX;
begin
while true
begin
wait(mutex)
if olla=0 then
begin
signal(cocina);
wait(comer);
end;
olla:=olla-1;
signal(mutex);
end;
end,
process cocinero;
begin
while true
begin
wait(cocina);
olla:=m;
signal(comer);
end;
end;
begin
olla:=m,
inicializa(mutex,1);
inicializa(cocina,0);
inicializa(comer,0);
cobegin
canibales;
cocinero;
coend;
end;
2.- (2 puntos). Considere un sistema de gestión de memoria virtual mediante paginación bajo demanda en el que se han
medido estos tiempos:
· Tiempo medio de acceso a memoria principal: 50 nanosegundos.
· Tiempo medio de resolución de un fallo de página: 20 milisegundos.
· El resto de los tiempos se consideran despreciables
Calcule cuál es la máxima tasa de fallos de página aceptable si queremos mantener el tiempo medio de acceso a memoria
(contando con los fallos de página) por debajo de los 200 nanosegundos.
Solución:
tpa=(1-p)×am+p×fp
20 u 10 3 p 50 u 10 9 (1 p ) 200 u 10 9
20 u 10 6 p 50(1 p ) 200
(20 u 10 6 50) p 150
p | 7.5 u 10 6
150
20 u 10 50
6
3.- (2 puntos) Suponer un sistema de archivos, parecido al de Unix, cuyos bloques son de tamaño de 1 Kb y los punteros
a bloques son de 4 bytes. Se tienen 10 punteros a bloques directos de datos, un puntero a un bloque indirecto simple y uno
a bloque indirecto doble. Se quiere incrementar el tamaño máximo del fichero. Cuál de las siguientes acciones permitiría
un mayor aumento: Añadir un bloque de triple indirección o incrementar el tamaño del bloque a 4 Kb.
Solución:
El tamaño máximo de un fichero viene determinado por el número de bloques de datos posibles que permita el sistema.
Entonces, tal y como es el sistema de archivos actual, el número de bloques máximo que puede tener un archivo es:
Directo-----------------------10
Indirecto simple-------------28
Indirecto doble--------------216
Total en bytes (210 u(10 28 216 ))
Se ha tenido en cuenta para el computo de los bloques que en el uso del direccionamiento indirecto el número de punteros
que caben en un bloque es 210 / 4 = 28 punteros.
a) Si se añade un bloque de triple indirección, el máximo tamaño es:
Directo-----------------------10
Indirecto simple-------------28
Indirecto doble--------------216
Indirecto triple--------------224
Total en bytes (210 u(10 28 216224))=234 226218+...
b) Si se incrementa el tamaño del bloque a 4 Kb, se debe tener en cuenta que varía en número de punteros en los bloques
de indirección, siendo ahora, 212 / 4 = 210 punteros y, por lo tanto, el tamaño máximo quedará:
Directo-----------------------10
Indirecto simple-------------210
Indirecto doble--------------220
Total en bytes (212 u(10 210 220 ))=232+222+...
Es mayor en el primer caso.
SISTEMAS OPERATIVOS I Tipo de Examen: A 2007
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas MO07A
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Dos procesos que tienen secciones críticas diferentes:
a) Pueden acceder a la vez a las distintas secciones críticas.
b) No pueden acceder a la vez a las distintas secciones críticas.
c) Pueden acceder a la vez a las secciones críticas si se utilizan semáforos no binarios.
d) Pueden acceder a la vez a las secciones críticas si se establece comunicación entre los dos procesos.
2.- El número máximo de procesos que pueden estar bloqueados en un semáforo binario son:
a) Uno.
b) Dos.
c) Depende de la capacidad que tenga la cola del semáforo.
d) Depende de la declaración del semáforo.
3.- Sea la siguiente carga de procesos. Para la política de planificación Round Robin o prioridad circular con cuanto=4:
PROCESO TIEMPO DE LLEGADA TIEMPO DE EJECUCIÓN
A 0 3
B 1 5
C 3 2
a) El tiempo de espera de B = 5. b) El tiempo de espera de B = 4.
c) El tiempo de espera de B = 3. d) Ninguno de los anteriores.
4.- Indique si las siguientes afirmaciones son verdaderas:
I. Con el algoritmo de planificación SRT la llegada de un nuevo proceso al sistema provoca siempre el desalojo del
proceso actualmente en ejecución.
II. El algoritmo de planificación SJF concede la CPU al proceso que ocupa menos espacio en memoria.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
5.- Los búferes de E/S son:
a) Un dispositivo de gestión de las entradas y salidas de datos al computador.
b) El espacio de la memoria principal que se reserva para el almacenamiento intermedio de datos procedentes (o con
destino) a los periféricos.
c) La parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y salida.
d) La parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y salida con los dispositivos
muy lentos.
6.- El controlador de E/S y la memoria intercambian datos directamente, sin la intervención de la CPU, cuando se tiene:
a) E/S controlada por programa. b) E/S por interrupciones.
c) DMA. d) Ninguna de las anteriores.
7.- El tiempo de búsqueda cuando se está accediendo a disco hace referencia a:
a) El tiempo medio que tarda el sector en estar debajo de la cabeza de lectura/escritura.
b) El tiempo necesario para que la cabeza se posicione en el cilindro adecuado.
c) El tiempo de transferencia.
d) El tiempo que se tarda en recorrer un cilindro del disco.
8.- Para la siguiente cadena de referencia: 8,1,2,3,1,4,1,5,3,4,1,4. Suponiendo que se disponen de 3 marcos de página, el
algoritmo de sustitución óptimo presenta:
a) 10 fallos de página b) 0 fallos de página c) 7 fallos de página d) 5 fallos de página
9.- La idea básica de mecanismo de E/S por interrupciones consiste en:
a) disponer de un mecanismo de acceso directo a memoria.
b) eliminar el bucle de espera.
c) utilizar una pareja de registros base y límite.
d) buscar mecanismos de interactividad.
10.- Entre los criterios de planificación de procesos está el de rendimiento o productividad que corresponde a:
a) el porcentaje de tiempo en el que el procesador está ocupado.
b) el tiempo que trascuerde desde que un proceso se crea hasta su finalización.
c) el código de los programas del sistema.
d) el número de procesos terminados por unidad de tiempo.
SISTEMAS OPERATIVOS I 2007
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En un parque infantil hay un tobogán y un tren móvil. Los niños comparten las atracciones pero éstas tienen
una capacidad limitada. Todos los niños quieren inicialmente montar en el tobogán y, después, montar en el tren. Pero se
encuentran con el inconveniente de que sólo uno de ellos puede montar en el tobogán al mismo tiempo y sólo tres pueden
montar en el tren. Define un proceso que ejecuten los niños concurrentemente de forma que se sincronicen estas
actividades usando semáforos.
2.- (3 puntos) En un sistema con gestión de memoria virtual por demanda de páginas, el tamaño de la página es de 1 Kb y
el sistema posee 64 Kb de memoria física disponible para programas de usuario. En un determinado momento un
programa de usuario que ocupa 9 páginas se carga para su ejecución. Considerando que en ese momento es el único
proceso en ejecución, y que inicialmente se cargan las páginas 0, 4, 5 y 8 en los marcos 9, 3, 8 y 5 respectivamente.
a) Dibujar la tabla de páginas para esta situación.
b) Calcular la dirección física para las direcciones virtuales (2,50) y (5,20). Explicar el proceso de traducción de
direcciones.
c) Con una política de reemplazo de páginas global, y partiendo de la situación inicial indicada, calcular los fallos de
página que se producen con el algoritmo LRU para la siguiente cadena de referencia:
7561083433128623534
d) Calcular los fallos de página para la misma cadena de referencia, pero considerando que sólo se dispone de 6 marcos
de página para este proceso (considerar que el orden de carga de páginas inicial fue 0, 4, 5 y 8)
SISTEMAS OPERATIVOS I Tipo de Examen: A Mayo 2007 - Original
PRIMERA SEMANA
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Dos procesos que tienen secciones críticas diferentes:
a) Pueden acceder a la vez a las distintas secciones críticas.
b) No pueden acceder a la vez a las distintas secciones críticas.
c) Pueden acceder a la vez a las secciones críticas si se utilizan semáforos no binarios.
d) Pueden acceder a la vez a las secciones críticas si se establece comunicación entre los dos procesos.
2.- El número máximo de procesos que pueden estar bloqueados en un semáforo binario son:
a) Uno.
b) Dos.
c) Depende de la capacidad que tenga la cola del semáforo.
d) Depende de la declaración del semáforo.
3.- Sea la siguiente carga de procesos. Para la política de planificación Round Robin o prioridad circular con cuanto=4:
PROCESO TIEMPO DE LLEGADA TIEMPO DE EJECUCIÓN
A 0 3
B 1 5
C 3 2
a) El tiempo de espera de B = 5. b) El tiempo de espera de B = 4.
c) El tiempo de espera de B = 3. d) Ninguno de los anteriores.
4.- Indique si las siguientes afirmaciones son verdaderas:
I. Con el algoritmo de planificación SRT la llegada de un nuevo proceso al sistema provoca siempre el desalojo del
proceso actualmente en ejecución.
II. El algoritmo de planificación SJF concede la CPU al proceso que ocupa menos espacio en memoria.
a) I: sí, II: sí. b) I: sí, II: no. c) I: no, II: sí. d) I: no, II: no.
5.- Los búferes de E/S son:
a) Un dispositivo de gestión de las entradas y salidas de datos al computador.
b) El espacio de la memoria principal que se reserva para el almacenamiento intermedio de datos procedentes
(o con destino) a los periféricos.
c) La parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y salida.
d) La parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y salida con los dispositivos
muy lentos.
6.- El controlador de E/S y la memoria intercambian datos directamente, sin la intervención de la CPU, cuando se tiene:
a) E/S controlada por programa. b) E/S por interrupciones.
c) DMA. d) Ninguna de las anteriores.
7.- El tiempo de búsqueda cuando se está accediendo a disco hace referencia a:
a) El tiempo medio que tarda el sector en estar debajo de la cabeza de lectura/escritura.
b) El tiempo necesario para que la cabeza se posicione en el cilindro adecuado.
c) El tiempo de transferencia.
d) El tiempo que se tarda en recorrer un cilindro del disco.
8.- Para la siguiente cadena de referencia: 8,1,2,3,1,4,1,5,3,4,1,4. Suponiendo que se disponen de 3 marcos de página, el
algoritmo de sustitución óptimo presenta:
a) 10 fallos de página b) 0 fallos de página c) 7 fallos de página d) 5 fallos de página
9.- La idea básica de mecanismo de E/S por interrupciones consiste en:
a) disponer de un mecanismo de acceso directo a memoria.
b) eliminar el bucle de espera.
c) utilizar una pareja de registros base y límite.
d) buscar mecanismos de interactividad.
10.- Entre los criterios de planificación de procesos está el de rendimiento o productividad que corresponde a:
a) el porcentaje de tiempo en el que el procesador está ocupado.
b) el tiempo que trascuerde desde que un proceso se crea hasta su finalización.
c) el código de los programas del sistema.
d) el número de procesos terminados por unidad de tiempo.
SISTEMAS OPERATIVOS I Mayo 2007 – Original
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) En un parque infantil hay un tobogán y un tren móvil. Los niños comparten las atracciones pero éstas tienen
una capacidad limitada. Todos los niños quieren inicialmente montar en el tobogán y, después, montar en el tren. Pero se
encuentran con el inconveniente de que sólo uno de ellos puede montar en el tobogán al mismo tiempo y sólo tres pueden
montar en el tren. Define un proceso que ejecuten los niños concurrentemente de forma que se sincronicen estas
actividades usando semáforos.
module Niños_felices
var
semaphore: tren {general}
tobogan{binario}
Process NiñosX;
begin
loop Process Padre;
begin begin
wait(tobogan); inicializa (tren=3);
montar_tobogan(); inicializa (tobogan=1);
signal(tobogan);
wait(tren); cobegin
montar_en_tren(); Niños;
signal(tren); coend;
end; end;
end;
2.- (3 puntos) En un sistema con gestión de memoria virtual por demanda de páginas, el tamaño de la página es de 1 Kb y
el sistema posee 64 Kb de memoria física disponible para programas de usuario. En un determinado momento un
programa de usuario que ocupa 9 páginas se carga para su ejecución. Considerando que en ese momento es el único
proceso en ejecución, y que inicialmente se cargan las páginas 0, 4, 5 y 8 en los marcos 9, 3, 8 y 5 respectivamente.
a) Dibujar la tabla de páginas para esta situación.
b) Calcular la dirección física para las direcciones virtuales (2,50) y (5,20). Explicar el proceso de traducción de
direcciones.
c) Con una política de reemplazo de páginas global, y partiendo de la situación inicial indicada, calcular los fallos de
página que se producen con el algoritmo LRU para la siguiente cadena de referencia:
7561083433128623534
d) Calcular los fallos de página para la misma cadena de referencia, pero considerando que sólo se dispone de 6 marcos
de página para este proceso (considerar que el orden de carga de páginas inicial fue 0, 4, 5 y 8)
a)
Nº Página Nº Marco físico Bit de presente/ausente
0 9 1
1 - 0
2 - 0
3 - 0
4 3 1
5 8 1
6 - 0
7 - 0
8 5 1
b) Dirección virtual (2,50): Al acceder a la tabla indica su bit de presente/ausente indica uqe no está, luego se da un fallo
de página y se debe de iniciar el proceso de carga de página.
Dirección virtual (5,20), su bit de presente/ausente indica que está y según la tabla se encuentra en el marco físico 8, la
dirección física inicial del marco será 8*1024 = 8192, y el desplazamiento es 20, luego la dirección será 8192+20=8212.
c) Inicialmente se tienen ya ocupados 4 marcos, pero el sistema tiene aún libres 60 marcos, (64 Kb de memoria con
páginas de 1 Kb dan 64 marcos, de los que inicialmente sólo están 4 ocupados). Luego sólo se producirán 5 fallos de
página que corresponden a las referencias a una nueva página.
d) En esta situación, se ha supuesto que todos los marcos están ocupados excepto 5, que son los que puede ocupar este
proceso
0 4 5 8 7 5 6 1 0 8 3 4 3 3 1 2 8 6 2 3 5 3 4
0 4 5 8 7 5 6 1 0 8 3 4 4 3 1 2 8 6 2 3 5 3
0 4 5 8 7 5 6 1 0 8 8 8 4 3 1 2 8 6 2 2 5
0 4 4 8 7 5 6 1 0 0 0 8 4 3 1 1 8 6 6 2
0 0 4 8 7 5 6 1 1 1 0 8 4 3 3 1 8 8 6
0 4 8 7 5 6 6 6 6 0 0 4 4 4 1 1 8
f f f f F F F F F F F F F F
En las cuatro primeras páginas se habían producido 4 fallos, y a partir de entonces 10 fallos.
SISTEMAS OPERATIVOS I Tipo de Examen: A 2007
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas JO07A
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
Para las tres preguntas siguientes, considérese los procesos Productor y Consumidor, que se describen a continuación, y
que se ejecutan concurrentemente.
El semáforo buffer_vacio indica el número de registros que están vacíos. El semáforo buffer_lleno indica el número de
registros que están llenos. N es el número de registros del buffer
semaphore: buffer_lleno, buffer_vacio, exclusión;
buffer_lleno=N-1; buffer_vacio=1;
Process Productor; Process Consumidor;
begin begin
wait(buffer_vacio); wait(buffer_lleno);
wait(exclusion); wait(exclusion);
Produce; Consume;
signal(exclusion); signal(exclusion);
signal(buffer_lleno); signal(buffer_vacio);
end; end;
1.- En la codificación realizada, el semáforo exclusión:
a) Se debe inicializar a 0. b) Se debe inicializar a 1. c) Se debe inicializar a N. d) No se debe inicializar.
2.- En la codificación realizada, ¿Qué proceso entra primero en la sección crítica?.
a) El productor. b) Los dos se quedan bloqueados. c) No se puede determinar. d) El consumidor.
3.- Si se ejecutan tres procesos productores seguidos de un consumidor, la situación de las variables es:
a) exclusión a 1, buffer_lleno=N, buffer_vacio=0. b) exclusión a 0, buffer_lleno=N, buffer_vacio=0.
c) exclusión a 1, buffer_lleno=N, buffer_vacio=0 y un productor en la cola del semáforo buffer_vacio.
d) exclusión a 0, buffer_lleno=N, buffer_vacio=0 y un productor en la cola del semáforo buffer_vacio.
4.- Se tienen 3 procesos: P1, P2 y P3, con tiempos de ejecución: 65, 45 y 120 ms, respectivamente. Si actúa el planificador
a corto plazo según el algoritmo SJF (Short Job First) se obtiene que:
a) Los procesos se encuentran en la lista de preparados en el orden: P2, P1 y P3.
b) Los procesos se ejecutan en el orden: P2, P1 y P3.
c) Los procesos se ejecutan en el orden: P1, P2 y P3.
d) Los procesos se ejecutan según la prioridad que posean los procesos.
5.- De las siguientes operaciones, la que menos tiempo ha de consumir es:
a) traducción de una dirección lógica a dirección física b) cambio de contexto
c) detección de interbloqueo c) gestión de un fallo de página
6.-¿Qué tipo de fragmentación se produce con el esquema de gestión de memoria mediante particiones variables?
a) No se produce fragmentación.
b) Fragmentación interna.
c) Fragmentación externa.
d) Se produce fragmentación interna y externa.
7.- El tiempo necesario para leer N bloques consecutivos de un archivo en un sistema con asignación mediante listas
a) t E / S t b t r N * t t b) t E / S N * (t b t r t t )
enlazadas es (tb tiempo de búsqueda, tr tiempo rotacional, tt tiempo de transferencia):
c) t E / S ( N 1) * (t b t r t t ) d) t E / S t b t r t t
8.- En un sistema de memoria virtual, el tiempo promedio de acceso (tpa) es (a m tiempo de acceso a memoria, p
a) t pa a m p * f p b) t pa (1 p ) * a m p * f p
probabilidad de que ocurra un fallo de página, fp tiempo que lleva resolver un fallo de página):
c) t pa (1 p) * a m f p d) t pa p am f p
9.- Un programa que oculta parte de su funcionalidad destinada a obtener datos o derechos de acceso del usuario es:
a) Un virus. b) Un gusano. c) Un caballo de Troya. d) El talón de Aquiles.
10.- Para un disquete de 3.5 pulgadas, con 2 superficies, 80 cilindros, 18 sectores por pista y 512 bytes por sector. Si gira
a 360 rpm ¿cuál será su velocidad de transferencia?
a) 38550 bytes/s b) 100512 bytes/s c) 55296 bytes/s d) 360 bytes
SISTEMAS OPERATIVOS I 2007
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) Los directores de un complejo turístico nos piden que regulemos con semáforos el acceso de los turistas a los
templos a visitar desde una sala de exposiciones. Para acceder a los templos es necesario esperar en la sala a que venga a
buscarnls un guía. El número total de guías es G. Si un visitante quiere acceder a los templos y hay más gente esperando a
que venga un guía, deberá hacer cola. La visita es personalizada, es decir, cada guía se lleva sólo a un visitante. Si un guía
está disponible y no hay visitantes esperando a la visita de los templos, el guía descansará.
2.- (3 puntos) En la figura se representan los 15 primeros bloques de un dispositivo de un disco que en total dispone de 30
Mb de capacidad. La asignación de espacio en disco se realiza mediante listas enlazadas. Los bloques tienen un tamaño de
512 bytes.
a) Calcular para cada bloque, cuántos bytes se podrán asignar a datos y cuántos a punteros a otros bloques.
b) Calcular el tamaño máximo, en bytes, de los datos almacenados en el archivo Notas, que también se representa en la
figura.
c) Indicar el problema que presenta el acceso directo a un bloque en los archivos de este sistema.
d) Si se utilizara un método mediante indexación, ¿se resolvería el problema indicado anteriormente para las listas
enlazadas?
e) Para el método mediante indexación, calcular el tamaño máximo de los datos que se pueden ahora almacenar en el
archivo notas. ¿Hay alguna variación con respecto al caso anterior?
f) ¿Existe pérdida de espacio?¿Cuánto?
0 1 2 3 14 4 Directorio
Notas
5 3 6 7 12 8 9 Bloque de comienzo: 7
Bloque Final: 14
10 11 12 5 13 14 -1
SISTEMAS OPERATIVOS I Tipo de Examen: A Junio 2007 - Original
SEGUNDA SEMANA
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
Para las tres preguntas siguientes, considérese los procesos Productor y Consumidor, que se describen a continuación, y
que se ejecutan concurrentemente.
El semáforo buffer_vacio indica el número de registros que están vacíos. El semáforo buffer_lleno indica el número de
registros que están llenos. N es el número de registros del buffer
semaphore: buffer_lleno, buffer_vacio, exclusión;
buffer_lleno=N-1; buffer_vacio=1;
Process Productor; Process Consumidor;
begin begin
wait(buffer_vacio); wait(buffer_lleno);
wait(exclusion); wait(exclusion);
Produce; Consume;
signal(exclusion); signal(exclusion);
signal(buffer_lleno); signal(buffer_vacio);
end; end;
1.- En la codificación realizada, el semáforo exclusión:
a) Se debe inicializar a 0. b) Se debe inicializar a 1. c) Se debe inicializar a N. d) No se debe inicializar.
2.- En la codificación realizada, ¿Qué proceso entra primero en la sección crítica?.
a) El productor. b) Los dos se quedan bloqueados. c) No se puede determinar. d) El consumidor.
3.- Si se ejecutan tres procesos productores seguidos de un consumidor, la situación de las variables es:
a) exclusión a 1, buffer_lleno=N, buffer_vacio=0. b) exclusión a 0, buffer_lleno=N, buffer_vacio=0.
c) exclusión a 1, buffer_lleno=N, buffer_vacio=0 y un productor en la cola del semáforo buffer_vacio.
d) exclusión a 0, buffer_lleno=N, buffer_vacio=0 y un productor en la cola del semáforo buffer_vacio.
4.- Se tienen 3 procesos: P1, P2 y P3, con tiempos de ejecución: 65, 45 y 120 ms, respectivamente. Si actúa el planificador
a corto plazo según el algoritmo SJF (Short Job First) se obtiene que:
a) Los procesos se encuentran en la lista de preparados en el orden: P2, P1 y P3.
b) Los procesos se ejecutan en el orden: P2, P1 y P3.
c) Los procesos se ejecutan en el orden: P1, P2 y P3.
d) Los procesos se ejecutan según la prioridad que posean los procesos.
5.- De las siguientes operaciones, la que menos tiempo ha de consumir es:
a) traducción de una dirección lógica a dirección física b) cambio de contexto
c) detección de interbloqueo c) gestión de un fallo de página
6.-¿Qué tipo de fragmentación se produce con el esquema de gestión de memoria mediante particiones variables?
a) No se produce fragmentación.
b) Fragmentación interna.
c) Fragmentación externa.
d) Se produce fragmentación interna y externa.
7.- El tiempo necesario para leer N bloques consecutivos de un archivo en un sistema con asignación mediante listas
a) t E / S t b t r N * t t b) t E / S N * (t b t r t t )
enlazadas es (tb tiempo de búsqueda, tr tiempo rotacional, tt tiempo de transferencia):
c) t E / S ( N 1) * (t b t r t t ) d) t E / S t b t r t t
8.- En un sistema de memoria virtual, el tiempo promedio de acceso (tpa) es (a m tiempo de acceso a memoria, p
a) t pa a m p * f p b) t pa (1 p ) * a m p * f p
probabilidad de que ocurra un fallo de página, fp tiempo que lleva resolver un fallo de página):
c) t pa (1 p) * a m f p d) t pa p am f p
9.- Un programa que oculta parte de su funcionalidad destinada a obtener datos o derechos de acceso del usuario es:
a) Un virus. b) Un gusano. c) Un caballo de Troya. d) El talón de Aquiles.
10.- Para un disquete de 3.5 pulgadas, con 2 superficies, 80 cilindros, 18 sectores por pista y 512 bytes por sector. Si gira
a 360 rpm ¿cuál será su velocidad de transferencia?
a) 38550 bytes/s b) 100512 bytes/s c) 55296 bytes/s d) 360 bytes
SISTEMAS OPERATIVOS I Junio 2007 – Original
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: _________________________ Especialidad: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) Los directores de un complejo turístico nos piden que regulemos con semáforos el acceso de los turistas a los
templos a visitar desde una sala de exposiciones. Para acceder a los templos es necesario esperar en la sala a que venga a
buscarnls un guía. El número total de guías es G. Si un visitante quiere acceder a los templos y hay más gente esperando a
que venga un guía, deberá hacer cola. La visita es personalizada, es decir, cada guía se lleva sólo a un visitante. Si un guía
esta disponible y no hay visitantes esperando a la visita de los templos, el guía descansará.
module Visita_Templos
var
semaphore: guia {general}
visitante{binario}
Process Padre;
begin
inicializa (visitante,0)
inicializa (guia, G);
cobegin
visitantes;
guias;
coend;
end;
2.- (3 puntos) En la figura se representan los 15 primeros bloques de un dispositivo de un disco que en total dispone de 30
Mb de capacidad. La asignación de espacio en disco se realiza mediante listas enlazadas. Los bloques tienen un tamaño de
512 bytes.
a) Calcular para cada bloque, cuántos bytes se podrán asignar a datos y cuántos a punteros a otros bloques.
b) Calcular el tamaño máximo, en bytes, de los datos almacenados en el archivo Notas, que también se representa en la
figura.
c) Indicar el problema que presenta el acceso directo a un bloque en los archivos de este sistema.
d) Si se utilizara un método mediante indexación, ¿se resolvería el problema indicado anteriormente para las listas
enlazadas?
e) Para el método mediante indexación, calcular el tamaño máximo de los datos que se pueden ahora almacenar en el
archivo notas. ¿Hay alguna variación con respecto al caso anterior?
f) ¿Existe pérdida de espacio?¿Cuánto?
0 1 2 3 14 4 Directorio
Notas
5 3 6 7 12 8 9 Bloque de comienzo: 7
Bloque Final: 14
10 11 12 5 13 14 -1
b) El archivo Notas ocupa los bloques 7, 12, 5, 3 y 14, cinco bloques. Como cada bloque usa 510 bytes para datos, en
total se tendrá 5*510 = 2550 bytes.
c) El problema que presenta es que hay que leer todos los bloques para llegar a uno determinado. Así, para leer el bloque
k deben leerse previamente los k-1 para ir accediendo a los punteros que apuntan al siguiente bloque.
d) Sí. En este método, el directorio contiene la dirección del bloque donde están los índices a los bloques de datos del
archivo.
e) En este tipo de acceso, todos los bytes de un bloque se utilizan para datos, con lo cuál para el archivo notas se tendrán
5*512 = 2560 bytes. Con respecto al anterior método se utilizan dos bytes mas por cada bloque para datos.
f) La asignación mediante indexación presenta sin embargo pérdida de espacio. Si en la tabla de índices se le asigna un
bloque entero, como los índices son de 2 bytes, el bloque está ocupado por 5 índices x 2 bytes = 10 bytes. Por lo que en el
bloque está desaprovechado : 512 – 10 = 502 bytes para este fichero en concreto.
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2007
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con el
resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido. Complete
TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La puntuación del
examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4 puntos y las
respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2 puntos para
superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas S07OA
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1.- Tanto en los semáforos binarios como en los generales:
a) La cola debe ser FIFO.
b) En los semáforos binarios la cola debe ser FIFO y en los generales de cualquier tipo.
c) En ambos tipos de semáforos la cola puede ser gestionada por un algoritmo FIFO u otro distinto.
d) En ninguno de los dos tipos de semáforos se utilizan colas.
2.- Las operaciones wait y signal:
a) Son atómicas en todos los sistemas operativos.
b) En unos sistemas operativos son atómicas y en otros no.
c) El programador debe encargarse de que sean atómicas.
d) no son nunca atómicas.
3.- La ventaja en el uso de los monitores frente a los semáforos es que:
a) No se produce espera activa.
b) No se produce interbloqueo.
c) La sincronización está implícita, basta con invocar el procedimiento del monitor.
d) La exclusión mutua está implícita, basta con invocar el procedimiento del monitor.
4.- Sea la siguiente carga de procesos. Para la política de planificación Tiempo que queda mas corto (SRT):
PROCESO TIEMPO DE LLEGADA TIEMPO DE EJECUCIÓN
A 0 3
B 1 5
C 3 2
a) El tiempo de espera de B = 5. b) El tiempo de espera de B = 4.
c) El tiempo de espera de B = 3. d) Ninguno de los anteriores.
5.- Siguiendo con el problema anterior:
a) El tiempo de retorno de C = 2. b) El tiempo de de retorno de C = 3.
c) El tiempo de de retorno de C = 5. d) Ninguno de los anteriores.
6.- Los búferes de E/S son:
a) Un dispositivo de gestión de las entradas y salidas de datos al computador.
b) El espacio de la memoria principal que se reserva para el almacenamiento intermedio de datos procedentes (o con
destino) a los periféricos.
c) La parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y salida.
d) La parte del disco utilizada para gestionar de forma intermedia los accesos de entrada y salida con los
dispositivos muy lentos.
7.- El problema que puede presentar el algoritmo de planificación del disco SSTF es:
a) Los movimientos bruscos de vaivén de la cabeza de lectura y escritura.
b) El bloqueo indefinido o cierre de algunas de las peticiones.
c) Es muy lento.
d) No explota la localidad de las peticiones.
8.- El algoritmo de asignación de memoria peor en ajustarse consiste que el gestor de memoria asigna al proceso entrante:
a) El primer bloque libre suficientemente grande, aunque sea el peor.
b) El bloque libre mas grande, siempre que el tamaño del bloque exceda al tamaño necesario.
c) El bloque libre mas pequeño suficientemente grande para contener al proceso.
d) Todos los bloques libres que quedan, independiente de sus tamaños.
9.- En un sistema operativo multitarea, con 8Kb de espacio lógico de procesos, con páginas de 1Kb y 32 Kb de memoria
física, sin memoria virtual. La dirección lógica está formada por:
a) 3 bits para indicar la página y 10 bits para el desplazamiento
b) 5 bits para indicar la página y 10 bits para el desplazamiento
c) 5 bits para indicar la página y 8 bits para el desplazamiento
d) No tiene sentido que el espacio lógico del proceso sea menor que el espacio físico si no se dispone de un sistema de
memoria virtual
10.- La anomalía de Belady la sufren
a) los algoritmos de reemplazo FIFO b) los algoritmos de reemplazo óptimos
c) los algoritmos de reemplazo LRU d) ningún algoritmo de reemplazo.
SISTEMAS OPERATIVOS I Septiembre 2007
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE junto
con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja adicional).S07O
1.- (3 puntos) Las aplicaciones de gran tamaño suelen estar compuestas de varios procesos. Hay veces que dos o más procesos
se pueden ejecutar en paralelo hasta un determinado instante. Luego, para que puedan continuar cada uno de los procesos
que se han estado ejecutando en paralelo, es necesario que se encuentren en un punto. Vamos a suponer que nuestro sistema
es de tres procesos y los puntos de encuentro están dados en la figura adjunta. Se pide modelar con semáforos esta situación
de forma que hasta que dos procesos no hayan llegado al punto donde se debe encontrar, ninguno de ellos puede continuar.
El proceso que antes llegue al punto de encuentro deberá esperar a que el otro alcance dicho punto. No se sabe cuál de los
dos procesos comienza a ejecutarse primero o cual es el que primero termina.
module Puntos_Encuentro
var
semaphore: {binario} semP1P2, semP1P3, semP2P1, semP2P3, semP3P1, semP3P2;
2.- (3 puntos) Supongamos que tenemos una máquina con 16 MB de memoria principal y un esquema de gestión de memoria
virtual paginado con páginas de 4 KB. Un proceso produce la siguiente secuencia de accesos a direcciones de memoria
(mostradas aquí en hexadecimal):
02D4B8, 02D4B9, 02D4EB, 02D4EB, 02D86F, F0B621, F0B815, F0D963, F0B832, F0BA23, D9D6C3, D9B1A7,
D9B1A1, F0BA25, 02D4C7, 628A31, F0B328, D9B325, D73425.
module Puntos_Encuentro
var
semaphore: {binario} semP1P2, semP1P3, semP2P1, semP2P3, semP3P1, semP3P2;
process Padre;
begin
semP1P2=0, semP1P3=0, semP2P1=0, semP2P3=0, semP3P1=0, semP3P2=0;
cobegin
P1, P2, P3;
coend;
end;
2.- (3 puntos) Supongamos que tenemos una máquina con 16 MB de memoria principal y un esquema de gestión de memoria
virtual paginado con páginas de 4 KB. Un proceso produce la siguiente secuencia de accesos a direcciones de memoria
(mostradas aquí en hexadecimal):
02D4B8, 02D4B9, 02D4EB, 02D4EB, 02D86F, F0B621, F0B815, F0D963, F0B832, F0BA23, D9D6C3, D9B1A7,
D9B1A1, F0BA25, 02D4C7, 628A31, F0B328, D9B325, D73425.
Solución:
a) A partir del tamaño y organización de la memoria, se calcula el formato de una dirección física:
16 MB = 224 bytes, es decir, se requieren 24 bits para direccionar la memoria física. Como además se nos indica que el
tamaño de página es de 4 KB, tendremos que
4 KB = 212 bytes, por lo que se necesitan 12 bits para direccionar un byte de una página.
página desplazamiento
12 bits 12 bits
b) Dado que la cadena de referencias viene dada en hexadecimal, y para expresar un número hexadecimal se necesitan 4 bits
en binario, para direccionar la página se necesitan 3 dígitos hexadecimales y otros 3 para el desplazamiento. Por tanto la
dirección física queda expresada según el siguiente formato:
página desplazamiento
12 bits 12 bits
Hex Hex Hex Hex Hex Hex
0 2 D 4 B 8
Así, la secuencia de páginas que formará la cadena de referencias es:
02D, F0B, F0D, F0B, D9D, D9B, F0B, 02D, 628, F0B, D9B, D73
c) Algoritmo FIFO
1.- (3 puntos) La siguiente tabla recoge información de cinco procesos que se van a ejecutar en un sistema.
Proceso Tiempo de llegada (ms) Tiempo de ejecución (ms)
A 0 5
B 1 3
C 2 2
D 3 3
E 4 4
Supuesto que el tiempo necesario para el cambio de contexto es despreciable, calcular el tiempo de retorno y el tiempo de
espera de cada uno de los trabajos y representar la ejecución en diagramas de Gantt para los siguientes algoritmos de
planificación:
a) RR con un cuanto de 2 ms.
b) SJF.
Solución:
2.- (3 puntos) En un computador con una capacidad de memoria principal de 64 Kpalabras se utiliza gestión de memoria
mediante segmentación. La tabla de segmentos (todos los datos numéricos están en decimal) es la siguiente:
1.- (3 puntos) La siguiente tabla recoge información de cinco procesos que se van a ejecutar en un sistema.
Proceso Tiempo de llegada (ms) Tiempo de ejecución (ms)
A 0 5
B 1 3
C 2 2
D 3 3
E 4 4
Supuesto que el tiempo necesario para el cambio de contexto es despreciable, calcular el tiempo de retorno y el tiempo de
espera de cada uno de los trabajos y representar la ejecución en diagramas de Gantt para los siguientes algoritmos de
planificación:
a) RR con un cuanto de 2 ms.
b) SJF.
Solución:
2.- (3 puntos) En un computador con una capacidad de memoria principal de 64 Kpalabras se utiliza gestión de memoria
mediante segmentación. La tabla de segmentos (todos los datos numéricos están en decimal) es la siguiente:
1.- (3 puntos) La siguiente tabla recoge información de cinco procesos que se van a ejecutar en un sistema.
Proceso Tiempo de llegada (ms) Tiempo de ejecución (ms)
A 0 5
B 1 3
C 2 2
D 3 3
E 4 4
Supuesto que el tiempo necesario para el cambio de contexto es despreciable, calcular el tiempo de retorno y el tiempo de
espera de cada uno de los trabajos y representar la ejecución en diagramas de Gantt para los siguientes algoritmos de
planificación:
a) RR con un cuanto de 2 ms.
b) SJF.
Solución:
2.- (3 puntos) En un computador con una capacidad de memoria principal de 64 Kpalabras se utiliza gestión de memoria
mediante segmentación. La tabla de segmentos (todos los datos numéricos están en decimal) es la siguiente:
1
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN MAYO 2008
1.- El algoritmo del banquero propuesto por Dijkstra en 1965 se utiliza para
a) Gestión de los marcos de memoria principal disponibles para asignación.
b) Evitación de los interbloqueos.
c) Detección de los interbloqueos.
d) Ninguna de los anteriores.
2.- Decir si las siguientes afirmaciones relativas al algoritmo de sustitución de páginas de la segunda oportunidad son
ciertas:
I) Es una modificación del algoritmo LRU.
II) Busca una página antigua que no se haya referenciado.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
2
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN MAYO 2008
4.- Decir si las siguientes afirmaciones relativas a los buffers de E/S son ciertas:
I) El almacenamiento intermedio en buffers es un mecanismo que tiende a solucionar los problemas de picos
de demanda en las operaciones de E/S.
II) El efecto del uso de buffers sobre el comportamiento de un sistema es independiente de las caracteríticas de
los procesos.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
5.- La planificación del disco que consiste en atender la petición que requiere el menor movimiento de la cabeza de
lectura/escritura desde su posición actual es:
a) La planificación FCFS.
b) La planificación SCAN.
c) La planificación SSTF.
d) Ninguna de las anteriores.
7.- En el método de invocación remota o encuentro extendido, el proceso que envía un mensaje
a) Sigue su ejecución sin preocuparse si el mensaje se recibe o no.
b) Sólo prosigue su ejecución cuando el mensaje ha sido recibido.
c) Sólo prosigue su ejecución cuando ha recibido una respuesta del receptor .
d) Ninguna de los anteriores.
Respuesta: C) Sólo prosigue su ejecución cuando ha recibido una respuesta del receptor.
3
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN MAYO 2008
8.- Decir si las siguientes afirmaciones relativas al algoritmo de planificación SRT son ciertas:
I) Es un algoritmo de tipo no expropiativo.
II) Tiene una mayor frecuencia de invocación del planificador que el algoritmo SJF.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
9.- La asignación del espacio del disco mediante el método de asignación continua tiene como inconveniente que
a) No es realizable salvo que se conozca el tamaño máximo del archivo en el momento de su creación.
b) Tiene un rendimiento pobre si se quiere leer un archivo completo.
c) Las dos anteriores son verdaderas.
d) Ninguna de las anteriores
Respuesta: A) No es realizable salvo que se conozca el tamaño máximo del archivo en el momento de su
creación.
4
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN MAYO 2008
SOLUCIÓN PROBLEMAS
1.- (3 puntos) La siguiente tabla recoge información de cinco procesos que se van a ejecutar en un sistema.
Proceso Tiempo de llegada (ms) Tiempo de ejecución (ms)
A 0 5
B 1 3
C 2 2
D 3 3
E 4 4
Supuesto que el tiempo necesario para el cambio de contexto es despreciable, calcular el tiempo de retorno y el tiempo
de espera de cada uno de los trabajos y representar la ejecución en diagramas de Gantt para los siguientes algoritmos de
planificación:
a) RR con un cuanto de 2 ms.
b) SJF.
Solución:
a) En el algoritmo de planificación circular o round robin (RR) el procesador se asigna a cada proceso de forma
secuencial durante un periodo de tiempo definido denominado cuanto, que en este caso es de 2 ms. El diagrama de
Gantt que representa la ejecución de los procesos A, B, C, D y E según este algoritmo de planificación es el siguiente:
A B C A D E B A D E
0 2 4 6 8 10 12 13 14 15 17 ms
De este diagrama se obtiene el instante o tiempo de finalización de la ejecución de los procesos A, B, C, D y E. El
tiempo de retorno se calcula como la diferencia entre el instante o tiempo de finalización del proceso (medido en el
diagrama de Gantt) menos el instante o tiempo de llegada. Por otra parte el tiempo de espera se calcula como la
diferencia entre el tiempo de retorno y el tiempo de ejecución. En la tabla siguiente se muestran el tiempo de
finalización, el tiempo de retorno y el tiempo de espera para cada uno de los procesos.
Proceso Tiempo de finalización (ms) Tiempo de retorno (ms) Tiempo de espera (ms)
A 14 14-0=14 14-5=9
B 13 13-1=12 12-3=9
C 6 6-2=4 4-2=2
D 15 15-3=12 12-3=9
E 17 17-4=13 13-4=9
b) En el algoritmo de planificación de la primera tarea más corta o SJF, el procesador se asigna al proceso con el
menor valor de tiempo restante de ejecución. Se trata de estrategía de planificación no expropiativa por lo que si un
proceso se está ejecutando y llega otro con un tiempo de ejecución estimado menor, no podrá pasar a ser ejecutado
hasta haber finalizado el primer proceso. El diagrama de Gantt que representa la ejecución de los procesos A, B, C, D
y E según este algoritmo de planificación es el siguiente:
A C B D E
0 5 7 10 13 17 ms
En la tabla siguiente se muestran el tiempo de finalización, el tiempo de retorno y el tiempo de espera para cada uno
de los procesos.
Proceso Tiempo de finalización (ms) Tiempo de retorno (ms) Tiempo de espera (ms)
A 5 5-0= 5 5-5=0
B 10 10-1=9 9-3=6
C 7 7-2=5 5-2=3
D 13 13-3=10 10-3=7
E 17 17-4=13 13-4=9
5
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN MAYO 2008
2.- (3 puntos) En un computador con una capacidad de memoria principal de 64 Kpalabras se utiliza gestión de memoria
mediante segmentación. La tabla de segmentos (todos los datos numéricos están en decimal) es la siguiente:
a) El tamaño de una dirección de memoria física se puede obtener del dato de la capacidad de la memoria principal
que es 64 Kpalabras, o equivalentemente, 216 palabras. Luego se requiere 16 bits para codificar todas las palabras de
la memoria, es decir, el tamaño de una dirección de memoria es de 16 bits. Por otra parte en la tabla de segmentos se
observa que la memoria principal está dividida en 5 segmentos, luego se requerirán 3 bits para codificarlos, es decir,
el tamaño del campo [nº de segmento] es de 3 bits. Finalmente, el tamaño del campo [desplazamiento] se determina
como la diferencia entre el tamaño de una dirección y el tamaño del campo [nº de segmento], es decir, 16-3=13 bits.
Luego el formato de una dirección lógica es el siguiente:
16 bits
Nº de segmento Desplazamiento
3 bits 13 bits
b) i) Hay que pasar la dirección 11AE a binario: 0001 0001 1010 1110. Se observa que de acuerdo con el formato
de una dirección lógica, los tres bits más significativos 000 hacen referencia al nº de segmento mientras que los trece
bits restantes 1000110101110 hacen referencia al desplazamiento. Pasando estos campos a decimal se obtiene:
Nº de segmento= 0002=010
Desplazamiento=10001101011102=212+28+27+25+23+22+2=4096+256+128+32+8+4+2=4526 10
A continuación, hay que comprobar que la dirección lógica es válida, para ello se compara el desplazamiento de esta
dirección con la longitud del segmento nº 0 dada en la tabla de segmentos. Puesto que 4526d 7230 la dirección lógica
es válida.
La dirección física se obtiene sumando la base del segmento nº 0 con el desplazamiento de la dirección lógica, es
decir, 0+4526= 4526.
b) i) Hay que pasar la dirección 6190 a binario: 0110 0001 1001 0000. Se observa que de acuerdo con el formato
de una dirección lógica, los tres bits más significativos 011 hacen referencia al nº de segmento mientras que los trece
bits restantes 0000110010000 hacen referencia al desplazamiento. Pasando estos campos a decimal se obtiene:
Nº de segmento= 0112=310
Desplazamiento=00001100100002=28+27+24=256+128+16=40010
A continuación, hay que comprobar que la dirección lógica es válida, para ello se compara el desplazamiento de esta
dirección con la longitud del segmento nº 3 dada en la tabla de segmentos. Puesto que 400> 356 se tiene un error de
direccionamiento ya que se está violando el tamaño del segmento.
6
SISTEMAS OPERATIVOS I Tipo de Examen: D Junio 2008 - Original
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es D.
1- Un gusano informático
a) Es un trozo de código de un programa, que va borrando los datos del disco duro.
b) Es un trozo de código de un programa, que va borrando los datos de la memoria principal.
c) Es un programa en si mismo que consume de forma desproporcionada los recursos del sistema.
d) Ninguna de las anteriores.
2.- En un sistema con asignación mediante indexación el número de accesos al disco para leer N bloques consecutivos de
un archivo son:
a) N accesos
b) N+1 accesos
c) N/2 accesos
d) Ninguna de las anteriores
3.- El algoritmo peor en ajustarse para la selección de un área libre de memoria asigna:
a) El primer bloque libre suficientemente grande que encuentra.
b) El bloque libre más grande, siempre que el tamaño del bloque exceda el tamaño necesario.
c) El bloque libre más grande, siempre que el tamaño del bloque no exceda el tamaño necesario.
d) Ninguna de las anteriores.
4.- Decir si las siguientes afirmaciones relativas a la E/S localizada en memoria son ciertas:
I) Existe un único espacio de direcciones para las posiciones de memoria y los dispositivos de E/S.
II) La CPU utiliza instrucciones máquinas diferentes para acceder a la memoria o a los periféricos.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
5.- Decir si las siguientes afirmaciones relativas al planificador a corto plazo (PCP) son ciertas:
I) El PCP determina qué trabajos se admiten en el sistema para su procesamiento y son, por lo tanto, cargados en
la memoria disponible.
II) El PCP debe realizar una mezcla adecuada de trabajos destinados al procesador y trabajos destinados al
sistema de E/S.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
6.- En los monitores se cumple que
a) La exclusión mutua no está implícita.
b) No proporcionan por si mismos un mecanismo para la sincronización de tareas.
c) Las dos afirmaciones anteriores son verdaderas.
d) Ninguna de las anteriores.
7.- Decir si las siguientes afirmaciones relativas a un semáforo S inicializado con un valor N son ciertas:
I) Si N=1 la ejecución de una operación espera(S) por parte de un proceso provocará la suspensión de dicho
proceso y su colocación en la cola de tareas en espera.
II) Si N=3 la ejecución de una operación señal(S) deja un valor de 4 en el semáforo.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
8.- La planificación del disco que consiste en ir recorriendo todas las peticiones en una dirección y satisfaciendo todas las
peticiones que se encuentra en el camino, hasta que alcanza la última pista, es:
a) La planificación FCFS.
b) La planificación SCAN.
c) La planificación SSTF.
d) Ninguna de las anteriores.
9.- Decir si las siguientes afirmaciones relativas al algoritmo de sustitución de páginas de uso no frecuente son ciertas:
I) Este algoritmo posee una tasa de fallos mayor que el algoritmo LRU.
II) Este algoritmo posee una tasa de fallos mayor que el algoritmo de la segunda oportunidad.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
10.- ¿Cual de los siguientes algoritmos de planificación es de tipo expropiativo?
a) SRT.
b) SJF.
c) FCFS
d) Ninguno de los anteriores.
SISTEMAS OPERATIVOS I 2 horas/Ningún material permitido Junio 2008
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: ____________________Código de la asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1 .- (3 puntos) Un sistema con memoria virtual mediante demanda de páginas utiliza el algoritmo LRU para la sustitución
de páginas. Un proceso genera la siguiente secuencia de referencias a páginas de memoria:
13241574328945491832
a) Determinar cuantos fallos de página se producen cuando se dispone de 4 o 5 marcos de página para este proceso.
b) Explicar razonadamente si mejoraría la tasa de fallos de página si se aumentase el número de marcos de página a
N, siendo N>5.
Solución:
2.- (3 puntos) Considérese un sistema de ficheros cuyos bloques son de 1 Kbytes y cada puntero a un bloque de disco
requiere 2 bytes. Un nodo-i de este sistema contiene 9 punteros directos a bloques de datos, un puntero a un bloque de
indirección simple, y otro a uno doble. Se pide:
a) Determinar los números de los bloques de datos a los que se puede acceder con los 11 punteros contenidos en
un nodo-i.
b) Supuesto que el sistema operativo ha leido ya el nodo-i de un fichero en memoria principal, desterminar el
número de lecturas adicionales a disco que se requerirán para leer el bloque de datos número 325 y el número
605.
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: E Junio 2008 - Original
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es E.
1.- En un sistema con asignación mediante indexación el número de accesos al disco para leer N bloques consecutivos de
un archivo son:
a) N accesos
b) N+1 accesos
c) N/2 accesos
d) Ninguna de las anteriores
2.- El algoritmo peor en ajustarse para la selección de un área libre de memoria asigna:
a) El primer bloque libre suficientemente grande que encuentra.
b) El bloque libre más grande, siempre que el tamaño del bloque exceda el tamaño necesario.
c) El bloque libre más grande, siempre que el tamaño del bloque no exceda el tamaño necesario.
d) Ninguna de las anteriores.
3.- Decir si las siguientes afirmaciones relativas a la E/S localizada en memoria son ciertas:
I) Existe un único espacio de direcciones para las posiciones de memoria y los dispositivos de E/S.
II) La CPU utiliza instrucciones máquinas diferentes para acceder a la memoria o a los periféricos.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
4.- En los monitores se cumple que
a) La exclusión mutua no está implícita.
b) No proporcionan por si mismos un mecanismo para la sincronización de tareas.
c) Las dos afirmaciones anteriores son verdaderas.
d) Ninguna de las anteriores.
5.- La planificación del disco que consiste en ir recorriendo todas las peticiones en una dirección y satisfaciendo todas las
peticiones que se encuentra en el camino, hasta que alcanza la última pista, es:
a) La planificación FCFS.
b) La planificación SCAN.
c) La planificación SSTF.
d) Ninguna de las anteriores.
6.- Decir si las siguientes afirmaciones relativas a un semáforo S inicializado con un valor N son ciertas:
I) Si N=1 la ejecución de una operación espera(S) por parte de un proceso provocará la suspensión de dicho
proceso y su colocación en la cola de tareas en espera.
II) Si N=3 la ejecución de una operación señal(S) deja un valor de 4 en el semáforo.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
7.- ¿Cual de los siguientes algoritmos de planificación es de tipo expropiativo?
a) SRT.
b) SJF.
c) FCFS
d) Ninguno de los anteriores.
8.- Decir si las siguientes afirmaciones relativas al algoritmo de sustitución de páginas de uso no frecuente son ciertas:
I) Este algoritmo posee una tasa de fallos mayor que el algoritmo LRU.
II) Este algoritmo posee una tasa de fallos mayor que el algoritmo de la segunda oportunidad.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
9.- Decir si las siguientes afirmaciones relativas al planificador a corto plazo (PCP) son ciertas:
I) El PCP determina qué trabajos se admiten en el sistema para su procesamiento y son, por lo tanto, cargados en
la memoria disponible.
II) El PCP debe realizar una mezcla adecuada de trabajos destinados al procesador y trabajos destinados al
sistema de E/S.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
10- Un gusano informático
a) Es un trozo de código de un programa, que va borrando los datos del disco duro.
b) Es un trozo de código de un programa, que va borrando los datos de la memoria principal.
c) Es un programa en si mismo que consume de forma desproporcionada los recursos del sistema.
d) Ninguna de las anteriores.
SISTEMAS OPERATIVOS I 2 horas/Ningún material permitido Junio 2008
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: ____________________Código de la asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1 .- (3 puntos) Un sistema con memoria virtual mediante demanda de páginas utiliza el algoritmo LRU para la sustitución
de páginas. Un proceso genera la siguiente secuencia de referencias a páginas de memoria:
13241574328945491832
a) Determinar cuantos fallos de página se producen cuando se dispone de 4 o 5 marcos de página para este proceso.
b) Explicar razonadamente si mejoraría la tasa de fallos de página si se aumentase el número de marcos de página a
N, siendo N>5.
Solución:
2.- (3 puntos) Considérese un sistema de ficheros cuyos bloques son de 1 Kbytes y cada puntero a un bloque de disco
requiere 2 bytes. Un nodo-i de este sistema contiene 9 punteros directos a bloques de datos, un puntero a un bloque de
indirección simple, y otro a uno doble. Se pide:
a) Determinar los números de los bloques de datos a los que se puede acceder con los 11 punteros contenidos en
un nodo-i.
b) Supuesto que el sistema operativo ha leido ya el nodo-i de un fichero en memoria principal, desterminar el
número de lecturas adicionales a disco que se requerirán para leer el bloque de datos número 325 y el número
605.
Solución:
SISTEMAS OPERATIVOS I Tipo de Examen: F Junio 2008 - Original
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es F.
1.- Decir si las siguientes afirmaciones relativas a la E/S localizada en memoria son ciertas:
I) Existe un único espacio de direcciones para las posiciones de memoria y los dispositivos de E/S.
II) La CPU utiliza instrucciones máquinas diferentes para acceder a la memoria o a los periféricos.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
2.- Decir si las siguientes afirmaciones relativas a un semáforo S inicializado con un valor N son ciertas:
I) Si N=1 la ejecución de una operación espera(S) por parte de un proceso provocará la suspensión de dicho
proceso y su colocación en la cola de tareas en espera.
II) Si N=3 la ejecución de una operación señal(S) deja un valor de 4 en el semáforo.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
3.- En los monitores se cumple que
a) La exclusión mutua no está implícita.
b) No proporcionan por si mismos un mecanismo para la sincronización de tareas.
c) Las dos afirmaciones anteriores son verdaderas.
d) Ninguna de las anteriores.
4.- Decir si las siguientes afirmaciones relativas al planificador a corto plazo (PCP) son ciertas:
I) El PCP determina qué trabajos se admiten en el sistema para su procesamiento y son, por lo tanto, cargados en
la memoria disponible.
II) El PCP debe realizar una mezcla adecuada de trabajos destinados al procesador y trabajos destinados al
sistema de E/S.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
5.- La planificación del disco que consiste en ir recorriendo todas las peticiones en una dirección y satisfaciendo todas las
peticiones que se encuentra en el camino, hasta que alcanza la última pista, es:
a) La planificación FCFS.
b) La planificación SCAN.
c) La planificación SSTF.
d) Ninguna de las anteriores.
6.- Decir si las siguientes afirmaciones relativas al algoritmo de sustitución de páginas de uso no frecuente son ciertas:
I) Este algoritmo posee una tasa de fallos mayor que el algoritmo LRU.
II) Este algoritmo posee una tasa de fallos mayor que el algoritmo de la segunda oportunidad.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
7- Un gusano informático
a) Es un trozo de código de un programa, que va borrando los datos del disco duro.
b) Es un trozo de código de un programa, que va borrando los datos de la memoria principal.
c) Es un programa en si mismo que consume de forma desproporcionada los recursos del sistema.
d) Ninguna de las anteriores.
8.- ¿Cual de los siguientes algoritmos de planificación es de tipo expropiativo?
a) SRT.
b) SJF.
c) FCFS
d) Ninguno de los anteriores.
9.- El algoritmo peor en ajustarse para la selección de un área libre de memoria asigna:
a) El primer bloque libre suficientemente grande que encuentra.
b) El bloque libre más grande, siempre que el tamaño del bloque exceda el tamaño necesario.
c) El bloque libre más grande, siempre que el tamaño del bloque no exceda el tamaño necesario.
d) Ninguna de las anteriores.
10.- En un sistema con asignación mediante indexación el número de accesos al disco para leer N bloques consecutivos
de un archivo son:
a) N accesos
b) N+1 accesos
c) N/2 accesos
d) Ninguna de las anteriores
SISTEMAS OPERATIVOS I 2 horas/Ningún material permitido Junio 2008
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: ____________________Código de la asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1 .- (3 puntos) Un sistema con memoria virtual mediante demanda de páginas utiliza el algoritmo LRU para la sustitución
de páginas. Un proceso genera la siguiente secuencia de referencias a páginas de memoria:
13241574328945491832
a) Determinar cuantos fallos de página se producen cuando se dispone de 4 o 5 marcos de página para este proceso.
b) Explicar razonadamente si mejoraría la tasa de fallos de página si se aumentase el número de marcos de página a
N, siendo N>5.
Solución:
2.- (3 puntos) Considérese un sistema de ficheros cuyos bloques son de 1 Kbytes y cada puntero a un bloque de disco
requiere 2 bytes. Un nodo-i de este sistema contiene 9 punteros directos a bloques de datos, un puntero a un bloque de
indirección simple, y otro a uno doble. Se pide:
a) Determinar los números de los bloques de datos a los que se puede acceder con los 11 punteros contenidos en
un nodo-i.
b) Supuesto que el sistema operativo ha leido ya el nodo-i de un fichero en memoria principal, desterminar el
número de lecturas adicionales a disco que se requerirán para leer el bloque de datos número 325 y el número
605.
Solución:
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN JUNIO 2008
1
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN JUNIO 2008
1- Un gusano informático
a) Es un trozo de código de un programa, que va borrando los datos del disco duro.
b) Es un trozo de código de un programa, que va borrando los datos de la memoria principal.
c) Es un programa en si mismo que consume de forma desproporcionada los recursos del sistema.
d) Ninguna de las anteriores.
Respuesta: C) Es un programa en si mismo que consume de forma desproporcionada los recursos del
sistema.
2.- En un sistema con asignación mediante indexación el número de accesos al disco para leer N bloques consecutivos
de un archivo son:
a) N accesos
b) N+1 accesos
c) N/2 accesos
d) Ninguna de las anteriores
3.- El algoritmo peor en ajustarse para la selección de un área libre de memoria asigna:
a) El primer bloque libre suficientemente grande que encuentra.
b) El bloque libre más grande, siempre que el tamaño del bloque exceda el tamaño necesario.
c) El bloque libre más grande, siempre que el tamaño del bloque no exceda el tamaño necesario.
d) Ninguna de las anteriores.
Respuesta: B) El bloque libre más grande, siempre que el tamaño del bloque exceda el tamaño necesario.
4.- Decir si las siguientes afirmaciones relativas a la E/S localizada en memoria son ciertas:
I) Existe un único espacio de direcciones para las posiciones de memoria y los dispositivos de E/S.
II) La CPU utiliza instrucciones máquinas diferentes para acceder a la memoria o a los periféricos.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
2
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN JUNIO 2008
5.- Decir si las siguientes afirmaciones relativas al planificador a corto plazo (PCP) son ciertas:
I) El PCP determina qué trabajos se admiten en el sistema para su procesamiento y son, por lo tanto, cargados
en la memoria disponible.
II) El PCP debe realizar una mezcla adecuada de trabajos destinados al procesador y trabajos destinados al
sistema de E/S.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
7.- Decir si las siguientes afirmaciones relativas a un semáforo S inicializado con un valor N son ciertas:
I) Si N=1 la ejecución de una operación espera(S) por parte de un proceso provocará la suspensión de dicho
proceso y su colocación en la cola de tareas en espera.
II) Si N=3 la ejecución de una operación señal(S) deja un valor de 4 en el semáforo.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
Afirmación II) Si un semáforo S está inicializado con un valor 3 entonces la ejecución de una operación señal (S) por
parte de un proceso producirá que el semáforo tome el valor 4. En conclusión la afirmación es VERDADERA.
3
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN JUNIO 2008
8.- La planificación del disco que consiste en ir recorriendo todas las peticiones en una dirección y satisfaciendo todas
las peticiones que se encuentra en el camino, hasta que alcanza la última pista, es:
a) La planificación FCFS.
b) La planificación SCAN.
c) La planificación SSTF.
d) Ninguna de las anteriores.
9.- Decir si las siguientes afirmaciones relativas al algoritmo de sustitución de páginas de uso no frecuente son ciertas:
I) Este algoritmo posee una tasa de fallos mayor que el algoritmo LRU.
II) Este algoritmo posee una tasa de fallos mayor que el algoritmo de la segunda oportunidad.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
Afirmación I. De acuerdo con la clasificación realizada el algoritmo de uso no frecuente posee una tasa de fallos
menor que el algoritmo LRU. En conclusión la afirmación es FALSA.
Afirmación II: De acuerdo con la clasificación realizada el algoritmo de uso no frecuente posee una tasa de fallos
mayor que el algoritmo de la segunda oportunidad. En conclusión la afirmación es VERDADERA.
Respuesta: A) SRT
4
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN JUNIO 2008
SOLUCIÓN PROBLEMAS
1 .- (3 puntos) Un sistema con memoria virtual mediante demanda de páginas utiliza el algoritmo LRU para la sustitución
de páginas. Un proceso genera la siguiente secuencia de referencias a páginas de memoria:
13241574328945491832
a) Determinar cuantos fallos de página se producen cuando se dispone de 4 o 5 marcos de página para este
proceso.
b) Explicar razonadamente si mejoraría la tasa de fallos de página si se aumentase el número de marcos de página
a N, siendo N>5.
Solución:
a) El algoritmo LRU asocia a cada página el tiempo de la última vez que se utilizó. Cuando una página debe ser
sustituida, se elige a aquella que no ha sido utilizada durante un periodo mayor de tiempo. Una posible forma de
implementar este algoritmo es mediante una pila que mantiene los números de las páginas, cada vez que una página
se referencia, su número se elimina de la pila y se coloca en la cumbre de la pila. De esta forma, en la parte superior
de ls pila se tiene siempre el número de la última página usada y en el fondo el de la página que hace más tiempo que
se usó.
A continuación, se muestra el contenido de dicha pila para la secuencia de referencias a páginas de memoria dadas
en el enunciado. Asimisimo, cuando se produce un fallo se marca con una F y cuando se produce un acierto se indica
con una A.
b) Analizando la secuencia de páginas referenciadas se observa que existen 8 páginas distintas {1 2 3 4 5 7 8 9}, por
lo tanto habrán 8 fallos de página como mínimo, al estar la memoria inicialmente vacía. Cómo con 5 marcos de página
se producen 14 fallos de página todavía existe un margen de mejora en la tasa de fallos de página (pasar de 14 a 8) si
se aumenta el número de marcos de página N por encima de 5.
5
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN JUNIO 2008
2.- (3 puntos) Considérese un sistema de ficheros cuyos bloques son de 1 Kbytes y cada puntero a un bloque de disco
requiere 2 bytes. Un nodo-i de este sistema contiene 9 punteros directos a bloques de datos, un puntero a un bloque de
indirección simple, y otro a uno doble. Se pide:
a) Determinar los números de los bloques de datos a los que se puede acceder con los 11 punteros contenidos
en un nodo-i.
b) Supuesto que el sistema operativo ha leido ya el nodo-i de un fichero en memoria principal, desterminar el
número de lecturas adicionales a disco que se requerirán para leer el bloque de datos número 325 y el
número 605.
Solución:
x 9 punteros directos a bloques de datos, que apuntarán a los bloques de datos nº 1 al nº 9 del fichero.
a) De acuerdo con el enunciado un nodo-i de este sistema de ficheros contiene entre otras informaciones 11 punteros:
x 1 puntero a un bloque de indirección simple, es decir, cuyo contenido son punteros a bloques. Puesto que un
bloque tiene una capacidad de SB =1 Kbyte=210 bytes y un puntero a un bloque de disco ocupa SP= 2 bytes,
entonces el número de punteros NP que pueden almacenarse en un bloque sería:
SB 210
NP 29 512 punteros.
SP 2
x 1 puntero a un bloque de indirección doble, es decir, cuyo contenido son punteros a bloques de indirección
En consecuencia un bloque de indirección simple apuntará a 512 bloques de datos del nº 10 al nº 521.
simple que a su vez contienen punteros a bloques de datos. Como el número de punteros que puede contener
un bloque son NP=512. Un bloque de indirección doble apuntará a NP2=5122=262144 bloques de datos del nº
522 al nº 262666.
b) Supuesto que el nodo-i ya se encuentra en memoria principal, para leer un bloque referenciado con un puntero
directo se requiere una lectura adicional a disco. Para leer un bloque referenciado con un puntero indirecto simple se
requieren dos lecturas adicionales a disco son dos. Para leer un bloque referenciado con un puntero indirecto doble se
requieren tres lecturas adicionales a disco.
Así, al bloque de datos nº 325 de acuerdo con el apartado anterior se accede a través del puntero de indirección
simple luego se requerirán dos lecturas adicionales a disco. Mientras que el bloque de datos nº 605 se accede a
través del puntero de indirección doble luego se requerirán tres lecturas adicionales a disco.
6
SISTEMAS OPERATIVOS I Tipo de Examen: A Septiembre 2008
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE con
el resto de hojas de su examen. Cualquier examen que no venga acompañado de esta hoja de enunciados no será corregido.
Complete TODOS los datos que se piden en la hoja de lectura óptica o en caso contrario su examen no será corregido. La
puntuación del examen es la siguiente: el test vale 4 puntos y los ejercicios 6 puntos. Las respuestas correctas del test puntúan 0.4
puntos y las respuestas erróneas del test descuentan 0.2. El test es eliminatorio, debiendo obtener una calificación mínima de 2
puntos para superarlo. NINGÚN MATERIAL PERMITIDO. Tiempo total para el examen (test + ejercicios): 2 horas
Test : Conteste exclusivamente en la HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
1- Sea f la velocidad de rotación de un disco magnético, ¿Cuál es la expresión del tiempo de búsqueda (tb)?
a) tb=1/2·f
b) tb=1/4·f
c) tb=3/5·f
d) Ninguna de las anteriores
2.- En un sistema de gestión de la memoria con particiones fijas se dispone de 7 particiones de 1 Mb y la cola de tareas
contiene tareas con requerimientos de 400 Kb, 1600 Kb, 300 Kb, 900 Kb, 200 Kb, 500 Kb y 800 Kb, Decir si las
siguientes afirmaciones son ciertas:
I) La fragmentación externa es de 1600 Kb.
II) La fragmentación interna es de 3040 Kb
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no
3.- ¿Se puede producir un ataque mediante “caballos de Troya” en un sistema protegido mediante listas de capacidades?
a) Si.
b) No.
c) En algunos casos.
d) No es posible saberlo sin tener más datos.
4.- Decir si las siguientes afirmaciones relativas a los algoritmos de planificación por prioridades son ciertas:
I) Únicamente pueden ser de tipo de no expropiación.
II) Se puede plantear el problema de que los procesos con menor prioridad queden relegados y sin posibilidad de
utilizar el procesador.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
5.- Si un semáforo S tiene el valor 0, entonces una operación señal (S) tendrá el siguiente resultado:
a) S=1, independientemente de la existencia de procesos bloqueados en la cola del semáforo.
b) S=0 si existen procesos bloqueados en la cola del semáforo y S=1 en caso contrario.
c) Las dos afirmaciones anteriores son falsas.
d) Ninguna de las anteriores.
6.- ¿Existe alguna diferencia entre la operación de espera de un semáforo y la de una variable de condición de un
monitor?
a) No.
b) Si.
c) Depende de la implementación del monitor y del semáforo.
d) No es posible saberlo sin tener más datos.
7.- En un bloque de control de procesos (BCP) se almacenan, entre otras datos, la siguiente información relativa a un
proceso:
a) El identificador único del proceso.
b) La información para gestionar la memoria (punteros, tablas, registros).
c) Las dos afirmaciones anteriores son verdaderas.
d) Ninguna de las anteriores.
8.- Decir si las siguientes afirmaciones relativas a la gestión de memoria mediante demanda de página son ciertas:
I) La circuitería para soportar demanda de página es la misma que para la paginación y el intercambio.
II) Requiere que la arquitectura del computador permita continuar cualquier instrucción después de un fallo de
página.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
9.- Decir si las siguientes afirmaciones relativas al método de asignación del espacio del disco mediante indexación son
ciertas:
I) Soporta con la misma eficacia el acceso aleatorio que el secuencial.
II) Evita la pérdida de espacio.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
10.- Decir si las siguientes afirmaciones relativas al acceso directo a memoria son ciertas (DMA) son ciertas:
I) Generalmente, los controladores de DMA poseen una prioridad más elevada que la CPU en los accesos a
memoria principal.
II) La estrategia de DMA por ráfagas es la estrategía que menos tiempo mantiene inactiva a la CPU.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
SISTEMAS OPERATIVOS I 2 horas/Ningún material permitido Septiembre 2008
Apellidos: ____________________________________________ Nombre: ______________________ DNI: ______________
Centro Asociado en el que está MATRICULADO: ____________________Código de la asignatura: _____________________
INSTRUCCIONES: Complete sus datos personales en la cabecera de esta hoja, y ENTRÉGUELA OBLIGATORIAMENTE
junto con la hoja de lectura óptica. Cíñase al espacio determinado para contestar cada pregunta. (No se evaluará ninguna hoja
adicional). Superado el test, la puntuación de estos ejercicios corresponde al 60% de la calificación final.
1.- (3 puntos) La siguiente tabla recoge información de cinco procesos que se van a ejecutar en un sistema.
Proceso Tiempo de llegada (ms) Tiempo de ejecución (ms)
A 0 5
B 1 3
C 2 2
D 3 3
E 4 4
Supuesto que el tiempo de conmutación de tareas es de 0.5 ms, calcular el tiempo de retorno y el tiempo de espera de cada
uno de los trabajos y representar la ejecución en diagramas de Gantt para los siguientes algoritmos de planificación:
a) RR con un cuanto de 3 ms.
b) SRT.
Solución:
2.- (3 puntos) La política de gestión de memoria de un cierto sistema es del tipo demanda de página. El tamaño de una
página es de 1 Kbytes, el tamaño máximo de la memoria virtual es de 4 Mbytes y el tamaño de la memoria física es de
1 Mbytes. Se pide:
a) Determinar el tamaño de cada uno de los campos de una dirección virtual y de una dirección física
b) Determinar la capacidad mínima que debe tener la tabla de páginas del proceso de mayor tamaño que se puede
ejecutar en el sistema. ¿Que tanto por ciento de la memoria principal ocuparía dicha tabla?.
c) Supóngase que las tablas de páginas se almacenan en memoria principal y que el tiempo de acceso a la
memoria es de 100 ns. Supóngase además que se dispone de una memoria asociativa cuyo tiempo de acceso es
de 75 ns y que el 80 % de todas las referencias a las tablas de páginas se encuentran en la memoría asociativa.
¿Cúal es el tiempo promedio de una referencia a memoria principal?
Solución:
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
Pregunta Tipo A
1 d
2 d
3 b
4 c
5 b
6 b
7 c
8 a
9 b
10 b
1
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
1- Sea f la velocidad de rotación de un disco magnético, ¿Cuál es la expresión del tiempo de búsqueda (tb)?
a) tb=1/2·f;
b) tb=1/4·f;
c) tb=3/5·f;
d) Ninguna de las anteriores.
El tiempo de búsqueda tb de un disco magnético, se define como el tiempo necesario para que las cabezas del disco
se desplacen al cilindro adecuado. Consta de dos componentes claves: el tiempo de arranque inicial (ti) y el tiempo
que se tarda en recorrer todos los cilindros que hay entre la pista inicial y la pista final. Se suele aproximar con la
fórmula siguiente
tb m u n ti
donde n es el número de pistas recorridas y m es una constante que depende de la unidad de disco.
2.- En un sistema de gestión de la memoria con particiones fijas se dispone de 7 particiones de 1 Mb y la cola de tareas
contiene tareas con requerimientos de 400 Kb, 1600 Kb, 300 Kb, 900 Kb, 200 Kb, 500 Kb y 800 Kb, Decir si las
siguientes afirmaciones son ciertas:
I) La fragmentación externa es de 1600 Kb.
II) La fragmentación interna es de 3040 Kb
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no
Se dispone de siete particiones de 1 Mb, es decir, 1024 Kb. Se va a calcular el espacio desperdiciado en cada
x Tarea de 1600 Kb. Su tamaño es mayor que el tamaño de una partición por lo tanto no podrá ejecutarse nunca.
x Tarea de 300 Kb. Espacio desperdiciado 1024-300= 724 Kb.
x Tarea de 900 Kb. Espacio desperdiciado 1024-900= 124 Kb.
x Tarea de 200 Kb. Espacio desperdiciado 1024-200= 824 Kb.
x Tarea de 500 Kb. Espacio desperdiciado 1024-500= 524 Kb.
x Tarea de 800 Kb. Espacio desperdiciado 1024-800= 224 Kb.
La fragmentación externa se produce cuando una partición disponible no se emplea porque es muy pequeña para
cualquiera de las tareas que se esperan. En este caso, una partición completa de las siete disponible ha quedado
vacia luego la fragmentación externa es de 1024 Kb.
La fragmentación interna consiste en aquella parte de la memoria que no se está usando pero que es interna a una
partición asignada a una tarea. En este caso la fragmentación interna es de 624+724+124+824+524+224=3044 Kb.
2
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
3.- ¿Se puede producir un ataque mediante “caballos de Troya” en un sistema protegido mediante listas de
capacidades?
a) Si.
b) No.
c) En algunos casos.
d) No es posible saberlo sin tener más datos.
Solución: pp. 351 del libro base de la asignatura.
Un “caballo de Troya” es un programa útil o de apariencia útil que contiene un código oculto que, cuando se invoca,
lleva a cabo una función dañina o no deseada.
En las listas de capacidades a cada dominio se le asocia una lista de objetos a los cuales puede terner acceso, junto
con una indicación de las operaciones permitidas sobre cada objeto. La ventaja de la lista de capacidades es que es
un objeto protegido, mantenido por el sistema operativo y de forma que nunca se permite que una capacidad se
mueva al espacio de direcciones accesibles por un proceso de usuario. Manteniendo las capacidades seguras, los
objetos a los que protegen también están seguros frente accesos no autorizados. Por lo tanto, al ser el “caballo de
Troya” un programa de usuario no puede tener acceso a la lista de capacidades y modificar los accesos.
Respuesta: B) No.
4.- Decir si las siguientes afirmaciones relativas a los algoritmos de planificación por prioridades son ciertas:
I) Únicamente pueden ser de tipo de no expropiación.
II) Se puede plantear el problema de que los procesos con menor prioridad queden relegados y sin posibilidad
de utilizar el procesador.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
Solución: pp. 40 del libro base de la asignatura.
En los algoritmos de planificación por prioridades cada proceso tiene asignada una y el de mayor prioridad en el
estado preparado es el que toma el procesador. Este tipo de algoritmos puede ser de tipo de expropiación o no de
expropiación.
En los algoritmos con prioridades se puede plantear el problema de que los procesos con menor prioridad queden
relegados y sin posibilidades de utilizar el procesador.
5.- Si un semáforo S tiene el valor 0, entonces una operación señal (S) tendrá el siguiente resultado:
a) S=1, independientemente de la existencia de procesos bloqueados en la cola del semáforo.
b) S=0 si existen procesos bloqueados en la cola del semáforo y S=1 en caso contrario.
c) Las dos afirmaciones anteriores son falsas.
d) Ninguna de las anteriores.
Solución: pp. 114 del libro base de la asignatura.
Si un semáforo S tiene el valor 0 entonces el resultado de una operación señal(S) dependerá de la existencia o no de
procesos bloqueados en la cola del semáforo. Si existen procesos en la cola entonces se reanuda la primera tarea de
la cola y no se modifica el valor de S. Cuando no queden tareas en la cola entonces S tomará el valor 1.
Respuesta: B) S=0 si existen procesos bloqueados en la cola del semáforo y S=1 en caso contrario.
3
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
6.- ¿Existe alguna diferencia entre la operación de espera de un semáforo y la de una variable de condición de un
monitor?
a) No.
b) Si.
c) Depende de la implementación del monitor y del semáforo.
d) No es posible saberlo sin tener más datos.
Solución: pp. 163 del libro base de la asignatura.
La ejecución de la operación de espera de una variable de condición siempre suspende al proceso que la emite
mientras que la de un semáforo depende del valor del indicador. Luego si existe diferencia.
Respuesta: B) Si.
7.- En un bloque de control de procesos (BCP) se almacenan, entre otras datos, la siguiente información relativa a un
proceso:
a) El identificador único del proceso.
b) La información para gestionar la memoria (punteros, tablas, registros).
c) Las dos afirmaciones anteriores son verdaderas.
d) Ninguna de las anteriores.
Solución: pp. 33 del libro base de la asignatura.
El sistema mantiene toda la información sobre un proceso en una estructura de datos denominada bloque de control
de procesos (BCP). En el BCP se guarda la información que necesita el sistema para controlar el proceso y darse
cuenta de sus recursos y toda la que influye en la ejecución de un programa. Por ejemplo: el identificador único del
proceso (pid), el estado del proceso (activo, preparado, bloquedao), la prioridad, el estado hardware, la información
para gestionar la memoria (punteros, tablas, registros), ...
8.- Decir si las siguientes afirmaciones relativas a la gestión de memoria mediante demanda de página son ciertas:
I) La circuitería para soportar demanda de página es la misma que para la paginación y el intercambio.
II) Requiere que la arquitectura del computador permita continuar cualquier instrucción después de un fallo de
página.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
Solución: pp. 239 del libro base de la asignatura.
La circutería para soportar demanda de página es la misma que para la paginación e intercambio. Básicamente
consiste en un dispositivo de almacenamiento masivo (un disco) y una tabla de páginas con la posibilidad de marcar
una entrada como ausente mediante un bit de presente/ausente o un valor especial de bits de protección. En
conclusión, la primera afirmación es verdadera.
Para implementar la politica de demanda de páginas se tienen que imponer algunas restricciones sobre la
arquitectura. Así, es esencial la posibilidad de continuar cualquier instrucción después de un fallo de página. En
conclusión, la segunda afirmación es verdadera.
4
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
9.- Decir si las siguientes afirmaciones relativas al método de asignación del espacio del disco mediante indexación son
ciertas:
I) Soporta con la misma eficacia el acceso aleatorio que el secuencial.
II) Evita la pérdida de espacio.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
Solución: pp. 316-317 del libro base de la asignatura.
El método de asignación del espacio del disco mediante indexación soporta con la misma eficacia el acceso aleatorio
que el secuencial. Sin embargo, presenta perdidas de espacio.
10.- Decir si las siguientes afirmaciones relativas al acceso directo a memoria son ciertas (DMA) son ciertas:
I) Generalmente, los controladores de DMA poseen una prioridad más elevada que la CPU en los accesos a
memoria principal.
II) La estrategia de DMA por ráfagas es la estrategía que menos tiempo mantiene inactiva a la CPU.
a) I: si, II: si. b) I: si. II: no. c) I: no, II: si. d) I: no, II: no.
Solución: pp. 437 y 399 del libro base de la asignatura.
Generalmente los controladores de DMA poseen una prioridad más alta que la CPU en los accesos a memoria, para
que sea posible interrumpir a ésta cuando el controlador de DMA esté preparado para la trasferencia de un bloque de
datos. Esta trasferencia es rápida y, además, es posible que la CPU necesite esos datos con posterioridad. Luego la
primera afirmación es verdadera.
En la estrategia de DMA por ráfagas cuando el DMA toma el control del bus no lo libera hasta haber transmitido el
bloque de datos pedido. Con este método se consigue la mayor velocidad de transferencia pero se tiene a la CPU
inactiva durante periodos relativamente grandes. Luego la segunda afirmación es falsa.
5
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
SOLUCIÓN PROBLEMAS
1.- (3 puntos) La siguiente tabla recoge información de cinco procesos que se van a ejecutar en un sistema.
Proceso Tiempo de llegada (ms) Tiempo de ejecución (ms)
A 0 5
B 1 3
C 2 2
D 3 3
E 4 4
Supuesto que el tiempo de conmutación de tareas es de 0.5 ms, calcular el tiempo de retorno y el tiempo de espera de
cada uno de los trabajos y representar la ejecución en diagramas de Gantt para los siguientes algoritmos de
planificación:
a) RR con un cuanto de 3 ms.
b) SRT.
Solución:
a) En el algoritmo de planificación circular o round robin (RR) el procesador se asigna a cada proceso de forma
secuencial durante un periodo de tiempo definido denominado cuanto, que en este caso es de 3 ms.
Llegada de un proceso
Eventos: Cola de procesos: {P1,…,Pn}
Finalización de un proceso P1 lleva más tiempo en la cola
A B C D E B C D A E
A B C D A E
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (ms)
Proceso Tiempo de finalización (ms) Tiempo de retorno (ms) Tiempo de espera (ms)
A 15 15-0= 15 15-5=10
B 6.5 6.5-1= 5.5 5.5-3=2.5
C 9 9-2= 7 7-2=5
D 12.5 12.5-3= 9.5 9.5-3=6.5
E 19.5 19.5-4=15.5 15.5-4=11.5
b) El algoritmo de planificación SRT es la versión expropiativa del algoritmo de planificación de la primera tarea más
corta o SJF, el procesador se asigna al proceso con el menor valor de tiempo restante de ejecución.
A B C D EC B D A E
A B C B D A E
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (ms)
Llegada de un proceso
{A[4], B[3]} Eventos:
Finalización de un proceso
{A[4], B[2.5],C[2]}
Procesos en orden de llegada al sistema: {P1[t1],…,Pn[tn]}
{A[4], B[2.5],C[1.5],D[3]} {A[4], B[2.5],C[0.5],D[3],E[4]} ti tiempo restante de ejecución de Pi
Proceso Tiempo de finalización (ms) Tiempo de retorno (ms) Tiempo de espera (ms)
A 15.5 15.5-0=15.5 15.5-5=10.5
B 7.5 7.5-1=6.5 6.5-3=3.5
C 4.5 4.5-2=2.5 2.5-2=0.5
D 11 11-3=8 8-3=5
E 20 20-4=16 16-4=12
6
SISTEMAS OPERATIVOS I SOLUCIÓN EXAMEN SEPTIEMBRE 2008
2.- (3 puntos) La política de gestión de memoria de un cierto sistema es del tipo demanda de página. El tamaño de una
página es de 1 Kbytes, el tamaño máximo de la memoria virtual es de 4 Mbytes y el tamaño de la memoria física es de
1 Mbytes. Se pide:
a) Determinar el tamaño de cada uno de los campos de una dirección virtual y de una dirección física
b) Determinar la capacidad mínima que debe tener la tabla de páginas del proceso de mayor tamaño que se
puede ejecutar en el sistema. ¿Que tanto por ciento de la memoria principal ocuparía dicha tabla?.
c) Supóngase que las tablas de páginas se almacenan en memoria principal y que el tiempo de acceso a la
memoria es de 100 ns. Supóngase además que se dispone de una memoria asociativa cuyo tiempo de acceso
es de 75 ns y que el 80 % de todas las referencias a las tablas de páginas se encuentran en la memoría
asociativa. ¿Cúal es el tiempo promedio de una referencia a memoria principal?
Solución:
a) Una dirección virtual consta de dos campos: número de página y desplazamiento en bytes dentro de la página. El
tamaño del campo número de página se deduce a partir del número de páginas que ocupa la memoria virtual, que se
calcula dividiendo el tamaño de la memoria virtual entre el tamaño de una página
4·2 20
4·210 212 páginas
210
Luego se requieren 12 bits para distinguir entre las 212 páginas de que consta la memoria virtual. Por otra parte, el
desplazamiento corresponde al tamaño de la página 1024 bytes= 210 bytes, luego el campo desplazamiento requiere
10 bits. Por lo tanto, los campos de una dirección virtual poseen el siguiente tamaño:
12 bits 10 bits
Nº de página Desplazamiento
Una dirección física consta de dos campos: número de marco de página y desplazamiento en bytes dentro del marco.
Para obtener el tamaño del primer campo hay que calcular el número de marcos de página en que se divide la
memoria principal que se obtiene dividiendo la capacidad de la memoria principal entre el tamaño de una página:
2 20
210 210 marcos de página
210
Luego se requieren 10 bits para distinguir entre las 210 marcos de páginas en que se divide la memoria virtual. Por otra
parte, el desplazamiento corresponde al tamaño del marco de página, que es igual al de la página: 1024 bytes= 210
bytes, luego el campo desplazamiento requiere 10 bits. Por lo tanto, los campos de una dirección física poseen el
siguiente tamaño:
10 bits 10 bits
Nº de marco de página Desplazamiento
b) El proceso de mayor tamaño que se puede ejecutar sería aquel que ocupara toda la memoria virtual, es decir,
4 Mbytes, o equivalentemente 212 páginas. Como la tabla de páginas debe tener una entrada por cada página del
proceso constará por tanto de 212 entradas. En un sistema con demanda de página una entrada de una tabla página
debe tener como mínimo dos campos: número de marco de página (10 bits) y bit de presente/ausente. Luego el
tamaño mínimo de una entrada es de 11 bits. Por lo tanto la capacidad mínima que debe tener la tabla de páginas del
proceso de mayor tamaño que se puede ejecutar en el sistema es
c) Si una referencia a memoria requiere acceder a una tabla de páginas almacenada a memoria principal, habrá que
realizar dos accesos a memoria, uno para leer dentro de la tabla de páginas el número de marco donde está alojada la
página y otro más para acceder a dicho marco. Luego el tiempo empleado en este caso será 2·100=200 ns. Por el
contrario si la tabla de páginas está en la memoria asociativa, primero se accede a la memoria asociativa para leer
dentro de la tabla de páginas el número de marco donde está alojada la página y luego se accede a la memoria
principal para acceder al marco. Luego el tiempo empleado en este caso será 75+100=175 ns. Como se sabe que el
80% por ciento de las referencias a las tablas de páginas encuentran en la memoria asociativa, entonces el tiempo
7
SISTEMAS OPERATIVOS I Ejemplo 2009
Aviso 1: Todas las respuestas deben estar debidamente razonadas.
Material permitido: NINGUNO Aviso 2: Escriba sus respuestas con una letra lo más clara posible. Evite los tachones.
Tiempo: 2 horas Aviso 3: Notificación de la salida de las calificaciones y fecha de revisión en la página web de la
asignatura:
[Link] [Link]
2. (2 p) Enumere y explique brevemente los servicios que tiene que proporcionar el sistema operativo como máquina
virtual.
3. (2 p) Describa razonadamente las operaciones inicializar, espera y señal sobre un semáforo generalizado.
4. Un sistema con memoria virtual mediante demanda de páginas utiliza el algoritmo LRU para la sustitución de
páginas. Un proceso genera la siguiente secuencia de referencias a páginas de memoria:
13241574328945491832
a) (1.5 p) Determinar cuantos fallos de página se producen cuando se dispone de 4 o 5 marcos de página para este
proceso.
b) (0.5 p) Explicar razonadamente si mejoraría la tasa de fallos de página si se aumentase el número de marcos de
página a N, siendo N>5.
5. Se ha diseñado un sistema de archivos parecido al del sistema operativo UNIX con la siguiente estructura básica:
un bloque de arranque, N bloques de mapa de bloques, M bloques de mapa de nodos-i, R bloques de nodos-i y
S bloques de archivos. Sabiendo que el tamaño de un bloque es 2 Kbytes, que un nodo-i ocupa 32 bytes y que el
tamaño máximo de un fichero es de 32768 bloques. Se pide
a) (0.5 p) Determinar el número máximo de archivos que pueden almacenarse en este sistema si M=1.
b) (1.5 p) Determinar el valor mínimo de las constantes N, R y S para que puedan existir 50 archivos de tamaño
máximo.
SISTEMAS OPERATIVOS I Solución examen ejemplo 2009
Solución:
II) En el DMA por ráfagas, cuando el controlador de DMA toma el control del bus no lo libera
hasta haber transmitido el bloque de datos solicitado. Obviamente de esta forma se consigue la
mayor velocidad de transferencia posible pero se tiene a la CPU inactiva durante periodos de
tiempo relativamente grandes, por lo que es la estrategia de DMA que más interfiere en la
actividad normal de la CPU. Por lo tanto la afirmación es VERDADERA.
Solución:
Los servicios que tiene que proporcionar el sistema operativo como máquina virtual son:
- Creación de programas. Existen otros programas del sistema, como son los depuradores, los
editores y los enlazadores, que no son parte del sistema operativo, pero que son accesibles a
través de él.
- Ejecución de programas. Para poder ejecutar un programa se tiene que realizar una serie de
funciones previas, tales como cargar el código y los datos en la memoria principal, inicializar
los dispositivos de E/S y preparar los recursos necesarios para la ejecución. Todo esto lo
gestiona el sistema operativo.
1
SISTEMAS OPERATIVOS I Solución examen ejemplo 2009
sistema operativo el encargado de hacer todas esas funciones que permiten la lectura,
escritura y comunicación con los periféricos.
- Detección de errores. Hay una gran cantidad de errores, tanto del hardware como del
software, que pueden ocurrir. Por ejemplo: un mal funcionamiento de un periférico, fallos en la
transmisión de los datos, errores de cálculo en un programa, divisiones por cero, rebose, fallos
de la memoria, violaciones de permisos, etc. El sistema operativo debe ser capaz de
detectarlos y solucionarlos o por lo menos hacer que tengan el menor impacto posible sobre el
resto de las aplicaciones.
Para un semáforo S generalizado o semáforo con contador las operaciones indicadas operan
de la siguiente forma:
2
SISTEMAS OPERATIVOS I Solución examen ejemplo 2009
13241574328945491832
a) El algoritmo LRU asocia a cada página el tiempo de la última vez que se utilizó. Cuando una
página debe ser sustituida, se elige a aquella que no ha sido utilizada durante un periodo
mayor de tiempo. Una posible forma de implementar este algoritmo es mediante una pila que
mantiene los números de las páginas, cada vez que una página se referencia, su número se
elimina de la pila y se coloca en la cumbre de la pila. De esta forma, en la parte superior de la
pila se tiene siempre el número de la última página usada y en el fondo el de la página que
hace más tiempo que se usó.
1 3 2 4 1 5 7 4 3 2 8 9 4 5 4 9 1 8 3 2
1 3 2 4 1 5 7 4 3 2 8 9 4 5 4 9 1 8 3 2
1 3 2 4 1 5 7 4 3 2 8 9 4 5 4 9 1 8 3
1 3 2 4 1 5 7 4 3 2 8 9 9 5 4 9 1 8
1 3 2 4 1 5 7 4 3 2 8 8 8 5 4 9 1
F F F F A F F A F F F F F F A A F F F F
1 3 2 4 1 5 7 4 3 2 8 9 4 5 4 9 1 8 3 2
1 3 2 4 1 5 7 4 3 2 8 9 4 5 4 9 1 8 3 2
1 3 2 4 1 5 7 4 3 2 8 9 4 5 4 9 1 8 3
1 3 2 4 1 5 7 4 3 2 8 9 9 5 4 9 1 8
1 3 2 4 1 5 7 4 3 2 8 8 8 5 4 9 1
3 2 2 1 5 7 4 3 2 2 2 8 5 4 9
F F F F A F F A F F F F A F A A F A F F
3
SISTEMAS OPERATIVOS I Solución examen ejemplo 2009
a) Si M=1, es decir, hay un bloque de mapa de nodos-i, el número máximo de ficheros que se
pueden almacenar en el fichero vendrá determinado por el número de nodos-i al que hace
referencia el mapa de nodos-i, ya que cada nodo-i contiene información sobre un fichero. En
dicho mapa se tiene un bit que valdrá 0 o 1 si el nodo-i está libre u ocupado. Luego el número
máximo de nodos-i y en consecuencia de ficheros será igual al tamaño en bits de un bloque de
disco, que es
b) Para que puedan existir 50 archivos de tamaño máximo, es decir, de 32768 bloques cada
uno, el valor mínimo de S se obtendrá multiplicando el número de archivos por el tamaño de
dichos archivos:
S 1638400
N 100 bloques
SB 16384
El número R de bloques de nodos-i, viene limitado por el valor de M=1, es decir, en el sistema
hay un único bloque de mapa de nodos-i, lo que de acuerdo con el apartado a) establece un
límite máximo de 214 nodos-i. Para calcular el valor de R en primer lugar hay que determinar
cuantos nodos-i se pueden almacenar en un bloque:
4
SISTEMAS OPERATIVOS I Solución examen ejemplo 2009
A continuación se divide el número total de nodos-i entre el número de nodos-i que caben en
un bloque
214
R 28 256 bloques
26