Está en la página 1de 4

Unidad 7 7.1 Considere el interbloqueo entre vehculos mostrado en la figura 7.

9 Demuestre que las cuatro condiciones necesarias para que se cumpla un interbloqueo se cumplen en este ejemplo R: / Exclusin mutua. Todos los carros (procesos) esperan salir (ejecutarse) Retener y esperar. Cada proceso mantiene los recursos que ya le han sido asignados a la vez que espera a adquirir los dems Sin desalojo. Significa que un recurso solo puede ser liberado de forma voluntaria por el proceso al que se le ha concedido su uso. Espera circular. Los procesos interbloqueados forman una cadena circular, de modo que cada proceso mantiene uno o ms de los recursos que son solicitados por el siguiente proceso de la cadena. Enuncie una regla simple para evitar los interbloqueos en este sistema R: / Estado seguro: si todos los procesos que ya tienen concedidos los recursos tienen la posibilidad de ser completados en algn orden determinado, incluso si cada uno de esos procesos utilizara todos los recursos a los que est autorizado. 7.2 237 Considere la situacin de interbloqueo que podra producirse en el problema de la cena de filsofos cuando cada uno de ellos toma un palillo cada vez. Explique cmo se cumplen las cuatro condiciones necesarias de interbloqueo en esta situacin. Explique cmo podran evitarse los interbloqueos impidiendo que se cumpla una cualquiera de las cuatro condiciones R: / Exclusin mutua. Cada filsofo espera obtener un palillo Retener y esperar. Cada filosofo tiene un palillo espera obtener otro Sin desalojo. Un filsofo solamente puede deshacerse de un palillo solamente si l quiere Espera circular. Cada filsofo tiene el palillo que otros filsofos quieren. Retener y esperar. Para asegurar que nunca se produzca, debemos garantizar que, cuando un proceso solicite un recuro, el proceso no est reteniendo ningn otro recurso. 7.3 Una posible solucin para evitar los interbloqueos es tener un nico recurso de orden superior que debe solicitarse antes que cualquier otro recurso. Por ejemplo, si varias hebras intentan acceder a los objetos de sincronizacin AE, puede producirse un interbloqueo (Tales objetos de sincronizacin pueden ser mtex, semforos, variables de condicin, etc.) Podemos impedir el interbloqueo aadiendo un sexto objeto F. Cuando una hebra quiera adquirir el bloqueo de sincronizacin de cualquier objeto

AE, primero deber adquirir el bloqueo para el objeto D. Esta solucin se conoce con el nombre de contencin: Los bloqueos para los objetos AE estn contenidos dentro del bloqueo del objeto F. Compare este esquema de espera circular de la seccin 7.4.4 R: / Si se usan estos dos protocolos, entonces la condicin de espera circular no puede llegar a cumplirse. Podremos demostrar este hecho suponiendo que existe una espera circular. Sea el conjunto de los procesos implicados en la espera circular A..E donde A espera acceder al recurso que est retenido por el proceso E. Entonces dado que el proceso E esta reteniendo el recurso mientras solicita otro recurso tiene que cumplir que E(recurso1) < E(recurso2). Esta condicin quiere decir que es imposible por tanto no puede existir una espera circular. 7.4 Compare el esquema de espera circular con los distintos esquemas de evasin de interbloqueos en lo que respecta a las cuestiones siguientes: Tiempo de ejecucin adicional necesario R: / El tiempo de ejecucin varia debido a la complejidad del programa donde se quiera aplicar este esquema Tasa de procesamiento del sistema R: / Todo esquema asegura que al menos una de las condiciones necesarias para que haya interbloqueo no se produzca y, por lo tanto que no puedan aparecer interbloqueos. Sin embargo, esta tcnica de prevencin de interbloqueos tiene algunos posibles efectos colaterales, como son una baja tasa de utilizacin de los dispositivos y una menor rendimiento del sistema. 7.5 En una computadora real, ni los recursos disponibles ni las demandas de recursos de los procesos son homogneos durante periodos de tiempo largos (meses); los recursos se averan o se reemplazan, aparecen y desaparecen procesos nuevos, se compran y aaden al sistema recursos adicionales Si controlamos los interbloqueos mediante el algoritmo del banquero Cul de los siguientes cambios puede realizarse de forma segura y bajo qu circunstancias? a. Aumentar el valor de Avaible b. Disminuir el valor de Avaible c. Aumentar el valor de max para un proceso d. Disminuir el valor de max para un proceso e. Aumentar el nmero de procesos f. Disminuir el nmero de procesos 7.6 Considere un sistema que tiene cuatro recursos del mismo tipo, compartidos entre tres procesos, cada proceso necesita como mximo dos recursos. Demostrar que el sistema est libre de interbloqueos

