El gráfico de asignación de recursos es la representación gráfica del estado de un sistema. Como sugiere su nombre, el gráfico de asignación de recursos es la información completa sobre todos los procesos que retienen algunos recursos o esperan algunos recursos.
También contiene información sobre todas las instancias de todos los recursos, ya sea que estén disponibles o estén siendo utilizados por los procesos.
En el gráfico de asignación de recursos, el proceso está representado por un círculo, mientras que el recurso está representado por un rectángulo. Veamos en detalle los tipos de vértices y aristas.
Los vértices son principalmente de dos tipos, recurso y proceso. Cada uno de ellos estará representado por una forma diferente. El círculo representa el proceso, mientras que el rectángulo representa el recurso.
Un recurso puede tener más de una instancia. Cada instancia estará representada por un punto dentro del rectángulo.
Los bordes en RAG también son de dos tipos, uno representa la asignación y otro representa la espera de un proceso por un recurso. La imagen de arriba muestra cada uno de ellos.
Un recurso se muestra como asignado a un proceso si la cola de la flecha está adjunta a una instancia del recurso y la cabeza está adjunta a un proceso.
Se muestra que un proceso está esperando un recurso si la cola de una flecha está unida al proceso mientras la cabeza apunta hacia el recurso.
Ejemplo
Consideremos 3 procesos P1, P2 y P3, y dos tipos de recursos R1 y R2. Los recursos tienen 1 instancia cada uno.
Según el gráfico, P1 está utilizando R1, P2 mantiene a R2 y espera a R1, P3 está esperando a R1 y a R2.
El gráfico está libre de interbloqueos ya que no se forma ningún ciclo en el gráfico.