Вы находитесь на странице: 1из 6

E.T.S.

DE INGENIERA INFORMTICA (UNED)


P.P.: Segunda Semana Convocatoria: Junio 2014
Carreras: GRADO EN ING. EN ELECTRNICA Duracin: 2 horas
Material: Calculadora
INDUSTRIAL Y AUTOMTICA (Cdigo: 6802)
Asignatura: Sistemas en Tiempo Real
Tipo de Examen: B
(Cdigo: 6802306-)
ANTES DE COMENZAR A REALIZAR LA PRUEBA DEBE LEER LAS SIGUIENTES INSTRUCCIONES
1. Solamente debe entregar al tribunal una hoja de lectura ptica con sus datos personales, los datos
de la asignatura, el tipo de examen y sus respuestas.
2. Si detecta alguna anomala en el enunciado, tambin podr entregar al tribunal una hoja comentando
lo que considere oportuno. Estos comentarios sern de gran importancia ante posibles reclamaciones.
3. La prueba consta de un test de 20 preguntas. Para superar la prueba se deber obtener una puntuacin
mnima de 5 puntos. En cada pregunta del test se proponen cuatro respuestas de las cuales slo una es
correcta. nicamente puntuarn las preguntas contestadas. Si la respuesta es correcta la puntuacin
ser de 0.5 puntos y si es incorrecta restar 0.1 puntos.
4. Se permite el uso de calculadora NO CIENTIFICA.

1. Indique cul de las siguientes opciones se puede asociar al trmino Especificaciones


temporales de un sistema de tiempo real.
A) Concurrencia
B) Latencia/Plazo
C) Fiabilidad
D) Ninguna de las anteriores
Solucin B). Ver Figura 1.8 de la pgina 24
2. En la deteccin de errores del software existen varios tipos de errores que se pueden detectar por
parte de la propia aplicacin (software). Indicar cul de las siguientes opciones se corresponde
con acciones/comprobaciones (checks) de errores sobre la codificacin del programa (Coding
checks).
A) Calculo de un resumen (checksum) de algn valor especfico de la informacin gestionada
por la propia aplicacin.
B) Deteccin del fallo de ejecucin de una tarea.
C) Referencia nula a un valor (null pointer exception)
D) Ninguna de las anteriores
Solucin A). La B) se corresponde con timing checks que normalmente lleva a cabo e propio soporte
de la aplicacin o el sistema operativo. La C) son comprobaciones efectuadas por el entorno de
ejecucin. Ver pginas 42 y 43 del libro
3. Indicar cul de las siguientes opciones no se corresponde con una de las fases que se definen en
la redundancia de software dinmica.
A) Confinamiento del dao y gestin del dao (assesment).
B) Recuperacin del error.
C) Deteccin del dao.
D) Tratamiento del fallo y continuacin del servicio.

Solucin C). Ver pgina 41 del libro de texto. La opcin C) debera ser deteccin del error y no del
dao. Antes de conocer el dao, se debe saber cual es el error para analizar el dao que produce
ese error.

4. Indicar cul de las siguientes opciones se emplea como mecanismo para proporcionar la
caracterstica de ltimos deseos (last wishes) en Java.
A) Bloque try catch.
B) Bloque exception.
C) Bloque when others.
D) Bloque finally
Solucin D). Ver pgina 74 del libro de texto. A) y C) permiten capturar excepciones en Java y Ada
respectivamente, mientras que B) se emplea para reproducir esa caracterstica en Ada.

5. Suponga que se debe implementar un algoritmo en un modelo de proceso concurrente (varias


tareas/hebras que se ejecutan en paralelo) y cuya proporcin de cdigo es del 80%. Indicar cul
es el factor de ganancia obtenida con 4 procesadores respecto de la implementacin del mismo
algoritmo en un modelo mono-procesador (una sola tarea/hebra)
A) 4
B) 2.5
C) 1.5
D) Ninguna de las anteriores
Nota: Se debe aplicar la ley de Amdahl
Solucin B). Vase la pgina 96 del libro de texto (ley de Amdahl): ganancia = 1/ ( (1-P)+P/N ) con
P= 0.8 y N=4. Ganancia = 2.5 veces ms rpida en un sistema multiprocesador
6. Indicar cul de las siguientes opciones define la clase Java empleada para crear tareas en un
mquina Java.
A) La clase predefinida java.lang.SingleThread
B) La clase predefinida java.lang.RealTimeThread
C) La clase predefinida java.lang.Task
D) Ninguna de las anteriores
Solucin D). Las opciones A) y C) no existen en el ncleo del lenguaje Java, mientras que la opcin
B) si existe pero no pertenece al ncleo (java.lang).
7. Indicar cul de las siguientes opciones se puede emplear para definir el concepto de exclusin
mutua
A) Se define como el conjunto de sentencias que se ejecuta en una estructura if-else,
correspondientes al bloque if.
B) Se define como el mecanismo de sincronizacin requerido para proteger una seccin crtica.
C) Se define como la situacin en la cual un programa no se ejecuta porque otro no lo deja.
D) Ninguna de las anteriores
Solucin B). Vase la pgina 138 del libro de texto.
8. Indicar cul de las siguientes opciones se asocia a la definicin de un monitor.
A) Una regin crtica que se define como un procedimiento y se encapsula en un nico mdulo.
B) Es un elemento que permite visualizar el estado de variables en exclusin mutua.

