Está en la página 1de 7
Pregunta 1 0/5 puntos Desde hace 3 afios todos los procesadores san construidos con tecnologfa de 7am x @ Verdadero = OFalso Pregunta 2 5/5 puntos Establezca la correspondencia entre las dos columnas . A la iquierda estan restricciones de sincronizacién y a la derecha los nombres de dichas restriccionas Un proceso debe accader al mismo tiempo a los datos v -A~ quo otro 4, encuentro Dos procesos no pueden accedar al mismo tiempo a 2, exclusion mutua ¥ -2~ una zona de datos 4, Sefalamiento v _3__ Un proceso se debe ejecutar antes que otra Pregunta 3 0/5 puntos Qué transicin de estado realiza un proceso que ejecuta la instruccién P() sobre un semaforo que tiene el valor de su contador en 1? % (@) De Listo a Ejecutando De Ejecutando a Dormido =) Ninguna, podria seguir en Ejecutando De Ejecutando a Listo Pregunta 4 5/5 puntos En una maquina mono-procesador el uso de yield() tiene sentido si de alguna manera sabemos que el proceso que esperamos esté ya en la cola de Listo v @ Verdadero Falso Pregunta 5 3/5 puntos {Cuéles de los siguiantes itams son compartidos entre miltiples threads que pertenecen al mismo proceso? > VS Datos estaticos Y Rogistros = Codigo vo Pilla = % | Datos dindmicos Pregunta 6 3/25 puntos En este ejercicio usted debe escribir las soluciones del caso 1 para almacenar y retirar productos del buzén con espera pasiva, pero en pseudo-cédigo utilizando semaforos. Para ello, primero escriba las soluciones que utiliz6 en Java y luego si traduzca su solucién a semaforos. Si bien el cédigo en Java no tiene que ser exacto al del caso, si esa parte del caso funcioné bien, deberia haber una alta similitud con lo alli entregado. a) 5% Cédigo en Java de los dos métodos b) 10% Pseudocédigo de recibir ©) 10% Pseudocédigo de enviar Pregunta ? 6/50 puntos Sisterna de traducciones en lines ‘Tenemoé un sistema dliente/servidor que funciona de la siguiente manera! existe un Conjunto de C clientes que solicitan tradueciones do palabras.a un corjunte de $ servidares que las respenden, Para solicitar una traduccion, el cliente comunicall salicitud a traves de un butter, de donde los servidores tas retiran y reaizan las tradueciones. Teng3.en cuenta que: ‘Un cliente debe esperar {espera pasiva) a que algun sorvidar traduzca su palabra. Una vez ha sida tradducida, se despierta y debe ‘encontrar su palabra traducids. [Un servidor espers (pasivamente) 8 que hayan solicitudes en el butter ‘Cuando logra tomar une solicitud realiza la traduccion y despierta al cliente que la solicit. Implemente una solucion en java, utlizando exelustvamente ino necesariamente todss) las funcionsliddes vistas en clase: synchronized, wait() notify). notifyAll), CyelicBarrier. sleep). joing. yielall. Para ello: a) 20% Escriba una clase T que ektienda de Thread pars representar a los clientes y servidores. Defina los atributas, implersente el ‘constructor, el métado run) y el main del programs principal. Los dientes deben generar una solicitud y esperar su traduccién, mientras que fos servidores estan ert un loop irfinita resolviendo solicitudes (y avisando 3 sus clientes cuando las han sealizado\- bb) 5 Escriba una clase Buffer para representar la comunicacién de los clientes hacis los seryidores. El butfer tiene una capacidad maxima de P solicitudes de traduccin. DDefinz los atributes. implemente el constructor ¢ implementa los meétodos <) yd} en esta clase: 16) 15% almacenarSolicitud(: recibe una Solicitud y la coleca en el buffer. Sief butter esta leno, espera (pasiva) por un espacio, Si el buffer tiene espscio; adicions fs solicitud al butter y espera por su traduccion, Note que sil butfer ests leno, se espera sobre el butter, mientras que si se aditiona ta soliitud. Ia notifiescion de [a traduecién so debe esperar sobre la solictud. Este métado fo usaran los dientes d} 10% retirarSolicitud( retorna una sobiritud. Si existe sl menos una en el butter retorns la primera, de lo contrario espers (pasival: Este métada fo usaran fos servidares. Suponga que ys existe (no hay que hacerlal una clase Solicitud para representar la palabra a traduciry su traduccion {tiene dos atributos String: patabraOriginal y palabraTraducida) con los métodos de consulta, modificacién, generarSoliciiud (que detine la palabra a traducir modificanéo el atributo palsbraOriginal y generafTraduceién (} que realiza la tradluccién (modificando el atribute palabraTraduciea),

También podría gustarte