t4 concurrencia Flashcards
- En un sistema en el que N procesos compiten por M recursos, uno de los
procesos necesita utilizar simultáneamente 2 recursos y el resto siempre los usa
de uno en uno. Todos los procesos usan los recursos durante un tiempo finito.
En esta situación:
(a) Puede producirse interbloqueo si la reserva de los 2 recursos no se realiza
en una operación indivisible.
(b) No se puede producir interbloqueo en ningún caso.
(c) Puede producirse interbloqueo si N>M.
(d) Tarde o temprano se llegará irremisiblemente a un interbloqueo.
(b) No se puede producir interbloqueo en ningún caso
- Sean tres procesos A, B y C y dos recursos compartidos R1 y R2. ¿Cual de las siguientes secuencias de acciones llevaría a un interbloqueo? Nota: “bloquea”significa que el proceso intenta bloquear el recurso y se queda parado
estaba bloqueado previamente. Cuando sea desbloqueado, entonces podrá continuar adelante con el recurso bloqueado.
(a) A bloquea R1, C bloquea R2, B bloquea R1, C bloquea R1.
(b) A bloquea R1, B bloquea R1, C bloquea R1
(c) A bloquea R1, B bloquea R2, C bloquea R2, A bloquea R2, B bloquea a R1
(d) Ninguna de las secuencias anteriores llevarían a un interbloqueo
(c) A bloquea R1, B bloquea R2, C bloquea R2, A bloquea R2, B bloquea a R1
Un programador escribe un programa que utiliza hilos Java en el que todos los accesos a una determinada estructura de datos compartida ha de hacerse dentro
de una región crítica de lectores/escritores. Por error, el programador olvida poner las llamadas para entrar y salir de la región crítica en una cierta parte del
programa que utiliza dicha estructura de datos. Cuando el programa se esté
ejecutando y se llegue a dicha parte del programa:
(a) Se generará una excepción de acceso concurrente, ya que no se ha
bloqueado previamente la estructura de datos.
(b) Se producirá una excepción de acceso concurrente, pero sólo si algún otro
hilo tiene bloqueada la estructura de datos como escritor en ese momento.
(c) Se producirá una excepción de acceso concurrente, pero sólo si algún otro
hilo tiene bloqueada la estructura de datos, bien como lector o bien como
escritor en ese momento.
(d) Ninguna de las respuestas anteriores es cierta.
D
Ninguna de las respuestas anteriores es cierta.
10.Si una solución al problema de la sección critica cumple la propiedad de espera
limitada:
(a) Cumplirá también la propiedad de progresión, ya que al garantizarse que
la espera es limitada, el proceso permanecerá en la sección critica un
tiempo finito.
(b) Cumplirá tanto la de progresión como la propiedad de exclusión muta.
(c) Indica que la decisión sobre el proceso que entra se toma en un tiempo
finito.
(d) Ninguna de las anteriores es cierta.
D Ninguna de las anteriores es cierta.
Cuando un proceso ejecuta un c.wait sobre una variable de condicion asociada a un cerrojo:
(a)
Si anteriormente otro proceso había ejecutado un c_signal sobre
ella, este proceso podrá continuar normalmente, consumiendo C_signal anterior.
(b)
Podría pasar al estado bloqueado.
(c)
Se decrementará el valor del contador asociado a la variable
condición, pasando el proceso a un estado bloqueado y sacando
otro proceso de la cola de procesos asociada a la variable
condición.
(d) Las afirmaciones son absurdas puesto que
se refieren
semáforos.
(b) Podría pasar al estado bloqueado.
- Si una solución al problema de la sección crítica cumple la propiedad de espera
limitada:
(a) Cumplirá también la propiedad de progresión, ya que al garantizarse que la
espera es limitada, el proceso permanecerá en la sección critica un tiempo
finito.
(b) Cumplirá tanto la de progresión como la propiedad de exclusión muta.
(c) Indica que la decisión sobre el proceso que entra se toma en un tiempo
finito.
(d) Ninguna de las anteriores es cierta
Si una solución al problema de la sección crítica cumple la propiedad de espera
limitada:
(d) Ninguna de las anteriores es cierta
10.¿Qué condición de interbloqueo se deja de cumplir al obligar a los procesos a
solicitar los recursos en un orden jerárquico preestablecido?
(a) Espera Circular.
(b) Los recursos sólo los libera quien los tiene.
(c) Posesión y espera (asignación parcial ó hold and Wait)
(d) Exclusión mutua en el uso de los recursos.
¿Qué condición de interbloqueo se deja de cumplir al obligar a los procesos a
solicitar los recursos en un orden jerárquico preestablecido?
(a) Espera Circular.
- En un sistema en el que N procesos compiten por M recursos, uno de los procesos necesita utilizar simultáneamente 2 recursos y el resto siempre los usa de uno en uno. Todos los procesos usan los recursos durante un tiempo finito. En esta situación:
(a) Puede producirse interbloqueo si la reserva de los 2 recursos no se realiza en
una operación indivisible.
(b) No se puede producir interbloqueo en ningún caso.
(c) Puede producirse interbloqueo si N>M.
(d) Tarde o temprano se llegará irremisiblemente a un interbloqueo.
(b) No se puede producir interbloqueo en ningún caso.
- En un sistema monoprocesador, indicar qué mecanismo de exclusión mutua es
MENOS eficiente en cuanto al uso de CPU:
(a) Mutex.
(b) Espera activa hasta que cambie el valor de una variable.
(c) Semáforos.
(d) Todos los mecanismos anteriores son igual de ineficientes. La exclusión
mutua no permite la concurrencia, con lo que la eficiencia se minimiza en
todos los casos.
(b) Espera activa hasta que cambie el valor de una variable.
Un programador escribe un programa Java que utiliza hilos en el que todos los
accesos a una determinada estructura de datos compartida han de hacerse dentro de una región critica de lectores/escritores. Por error, el programador olvida poner la
invocación a los métodos necesarios para entrar y salir de la región critica en una
cierta parte del programa que utiliza dicha estructura de datos. Cuando el programa
se esté ejecutando y se llegue a dicha parte del programa:
(a) El sistema operativo producirá una excepción, ya que no se ha bloqueado
previamente la estructura de datos.
(b) El sistema operativo producirá una excepción sólo si algún otro hilo tiene
bloqueada la estructura de datos como escritor en ese momento.
(c) El sistema operativo producirá una excepción sólo si algún otro hilo tiene
bloqueada la estructura de datos, bien como lector o bien como escritor en
ese momento.
(d) Ninguna de las respuestas anteriores es cierta.
(d) Ninguna de las respuestas anteriores es cierta.
La región crítica condicional es una herramienta de sincronización entre procesos
que..
(a) Está disponible en cualquier lenguaje de programación concurrente.
(b) Permite a un proceso salir de la región crítica temporalmente hasta que se
cumpla una determinada condición.
(c) Permite implementar exclusión mutua condicional (que algunas veces se
haga y otras no).
(d) Tiende a favorecer a los procesos que no evalúan la condición.
(b) Permite a un proceso salir de la región crítica temporalmente hasta que se
cumpla una determinada condición.
- Una sección crítica es:
(a) Una zona de memoria donde hay almacenadas variables compartidas.
(b) Una secuencia de instrucciones.
(c) Una herramienta de comunicación entre procesos.
(d) Una variable que permite sincronizar un proceso.
(b) Una secuencia de instrucciones.
Cual de las siguientes afirmaciones es correcta?
(a) La operación signal sobre un semáforo duerme al proceso/hilo llamante.
(b) Si se ejecutan consecutivamente dos operaciones signal sobre un semáfor
cuyo contador asociado tiene un valor inicial de 2, el valor final de dich
contador podria ser 3 o 4, dependiendo de cómo se produzcan los cambio
de contexto durante la modifiención del contador.
(c) Los semáforos son herramientas cuya única funcionalidad es resolver el
problema de la exclusión mutua y, por ello, el contador asociado al
semáforo siempre tiene inicialmente el valor 1.
(d) Una operación signal sobre un semáforo puede despertar a un proceso/hilo
que previamente haya quedado bloqueado en dicho semáforo, y esta
operación es atómica.
(d) Una operación signal sobre un semáforo puede despertar a un proceso/hilo
que previamente haya quedado bloqueado en dicho semáforo, y esta
operación es atómica.
Un hilo ejecuta una operación wait sobre un semáforo, y se queda bloqueado. ¿Qué
conclusión podemos sacar con respecto al contador del semáforo?
(a) El contador del semáforo tenía valor O cuando ejecutó la operación.
(b) El contador del semáforo tenia valor 1 cuando ejecutó la operación.
(c) El contador del semáforo tenia un valor distinto de O cuando ejecutó la
operación.
(d) No podemos concluir nada, ya que dependerá de cuál fue la operación que se
ejecutó justo antes: signal o wait.
(a) El contador del semáforo tenía valor O cuando ejecutó la operación.
Cuando dos secciones críticas no deben ejecutarse concurrentemente:
(a) Es suficiente con un cerrojo para garantizar que no se produzcan problemas de concurrencia entre ellas.
(b) Hacen falta dos cerrojos, uno para cada sección crítica, para
produzcan problemas de concurrencia entre ellas.
(c) Será necesario rediseñar el algoritmo para que sólo haya un
crítica y no dos.
(d) Todas las demás respuestas son falsas.
(a) Es suficiente con un cerrojo para garantizar que no se produzcan problemas de concurrencia entre ellas.
- La llamada al sistema mmap de Unix:
(a) Se puede utilizar para compartir datos en memoria entre varios procesos.
(b) Se puede utilizar para incrementar el tamaño del área de intercambio (swap) del
sistema.
(c) Se puede utilizar para asignar más marcos de página a un proceso.
(d) Todas las respuestas anteriores son falsas.
(a) Se puede utilizar para compartir datos en memoria entre varios procesos.
Supongamos que para resolver cierto problema de concurrencia en java empleamos un monitor
(a) Una operación notify provocará el desbloqueo de otro hilo que haya realizado
operación wait del monitor y ambos continuarán su ejecución dentro del monitor.
(b) Una operación notify despierta a un hilo bloqueado por haber realizado una operac
wait y provoca el bloqueo del hilo que realiza el notify.
(c) Una operación wait provocará que el hilo que la realice se bloquee y libere el monitor.
(d) Todas las respuestas anteriores son falsas.
c) Una operación wait provocará que el hilo que la realice se bloquee y libere el monitor.
- Dos hilos tienen dos secciones críticas independientes A y B. Entonces:
(a) Un hilo puede estar dentro de A a la vez que el otro está dentro de B.
(b) Si un hilo está dentro de A, el otro no puede estar dentro de B.
(c) Un hilo puede estar dentro de A a la vez que el otro está dentro de B sólo si se utilizan
semáforos binarios.
(d) Un hilo puede estar dentro de A a la vez que el otro está dentro de B sólo si se establece
comunicación entre los dos hilos.
(a) Un hilo puede estar dentro de A a la vez que el otro está dentro de B.
- Sean N hilos que comparten un semáforo binario. Entonces el número máximo de hilos que
pueden estar bloqueados en dicho semáforo es:
(a) 1.
(6) 2.
(c) N-1.
(d) N.
(d) N.
- Con respecto a las operaciones de los semáforos P/wait/acquire o V/signal/release:
(a) Son atómicas en todos los sistemas operativos.
(b) En unos sistemas operativos son atómicas y en otros no.
(c) Las aplicaciones que las usen deben encargarse de que sean atómicas.
(d) No, nunca son atómicas.
(a) Son atómicas en todos los sistemas operativos.