Ejercicio de concurrencia de procesos

De Wiki de Sistemas Operativos
Revisión del 12:06 9 may 2011 de JCGarrido (discusión | contribuciones) (Ejercicio 1: Corrección ortográfica.)
Saltar a: navegación, buscar

Ejercicio 1

Realice el cronograma temporal que represente la ejecución de un proceso P1 que dispone de dos hilos, h1 y h2. Ambos hilos sincronizan su ejecución mediante cerrojos y ejecutan el mismo código:

for (int i=0; i<2; i++) {  /* instrucción 1 */
    lock_down();           /* instrucción 2 */
    funcion();             /* instrucción 3 */
    lock_up();             /* instrucción 4 */
}

Suponga que:

  • El planificador emplea turno rotatorio estricto con quantum de 3 unidades de ejecución.
  • Se sabe que el hilo h1 es seleccionado en primer lugar por el planificador para ejecutarse.
  • La ejecución de cada línea de código representado anteriormente supone una unidad de ejecución, por tanto, todas las instrucciones toman el mismo tiempo de ejecución.

El cronograma deberá incluir qué instrucción se ejecuta en cada unidad de ejecución.

Solución Ejercicio 1