Está en la página 1de 20

SolucionModelo1.

pdf

Anónimo

Concurrencia y sistemas distribuidos

2º Grado en Ingeniería Informática

Escuela Técnica Superior de Ingeniería Informática


Universidad Politécnica de Valencia

Reservados todos los derechos.


No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Volver a Exámenes

Nombre: _________________________
Nota: ______ / ______

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
ParcialBloque1

Parte 1

Analice el siguiente código en Java ...

Reservados todos los derechos.

Ficheros adjuntos
codigoMyExam.pdf

1 Al ejecutar este código, el hilo de nombre Task6 crea 3 nuevos hilos.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
2 Al ejecutar este código, el hilo de nombre Task0 crea 1 nuevo hilo.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

3 En cualquier ejecución, habrá varios hilos que tengan el mismo nombre.

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

4 En cualquier ejecución, el hilo principal crea solamente un hilo.

Reservados todos los derechos.


Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

Parte 2

5 En Java, solamente puede crear hilos el hilo principal (main).

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
6 En Java, cuando un hilo utiliza el método Thread.join() pasa a suspendido hasta que nalice la ejecución de todos los hilos
que ha creado.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
7 La depuración de la programación concurrente es más sencilla que en la programación secuencial.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

8 Todo programa concurrente requiere de múltiples ordenadores para ser ejecutado.

Reservados todos los derechos.


Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 3

Supongamos que tenemos un servidor para venta de entradas que emplea: (i) una variable compartida numEntradas que indica
la cantidad de entradas sin vender, y (ii) una constante compartida precioEntrada con el valor de venta de las entradas. Además,
se dispone de varios hilos que venden entradas mientras numEntradas>0. Cada hilo consta de un bucle en el que hay una espera
aleatoria y luego vende una entrada y muestra un mensaje en pantalla. El bucle termina si no quedan entradas. El hilo principal
muestra un mensaje nal cuando no quedan entradas disponibles a la venta.

9 Se trata de un problema de programación concurrente, puesto que hay cooperación entre los hilos.

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

10 Para que el programa sea correcto hay que usar un lock para para proteger el acceso a precioEntrada.

Reservados todos los derechos.


Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

11 Podemos utilizar una barrera CountDownLatch cdl para que el hilo principal espere a que no queden entradas
disponibles. La barrera se inicializa a numEntradas, el hilo principal ejecuta cdl.await() y, cuando cualquier hilo vende una
entrada, dicho hilo realiza cdl.countDown().

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 4

12 El monitor de tipo Hoare garantiza que tras una operación notify() el hilo reactivado encuentra el estado del monitor

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
exactamente igual que estaba cuando se ejecutó dicho notify().

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

13 En Java, la sentencia notify() o notifyAll() debe ser obligatoriamente la última del método correspondiente.

Reservados todos los derechos.


Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

14 Un monitor que siga el modelo de Lampson-Redell suspende al hilo que ha invocado a c.notify(), siendo "c" una variable
condición, y activa a uno de los hilos que llamó antes a c.wait().

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

15 Un monitor proporciona los mecanismos necesarios para resolver la sincronización condicional.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 5

Para que un hilo A espere hasta que otros N hilos de una misma clase hayan ejecutado una sentencia B dentro de su código
(siendo N>1) ....

16 Se puede solucionar haciendo que el hilo A invoque Thread.join(), mientras que los otros N hilos invocan a Thread.yield()
tras la sentencia B.

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

17 Se puede utilizar una CyclicBarrier cb inicializada a 1, de modo que A invoca cb.await(), mientras que alguno de los otros
N hilos invoca cb.signal() tras la sentencia B.

Reservados todos los derechos.


Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

18 Se puede utilizar un CountDownLatch cdl inicializado a N, invocando el hilo A la instrucción cdl.await() y los demás N hilos
cada uno a cdl.countdown() tras la sentencia B.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 6

19 La interfaz Executor ofrece la subinterfaz ExecutorService que, por ejemplo, permite crear con el método
SingleThreadExecutor un pool de varios hilos que se ejecutan de forma secuencial.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
20 Si varios hilos hacen uso de un mismo objeto AtomicBoolean, se deben proteger con la etiqueta "synchronized" los
métodos que dicho objeto ofrece, para evitar las condiciones de carrera.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

Reservados todos los derechos.


21 La interfaz BlockingQueue ofrece los métodos put() y take() que internamente tienen en cuenta la gestión de la
sincronización condicional y el acceso en exclusión mutua al objeto (Queue) que implemente dicha interfaz.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

Parte 7

Dado el código Java que se muestra a continuación...

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Reservados todos los derechos.

22 El semáforo item sirve para suspender al hilo Client cuando no haya elementos en el buffer.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
23 Este código lanza un Builder y un Client, y cada uno se ejecuta 5 veces.

Verdadero

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

24 Como el hilo main no se espera a que los hilos Client ni Builder terminen, la aplicación acabará en cuanto main nalice.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Reservados todos los derechos.


Clave de respuesta:Falso

25 Los valores de los semáforos item y slot deberían intercambiarse (i.e. item debería inicializarse a "size", mientras que slot
debería inicializarse a "0"), para así garantizar el acceso en exclusión mutua al buffer.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

Parte 8

