Programación concurrente en Linux

# Test de autoevaluación de la Actividad 4.8

Asigna una puntuación a cada pregunta dependiendo de si sabes responderla (2), no estás seguro (1), o no sabes (0).

1. ¿Puedes describir con ejemplos de pseudo código la diferencia entre dos procesos bloqueados en el acceso a dos semáforos y dos procesos interbloqueados en el acceso a esos mismos semáforos?
2. ¿Por qué no es posible un interbloqueo entre dos procesos que acceden concurrentemente a un único recurso?
3. ¿Por qué son posibles los interbloqueos aunque se utilicen exclusivamente cerrojos de espera activa?
4. ¿Por qué una, vez ocurrido un interbloqueo, deshacerlo siempre afectará a la corrección de algunos de los programas involucrados?
5. Supón que restringimos la solicitud de recursos de la siguiente forma. Los recursos se ordenan según un índice. Si un proceso está usando un recurso Ri, solo puede solicitar Rk si k>i. ¿Puedes razonar por qué esta metodología permite evitar interbloqueos?

En función de la puntuación obtenida, continúa con el siguiente tema o repasa los aspectos que no hayas sabido responder.