Question 1
Question
Seleccione la afirmación correcta sobre el paradigma de sistema de mensajes o
middleware orientado a mensajes.
Answer
-
En este paradigma cada emisor tiene su propia cola de mensajes, y es el
sistema intermedio el encargado de ir buscando en dichas colas para
extraer la información del emisor
-
Este esquema tiene como problema que el envío y la recepción de los
mensajes estén fuertemente acoplados
-
Existe un buzón que sirve de intermediario entre cada emisor y receptor
particulares, y el receptor puede bloquearse al intentar recibir algo de un
buzón concreto si el emisor que conoce dicho buzón no envía nada
-
En este paradigma cada receptor tiene una cola de mensajes, y el
sistema intermediario es el encargado de recibir el mensaje en el emisor y
colocarlo en la cola adecuada
Question 2
Question
Responda verdadero o falso a las siguientes afirmaciones breves sobre sockets Java:
En los sockets de tipo stream hay dos operaciones bloqueantes, accept y la lectura de un flujo de entrada.
Question 3
Question
Responda verdadero o falso a las siguientes afirmaciones breves sobre sockets Java:
Si un proceso A manda sucesivamente 3 mensajes al proceso B
usando un socket de tipo datagrama sin conexión, existen 3! (es
decir, 6) posibles órdenes de llegada para los mensajes
Question 4
Question
Responda verdadero o falso a las siguientes afirmaciones breves sobre sockets Java:
Si el tamaño máximo asignado a un datagramPacket en el lado
receptor es menor que la longitud del vector de octetos que se desea
recibir, se produce un error y no se transmite nada
Question 5
Question
Responda verdadero o falso a las siguientes afirmaciones breves sobre sockets Java:
Un proceso A requiere de n sockets datagrama sin conexión para
comunicarse con n procesos remotos
Question 6
Question
Un Localizador de Recursos Uniforme (URL) es...
Answer
-
Una forma no persistente de identificar un objeto de forma única dentro
de un espacio de nombres
-
Un esquema de nombrado con una dirección única y universal para
llevar a cabo todo tipo de comunicaciones remotas
-
Una forma de indentificar recursos de forma persistente e independiente
de su localización
-
Un esquema de nombrado que surge como alternativa a los
Identificadores Uniformes de Recursos (URI)
Question 7
Question
En Java, el API de sockets de tipo datagrama proporciona una clase denominada
DatagramSocket. Seleccione la afirmación correcta sobre esta clase.
Answer
-
Es una clase que permite que un proceso se comunique con otro
empleando el protocolo UDP o TCP, dependiendo de si se hace uso o no
del método connect
-
Es una clase que sirve que permite enviar y recibir DatagramPackets de
manera asíncrona, gracias a que emplea el protocolo UDP
-
Es una clase que permite establecer una comunicación orientada o no
orientada a conexión entre procesos, empleando siempre UDP como
protocolo de transporte
-
Es una clase que sirve para implementar un socket enlazado a un puerto
entre 0 y 65.535 en la máquina local, y que conlleva una comunicación no
orientada a conexión entre los procesos que se comuniquen
Question 8
Question
Escoja la respuesta correcta acerca de los threads y de los procesos padre e hijos
Answer
-
Crear un proceso hijo implica menos sobrecarga que crear un thread
-
Los procesos hijos tienen un mínimo de información de estado, y
carecen de valores propios de variables
-
Un proceso padre puede saber cuándo un proceso hijo ha finalizado
-
Un hilo de ejecución sólo puede crear un nuevo hilo de ejecución
Question 9
Question
Un sistema ofrece comunicaciones orientadas y no orientadas a conexión:
La comunicación orientada a conexión supone 40 segundos de establecimiento,
tras los cuales un paquete de hasta 10 caracteres se envía en 2 segundos en
ambos sentidos.
La comunicación no orientada a conexión permite enviar paquetes de hasta 10
caracteres en 2,4 segundos
Supongamos dos procesos A y B. A inicia la comunicación enviando 100 caracteres a
B, y B responde enviando 60 caracteres a A.
Answer
-
Para la comunicación indicada es más rápido escoger una conexión
orientada a conexión
-
La comunicación no orientada a conexión tarda más de 40 segundos en
realizar las transferencias
-
Si A tuviera que enviar a B 500 caracteres y B respondiera con otros 500,
la comunicación tardaría el mismo tiempo siendo orientada o no orientada a
conexión
-
La comunicación orientada a conexión tarda más del doble de tiempo de
lo que tarda la no orientada a conexión
Question 10
Question
En una comunicación que hace uso de sockets de tipo stream, seleccione la
afirmación correcta sobre cómo el servidor sabe direccionar respuestas a sus clientes.
Answer
-
El servidor escribe la dirección del cliente en el datagrama que se va a
enviar
-
En el esquema de streams el servidor acepta peticiones y recibe datos
de los clientes, pero la API no ofrece mecanismos para que la comunicación
sea bidireccional
-
Cuando el servidor acepta la conexión con el cliente, se le devuelve un
socket que ya está enlazado con dicho cliente, y cuanto escriba en él se
enviará correctamente al otro extremo
-
El servidor debe saber de antemano (p.ej. a través de información
introducida por un usuario en linea de comandos) en qué dirección y que
puerto está corriendo el socket de datos del cliente
Question 11
Question
Escoja la frase correcta sobre los mecanismos que emplean envíos síncronos y
recepciones asíncronas.
Answer
-
El emisor debería cerciorarse de que los datos se han recibido en la
llamada recibir, y de no ser así, repetir el proceso mediante un bucle
-
Este escenario no puede bajo ningún concepto provocar el bloqueo
indefinido de ninguno de los procesos implicados
-
En este mecanismo es necesario utilizar asentimientos transparentes del
receptor al emisor
-
Este tipo de mecanismos puede llevar a un bloqueo indefinido del
receptor si la operación recibir se ejecuta con antelación al envío de la
información
Question 12
Question
Dada la siguiente imagen, correspondiente al diagrama de transición de estados de un
proceso:
Answer
-
encolado
-
listo
-
planificado
-
ejecutando
-
esperando por un evento
-
bloqueado
-
ocurrencia de evento
-
fin
-
encolado
-
listo
-
planificado
-
ejecutando
-
esperando por un evento
-
bloqueado
-
ocurrencia de evento
-
fin
-
listo
-
encolado
-
planificado
-
ejecutando
-
fin
-
esperando por un evento
-
bloqueado
-
ocurrencia de evento
-
Encolado
-
Esperando por un evento
-
Planificado
-
Ejecutando
-
Listo
-
Bloqueado
-
Ocurrencia de un evento
-
Fin
-
Fin
-
Encolado
-
Ejecutando
-
Esperando por un evento
-
Bloqueado
-
Planificado
-
Listo
-
Ocurrencia de un evento
-
Ejecutando
-
Ocurrencia de un evento
-
Planificado
-
Fin
-
Listo
-
Bloqueado
-
Encolado
-
Esperando por un evento
-
Ocurrencia de un evento
-
Encolado
-
Listo
-
Esperando por un evento
-
Ejecutando
-
Bloqueado
-
Fin
-
Planificado
-
Encolado
-
Esperando por un evento
-
Listo
-
Bloqueado
-
Ejecutando
-
Ocurrencia de un evento
-
Planificado
-
Fin
Question 13
Question
Seleccione la afirmación correcta sobre el Lenguaje Extensible de Marcado (XML)
Answer
-
XML, al igual que ASN.1, no permite que el usuario utilice etiquetas
configurables por él mismo
-
XML se utiliza para indicar la sintaxis y aspecto visual de una página
web, mientras que el contenido se representa en HTML
-
XML es un lenguaje de descripción de datos entre aplicaciones que
comparten información, y tiene etiquetas jerarquizadas en forma de árbol
-
Es el estándar de codificación de datos de más bajo nivel posible, y sólo
permite un conjunto de tipos de datos determinado
Question 14
Question
Seleccione la afirmación correcta sobre la invocación de métodos remotos
Answer
-
En este modelo existe siempre un middleware que permite encontrar y
migrar objetos entre procesos
-
En este modelo un proceso puede invocar un método de un objeto
remoto que se ubica en un proceso independiente del primero
-
Este modelo se basa en la serialización de objetos, que posteriormente
son transferidos de un proceso a otro para que ambos puedan ejecutar en
local los métodos que contiene
-
Es un mecanismo multicast ideal para la multidifusión de mensajes en
una red
Question 15
Question
La siguiente imagen ilustra la estructura de datos empleada en los programas de
procesos que se comunican con sockets de tipo datagrama.
Answer
-
Datagram Socket
-
Datagram Packet
-
Dirección del receptor
-
Vector de octetos
-
Vector de octetos
-
Datagram Socket
-
Datagram Packet
-
Dirección del receptor
-
Dirección del receptor
-
Vector de octetos
-
Datagram Socket
-
Datagram Packet
-
Datagram Packet
-
Datagram Socket
-
Dirección del receptor
-
Vector de octetos
Question 16
Question
Cuando dos procesos ejecutan en computadores diferentes, es posible que se
produzcan errores por la forma de representar dichos datos, si no se realiza una
conversión de formatos (data marshalling). Seleccione la afirmación correcta.
Answer
-
Al transmitir una estructura de datos, como un objeto, será necesario
serializarlo en el extremo del emisor y revertir la operación en el otro
extremo, y esta serialización es parte del data marshalling
-
Los problemas de formato afectan únicamente a las arquitecturas de los
computadores, y si estos son littleendian
o bigendian
-
Las arquitecturas de las máquinas que albergan los extremos de la
comunicación deben coincidir en su arquitectura
-
La conversión de datos afecta exclusivamente a las distintas
representaciones de caracteres (ASCII, ASN.1, etc.)
Question 17
Question
Seleccione la afirmación correcta sobre el paradigma cliente-servidor
Answer
-
En el servidor existe siempre un único proceso llamado "servidor" que
redirecciona las peticiones a los distintos servicios disponibles
-
En este modelo todos los procesos implicados desempeñan los
siguientes roles
-
Es muy eficiente para facilitar servicios de red
-
Este paradigma se implementa exclusivamente con paso de mensajes, y
no permite implementaciones como RMI
Question 18
Question
Una causa muy común de sufrir bloqueos indefinidos en un proceso que lleva a cabo
parte de una computación distribuida son los interbloqueos. Seleccione la afirmación
correcta sobre ellos.
Answer
-
Los propios mecanismos de comunicación entre procesos son los
encargados de evitar interbloqueos
-
Las operaciones de envío nunca pueden provocar interbloqueos
-
La causa más común de crear interbloqueos es que dos procesos A y B
realicen operaciones de recepción asíncrona el uno del otro al mismo
tiempo
-
El uso de temporizadores y de hilos de ejecución son dos medidas para
solucionar el problema de los interbloqueos
Question 19
Question
Seleccione la afirmación correcta sobre el modelo de llamadas a procedimientos
remotos.
Answer
-
Este modelo nunca se ha explotado realmente en Internet por su escasa
aplicación al ámbito web
-
En este modelo, un proceso A ejecutará un procedimiento remoto de B y
B deberá a su vez ejecutar un procedimiento remoto de A para devolverle el
valor solicitado
-
Este modelo implica una orientación a objetos del programa distribuido
-
Este modelo permite implementar un programa distribuido como si se
tratase de una aplicación procedimental que ejecuta en un único
procesador
Question 20
Question
Seleccione la afirmación correcta sobre sockets en Java.
Answer
-
Con los sockets sin conexión, un mismo socket enlazado a un proceso
puede utilizarse para mandar datagramas a diferentes destinos
-
En los sockets, ya sean de tipo datagrama o stream, las operaciones de
envío y de recepción son ambas bloqueantes
-
La clase DatagramPacket se utiliza cuando se implementa un protocolo
de comunicaciones basadas en TCP
-
En los sockets sin conexión no es posible que múltiples procesos
manden simultáneamente datagramas a un mismo socket enlazado a un
proceso receptor
Question 21
Question
El direccionamiento se especifica en cada operación [blank_start]sin conexion[blank_end]
Existe sobrecarga de establecimiento de la conexión [blank_start]orientado a conexion[blank_end]
Existe sobrecarga de direccionamiento en cada operación [blank_start]sin conexion[blank_end]
Se debe añadir numeración a cada paquete para mantener el orden [blank_start]sin conexion[blank_end]
Ideal para comunicaciones con pocos datos y un número pequeño de intercambios [blank_start]sin conexion[blank_end]
Comunicación usada por el protocolo TCP [blank_start]orientado a conexion[blank_end]
Answer
-
sin conexion
-
orientado a conexion
-
orientado a conexion
-
sin conexion
-
sin conexion
-
orientado a conexion
-
sin conexion
-
orientado a conexion
-
sin conexion
-
orientado a conexion
-
orientado a conexion
-
sin conexion
Question 22
Question
El modelo de mensajes de tipo publicación/suscripción es un tipo específico de
sistema de mensajes o middleware de mensajes. Seleccione la afirmación correcta
sobre dicho modelo.
Answer
-
Proporciona un mecanismo unicast de comunicación entre procesos
-
El envío y la recepción en este modelo están fuertemente acoplados y
tienen como desventaja la propensión a interbloqueos
-
El modelo requiere que un proceso se subscriba a los mensajes de un
publicador, recibiendo todo lo publicado por éste
-
En este modelo cada mensaje se asocia a un determinado tema o
evento
Question 23
Question
Supongamos un sistema de comunicaciones mediante mensajes en buzones. Un
proceso puede comunicarse con otro usando un buzón compartido. Las operaciones
enviar y recibir se definen como:
enviar (n, mensaje): envía un mensaje al buzón n, y es bloqueante, dejando al
emisor suspendido hasta que llegue una respuesta al buzón
recibir (n, mensaje): examina el buzón n, y es bloqueante, dejando al receptor
suspendido hasta que llegue un mensaje al citado buzón
Supongamos que un proceso P ofrece un servicio a un cliente A y un cliente B, y está
conectado a cada uno de ellos con dos buzones independientes. Además la
implementación no permite la utilización de hilos, temporizadores ni funcionalidades del
Sistema Operativo.
Seleccione la secuencia correcta de operaciones para evitar que el proceso P se
bloquee indefinidamente.
Answer
-
P debe invocar un recibir de B y posteriormente un recibir de A
-
P debe enviar mensajes, primero a A y luego a B, a través del buzón
-
P debe invocar un recibir de A y posteriormente un recibir de B
-
Sin saber qué mensaje llegará primero, no existe secuencia que nos
evite el bloqueo indefinido
Question 24
Question
Para cada una de las siguientes actividades, determine si es un ejemplo de computación distribuida:
Utilizar un procesador de textos en un computador aislado [blank_start]NO[blank_end]
Navegar por Internet [blank_start]SI[blank_end]
Usar un cliente de mensajería instantánea [blank_start]SI[blank_end]
Compilar y probar un programa Java en una máquina sin conexión a Internet [blank_start]NO[blank_end]
Acceder al sitio web de una red social desde el teléfono móvil [blank_start]SI[blank_end]
Crear una página HTML en un editor para un portal Web [blank_start]NO[blank_end]
Answer
-
NO
-
SI
-
SI
-
NO
-
SI
-
NO
-
NO
-
SI
-
SI
-
NO
-
NO
-
SI
Question 25
Question
Seleccione la afirmación correcta sobre el paradigma de agentes móviles
Answer
-
La implementación más exitosa de este paradigma es la arquitectura
CORBA de OMG
-
En este modelo los datos no se transfieren de forma independiente, sino
que son transportados por un objeto que se transfiere entre participantes
-
En este paradigma existe un espacio de objetos común a varios
procesos y los solicitantes que se suscriben a dicho espacio, llamados
agentes, pueden acceder a dichos objetos
-
Este paradigma ofrece la abstracción de un objeto transportable que
reside en un middleware llamado Agent Broker
Question 26
Question
Seleccione la afirmación correcta sobre el paradigma basado en Object Request Broker
(ORB)
Answer
-
Uno de las principales implementaciones de este paradigma es el
framework RMI de Java
-
En este mecanismo es necesario utilizar asentimientos transparentes del
receptor al emisor
-
En él, existe un middleware que permite la interacción con objetos que
usan distintas APIs y/o ejecutan en la misma plataforma
-
En este paradigma cada emisor tiene su propia cola de mensajes, y es el
sistema intermedio el encargado de ir buscando en dichas colas para
extraer la información del emisor
Question 27
Question
Seleccione la afirmación correcta sobre los sockets Java de tipo stream.
Answer
-
Cuando un servidor ejecuta en su socket de datos la operación accept,
ese mismo socket se enlaza al cliente y sirve para transmitir datos
-
La petición de conexión en este tipo de comunicaciones es bloqueante,
aunque el intercambio de datos puede hacerse antes de que el otro
extremo acepte la conexión
-
La comunicación por streams se puede basar tanto en TCP como en
UDP, y es el programador el que lo decide al invocar al constructor de la
clase con unos argumentos u otros
-
El cliente, o solicitante de la conexión, realiza una petición connect
implícita en el constructor del Socket
Question 28
Question
Supongamos tres procesos, P1, P2 y P3, que siguen la siguiente secuencia:
En el instante t1 P3 invoca un recibir de P2
En el instante t2 P1 envía el mensaje m1 hacia P2
En el instante t3 P2 invoca un recibir para P1
En el instante t4 P2 recibe el mensaje m1
En el instante t5 P2 envía el mensaje m1 hacia P3
En el instante t6 P3 recibe el mensaje m1 y P1 invoca un recibir para P2
En el instante t7 P2 invoca un recibir para P3
En el instante t8 P3 envía el mensaje m2 a P2
En el instante t9 P2 recibe el mensaje m2
En el instante t10 P2 envía el mensaje m2 a P1
En el instante t11 P1 recibe el mensaje m2
En este escenario, un programador ha dibujado el siguiente diagrama de eventos
Seleccione la afirmación correcta sobre el escenario.
Seleccione una:
Answer
-
El diagrama de secuencia mostrado se corresponde con un sistema de
comunicaciones donde las operaciones de enviar y de recibir de los tres
procesos son bloqueantes
-
El diagrama de secuencia mostrado se corresponde con un sistema de
Pregunta 6
Correcta
Puntúa 1,00 sobre
1,00
comunicaciones donde las operaciones de enviar y de recibir de los tres
procesos son no bloqueantes
-
El diagrama de secuencia mostrado se corresponde con un sistema de
comunicaciones donde las operaciones de enviar de los tres procesos son
no bloqueantes y las operaciones de recibir de los tres procesos son
bloqueantes
-
Ninguna de las tres respuestas anteriores es correcta
Question 29
Question
Seleccione la afirmación correcta sobre el paradigma de servicios de red
Answer
-
Su principal problema es que no ofrece transparencia de localización,
dado que se tiene que saber dónde está el servicio deseado
-
Es un paradigma que surge de la extensión del paradigma de invocación
de métodos remotos
-
Un proceso que desee un servicio particular contacta con el servidor de
directorio y es éste el que media en la comunicación, transfiriendo él las
solicitudes al servicio
-
Es un paradigma que se puede implementar o bien con groupware
basado en mensajes o bien con una pizarra compartida
Question 30
Question
Supongamos dos procesos, A y B, en el que la invocación de la operación recibir que
ejecuta A le causa la suspensión hasta que recibe los datos de B. Por otra parte, el
proceso B comienza a enviar datos al proceso A y se suspende hasta que recibe un
asentimiento transparente de A en el que indica que ha terminado de recibir los datos.
Answer
-
a. ... de tipo enviar asíncrono y recibir asíncrono, y es aconsejable cuando
la lógica de la aplicación de ambos procesos necesita que los datos
enviados se reciban antes de continuar ejecutando
-
b. ... de tipo enviar síncrono y recibir síncrono, y es aconsejable cuando la
lógica de la aplicación de ambos procesos necesita que los datos enviados
se reciban antes de continuar ejecutando
-
c. ... de tipo enviar síncrono y recibir síncrono, y no se requiere un
mecanismo de almacenamiento en el sistema operativo para que funcione
la comunicación
-
d. ... de tipo enviar síncrono y recibir asíncrono, y el comportamiento
depende mucho de cómo se implemente el mecanismo de comunicación
Question 31
Question
En los sockets de tipo stream es muy habitual que aparezca una arquitectura basada
en clienteservidor,
con dos procesos independientes que juegan roles diferenciados. A
continuación, ordene de manera adecuada los pasos que debe seguir el cliente en su
flujo de ejecución, teniendo en cuenta que dicho cliente debe primero escribir algo al
servidor cuando éste acepte la conexión, después leer algo procedente del servidor y
posteriormente cerrar la comunicación.
Nota: considérese que tras obtener un determinado flujo, el proceso actúa en él antes
de obtener un flujo distinto.
[blank_start]1[blank_end]
[blank_start]2[blank_end]
[blank_start]3[blank_end]
[blank_start]4[blank_end]
[blank_start]5[blank_end]
[blank_start]6[blank_end]
Answer
-
Crea un socket de datos y pide una conex
-
Obtiene un flujo de salida para escribir
-
Escribe en el flujo
-
Obtiene un flujo de entrada para leer de
-
Lee del flujo
-
Cierra el socket
Question 32
Question
Seleccione la afirmación correcta sobre la resolución de nombres DNS
Answer
-
La jerarquía de nombres de dominio no puede tener más de 3 niveles
-
El servicio DNS sirve para traducir nombres simbólicos en direcciones IP
binarias, pero no al revés
-
Cada nombre de dominio tiene al menos tres componentes separados
por puntos, el primer nivel, el segundo y el protocolo de la capa de
aplicación que se utiliza
-
El ultimo componente del nombre simbólico es el dominio de primer
nivel, he indica el país o tipo de entidad al que se accede
Question 33
Question
Seleccione la afirmación correcta sobre el mecanismo synchronized
Answer
-
Es un mecanismo que se utiliza para sincronizar exclusivamente
procesos hijos con sus padres, evitando entre ellos condiciones de carrera,
y no sirve para sincronizar threads
-
Es una palabra reservada que se incluye en la cabecera de métodos
para indicar que solo un hilo de ejecución lo ejecute cada vez
-
Se trata de un método que sólo puede ser ejecutado por un proceso a la
vez
-
Es una palabra que se escribe antes y después de un bloque de codigo
binario y sirve para indicar que lo escrito entre ambas etiquetas solo es
ejecutado por un hilo a la vez
Question 34
Question
En los sockets de tipo stream es muy habitual que aparezca una arquitectura basada
en clienteservidor,
con dos procesos independientes que juegan roles diferenciados. A
continuación, ordene de manera adecuada los pasos que debe seguir el servidor en su
flujo de ejecución, teniendo en cuenta que dicho servidor debe primero leer del cliente
tras aceptar la conexión, después escribir algo a dicho cliente y posteriormente cerrar
la comunicación.
Nota: considérese que tras obtener un determinado flujo, el proceso actúa en él antes
de obtener un flujo distinto.
[blank_start]1[blank_end]
[blank_start]2[blank_end]
[blank_start]3[blank_end]
[blank_start]4[blank_end]
[blank_start]5[blank_end]
[blank_start]6[blank_end]
[blank_start]7[blank_end]
[blank_start]8[blank_end]
[blank_start]9[blank_end]
Answer
-
Crea un socket de conexión y espera en e
-
Acepta una conexión
-
Crea socket de datos para leer/escribir
-
Obtiene flujo de entrada para leer de so
-
Lee del flujo
-
Obtiene flujo de salida para escribir en
-
Escribe en el flujo
-
Cierra el socket de datos
-
Cierra el socket de conexión
Question 35
Question
Seleccione la afirmación correcta sobre el método setSoTimeout propio de la API de
sockets de Java
Answer
-
Es un mecanismo utilizado únicamente en sockets orientados a conexión
de tipo datagrama
-
Es un método que de usarse, debería de ir acompañado de código para
manejar la excepción Java que puede acarrear
-
Sirve para establecer el plazo máximo de tiempo que un proceso puede
quedar a la espera en la petición de conexión a un servidor
-
Permite llevar a cabo las operaciones bloqueantes de envío con la
tranquilidad de que el proceso no se va a bloquear indefinidamente
Question 36
Question
Seleccione la afirmación correcta sobre el paradigma de paso de mensajes.
Answer
-
Es uno de los paradigmas de mayor nivel de abstracción
-
El grado de abstracción de este modelo permite que los procesos se
intercomuniquen de forma similar a como realizan la Entrada/Salida de
ficheros
-
Nunca se utiliza para comunicaciones orientadas a conexión
-
Con él, el programador desarrolla aplicaciones muy rápidamente, pero
no conoce los detalles más concretos de la implementación
Question 37
Question
¿Qué sucede cuando la información que se desea compartir entre dos procesos
independientes que se ejecutan en computadoras remotas contiene objetos?
Answer
-
Los objetos son enviados en forma de Applet entre cliente y servidor
-
Dichos objetos deben ser serializados, lo que implica su codificación y la
de los objetos alcanzables desde ellos
-
Los objetos migran a través de un agente compartido que se ocupa de la
exportación y de la migración
-
Los objetos Java no soportan la serialización, por lo que no se
transmiten objetos directamente
Question 38
Question
Supongamos que un computador cualquiera tiene una probabilidad de fallar igual a p,
siendo p < 1, y que se tiene un conjunto de n computadores de este tipo que se
interconectan formando un sistema distribuido. Si el sistema requiere que todos los
computadores funcionen para ofrecer un determinado servicio, ¿cuál es la probabilidad
P de que el servicio falle?
Answer
-
p * n
-
(1 - p) pot n
-
1-(1-p)pot n
-
p pot n
Question 39
Question
Seleccione la afirmación correcta sobre el paradigma de comunicaciones de igual a
igual, o peertopeer
Answer
-
Es el mecanismo empleado por HTTP, FTP y DNS
-
No puede ser utilizado para la transferencia compartida de ficheros
-
Es el más apropiado para la mensajería instantánea y la vídeoconferencia
-
Implica un nivel de abstracción máximo, a la altura de los espacios de
objetos y las aplicaciones colaborativas
Question 40
Question
El mecanismo de sockets es de muy bajo nivel, y se considera una de las formas más
simplistas de implementar una comunicación entre procesos remotos. Debido a esta
simplicidad, surgen varias carencias o problemas conocidos. Seleccione cual de las
siguientes cuestiones NO es un problema de la API de sockets.
Answer
-
La información enviada por un socket no se cifra y es susceptible de
problemas de seguridad
-
Las operaciones de recepción son bloqueantes, y pueden causar
interbloqueos a menos que se utilicen hilos o APIs avanzadas no
bloqueantes
-
Las operaciones de envío son bloqueantes, y pueden causar
interbloqueos si no se establecen secuencias concretas de intervención en
la comunicación
-
En una comunicación basada en sockets no existe autenticación de las
partes implicadas
Question 41
Question
Empareje las etiquetas numéricas de la imagen, que indican la secuencia temporal de
operaciones de un cliente y un servidor en un protocolo HTTP, con las operaciones
apropiadas, teniendo en cuenta el orden en el que deben producirse dichas operaciones
para que la comunicación sea posible
Answer
-
aceptar conexión
-
realizar conexión
-
enviar petición
-
recibir petición
-
enviar respuesta
-
recibir respuesta
-
desconectar (servidor)
-
desconectar (navegador)
Question 42
Question
Supongamos que un computador cualquiera tiene una probabilidad de fallar igual a p,
siendo p < 1, y que se tiene un conjunto de n computadores de este tipo que se
interconectan formando un sistema distribuido. El sistema puede funcionar con un solo
nodo, con los otros sirviendo de backup, de forma que cada computador es capaz por
sí mismo de proporcionar el servicio. ¿cuál es la probabilidad P de que el servicio falle?
Answer
-
p * n
-
p pot n
-
1 - (1-p) pot n
-
(1-p) pot n
Question 43
Question
Seleccione la afirmación correcta sobre el paradigma de comunicaciones de igual a igual, o peer-to-peer
Answer
-
Es el mecanismo empleado por HTTP, FTP y DNS
-
No puede ser utilizado para la transferencia compartida de ficheros
-
Implica un nivel de abstracción máximo, a la altura de los espacios de objetos y las aplicaciones colaborativas
-
Es el más apropiado para la mensajería instantánea y la vídeo-conferencia
Question 44
Question
En la tecnología Java RMI se emplea un elemento denominado esqueleto o "skeleton".
Seleccione la afirmación correcta sobre dicho elemento.
Answer
-
Es un elemento que configura y mantiene la conexión en el paradigma
RMI
-
Se encuentra justo debajo de la capa de aplicación del servidor de
objeto, y se utiliza para interactuar con la capa resguardo en la parte cliente
-
Es un elemento generado por el compilador rmic y se debe copiar de
manera manual en el cliente de objeto para que éste pueda funcionar
-
Se trata de un proxy empleado en el cliente de objeto para capturar las
llamadas a métodos remotos
Question 45
Question
Seleccione la afirmación correcta sobre los distintos esquemas que permiten
almacenar la información de estado de sesión.
Answer
-
El servidor sin estado es más complejo de diseñar e implementar
-
En un servidor sin estado se simplifica mucho el código del cliente,
aunque se complica el tratamiento de cada petición por parte del servidor
ya que cada petición se tratará de manera distinta
-
En un servidor con estado hay que prever la necesidad de salvaguardar
la información de estado en el caso de que se interrumpa una sesión, por
ejemplo por la caída del servidor, o el cliente no obtendrá un servicio
correcto
-
Existen solo dos esquemas posibles, que toda la información de sesión
se almacene en el servidor o que toda ella se almacene en el cliente
Question 46
Question
Una de las técnicas avanzadas de RMI más utilizadas es el uso de un gestor de
seguridad. Seleccione cuál de las siguientes afirmaciones sobre dicho gestor es falsa.
Answer
-
El gestor de seguridad debería utilizarse siempre, se use o no la
descarga de resguardo dinámica
-
El gestor de seguridad es tan restrictivo que por defecto no deja que el
cliente de objeto busque en el registro RMI el objeto remoto que desea
utilizar
-
El gestor utiliza siempre las políticas de seguridad descritas en el fichero
java.policy del directorio donde se instala el Java SDK
-
Si se utiliza la descarga de resguardos dinámica, en el fichero java.policy
debe darse permiso al cliente para acceder al puerto 80 y así contactar con
un servidor HTTP
Question 47
Question
Una de las técnicas avanzadas empleadas en Java RMI es el callback. Seleccione la
afirmación correcta respecto al callback.
Answer
-
Sirve para permitir que las invocaciones a métodos remotos se
conviertan en bidireccionales o dúplex, permitiendo comunicaciones del
cliente al servidor y viceversa
-
Esta técnica se basa en el uso de un servidor HTTP que permite que el
cliente pueda acceder al resguardo del servidor dinámicamente y viceversa
-
Se trata de una técnica que se hace necesaria para que el cliente pueda
invocar métodos remotos de un objeto distribuido
-
Se trata de un mecanismo basado en polling a través del cual, el cliente
invoca reiteradamente métodos remotos que consultan una variable de un
objeto remoto. En el momento en el que la variable toma el valor deseado,
el cliente sale del bucle de sondeo y realiza una acción concreta
Question 48
Question
La descarga dinámica de resguardo es una técnica avanzada que se emplea en
aplicaciones RMI. Para activar dicha técnica es necesario...
Answer
-
Utilizar un parámetro al ejecutar el cliente, donde se indica como
argumento una URL que apunta al fichero de resguardo
-
Utilizar un parámetro al ejecutar el cliente, donde se indica como
argumento una URL que apunta al directorio del servidor HTTP donde se
ubica el resguardo
-
Utilizar un parámetro al ejecutar el servidor, donde se indica como
argumento una URL que apunta al fichero de resguardo
-
Utilizar un parámetro al ejecutar el servidor, donde se indica como
argumento una URL que apunta al directorio del servidor HTTP donde se
ubica el resguardo
Question 49
Question
¿Cuál de las siguientes operaciones primitivas no es propia de una API de
multidifusión arquetípica?
Answer
-
Listado de los identificadores de proceso de los miembros del grupo de
multidifusión
-
Recepción de mensajes enviados a un grupo de multidifusión
-
Abandono de un grupo de multidifusión
-
Incorporación a un grupo de multidifusión
Question 50
Question
Al emplear la técnica de callback en una aplicación RMI, se suele incorporar a la
interfaz remota del servidor un método denominado registerCallback, o uno similar, que
sirva para guardar la información de callback del cliente. ¿Qué parámetro debe pasarle
el cliente al servidor al invocar este método?
Answer
-
El cliente no debe utilizar ningún parámetro al invocar dicho método
-
Un objeto de la clase donde se declare la interfaz remota del cliente
-
Un objeto de la clase donde se implemente la interfaz remota del cliente
(y que extienda la clase UnicastRemoteObject)
-
El resguardo o stub de la interfaz remota del servidor
Question 51
Question
RMI tiene su origen en un paradigma denominado "llamada a procedimientos remotos"
o RPC. Seleccione la afirmación correcta sobre RPC
Answer
-
Se fundamenta en que, gracias a un proxy cliente y un proxy servidor, un
proceso puede invocar un procedimiento remoto como si de uno local se
tratara, y es una solución aplicable a la programación estructurada
-
RPC es una comunicación que, al ser aplicable a programación
procedimental, no necesita que los datos sean empaquetados de ninguna
manera
-
Es un mecanismo donde un objeto es serializado y viaja de un proceso a
otro gracias a un procedimiento de "aplanado" ejecutado en el nodo cliente
-
Es un mecanismo similar a RMI, pero en el que no se necesitan capas
de proxy como intermediarias, puesto que se invocan procedimientos y no
métodos
Question 52
Question
Supongamos que en un grupo de multidifusión con 3 procesos, P1, P2 y P3, tienen
lugar los siguientes eventos en orden cronológico:
P1 difunde m1
P2 responde a m1 difundiendo m2
P3 difunde m3 de manera espontánea
P1 responde a m3 difundiendo m4
P3 responde a m2 difundiendo m5
P2 difunde m6 espontáneamente
En este supuesto se produce el siguiente escenario:
P1 recibe m1, m2, m3, m4, m5, m6
P2 recibe m1, m3, m2, m5, m4, m6
P3 recibe m1, m2, m6, m5, m3, m4
Para cada tipo de multidifusión listado a continuación, se pide responder si el escenario
descrito es posible o no lo es.
Multidifusión fiable sin orden [blank_start]si es posible[blank_end]
Multidifusión FIFO [blank_start]no es posible[blank_end]
Multidifusión causal [blank_start]si es posible[blank_end]
Multidifusión atómica [blank_start]no es posible[blank_end]
Answer
-
si es posible
-
no es posible
-
no es posible
-
si es posible
-
si es posible
-
no es posible
-
no es posible
-
si es posible
Question 53
Question
En la multidifusión se suele hacer uso de un parámetro denominado TTL (timetolive).
Seleccione la afirmación correcta sobre dicho parámetro
Answer
-
Es un mecanismo que sirve para evitar la sobrecarga innecesaria en los
sistemas y en la red en la comunicación de grupo
-
Indica el tiempo que permanece abierta una conexión de multidifusión
entre el origen del mensaje y el resto de participantes del grupo
-
Se trata del tiempo que "vive" un datagrama medido en segundos. Si se
establece un TTL igual a 5 entonces transcurridos 5 segundos dicho
mensaje será desechado de la red
-
Es un valor que puede ser 0 ó 1. Si se establece a 0 se emplea un
mecanismo de propagación indefinida de mensajes de grupo, mientras que
si se establece a 1 no se emplea multidifusión en el mensaje
Question 54
Question
Seleccione la afirmación correcta respecto a la arquitectura software de un servicio de
red.
Answer
-
En la parte cliente no existe nivel de servicio mientras que en la parte
servidora no existe nivel de aplicación
-
La aplicación se debe estructurar en cuatro niveles: nivel de red, nivel de
transporte, nivel de sesión y nivel de aplicación, tanto en el lado cliente
como en el servidor
-
La aplicacion se debe estructurar en tres niveles: nivel de presentación,
nivel de lógica de aplicación y nivel de servicio, tanto en el lado cliente como
en el servidor
-
En cada extremo se debe emplear una arquitectura monolítica sin
niveles, ya que así se fomenta la reutilización y la capacidad de abstracción
Question 55
Question
Supongamos que una aplicación RMI básica, llamada HolaMundo, cuenta con los
siguientes ficheros:
ClienteHola.class: programa cliente [blank_start]1[blank_end]
ServidorHola.class: programa servidor de objeto [blank_start]2[blank_end]
HolaInterfaz.class: declaración de la interfaz remota [blank_start]3[blank_end]
HolaImpl.class: implementación de la interfaz remota [blank_start]4[blank_end]
HolaImpl_Stub.class: resultado del compilador rmic [blank_start]5[blank_end]
En cada fichero, seleccione cuál debe ser su ubicación para que la aplicación funcione
adecuadamente:
Question 56
Question
Seleccione la afirmación correcta sobre la comparación del mecanismo de sockets y el
mecanismo de objetos distribuidos RMI de Java
Answer
-
El mecanismo RMI permite reducir la sobrecarga, mientras que el de
sockets lleva consigo una sobrecarga adicional por su grado de abstracción
-
El mecanismo de sockets permite crear aplicaciones que se corrigen y
depuran mejor
-
El mecanismo RMI está orientado a acciones mientras que el de sockets
se considera orientado a datos
-
Siempre es mejor utilizar una tecnología más avanzada y abstracta, y
por tanto, RMI siempre prevalece sobre el uso de sockets
Question 57
Question
En la siguiente imagen se muestra la arquitectura de Java RMI, solo que los nombres
de cada capa y elemento han sido sustituidos por etiquetas:
Question 58
Question
Seleccione la afirmación correcta sobre programación multihilo en servidores concurrentes:
Answer
-
Cada hilo en un servicio concurrente suele atender a un ServerSocket de
tal manera que el servidor escucha simultáneamente peticiones externas
por n puertos, siendo n el número de hilos lanzados de inicio al arrancar el
servidor
-
La utilización de hilos es idónea para ofrecer servicios concurrentes
ofrecidos por servidores con o sin estado, y permiten manejar tanto
información de estado global como información de sesión en caso de ser
necesario
-
Los hilos o threads se utilizan para ofrecer servicios iterativos
-
Al utilizar hilos no es posible mantener información global de estado del
servidor, ya que cada hilo atiende a una sesión particular
Question 59
Question
Al incorporar la técnica de callback en una aplicación RMI, ¿se produce algún cambio
en la arquitectura de capas de dicha aplicación?
Answer
-
Sí, se duplica la capa de referencia remota, para permitir la
comunicación bidireccional
-
Sí, se necesitan dos pares de capas de transporte, un par en cada nodo,
para establecer conexiones TCP en ambos sentidos, del cliente al servidor y
del servidor al cliente
-
Sí, se necesitan nuevos proxies, surge un nuevo esqueleto de interfaz
cliente en el cliente y un nuevo resguardo de interfaz de cliente en el
servidor
-
No, la arquitectura RMI no varía
Question 60
Question
Supongamos que en un grupo de multidifusión con 3 procesos, P1, P2 y P3, tienen
lugar los siguientes eventos en orden cronológico:
P1 difunde m1
P2 responde a m1 difundiendo m2
P3 difunde m3 de manera espontánea
P1 responde a m3 difundiendo m4
P3 responde a m2 difundiendo m5
P2 difunde m6 espontáneamente
En este supuesto se produce el siguiente escenario:
P1 y P2 reciben m1, m2, m3, m4, m5, m6
P3 recibe m2, m3, m1, m4, m5, m6
Para cada tipo de multidifusión listado a continuación, se pide responder si el escenario
descrito es posible o no lo es.
Multicast fiable sin orden [blank_start]1[blank_end]
Multicast FIFO [blank_start]2[blank_end]
Multicast Causal [blank_start]3[blank_end]
Multicast atómico [blank_start]4[blank_end]
Answer
-
SI ES POSIBLE
-
NO ES POSIBLE
-
SI ES POSIBLE
-
NO ES POSIBLE
-
SI ES POSIBLE
-
NO ES POSIBLE
-
SI ES POSIBLE
-
NO ES POSIBLE
Question 61
Question
La multidifusión básica es no orientada a conexión. Seleccione cuál de las siguientes
afirmaciones supone ser una razón importante por la cual se suele usar esa
multidifusión sin conexión.
Answer
-
En multidifusión el número de conexiones sería tan reducido que no
tiene sentido emplear mecanismos orientados a conexión
-
Las aplicaciones que hacen uso de la multidifusión suelen priorizar que
no se produzca ninguna distorsión ocasional de la imagen, algo que
prevalece sobre las ventajas de la comunicación orientada a conexión
-
En las aplicaciones que hacen uso de multidifusión, es preferible que se
produzca un retraso frecuente perceptible entre fotogramas siempre que no
se pierda ninguno, algo que prevalece sobre las ventajas que se obtendrían
con una orientación a conexión
-
Las aplicaciones que usan multidifusión suelen relacionarse con la
transmisión de video/audio y en ellas la reducción de latencia prevalece
sobre las ventajas de la comunicación orientada a conexión
Question 62
Question
Seleccione cuál de las siguientes afirmaciones sobre el servicio Daytime es falsa.
Answer
-
Se trata de una aplicación clienteservidor
que no requiere almacenar
información de sesión
-
Siempre se implementa con streams para asegurar que la marca
temporal que nos llega es la más reciente
-
Consiste en una aplicación clienteservidor
que en caso de ser no
orientada a conexión requiere que el cliente envíe un primer mensaje vacío
a través del socket de tipo datagrama para que el servidor le envíe la marca
temporal
-
Se trata de un servicio bien conocido que corre en un puerto reservado,
aunque normalmente se deshabilita por razones de seguridad
Question 63
Question
Seleccione la afirmación correcta sobre servidores iterativos y concurrentes
Answer
-
En un servicio iterativo el cliente debe esperar n*t unidades de tiempo a
ser atendido, siendo n el número de clientes que le han precedido y t el
tiempo que dura la sesión
-
Un servicio con estado de sesión no puede nunca ser concurrente
-
En servicios donde las sesiones suelen durar mucho tiempo se hace
especialmente necesario tener un servidor iterativo para que el cliente no
tenga que sufrir esperas prolongadas
-
Los servidores concurrentes solo se pueden implementar mediante IPCs
asíncronas
Question 64
Question
Una técnica avanzada de RMI que se suele utilizar en el ámbito empresarial es el uso
de un gestor de seguridad. Indique dónde y cuándo se debe instanciar este gestor
(RMISecurityManager).
Answer
-
Se debe instanciar en el cliente de objeto, justo después de realizar la
búsqueda del objeto remoto en el registro RMI
-
Se ejecuta en el servidor de objeto, después de arrancar el registro RMI
-
No se instancia en el código, simplemente se añade una opción en la
línea de comandos para adecuar el mandato java y ejecutar el gestor
-
Se debe instanciar tanto en el cliente como en el servidor, antes de
registrar o utilizar el registro RMI
Question 65
Question
Seleccione la afirmación correcta sobre el mandato rmic propio de la tecnología RMI
Answer
-
Sirve para compilar todos los ficheros .java que intervienen en la
aplicación RMI y convertirlos en ficheros ejecutables
-
Toma como argumento un número de puerto y sirve para lanzar de
forma manual el registro RMI que sirve como Servicio de Directorios
-
Toma como argumento la implementación de un interfaz remoto y
genera los proxies necesarios para que el cliente y el servidor puedan
comunicarse a través de objetos distribuidos
-
Toma como argumento la definición de la interfaz remota, no de su
implementación, y genera dos esqueletos para intercomunicar procesos
remotos entre sí
Question 66
Question
Supongamos que una aplicación RMI avanzada con callback cuenta con una interfaz
remota de cliente y una interfaz remota de servidor. En concreto, se tienen los
siguientes ficheros:
InterfazCliente.class: declaración de la interfaz remota del cliente [blank_start]1[blank_end]
InterfazServidor.class: declaración de la interfaz remota del servidor [blank_start]2[blank_end]
ImplCliente.class: implementación de la interfaz remota del cliente [blank_start]3[blank_end]
ImplServidor.class: implementación de la interfaz remota del servidor [blank_start]4[blank_end]
En cada uno de estos ficheros, seleccione cuál debe ser su ubicación para que la
aplicación funcione adecuadamente:
Answer
-
Debe estar sólo en el cliente
-
Debe estar sólo en el servidor
-
Debe estar en el cliente y en el servido
-
Debe estar sólo en el cliente
-
Debe estar sólo en el servidor
-
Debe estar en el cliente y en el servido
-
Debe estar sólo en el cliente
-
Debe estar sólo en el servidor
-
Debe estar en el cliente y en el servido
-
Debe estar sólo en el cliente
-
Debe estar sólo en el servidor
-
Debe estar en el cliente y en el servido
Question 67
Question
Supongamos que en un grupo de multidifusión con 3 procesos, P1, P2 y P3, tienen
lugar los siguientes eventos en orden cronológico:
P1 difunde m1
P2 responde a m1 difundiendo m2
P3 difunde m3 de manera espontánea
P1 responde a m3 difundiendo m4
P3 responde a m2 difundiendo m5
P2 difunde m6 espontáneamente
En este supuesto se produce el siguiente escenario:
P1 recibe m1, m2, m5, m3, m4, m6
P2 recibe m1, m3, m5, m4, m2, m6
P3 recibe m3, m1, m4, m2, m5, m6
Multidifusión fiable sin orden [blank_start]1[blank_end]
Multidifusión FIFO [blank_start]2[blank_end]
Multidifusión causal [blank_start]3[blank_end]
Multidifusión atómica [blank_start]4[blank_end]
Answer
-
si es posible
-
no es posible
-
si es posible
-
no es posible
-
si es posible
-
no es posible
-
si es posible
-
no es posible
Question 68
Question
Incorporar un mecanismo de callback supone realizar ciertos cambios en el cliente y en
el servidor de una aplicación RMI. De todos los cambios expuestos a continuación, uno
de ellos no es necesario para implementar un callback, seleccione cuál es
Answer
-
La interfaz remota del servidor debe incorporar un nuevo método que
permita registrar el callback. Este método suele recibir como argumento una
interfaz remota de cliente y guardar dicha referencia en una variable o
estructura de datos para posteriormente invocar un método remoto del
cliente (método de callback)
-
Deben crearse exclusiones mutuas en los métodos de registro de
callback del servidor si es que modifican alguna estructura de datos donde
el servidor guarda referencias de callback de sus clientes
-
Debe registrarse la interfaz remota del cliente en un registro RMI que
corra en la máquina cliente, de manera paralela a como sucede en el
servidor con el objeto distribuido
-
Se debe crear una interfaz remota de cliente, compilar con rmic y copiar
el resguardo creado al directorio del servidor
Question 69
Question
El paradigma de objetos distribuidos se ha adoptado de forma extendida en las
aplicaciones distribuidas empresariales. Seleccione la afirmación correcta sobre las
herramientas que lo implementan:
Answer
-
Un sistema RPC es un tipo de sistema de objetos distribuidos
-
Existen multitud de herramientas para implementar un sistema de
objetos distribuidos, como por ejemplo CORBA, la API SOAP, etc.
-
Un sistema de objetos distribuidos solo puede ser implementado
mediante Java RMI
-
No existen soluciones basadas en objetos distribuidos para la Web
Question 70
Question
Seleccione la afirmación correcta sobre los resguardos o "stubs" de la tecnología Java
RMI.
Answer
-
Se trata de un elemento no disponible en las nuevas versiones de Java,
en las que se sustituye por una técnica denominada reflexión
-
Sirve para configurar, mantener y eliminar las conexiones entre un
cliente y un servidor en RMI
-
Es un objeto proxy que intercepta las invocaciones de los métodos
remotos hechas por los clientes
-
El resguardo proyecta la capa independiente de plataforma en la capa
dependiente de plataforma
Question 71
Question
Supongamos que en un grupo de multidifusión con 3 procesos, P1, P2 y P3, tienen
lugar los siguientes eventos en orden cronológico:
P1 difunde m1
P2 responde a m1 difundiendo m2
P3 difunde m3 de manera espontánea
P1 responde a m3 difundiendo m4
P3 responde a m2 difundiendo m5
P2 difunde m6 espontáneamente
En este supuesto se produce el siguiente escenario:
P1, P2 y P3 reciben m1, m2, m5, m6
Multidifusion fiable sin orden [blank_start]1[blank_end]
Multidifusión FIFO [blank_start]2[blank_end]
Multidifusión causal [blank_start]3[blank_end]
Multidifusión atómica [blank_start]4[blank_end]
Answer
-
si es posible
-
no es posible
-
si es posible
-
no es posible
-
si es posible
-
no es posible
-
si es posible
-
no es posible
Question 72
Question
Seleccione la afirmación correcta sobre los servidores con estado
Answer
-
En un servidor con estado el servicio proporcionado dependerá
exclusivamente de la información de estado global del servidor
-
La información de sesión puede utilizarse en una aplicación clienteservidor
aún cuando el servidor es sin estado y trata igual cada petición de
cada cliente
-
La información de estado global es aquella que el servidor almacena
para un cliente concreto, es decir, se relaciona con una y solo una sesión
-
Las variables con información de sesión deben programarse como
variables estáticas sincronizadas para que en caso de existir múltiples hilos
atendiendo a varios clientes, todos ellos puedan tener acceso a dichas
variables y éstas tengan el mismo valor global
Question 73
Question
Seleccione la afirmación correcta sobre aplicaciones clienteservidor
implementadas
mediante sockets de tipo datagrama.
Answer
-
En las aplicaciones clienteservidor
con datagramas el servidor nunca
tiene estado
-
Para servicios donde el cliente simplemente tiene que ponerse en
contacto con el servidor sin incluir nada en la petición, como por ejemplo
aplicaciones tipo Daytime, el protocolo puede basarse en que el cliente
envíe un mensaje vacío al servidor para que éste lo considere una petición.
El servidor debe desechar completamente el mensaje y toda la información
relacionada con dicho envío (vector de bytes, dirección del emisor, etc.)
-
En aplicaciones donde la petición inicial no contiene información en sí,
suele ser necesario exigir un mensaje vacío que permita al servidor saber
que existe una solicitud y acceder a la dirección del remitente para saber a
quién responder
-
Para aplicaciones basadas en petición y respuesta, como una aplicación
Echo, no es posible emplear datagramas, y se deben utilizar streams
Question 74
Question
Seleccione la afirmación correcta sobre el direccionamiento de grupos de multidifusión.
Answer
-
A la hora de seleccionar una dirección de multidifusión, es posible
solicitar una dirección permanente, en el rango 224.0.0.0 al
239.255.255.255 (aunque la dirección inicial se suele reservar), y estas
direcciones se gestionan desde una autoridad denominada IANA
-
Un grupo de multidifusión se identifica a través de un puerto UDP
comprendido entre el 3000 y el 4000
-
En IPv4 un grupo de multidifusión se especifica exclusivamente mediante
una dirección de clase D (empieza con la cadena de bits 1111), no siendo
necesaria información adicional
-
Un grupo de multidifusión se identifica parcialmente por una dirección IP
de clase E, que comienza por 11110. Por tanto, se tienen
direcciones de IPv4 válidas
Question 75
Question
Seleccione cuál de las siguientes afirmaciones sobre el servicio Echo es falsa
Answer
-
Se trata de un servicio bien conocido que emplea un puerto bien
conocido, aunque la mayoría de servidores lo tienen desabilitado por
seguridad
-
Se trata de un tipo de aplicación donde el cliente siempre tiene que
mandar un mensaje vacío a través del socket de tipo datagrama o socket
de tipo stream
-
Un servidor de echo es muy útil de cara a poder implementar primero el
lado cliente de la aplicación y después, cuando se han verificado las
peticiones del cliente, implementar el lado servidor
-
Se trata de una aplicación clienteservidor
sin estado
Question 76
Question
Cual de las siguientes afirmaciones sobre la multidifusión fiable no es correcta
Answer
-
Cada miembro de un grupo recibe siempre una y solo una copia de cada
mensaje enviado a un grupo
-
Es un esquema que engloba varios tipos de mecanismos, siendo uno de
ellos el sistema sin orden
-
En este esquema el emisor puede estar seguro de que el mensaje
enviado llega sin corrupciones a los miembros del grupo
-
En este sistema se puede asumir que cada participante de un grupo
recibe los mensajes en el mismo orden en que se reciben por el resto de
participantes
Question 77
Question
Seleccione la afirmación correcta sobre la implementación de interfaz remota en la
tecnología RMI
Answer
-
La implementación del interfaz remoto debe copiarse de forma
obligatoria al cliente de la aplicación RMI
-
En las sentencias de importación iniciales no es necesario utilizar
ninguna clase Java
-
La implementación debe incluir siempre un método llamado resguardo
(stub en inglés) cuyo código lance la excepción RemoteException
-
La implementación de una interfaz remota debe especificar que es una
subclase de UnicastRemoteObject y que implementa una interfaz remota
específica, que sirve de plantilla para el objeto distribuido
Question 78
Question
Una de las técnicas avanzadas que se suelen utilizar en RMI es la descarga de
resguardo dinámica. Seleccione que afirmación no es correcta sobre esta técnica
avanzada.
Answer
-
Se emplea para no tener que copiar manualmente el resguardo del
interfaz remoto del servidor en el cliente de objeto
-
Requiere de un servidor HTTP donde se publique el código fuente que
implementa el interfaz remoto del servidor
-
La descarga de resguardo automática utiliza una técnica de descarga
software indéntica a la que se emplea en la descarga de applets
-
Conlleva grandes riesgos de seguridad y por ello exige emplear un
gestor de seguridad RMI
Question 79
Question
Seleccione la afirmación correcta sobre aplicaciones clienteservidor
implementadas
con streams.
Answer
-
Es necesario que el cliente envíe un primer mensaje vacío para que el
servidor pueda obtener de él la dirección del cliente, y así poder entablar
una conversación con él
-
En las aplicaciones con streams es donde se pone más de manifiesto la
necesidad de emplear múltiples hilos para que el servidor sea concurrente
-
La comunicación mediante streams en la única que permite que un
servidor sin estado pueda ofrecer un servicio con estado de sesión
-
Al emplear una comunicación no orientada a conexión cada cliente no
monopoliza al servidor y el servidor es inherentemente concurrente
Question 80
Question
Seleccione qué afirmación de las siguientes sobre RMI Registry es falsa
Answer
-
Pueden coexistir varios RMI registry dentro de una misma máquina,
siempre que tengan distinto puerto, y a su vez, varios servidores de objetos
pueden compartir el mismo RMI registry
-
RMI Registry sirve para que el cliente descargue dinámicamente el stub
o resguardo de cualquier objeto distribuido que haya localizado de manera
estática
-
El registro RMI se puede crear de manera dinámica dentro de un
proceso, como por ejemplo, el servidor de objeto remoto
-
El registro RMI se puede invocar por línea de comandos mediante el
mandato rmiregistry
Question 81
Question
Las aplicaciones RMI pueden sufrir ataques que atentan gravemente a la seguridad de
los nodos donde ejecuten. La mayoría de estos riesgos de seguridad son provocados
por la descarga de objetos desde servidores de Internet, y existe un gestor de
seguridad de RMI que vela por la seguridad en tiempo de ejecución de los nodos
implicados. Seleccione la afirmación correcta sobre estos gestores de seguridad de
RMI.
Answer
-
El gestor de seguridad RMI es un proceso que se ejecuta en el servidor
HTTP donde se ha ubicado el resguardo de las interfaces remotas para su
posterior descarga dinámica
-
En cada nodo se debe instanciar una clase denominada
RMISecurityManager. Dicho objeto supervisa las acciones que pueden ser
peligrosas
-
El gestor de seguridad RMI no protege al nodo en tiempo de ejecución
para ataques que no se relacionen con la descarga dinámica de resguardo.
Por ello, sólo se debe usar dicho gestor si se emplea descarga de
resguardo.
-
Existe un proceso independiente, llamado RMISecurityManager, que
debe ser lanzado antes de ejecutar la aplicación. Para lanzarlo se debe
emplear el mandato de consola java Djava.
security.policy=
RMISecurityManager
Question 82
Question
En el contexto del modelo clienteservidor,
se utilizará el término sesión para referirse
a:
Answer
-
Cada par peticiónrespuesta
entre cliente y servidor, e incluye un solo
mensaje del cliente y la consecuente respuesta del servidor
-
La interacción que tiene un cliente con el servidor, desde que realiza la
primera petición hasta que da por concluido la interacción con el servicio
-
Tiempo que tarda el cliente en localizar el servicio deseado
-
Todo el tiempo que el servidor permanece atendiendo a múltiples
clientes, hasta que el proceso servidor finaliza
Question 83
Question
Supongamos que en un grupo de multidifusión con 3 procesos, P1, P2 y P3, tienen
lugar los siguientes eventos en orden cronológico:
P1 difunde m1
P2 responde a m1 difundiendo m2
P3 difunde m3 de manera espontánea
P1 responde a m3 difundiendo m4
P3 responde a m2 difundiendo m5
P2 difunde m6 espontáneamente
En este supuesto se produce el siguiente escenario:
P1 recibe m1, m2, m3, m4, m5 y m6
P2 recibe m1, m4, m2, m3, m6 y m5
P3 recibe m1, m3, m6, m4, m2 y m5
Multidifusión fiable sin orden [blank_start]1[blank_end]
Multidifusión FIFO [blank_start]2[blank_end]
Multidifusión causal [blank_start]3[blank_end]
Multidifusión atómica [blank_start]4[blank_end]
Answer
-
si es posible
-
no es posible
-
si es posible
-
no es posible
-
si es posible
-
no es posible
-
si es posible
-
no es posible
Question 84
Question
El paradigma que probablemente tiene mayor nivel de abstracción hoy día es el de espacios de objetos.
Seleccione cuál de las siguientes afirmaciones sobre dicho paradigma es cierta.
Answer
-
Un proceso no puede retirar un objeto del espacio a menos que sea el propietario del objeto
-
JavaSpaces es una API que permite implementar soluciones basadas en espacio de objetos
-
En este paradigma existe un espacio que actúa como repositorio de agentes móviles
-
Los procesos pueden invocar métodos remotos de los objetos situados en el espacio de
objetos, modificando el objeto en sí y sus datos
Question 85
Question
La versión más actualizada de la arquitectura CORBA añade un componente software... (continúe la
afirmación con la terminación correcta)
Answer
-
... al ORB en el lado servidor, llamado esqueleto general de interoperabilidad
-
... al esqueleto en el lado servidor, llamado adaptador de objetos
-
... al ORB en el lado cliente, llamado resguardo interoperable CORBA
-
... tanto al cliente como al servidor, en la capa del Sistema Operativo, llamado POA
Question 86
Question
Uno de los modelos de mayor auge en el paradigma de sistemas de colas de mensajes es el modelo de
publicación/subscripción. Seleccione la afirmación correcta sobre dicho modelo:
Answer
-
La operación publicar sirve para registrar un objeto remoto en el registro de objetos del
modelo
-
Ofrece una potente abstracción para la unidifusión o comunicación puntoapunto
-
En este modelo, cada mensaje se asocia a un tema, evento o contenido, y los subscriptores
se "interesan" por mensajes de cierto tipo o contenido
-
La operación suscribir consiste en que el suscriptor recibe el fichero de interfaz remota del
editor, para poder generar un resguardo dinámicamente, y así invocar los métodos de dicho
emisor
Question 87
Question
Uno de los métodos más empleados para almacenar información de estado y/o sesión en las aplicaciones
implementadas con servlets es el uso del objeto session.
Answer
-
El objeto session almacena la información de sesión en el lado cliente, de tal manera que en
cada cliente se almacenan los datos de su sesión particular
-
El objeto session persiste en función de la implementación, de forma que el programador no
tiene ningún control sobre la eliminación de la sesión
-
Se trata de un mecanismo que permite dejar de utilizar por completo las cookies y el resto
de mecanismos de almacenamiento que no sea el propio uso del objeto session
-
El método getSession se utiliza tanto para crear como para recuperar un objeto session
Question 88
Question
La arquitectura CORBA es una de las tecnologías más empleadas a la hora de desarrollar grandes
aplicaciones distribuidas en el ámbito empresarial. Seleccione la afirmación correcta sobre dicha
arquitectura.
Answer
-
Es una arquitectura para desarrollar aplicaciones distribuidas basadas en objetos en
entornos heterogéneos, donde se pueden implementar los objetos en distintos lenguajes de
programación y/o desplegarse en diferentes plataformas
-
Es una arquitectura alternativa a Java RMI. La implementación final debe realizarse
obligatoriamente en Java, pero como ventaja sobre RMI, la aplicación es más eficaz y rápida
-
Se trata de una arquitectura para el desarrollo de aplicaciones basadas en agentes
-
Se trata de una arquitectura alternativa a los sockets para el desarrollo de aplicaciones
básicas de tipo clienteservidor
donde se transfieren datos de un puerto de una máquina a otra
Question 89
Question
Existen múltiples soluciones para dar soporte a servlets, como por ejemplo JSWDK, Tomcat, Glassfish,
WebLogic, iPlanet, WebSphere, etc.
Todos estos servidores de aplicación especifican varios métodos con cada objeto servlet, que son
invocados por el motor de servlets, y que permiten gestionar el ciclo de vida de dicho objeto.
¿Cual de los siguientes métodos de apoyo no existe o es incorrecto?
Answer
-
Init(), que se invoca por el motor cuando se inicia un servlet
-
Shutdown(), invocado por el motor cuando el servlet ya no se necesita
-
Service(), invocado por el motor cuando la petición de un cliente se reenvía al servlet
-
Bind(client_id), invocado por el motor para vincular el servlet con el cliente al que va a dar
servicio
Question 90
Question
Uno de los paradigmas avanzados más interesantes, por sus peculiaridades, es el de agentes móviles. En
este paradigma surge el concepto de agente. ¿Qué información de las siguientes NO es propia de un
agente?
Question 91
Question
Seleccione la afirmación correcta sobre el protocolo HTTP (HyperText Transfer Protocol).
Answer
-
Es posible implementar lógica de aplicación a través del protocolo HTTP sin necesidad de
procesos externos
-
HTTP es es un protocolo no orientado a conexión de peticiónrespuesta.
El servidor que
implementa el protocolo suele atender en el puerto UDP 80
-
Todas las versiones de HTTP existentes permiten únicamente una ronda de peticiónrespuesta,
de tal manera que al responder el servidor cierra la conexión con el cliente. Si éste
desea mantener la comunicación debe siempre volver a conectarse con el servidor
-
HTTP es un protocolo sin estado, y cada petición se maneja por el servidor como si fuera
completamente nueva en cualquier versión de HTTP
Question 92
Question
Seleccione la afirmación correcta sobre las posibilidades que ofrece CORBA para la comunicación entre el
servidor y el cliente.
Answer
-
La programación básica de CORBA permite únicamente la comunicación desde el servidor
hacia el cliente como resultado (valor de retorno) de la invocación por parte del cliente de un
método remoto. Para otro tipo de comunicación asíncrona desde el servidor hacia el cliente, es
necesario, al igual que en RMI, hacer uso de la técnica de callback
-
En CORBA no es posible nunca que el servidor se comunique con el cliente cuando el
servidor lo desee, ni siquiera haciendo uso del mecanismo de callback
-
En CORBA no es necesario hacer uso de la técnica de callback para que el servidor pueda
comunicarse en el momento que lo desee con el cliente de objeto
-
CORBA sirve para establecer un bus de objetos distribuidos, y por tanto no se puede
emplear aplicado a un paradigma clienteservidor,
siendo solamente aplicable a la
comunicación peertopeer
Question 93
Question
Empareje los distintos métodos HTTP con sus descripciones:
GET
Answer
-
GET: se usa para solicitar el contenido de un objeto web referenciado por el URI
-
POST:usado para enviar datos a un proceso en el servidor
-
HEAD:usado para solicitar al servidor sólo una cabecera, sin el objeto completo
-
PUT:usado para solicitar al servidor que almacene el contenido adjunto en el archivo indicado por el URI
-
DELETE:usado para borrar el recurso especificado
La
Question 94
Question
Seleccione la afirmación correcta sobre lo que es un POA (Portable Object Adapter) en CORBA.
Answer
-
Es un elemento que define una referencia a un objeto distribuido, y sirve para publicar los
objetos CORBA en un servicio de nombres
-
Es un compilador presente en Java IDL y que permite transformar un fichero IDL en un
fichero Java
-
Es una definición del interfaz del objeto distribuido publicado por un cliente en un
mecanismo de callback
-
Se trata de un componente software que permite que una implementación de objeto
funcione en varios ORB, y que por tanto sea portable a través de varias plataformas
Question 95
Question
Seleccione la afirmación correcta sobre el ciclo de vida de un servlet.
Answer
-
En el momento en que no hay peticiones de clientes, el servlet desaparece,
independientemente de la implementación del servidor
-
El código de un servlet, que es una clase Java, se debe cargar en el motor de servlets,
tarea que realiza el servidor, posiblemente, como resultado de la petición de un cliente
-
El servlet se borra del motor de servlets cuando lo indica el cliente concreto al que da
servicio ese servlet
-
El servlet, a lo largo de su vida útil, trata las peticiones de los clientes que acceden a sus
métodos directamente, sin necesidad de ningún mediador
Question 96
Question
El lenguaje de definición de interfaz (IDL) CORBA es uno de los pilares de la arquitectura CORBA.
Seleccione la afirmación correcta sobre dicho lenguaje
Answer
-
Permite definir la interfaz de objetos en caso de utilizar Java para implementar la aplicación.
Para otros lenguajes es necesario usar un lenguaje distinto.
-
Permite definir la interfaz de objetos en caso de utilizar C ó C++ para implementar la
aplicación. Para otros lenguajes es necesario usar un lenguaje distinto
-
Se trata de un lenguaje universal con una sintaxis específica, independiente del lenguaje de
implementación, que sirve para definir la interfaz de objetos de CORBA
-
Se trata de una herramienta de CORBA que sirve para compilar la interfaz de objetos de
CORBA en la consola de comandos del sistema
Question 97
Question
¿En qué consiste el interfaz Entry, y a qué paradigma de los denominados "avanzados" pertenece?
Answer
-
Forma parte de una API para implementar paradigmas colaborativos de tipo "pizarra
compartida", y permite escribir y leer objetos de la pizarra
-
Forma parte de una API para implementar espacios de objetos, y permite escribir y leer
objetos de un espacio
-
Forma parte de una API para implementar servicios en red, y permite escribir en un
directorio de servicios un nuevo recurso como una entrada adicional en el mismo
-
Forma parte de una API para implementar agentes móviles, y permite insertar nuevas
entradas o paradas en el itinerario del agente
Question 98
Question
Supongamos que ejecutando un cliente web casero, solicitamos la página web www.google.es y obtenemos
la siguiente traza de ejecución:
usuario@computadora:~$ java HTTPClient www.google.es 80 /
Conexion realizada
HTTP/1.0 302 *dgasgva*ge
Location: http://www.google.es/
CacheControl:
private
ContentType:
text/html; charset=UTF8
Evidentemente, algo ha ido mal en la comunicación, ya que tras el código de estado de la línea de estado
enviada por el servidor, en este caso 302, la descripción no es legible (ver caracteres en rojo)... No
obstante, y dado que los códigos de estado HTTP están clasificados en distintos rangos, ¿qué se puede
afirmar de la respuesta recibida?
Answer
-
Que la petición del cliente ha sido redirigida
-
Que la respuesta no fue procesada porque el documento especificado no se encontró
-
Que la petición del cliente es incompleta
-
Que se ha producido un error en el servidor
Question 99
Question
Cuando en un formulario se envían datos desde el cliente web hasta el servidor, se pueden utilizar dos
métodos principales, GET o POST. Seleccione cuál es la diferencia fundamental entre ambos métodos:
Answer
-
Ambos métodos son exactamente iguales en su funcionamiento e implementación en el
protocolo HTTP
-
En GET los datos se codifican tras la propia URL mientras que en POST se añaden en el
cuerpo de petición
-
GET se utiliza para invocar scripts tipo CGI mientras que POST se utiliza para invocar scripts
tipo PHP
-
GET permite enviar infinitos datos al servidor mientras que POST tiene restricciones en el
número de caracteres
Question 100
Question
Uno de los protocolos vinculados a las aplicaciones web es CGI (Common Gateway Interface). Seleccione
la afirmación correcta sobre dicho protocolo.
Answer
-
Proporciona una pasarela entre un servidor de información (por ejemplo un servidor HTTP)
y un proceso externo ejecutando en la máquina del servidor de información
-
Debe utilizarse junto con PHP y sirve exclusivamente para la gestión de bases de datos en
el servidor
-
Es un lenguaje de implementación que sirve para ejecutar un proceso externo en el cliente
web, concretamente en el contexto de su navegador
-
Se utiliza exclusivamente cuando debemos almacenar el estado de la sesión en el servidor,
siendo completamente innecesario en otro caso
Question 101
Question
Supongamos que un cliente recibe el siguiente HTML:
<html>
<head>
<title> formulario web que invoca por get un servlet </title>
</head>
<body>
<HR>
<form method="post"
action="http://localhost:4000/servlet/tratarFormulario">
<H2> Pregunta </H2>
¿Como te llamas? <input name="peso"><P>
Presiona <input type="submit" value="Aqui"> para enviar tu peticion
</form>
</body>
</html>
El cliente rellena el formulario y lo envía. ¿Qué método del servlet tratarFormulario se ejecuta?
Question 102
Question
La tecnología CORBA hace uso de un demonio ORB, llamado orbd. Seleccione la afirmación correcta sobre
orbd.
Answer
-
Es un proceso que incluye el servidor del Servicio de Nombrado y que debe arrancarse con
un número de puerto dado a través de la consola de mandatos
-
Es un compilador de IDL a cualquier lenguaje de programación dado, y se utiliza por línea
de mandatos indicando cuál es el lenguaje de programación objetivo a modo de argumento
-
Es un compilador de IDLaC++
muy utilizado
-
Se trata de un descriptor de interfaz ORB propio de Java
Question 103
Question
El paradigma de servicios de red ha sido extendido a servicios web a lo largo de la última década, logrando
un gran éxito y aceptación empresarial.
En este modelo, existen multitud de protocolos, aplicados en distintas capas dentro de la arquitectura de
servicios web. Asocie cada protocolo de los que se listan a la capa a la que se aplica:
UDDI [blank_start]1[blank_end]
WSDL [blank_start]2[blank_end]
XML [blank_start]3[blank_end]
SOAP [blank_start]4[blank_end]
TCP [blank_start]5[blank_end]
HTTP [blank_start]6[blank_end]
SMTP [blank_start]7[blank_end]
Jabber [blank_start]8[blank_end]
IP [blank_start]9[blank_end]
Answer
-
RED
-
TRANSPORTE
-
MENSAJERÍA
-
APLICACIÓN
-
DESCUBRIMIENTO DE SERVICIOS
-
DESCRIPCIÓN DE SERVICIOS
-
APLICACIÓN
-
RED
-
MENSAJERÍA
-
TRANSPORTE
-
DESCUBRIMIENTO DE SERVICIO
-
DESCRIPCIÓN DE SERVICIOS
-
DESCUBRIMIENTO DE SERVICIO
-
RED
-
TRANSPORTE
-
APLICACIÓN
-
MENSAJERÍA
-
DESCRIPCIÓN DE SERVICIOS
-
DESCUBRIMIENTO DE SERVICIO
-
DESCRIPCIÓN DE SERVICIOS
-
RED
-
TRANSPORTE
-
MENSAJERÍA
-
APLICACIÓN
-
DESCUBRIMIENTO DE SERVICIO
-
DESCRIPCIÓN DE SERVICIO
-
TRANSPORTE
-
RED
-
APLICACIÓN
-
MENSAJERÍA
-
DESCUBRIMIENTO DE SERVICIO
-
DESCRIPCIÓN DE SERVICIO
-
RED
-
MENSAJERÍA
-
TRANSPORTE
-
APLICACIÓN
-
Descubrimiento de servicios
-
Descripción de servicios
-
RED
-
APLICACIÓN
-
TRANSPORTE
-
MENSAJERÍA
-
Descripción de servicios
-
Descubrimiento de servicios
-
RED
-
TRANSPORTE
-
MENSAJERÍA
-
APLICACIÓN
-
Descubrimiento de servicios
-
Descripción de servicios
-
RED
-
MENSAJERÍA
-
APLICACIÓN
-
TRANSPORTE
Question 104
Question
En las aplicaciones web actuales en ocasiones se hace uso de un elemento
denominado COOKIE. Seleccione la afirmación falsa sobre dichos elementos
Answer
-
Los navegadores (Internet Explorer, Firefox, Chrome) suelen incorporar
la posibilidad de rechazar la admisión de cookies, prohibiendo su uso
-
Una cookie es un fichero de texto plano que cualquiera puede visualizar
-
Provoca controversia por los problemas de seguridad y privacidad que
puede acarrear
-
Es un mecanismo que permite almacenar información de sesión en el
servidor web, a modo de almacenamiento o repositorio temporal
Question 105
Question
A continuación se muestra un ejemplo de petición de cliente HTTP completa.
HEAD HTTP/1.0
Accept: */*
Connection: KeepAlive
Host: algunaMaquina.com
UserAgent:
Generic
<linea en blanco>
Nombre=jorge&email=jorge@empresa.es
Seleccione la afirmación correcta sobre dicha petición de cliente.
Answer
-
Es una petición incorrecta, tiene un error en la sección de cabecera
-
Es una petición incorrecta, cuenta con errores en las líneas en blanco
requeridas en el protocolo
-
Es una petición incorrecta, tiene un error en la línea de petición
-
Es una petición HTTP correcta
Question 106
Question
El paradigma de servicios de red es uno de los paradigmas de computación distribuida
más prometedores de hoy en día, y se continúan realizando investigaciones en sus
avances y aplicaciones. Seleccione cuál de las siguientes afirmaciones es falsa
respecto a dicho paradigma.
Answer
-
Jini es un conjunto de herramientas que permite desarrollar soluciones
basadas en este paradigma
-
En este paradigma se necesita un servicio de directorio
-
Las infraestructuras de servicios se limitan a ficheros y aplicaciones, no
pudiéndose incluir dispositivos (tales como impresoras) como servicios de
red
-
El protocolo SOAP se basa en este paradigma
Question 107
Question
La arquitectura básica de CORBA guarda una gran semejanza con la arquitectura RMI,
salvo por una diferencia fundamental...¿cuál es dicha diferencia?
Answer
-
CORBA tiene una capa adicional de software en un servidor accesible
tanto por el cliente como por el servidor, denominada registro de objetos
avanzado
-
CORBA tiene una capa adicional de software en el servidor, conocida
como esqueleto
-
CORBA presenta una capa adicional de software tanto en el cliente como
en el servidor, conocida como ORB
-
CORBA incluye una capa adicional en el cliente denominada stub o
resguardo
Question 108
Question
¿Cual es el concepto principal que da forma al paradigma de agentes móviles?
Answer
-
En este paradigma existe un espacio compartido entre todos los nodos
intervinientes en la comunicación. Clientes y servidores deben conectarse
permanentemente a dicho espacio, y lanzar en él agentes que se encargan
de la comunicación.
-
El cliente utiliza un middleware para comunicarse con los servidores,
llamado agente. Este middleware recibe las peticiones del cliente y las
encamina al servidor adecuado. La respuesta de cada servidor es recibida
por el agente y éste la encamina hacia el cliente original
-
Surge la idea de agente, un componente global, compartido por cliente y
servidor, que contiene métodos que los procesos pueden invocar de forma
remota, para comunicarse entre sí
-
Un cliente lanza un agente, que viaja a través de varias máquinas
realizando tareas de forma autónoma, para volver al cliente con la tarea
cumplida
Question 109
Question
A continuación se muestra una imagen con la arquitectura CORBA básica.
Question 110
Question
Java IDL es una herramienta que permite implementar aplicaciones distribuidas
basadas en CORBA usando Java como lenguaje de programación. ¿Cuáles son las
herramientas básicas de Java IDL para desarrollar aplicaciones CORBA?
Answer
-
register_CORBA y narrow
-
servertool y gcccgi
-
rmic y tnameserv
-
idlj y orbd
Question 111
Question
Seleccione la afirmación correcta sobre las variables de un servlet
Answer
-
Las variables persisten en el lado servidor, dado que el servlet continúa
ejecutando en el motor de servlets, pero no pueden usarse para almacenar
información de estado del servidor
-
Una variable de un servlet es segura, su valor solo puede visualizarse
por aquel cliente que ha hecho la asignación de dicho valor a la variable
-
Las variables pueden de almacenar información de estado, y de hecho
es el método ideal para hacerlo, dado que el programador tiene control
absoluto sobre el ciclo de vida de un servlet
-
Las variables permiten almacenar información de estado o sesión, pero
se hace difícil separar los datos de estado de las sesiones concurrentes
Question 112
Question
En respuesta a una petición de un cliente, el servidor HTTP debe enviar una respuesta,
compuesta de distintas partes. Seleccione cuál de las siguientes partes NO pertenece
a una respuesta HTTP:
Answer
-
Línea de respuesta con el método HTTP, el URI solicitado y la
especificación del protocolo HTTP utilizado
-
Respuesta o línea de estado, con el protocolo, el código de estado y una
descripción
-
Una sección de cabecera con líneas de respuesta y de entidad
-
Un cuerpo de la respuesta precedido de una línea en blanco para
separarlo de la cabecera de respuesta
Question 113
Question
En CORBA aparece el concepto de ORB (Object Request Broker). Seleccione la
afirmación correcta sobre dicho ORB.
Answer
-
Se trata de un protocolo de interoperabilidad que permite que el servicio
de nombrado registre objetos con distintas implementaciones
-
Se trata de una capa intermediaria entre el stub y el skeleton y la red del
cliente y el servidor, respectivamente, y sirve para resolver las diferencias
existentes en lo referente a lenguajes de programación
-
Es el nombre que recibe la implementación concreta del objeto
distribuido en la arquitectura CORBA
-
Es el nombre específico que reciben los proxies cliente y servidor en
CORBA, y que en RMI se denominaban resguardo y esqueleto.
Question 114
Question
En las aplicaciones de Internet es muy frecuente que en el lado servidor sea necesario
realizar una lógica de negocio a través de la ejecución de algún tipo de script. En la
asignatura se presentan dos posibilidades, el uso de CGIs y el uso de servlets, aunque
estas dos tecnologías tienen varias diferencias muy importantes entre sí. De las
siguientes afirmaciones sobre dichas diferencias, seleccione la respuesta correcta:
Answer
-
CGI extiende únicamente servidores HTTP, mientras que los servlets
pueden extender cualquier servidor que tenga un protocolo de preguntarespuesta
-
CGI ejecuta en la máquina servidora sin soporte arquitectónico adicional,
mientras que los servlets requieren un módulo llamado motor o contenedor
-
Un script CGI se recarga cada vez que el cliente lo solicita, mientras que
una sola instancia de servlet seguirá ejecutando mientras tenga peticiones,
lo que permite almacenar en sus variables información de estado o sesión
-
Todas las diferencias entre CGI y Servlets anteriores son ciertas
Question 115
Question
El paradigma de agentes resulta muy interesante en el ámbito de la computación
distribuida, ya que proporciona ciertas ventajas únicas. ¿Cuál de las siguientes
afirmaciones no es considerada como una ventaja de este paradigma?
Answer
-
Evita riesgos de seguridad para los participantes de la comunicación
-
Se ofrece asíncronía y descentralización
-
Permite uso eficiente de canales de comunicación
-
Permite que los dispositivos no estén conectados ininterrumpidamente a
la red
Question 116
Question
Se tiene el siguiente código fuente de un servlet:
...
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException{
response.setContentType("text/html");
ServletOutputStream out = response.getOutputStream();
out.println("<html>");
out.println("<head><title>Servlet Response" +
"</title></head>");
out.println("<body>");
Cookie c;
Enumeration keys;
String name, value, prefix;
keys = request.getParameterNames();
while (keys.hasMoreElements()){
name = (String)keys.nextElement();
prefix = name.substring(0,4);
if (prefix.equals("item")){
value = request.getParameter(name);
out.println("<H4>Setting cookie: " + name +
" " + value + "</H4>");
c = new Cookie(name, value);
c.setMaxAge(1*24*60*60);
response.addCookie(c);
}//end if
} //end while
out.println("</body></html>");
response.sendRedirect("...");
} //end doPost
Answer
-
El servlet hace uso de un mecanismo de almacenamiento de información
que guarda la información de sesión en el lado servidor
-
El servlet genera una única cookie que almacena todos los items que el
cliente ha seleccionado en un formulario
-
La implementación permite que la aplicación clienteservidor
funcione
siempre independientemente de la configuración del navegador web cliente
-
El servlet genera múltiples cookies estableciendo como máximo tiempo
de duración en cada una de ellas 1 día
Question 117
Question
Uno de los pares <clave> : <valor> más importantes en las cabeceras de respuesta
HTTP es el que tiene por clave el string ContentType.
Seleccione la afirmación
correcta sobre dicha línea.
Answer
-
Es el tamaño en número de bytes del contenido del cuerpo de la
respuesta
-
Es una línea de entidad que especifica el nombre del tipo de datos del
objeto solicitado por el cliente
-
Es un campo que especifica el esquema de codificado de los datos,
indicando si es uuencode o base64, y se usa a propósito de la compresión
de datos
-
Es una línea de respuesta que especifica el tipo de datos dentro del
protocolo MIME
Question 118
Question
Un Applet es un tipo especial de programa Java que se carga en el navegador o en un
visor de applets. Al proceder de una máquina remota y ejecutar en local, se trata de un
mecanismo poco utilizado por cuestiones de seguridad, a pesar de que un applet tiene
muchas acciones restringidas en su ejecución. Escoja cuál de las siguientes
afirmaciones es falsa.
Answer
-
Un applet no puede leer ficheros en la máquina local
-
Un applet no puede conectarse por red con máquinas remotas que no
sean la máquina originaria desde la que se descargó el applet
-
Un applet no puede escribir ni ejecutar ficheros en la máquina local
-
Un applet no puede acceder, por seguridad, a los métodos awt de
pintado de gráficos
Question 119
Question
Una de las grandes tendencias futuras en computación distribuida es el desarrollo de
paradigmas de computación colaborativa. ¿Cuál es el concepto principal de este
paradigma?
Answer
-
Implementar el paradigma de agentes de forma que un agente se
desarrolle colaborativamente entre el cliente y el servidor
-
Consiste en tener una cola de mensajes para establecer conexiones
punto a punto basadas en sockets, pero forzando a los nodos a
sincronizarse de forma bloqueante
-
Tener canales para permitir que los procesos independientes colaboren
en tiempo real
-
Tener una jerarquía de espacios de objetos donde cada cliente o
servidor puede introducir objetos para compartir información con otro
elemento
Question 120
Question
Seleccione la afirmación falsa acerca del lenguaje HTML (Hypertext Markup Language).
Answer
-
Permite incluir ciertas frases o palabras destacadas que enlazan con
otros documentos o ficheros
-
HTML es el lenguaje de etiquetado utilizado para crear los documentos
básicos de la World Wide Web
-
Se utiliza en protocolos tales como SOAP para estructurar datos en una
jerarquía de etiquetas
-
Está basado en SGML y uno de sus cometidos es el de representar
documentos en un formato uniforme en cualquier plataforma
Question 121
Question
En el uso de servlets HTTP intervienen distintos elementos arquitectónicos, que se
comunican entre sí de una manera concreta. Seleccione la afirmación correcta sobre
ellos:
Answer
-
El servidor hace de mediador entre los clientes y un módulo llamado
motor de servlets, que es el que contiene el servlet, de tal manera que entre
el cliente y dicho motor no hay comunicación directa
-
Un cliente invoca un método remoto del servlet de manera directa,
ejecutando un doPost o un doGet que ha sido declarado en una interfaz
remota
-
El motor de servlets debe iniciar la ejecución de una nueva instancia del
servlet por cada cliente que envía peticiones en una aplicación basada en
servlets
-
El cliente carga un código fuente de servlet en el motor, y el motor
notifica al servidor que debe empezar a aceptar peticiones para dicho
servlet
Question 122
Question
El servicio de nombres de CORBA cumple un papel análogo al registro RMI, salvo que
en el caso de CORBA, el servicio de nombres es independiente de lenguaje y
plataforma. ¿Qué particularidad tiene dicho sistema de nombrado?
Answer
-
Se trata de un sistema basado en las operaciones register (registrar) y
search (buscar), para exportar y localizar objetos
-
El servicio de nombres de CORBA no debe inicializarse en ninguna
máquina servidora, algo que no ocurría en RMI
-
Se trata de un sistema jerárquico que permite emplear distintos
contextos de nombrado, a modo de árbol de ficheros o directorios
-
Se trata de un sistema plano de nombrado que funciona como un bus de
objetos interconectados
Question 123
Question
Un objeto distribuido CORBA se localiza por medio de una referencia a objeto,
denominada IOR (Interoperable Object Reference). La IOR es una cadena de
caracteres que contiene codificada mucha información...¿cuál de los siguientes
elementos no aparece codificado en dicha IOR?
Answer
-
el tipo de objeto
-
El número de puerto del servidor del objeto
-
el ordenador donde se encuentra el objeto
-
una cadena de bytes que identifica cada método del objeto, así como
sus atributos