R: / Como solo hay cuatro recursos y hay tres procesos, dos procesos estarn usando los cuatro recursos el otro solamente esperara que el P1 termine con el recurso R1 o R2 y que el P2 termine con el R3 o R4 para que el proceso P3 solamente tome cualquiera que sea liberado 7.7 Considere un sistema que consta de m recursos del mismo tipo, compartidos por n procesos. Los procesos solo pueden solicitar y liberar recursos de uno en uno. Demostrar que el sistema est libre de interbloqueos si se cumplen las dos condiciones siguientes: a. La necesidad mxima de cada proceso est comprendida entre 1 y m recursos b. La suma de todas las necesidades mxima es menor que m + n. R: / Se conceden solamente aquellas peticiones de recursos que no lleven al sistema a un estado de interbloqueo. No se producir una espera circular debido a que Si tengo varias instancias de un mismo recurso, la existencia de un ciclo es condicin necesaria pero no suficiente para qu haya interbloqueo. 7.8 Considere el problema de los filsofos suponiendo que los palillos se colocan en el centro de la mesa y que cualquier filsofo pueda usar dos cualesquiera de ellos. Suponga que las solicitudes de palillos se hacen de una en una. Describa una regla simple para determinar si una solicitud concreta podra ser satisfecha sin dar lugar a interbloqueo, dada la asignacin actual de palillos a los filsofos. R: / Estado seguro. Si todos los filsofos que ya tienen concedidos los palillos tienen la posibilidad de ser entregados en algn orden determinado, incluso si cada uno de esos filsofos utilizara todos los palillos a los que se le fueron asignados. 7.9 Considere la misma situacin que en el problema anterior y suponga ahora que cada filsofo requiere tres palillos para comer y que cada solicitud de recurso se sigue realizando todava por separado. Describa algunas reglas simples para determinar si una solicitud concreta podra ser satisfecha sin dar lugar a un interbloqueo, dada la asignacin actual de palillos a los filsofos R: / Los recursos se clasifican por categoras y los procesos solo pueden solicitar los recursos en orden creciente, adems todos los recursos de una categora deben ser solicitados a la vez. Una vez que un proceso ha solicitado un recurso de una categora, no puede solicitar otro de una categora inferior. El sistema puede expropiar la asignacin de un recurso a un proceso 7.10 Podemos obtener un algoritmo simplificado del banquero para un nico tipo de recurso a partir del algoritmo general del banquero, simplemente reduciendo la dimensionalidad de las diversas matrices en 1. Demuestre mediante un ejemplo que el algoritmo del banquero para mltiples tipos de recursos no se puede implementar con solo aplicar individualmente a cada tipo de recurso del algoritmo simplificado para un nico tipo de recurso. R: / Un ejemplo del sistema del banquero podra ser El banco confa en que no tendr que permitir a todos sus clientes la utilizacin de todo su crdito a la vez. El banco tambin asume que si un cliente maximiza su crdito ser capaz de terminar sus negocios y devolver el dinero a la entidad, permitiendo servir a otros clientes.

También podría gustarte