SOP wyk nr 16-Slajd20: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Dwa (dyskusja | edycje)
Nie podano opisu zmian
 
Dwa (dyskusja | edycje)
Nie podano opisu zmian
 
Linia 4: Linia 4:




Z maksymalnego zapotrzebowania oraz bieżącego przydziału wynika, że proces ''P1'' może zażądać jeszcze 5 jednostek (deklaruje 10, a 5 już ma), proces ''P2'' może zażądać jeszcze 2 jednostek, a proces ''P3'' jeszcze 7 jednostek. Do rozdysponowania pozostały jeszcze 3 jednostki, gdyż 9 zostało przydzielonych (5+2+2). W wariancie pesymistycznym żądań zasobowych te 3 wolne jednostki wystarczą dla procesu ''P2'' . Po zakończeniu ''P2'' odzyskane zostaną przydzielone mu jednostki, łącznie będzie więc 5 wolnych jednostek. Taka liczba jednostek będzie wystarczająca dla ''P1'' , a po odzyskaniu przydzielonych mu jednostek ich liczba wzrośnie do 10. Oczywiście uwzględniając ograniczenia na wielkość zamówień, uzyskane jednostki muszą być wystarczające dla ''P3'' . Ciąg bezpieczny to ''P2'' , ''P1'' , ''P3'' .  
Z maksymalnego zapotrzebowania oraz bieżącego przydziału wynika, że proces ''P<sub>1</sub>'' może zażądać jeszcze 5 jednostek (deklaruje 10, a 5 już ma), proces ''P<sub>2</sub>'' może zażądać jeszcze 2 jednostek, a proces ''P<sub>3</sub>'' jeszcze 7 jednostek. Do rozdysponowania pozostały jeszcze 3 jednostki, gdyż 9 zostało przydzielonych (5+2+2). W wariancie pesymistycznym żądań zasobowych te 3 wolne jednostki wystarczą dla procesu ''P<sub>2</sub>'' . Po zakończeniu ''P<sub>2</sub>'' odzyskane zostaną przydzielone mu jednostki, łącznie będzie więc 5 wolnych jednostek. Taka liczba jednostek będzie wystarczająca dla ''P<sub>1</sub>'' , a po odzyskaniu przydzielonych mu jednostek ich liczba wzrośnie do 10. Oczywiście uwzględniając ograniczenia na wielkość zamówień, uzyskane jednostki muszą być wystarczające dla ''P<sub>3</sub>'' . Ciąg bezpieczny to ''P<sub>2</sub>'' , ''P<sub>1</sub>'' , ''P<sub>3</sub>'' .  


Po zrealizowaniu żądania procesu ''P3'' stan systemu jest następujący:
Po zrealizowaniu żądania procesu ''P3'' stan systemu jest następujący:
* ''P1'' ma przydzielone 5 jednostek, może potrzebować jeszcze 5,
* ''P<sub>1</sub>'' ma przydzielone 5 jednostek, może potrzebować jeszcze 5,
* ''P2'' ma przydzielone 2 jednostki, może potrzebować jeszcze 2,
* ''P<sub>2</sub>'' ma przydzielone 2 jednostki, może potrzebować jeszcze 2,
* ''P3'' ma przydzielone 3 jednostki, może potrzebować jeszcze 3.
* ''P<sub>3</sub>'' ma przydzielone 3 jednostki, może potrzebować jeszcze 3.


