Graficul de alocare a resurselor este reprezentarea picturală a stării unui sistem. După cum sugerează și numele, graficul de alocare a resurselor este informația completă despre toate procesele care dețin unele resurse sau care așteaptă unele resurse.
De asemenea, conține informații despre toate instanțele tuturor resurselor, indiferent dacă acestea sunt disponibile sau sunt utilizate de procese.
În graficul de alocare a resurselor, procesul este reprezentat printr-un cerc, în timp ce resursa este reprezentată printr-un dreptunghi. Să vedem în detaliu tipurile de vârfuri și muchii.
Nodurile sunt în principal de două tipuri, de resurse și de proces. Fiecare dintre ele va fi reprezentat printr-o formă diferită. Cercul reprezintă procesul, în timp ce dreptunghiul reprezintă resursa.
O resursă poate avea mai multe instanțe. Fiecare instanță va fi reprezentată printr-un punct în interiorul dreptunghiului.
Marginile din RAG sunt, de asemenea, de două tipuri, unul reprezintă atribuirea și celălalt reprezintă așteptarea unui proces pentru o resursă. Imaginea de mai sus prezintă fiecare dintre ele.
O resursă este afișată ca fiind atribuită unui proces dacă coada săgeții este atașată unei instanțe la resursă și capul este atașat unui proces.
Un proces este afișat ca așteptând o resursă dacă coada unei săgeți este atașată procesului în timp ce capul este îndreptat către resursă.
programul java
Exemplu
Să luăm în considerare 3 procese P1, P2 și P3 și două tipuri de resurse R1 și R2. Resursele au câte 1 instanță fiecare.
Conform graficului, R1 este folosit de P1, P2 ține R2 și așteaptă R1, P3 așteaptă atât R1, cât și R2.
Graficul nu este blocat deoarece nu se formează niciun ciclu în grafic.