cz2 str5

cz2 str5



Rozwiązanie dla zasobów reprezentowanych wielokrotnie algorytm „bankiera”

Proces wchodzący do systemu musi zadeklarować maksymalna liczbę egzemplarzy każdego zasobu. Kiedy proces w trakcie wykonywania zamawia potrzebne zasoby - system operacyjny decyduje czy te zasoby udostępnić, czy proces musi poczekać - tak aby system pozostał w stanie bezpiecznym

Struktury danych przechowujące stan systemu przydziałów.

n procesów, m typów zasobów Dostępne: array[0..m-l] of integer

określa liczbę dostępnych egz. każdego zasobu Dostępne[j]=k ozn., że jest dostępnych k egzemplarzy zasobu typuj.

Maksymalne: array[0..n-l,0..m-l] of integer

określa maksymalne żądania procesów względem zasobów poszczególnych typów.

Przydzielone: array[0..n-l,0..m-l] of integer

określa liczbę zasobów poszczególnych typów już przydzielonych do każdego z procesów.

Potrzebne: array[0..n-l,0..m-l] of integer

określa pozostałe do spełnienia zamówienia każdego procesów.

Uwagi:

Potrzebne[i,j]=MaksymaIne[i,j]-Przydzielone[i,j]

Struktury te są dynamiczne - zmieniają w czasie wymiary i wartości W zapisie algorytmów korzystamy dla uproszczenia zapisu z wektorów: Dostępne, Maksymalnej, Przydzielonej, Potrzebnej

(wektory względem zasobów).

Wprowadzamy relację dominacji między wektorami X, Y o wymiarach m:

X < Y wtedy i tylko wtedy gdy X[i] < Y[i] dla każdego i=l,..,m.

Zamówienia procesu i na zasoby oznaczane są przez: Zamówieniaj: array[0..m-l] of integer

Algorytm działań

podejmowanych, gdy proces i wykonuje zamówienia

Krok 1: Sprawdź czy Zamówienia,-< Potrzebnej tak: wykonaj krok 2, nie: warunek błędu.

Krok 2: Sprawdź czy Zamówieniaj < Dostępne tak: wykonaj krok 3, nie: proces i musi czekać.

Krok 3: Wykonaj próbę przydziału zasobów:

Dostępne:= Dostępne - Zamówienia,-;

Przydzielonej := Przydzielonej + Zamówieniaj;

Potrzebnej := Potrzebnej - Zamówieniaj;

Sprawdź czy stan jest bezpieczny (algorytm bezpieczeństwa), tak: przydziel zasoby procesowi i zgodnie z zamówieniem, nie: przywróć poprzedni stan zasobów, proces i musi czekać na realizację zamówienia: Zamówieniaj.


Wyszukiwarka

Podobne podstrony:
dyskursów”. Dla Kristevej np., badającej powieść, te ostatnie, wchodząc do danej „organizacji
Rys. 14. Wynik działania algorytmu ISODATA (5 klas) dla rastrowej reprezentacji intensywności odbici
Ćwiczenie - wspólne rozwiązywanie problemu REPREZENTACJA PROBLEMU I ALGORYTMU Analiza zadania
Przykładowe rozwiązanie zadania dla zawodu technik elektryk2. Algorytm prac prowadzących do lokaliza
Slajd37 (39) Zalety: •zapewniają mechanizm dla formalnej reprezentacji wiedzy, np. reguły, ramy. itp
IMG100 100 100 Ry0. 8.10. Schemat obwodu tych gałęzi. Rozwiązanie Dla wyznaczenia prądu płynącego pr
imgad Nowe rozwiązania dla firmProfesjonalne X9575 Drukarka, skaner, kopiarka, faks O Naboje XL O
IMG95 9. Stan naprężeń wokół wyrobiska korytarzowego posadowionego duiei głębokości (rozwiązanie dl
• Dla zasobów można definiować dodatkowe informacje: -    Kalendarze -
Wszechstronne rozwiązanie dla planowania i zarządzania portfolio produktów -    Wspie
MACIERZ POWIĄZANIA EFEKTÓW KSZTAŁCENIA DLA PRZEDMIOTU Metody Probabilistyczne Algorytmiki Z EFEKTA
WALDEMAR ZILLINGERZBIÓR ZADAŃ Z FIZYKI Z ROZWIĄZANIAMI DLA SZKÓŁ ŚREDNICH s WYDAWNICTWO EDUKACYJNE
AGHWYZNACZANIE ROZWIĄZAŃ OPTYMALNYCH METODA POTENCJAŁÓW W tym algorytmie wykorzystujemy
OPIS ZAGADNIENIA AGH Szukamy rozwiązania dla funkcji celu: m nminK = ^ ^ k.} ■ i=ij=i celem jest
4. Przykład wzorcowego rozwiązania Dla zilustrowania dobrze zorganizowanego stanowiska badania kolej

więcej podobnych podstron