W systemie pozostały 2 wolne jednostki, którymi można zaspokoić potencjalne potrzeby procesu ''P2'' . Po zakończeniu ''P2'' liczba jednostek do rozdysponowania zwiększy się do 4, ale może się to okazać niewystarczające zarówno dla ''P1'' , jak i dla ''P3'' . Gdyby któryś z nich zażądał więcej niż 4 jednostek (co jest zgodne z ich deklaracjami), doszłoby do zakleszczenia. Zrealizowanie żądania procesu ''P2'' wprowadza system w stan niebezpieczny. Stan ten nie oznacza jednak jeszcze zakleszczenia — jest to dopiero zagrożenie. Przy sprzyjającym zbiegu okoliczności (sprzyjającej sekwencji żądań) zakleszczenia można uniknąć.
W systemie pozostały 2 wolne jednostki, którymi można zaspokoić potencjalne potrzeby procesu ''P<sub>2</sub>'' . Po zakończeniu ''P<sub>2</sub>'' liczba jednostek do rozdysponowania zwiększy się do 4, ale może się to okazać niewystarczające zarówno dla ''P<sub>1</sub>'' , jak i dla ''P<sub>3</sub>'' . Gdyby któryś z nich zażądał więcej niż 4 jednostek (co jest zgodne z ich deklaracjami), doszłoby do zakleszczenia. Zrealizowanie żądania procesu ''P<sub>2</sub>'' wprowadza system w stan niebezpieczny. Stan ten nie oznacza jednak jeszcze zakleszczenia — jest to dopiero zagrożenie. Przy sprzyjającym zbiegu okoliczności (sprzyjającej sekwencji żądań) zakleszczenia można uniknąć.




[[SOP_wyk_nr_16-Slajd19 | << Poprzedni slajd]] | [[SOP_wyk_nr_16-toc|Spis treści ]] | [[SOP_wyk_nr_16-Slajd21 | Następny slajd >>]]
[[SOP_wyk_nr_16-Slajd19 | << Poprzedni slajd]] | [[SOP_wyk_nr_16-toc|Spis treści ]] | [[SOP_wyk_nr_16-Slajd21 | Następny slajd >>]]

Aktualna wersja na dzień 12:09, 16 sie 2006

Przykład stanu i ciągu bezpiecznego

Przykład stanu i ciągu bezpiecznego


Z maksymalnego zapotrzebowania oraz bieżącego przydziału wynika, że proces P1 może zażądać jeszcze 5 jednostek (deklaruje 10, a 5 już ma), proces P2 może zażądać jeszcze 2 jednostek, a proces P3 jeszcze 7 jednostek. Do rozdysponowania pozostały jeszcze 3 jednostki, gdyż 9 zostało przydzielonych (5+2+2). W wariancie pesymistycznym żądań zasobowych te 3 wolne jednostki wystarczą dla procesu P2 . Po zakończeniu P2 odzyskane zostaną przydzielone mu jednostki, łącznie będzie więc 5 wolnych jednostek. Taka liczba jednostek będzie wystarczająca dla P1 , a po odzyskaniu przydzielonych mu jednostek ich liczba wzrośnie do 10. Oczywiście uwzględniając ograniczenia na wielkość zamówień, uzyskane jednostki muszą być wystarczające dla P3 . Ciąg bezpieczny to P2 , P1 , P3 .

Po zrealizowaniu żądania procesu P3 stan systemu jest następujący:

  • P1 ma przydzielone 5 jednostek, może potrzebować jeszcze 5,
  • P2 ma przydzielone 2 jednostki, może potrzebować jeszcze 2,
  • P3 ma przydzielone 3 jednostki, może potrzebować jeszcze 3.

W systemie pozostały 2 wolne jednostki, którymi można zaspokoić potencjalne potrzeby procesu P2 . Po zakończeniu P2 liczba jednostek do rozdysponowania zwiększy się do 4, ale może się to okazać niewystarczające zarówno dla P1 , jak i dla P3 . Gdyby któryś z nich zażądał więcej niż 4 jednostek (co jest zgodne z ich deklaracjami), doszłoby do zakleszczenia. Zrealizowanie żądania procesu P2 wprowadza system w stan niebezpieczny. Stan ten nie oznacza jednak jeszcze zakleszczenia — jest to dopiero zagrożenie. Przy sprzyjającym zbiegu okoliczności (sprzyjającej sekwencji żądań) zakleszczenia można uniknąć.


<< Poprzedni slajd | Spis treści | Następny slajd >>