C) Es el elemento fundamental de la tcnica de semforos.


D) Ninguna de las anteriores.
Solucin A)
9. Indicar cul de las siguientes funciones se emplea en POSIX para gestionar el envo/recepcin
de mensajes a una cola de mensajes:
A) Mq_open(queue_name,) y Mq_close(queue_name,).
B) Mq_getattr(queue_name,) y Mq_set_attr(queue_name,).
C) Mq_send(queue_name,) y Mq_receive(queue_name,).
D) Ninguna de las anteriores
Solucin C). Ver pgina 206 del libro de texto.
10.
Dada la siguiente estructura de llamadas en un modelo de sincronizacin de tareas mediante
paso de mensajes, indicar con qu tipo de semntica se corresponde.
P1
Send(message)
Wait(acknowlegement)
A)
B)
C)
D)

P2
Wait(message)
Send(acknowlegement)

Asncrona
Sncrona
Invocacin remota
Ninguna de las anteriores

Solucin A). Ver pgina 194 del libro. La existencia de un reconocimiento implica una semntica
asncrona, donde el reconocimiento se usa para verificar la entrega del mensaje.
11. Para implementar acciones atmicas en POSIX, se emplea un controlador de acciones atmicas
que emplea un monitor (mutex). Este controlador gestiona el protocolo de ejecucin de cada
procedimiento de accin de cada tarea. Dicho protocolo consta de varias fases (Role, Protocolo
Entrada, Ejecucin del procedimiento de accin, Protocolo de Salida, Salida). Indicar cul de las
siguientes llamadas a funciones del monitor se debe emplear al principio de la fase de Protocolo
de salida.
A)
B)
C)
D)

PTHREAD_COND_WAIT(mutex)
PTHREAD_UNLOCK(mutex)
PTHREAD_COND_SIGNAL(mutex)
PTHREAD_LOCK(mutex)

Solucin B). En la fase de protocolo de salida, despus de ejecutar el procedimiento de accin


se debe liberar el bloqueo del monitor para permitir que otras tareas puedan acceder. Ver pgina
234 del libro.
12. Indicar cul de las siguientes afirmaciones son ciertas.
I. El trmino transaccin atmica (atomic transaction) define una accin atmica que puede
ejecutarse de forma satisfactoria, o en caso de producirse un error, la accin no tiene efecto
sobre la propia tarea o los recursos asociados a la accin.

II. Una transaccin atmica es el mecanismo prioritario empleado en la programacin de


sistemas con tolerancia a fallos.
A) I es cierta, II es cierta.
B) I es cierta, II es falsa.
C) I es falsa, II es cierta.
D) I es falsa, II es falsa.
Solucin B). La afirmacin A) es verdadera (ver pgina 230 del libro de texto). Sin embargo, la
afirmacin II no lo es, ya que si falla la transaccin el programador no tiene capacidad de controlar el
supuesto fallo (se hace a nivel del mecanismo de recuperacin del propio sistema). Es decir, no se
proporciona un procedimiento de recuperacin flexible.
13. Indicar cul de las siguientes opciones define un recurso que debe asignarse en modo de
acceso exclusivo.
A) Fichero sobre el que se ve a aadir/escribir informacin.
B) Zona de memoria fsica que se va a consultar (leer) para comprobar el checksum de los
contenidos de dicha memoria y detectar errores.
C) Impresora a la que se va a mandar un trabajo de impresin.
D) Dos o ms son verdaderas, o todas son falsas.
Solucin D). Ver pgina 303 del libro de texto. Las opciones A) y C) implican una escritura especfica
en el recurso, por lo que se debe acceder en modo exclusivo para que no interfieran otras tareas en
la escritura del dispositivo. En el caso de la opcin B), al ser una zona de lectura se puede marcar
como de acceso compartido
14. En el contexto de restriccin de acceso a un recurso se puede usar dos aproximaciones
diferentes para la gestin de las peticiones de acceso. Indicar cul de las siguientes
aproximaciones se corresponde con la alternativa denominada Avoidance (anulacin).
A) Las peticiones son aceptadas todas y se ubican en una cola de peticiones.
B) Las peticiones no se aceptan a menos que se puedan cumplir.
C) Las peticiones son todas rechazadas.
D) Ninguna de las anteriores opciones es correcta
Solucin B). Vase pgina 288 del libro de texto.

15. Indicar cul de las siguientes afirmaciones es verdadera.