Un sistema de tiempo real crítico se compone de 5 tareas que utilizan 2 semáforos para sincronizar el acceso a sus secciones
críticas (SC), y cuyas características se describen en las tablas siguientes.
Asumiendo que los semáforos utilizan el protocolo del techo de prioridad inmediato y el sistema se plani ca por prioridades jas
expulsivas, con asignación de prioridades inversamente proporcional a su plazo, donde la tarea de menor plazo es la más
prioritaria…

26 Los techos de los semáforos S1 y S2 son iguales.

a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

27 El factor de bloqueo de la tarea T5 vale 3.

Verdadero

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

28 Los factores de bloqueo de T1 y T2 valen 3, respectivamente.

Verdadero
Falso

Reservados todos los derechos.


Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

29 El tiempo de respuesta de la tarea T1 es R(T1) = 6

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

30 El tiempo de respuesta de la tarea T2 es R(T2) = 8

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
31 El tiempo de respuesta de la tarea T3 es R(T3) = 20.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Reservados todos los derechos.

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 9

Dado el grafo de asignación de recursos siguiente:

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
32 Existe al menos una secuencia segura.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Reservados todos los derechos.


Clave de respuesta:Verdadero

33 Los hilos H2 y H6 pertenecen a un ciclo dirigido y, además, están en interbloqueo.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

34 Atendiendo a este grafo, se puede asegurar que se cumple la Condición de Coffman de retención y espera.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

Parte 10

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Sean tres tareas A, B y C con prioridad(A)>prioridad(B)>prioridad(C); y dos semáforos P y S, que se utilizan conforme se indica
en la tabla siguiente.
Para contestar a las siguientes cuestiones, puede ayudarse de la cuadrícula adjunta a la tabla, donde se ilustre grá camente la

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
ejecución de las tareas.

Reservados todos los derechos.


35 Si los semáforos P y S utilizan el protocolo de techo de prioridad inmediato, la tarea A está en ejecución en el intervalo
[7,12).

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

36 Si los semáforos P y S utilizan el protocolo de techo de prioridad inmediato, la tarea B estará en ejecución en el intervalo
[12, 14]

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
37 Si los semáforos P y S son normales (no usan ningún protocolo), la prioridad de la tarea B en el intervalo [2,4] es 2.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

38 Si los semáforos P y S utilizan el protocolo de techo de prioridad inmediato, la tarea A nalizará su ejecución en el

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
instante 12.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

Reservados todos los derechos.

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 11

Sobre los sistemas de tiempo real...

39 Si un conjunto de tareas es plani cable bajo una cierta asignación de prioridades, lo seguirá siendo, aunque cambiemos
las prioridades asignadas a las tareas.

Verdadero

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

40 El peor caso de plani cación posible para un conjunto de tareas plani cadas por prioridades jas expulsivas, se da cuando
todas ellas consumen su tiempo de cómputo de peor caso y se activan todas las tareas a la vez.

Verdadero

Reservados todos los derechos.


Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

41 Si se aplica el protocolo de techo de prioridad inmediato, se garantiza que no se producirán interbloqueos entre las tareas
en el uso de los recursos que tienen compartidos.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 12

Sobre la práctica 1 “Uso compartido de una piscina”, cuyas reglas se muestran a continuación:
Pool0 : Baño libre (no hay reglas)
Pool1: Los niños no pueden nadar solos (debe haber algún instructor con ellos)
Pool2: Puede nadar un máximo de niños por instructor determinado.
Pool3: No puede haber más nadadores dentro de la piscina del máximo aforo permitido.
Pool4: Si hay instructores esperando salir de la piscina, no pueden entrar niños a nadar.

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
42 En la piscina Pool1 se debe invocar notifyAll() cuando un instructor entra en la piscina, para avisar a los niños que estén
nadando de que ya no estarán solos.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

Reservados todos los derechos.


43 Nunca se producirán interbloqueos al ejecutar la piscina Pool0.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

44 En cualquier piscina, cuando la llamada al método InstructorSwims() de la piscina naliza, sabemos que el instructor que
ha hecho la llamada está nadando.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 13

Sobre la práctica 2 “Los 5 lósofos comensales"....

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
45 Se ha implementado una solución al problema, basada en la asimetría entre los lósofos, que permite resolver los
interbloqueos rompiendo la condición de exclusión mutua.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Falso

Reservados todos los derechos.


46 La solución basada en la clase LefthandedPhilo resuelve el problema de interbloqueos rompiendo la condición de espera
circular.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

47 Todas las versiones vistas en la práctica que solucionan los interbloqueos rompen alguna de las condiciones de Coffman.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820
Parte 14

Sobre la práctica 3 "Problema de las hormigas"....

48 La probabilidad de interbloqueo será mayor cuanto menor sea el tamaño del territorio y mayor sea el número de
hormigas.

Verdadero

No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

49 En la solución basada en una sola variable condición para todo el territorio, una hormiga que esté esperando a que una
celda quede libre será despertada cada vez que cualquier otra hormiga se mueva o salga del territorio.

Verdadero

Reservados todos los derechos.


Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

50 Los métodos lock() y unlock() del objeto de tipo ReentrantLock se utilizan en el territorio para proporcionar exclusión
mutua, sustituyendo así al lock implícito de Java proporcionado por la etiqueta synchronized de los métodos del
territorio.

Verdadero
Falso

Valor de la respuesta:0,2 puntos

Clave de respuesta:Verdadero

si lees esto me debes un besito


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-5688820

También podría gustarte