I. Un mbito temporal peridico debe tener un plazo de finalizacin (deadline) bien definido.
II. Un mbito temporal espordico debe tener un plazo de finalizacin (deadline) bien definido.
A) I es cierta, II es cierta.
B) I es cierta, II es falsa.
C) I es falsa, II es cierta.
D) I es falsa, II es falsa.
Solucin B). Ver pgina 329 del libro de texto. La afirmacin I es correcta, ya que al ser peridico el
TS (Temporal Scope, mbito temporal) es necesario que tenga un deadline al que atenerse y que
est por debajo del periodo asignado al TS. La afirmacin II es falsa, porque no es obligatorio
asignar un deadline a un proceso espordico.
16. Indicar cul de las siguientes afirmaciones son ciertas:
I. El tipo Duration en Ada es equivalente a un objeto de tipo AbsoluteTime en Real Time Java.
II. En Real Time Java, se puede obtener el nmero de nanosegundos desde el 1 de Enero de
1970 usando la llamada a la funcin esttica System.currentTimeNanos();
A) I es cierta, II es cierta.

B) I es cierta, II es falsa.
C) I es falsa, II es cierta.
D) I es falsa, II es falsa.
Solucin D). La afirmacin II es falsa, vase la pgina 313 del libro, ya que el tipo Duration de Ada
es equivalente al objeto RelativeTime y no al AbsoluteTime de Java. La afirmacin II es falsa, ya que
el mtodo no existe. Para obtener el nmero de nanosegundos se usa el mtodo esttico
System.nanoTime().

17. Indicar cul de las siguientes afirmaciones/opciones define el concepto de fluctuacin/latencia de


activacin (jitter).
A) Variacin del valor mximo del tiempo de respuesta asociado a una tarea
B) Valor mximo de la variacin en la activacin de un proceso
C) Valor mximo de la variacin en la ejecucin de un proceso aperidico.
D) Dos o ms son falsas, o todas son verdaderas.
Solucin B). Vase la pgina 390 del libro de texto.
18. Dado el conjunto de procesos P1, P2, P3 y P4 con los siguientes periodos (medidos en ms): 200,
134, 201 y 154. Indicar que prioridad se asigna al proceso P4 si se usa la asignacin de prioridad
de tasa monotnica (rate monotonic). Considerar que la prioridad ms alta est definida con el
valor menor asignado, es decir, el valor 1 (mayor prioridad, valor 1, menor prioridad, valor 4).
A) 4
B) 3
C) 2
D) 1
Solucin C). Si se ordenan los procesos por periodos, el conjunto de procesos queda ordenado as:
P2, P4, P1 y P3. En la asignacin de tasa monotnica, se hace la asignacin en prioridad por
periodo de activacin menor, por lo que se asigna a P2 la prioridad 1, a P4 la 2, a P1 la 3 y a P3 la
4.
19. En la siguiente tabla se muestra un conjunto de procesos peridicos y sus correspondientes
requisitos temporales, donde a es el periodo de activacin, b el plazo de ejecucin y c el tiempo
de cmputo. Indicar cul es el valor de utilizacin del procesador (U) en porcentaje asociado a la
tabla de procesos con periodos de activacin armnicos.

Proceso
P1
P2
P3
P4
A)
B)
C)
D)

0<=U<30
30<U<60
60<U<80
80<U<=100

a
4
10
10
5

b
4
10
10
5

c
1
2
1
1

Solucin D). En primer lugar hay que armonizar los periodos de activacin de los procesos, esto es,
buscar un valor de periodo mnimo de forma que el resto de periodos de los procesos sean mltiplos
de este valor mnimo. En este caso, se puede usar como valor 4 (periodo del proceso P1) y adaptar
el resto. De esta forma los periodos de los procesos P2 y P3 se pueden reducir a 8 y el de P4 a 4.
De esta forma, todos los periodos son armnicos. Los porcentajes de utilizacin de los procesos
seran: p1 = 0.25, p2 2/8 = 0.25, p3 1/8 = 0.125 y p4 = 0.25. La utilizacin global del
procesador en esta tabla de procesos sera 0.25x3 + 0.125 = 0.875, es decir, del 88%.
20. Indicar cul de las siguientes afirmaciones es cierta, con respecto a la gestin y acceso a la pila
(heap) de memoria usando Real Time Java
I. RTJ proporciona un objeto especfico para generar un rea de memoria compartida por todas
las tareas que se ejecutan, denominado ScopedMemory.
II. Cualquier tipo de objeto restringido (Heap objects, Inmortal Objects y Scope Objects) puede
acceder a todos los tipos de reas de memoria (ScopedMemory e InmortalMemory).
A) I es cierta, II es cierta.
B) I es cierta, II es falsa.
C) I es falsa, II es cierta.
D) I es falsa, II es falsa.
Solucin D). Ver pginas 524 y 525 del libro de texto. La afirmacin I es falsa, ya que
ScopedMemoy define un rea de memoria con un mbito local de uso dentro de una tarea (o
varias), pero no compartida para todas las tareas. Los Heap Objects no pueden acceder a las reas
de memoria de tipo Scope

Вам также может понравиться