cz1str8
Problem czytelników i pisarzy
Dzielenie obiektu danych (pliku, rekordu) między kilka współbieżnych procesów.
Niektóre procesy będą tylko czytać (czytelnicy), inne mogą uaktualniać (czytać i pisać - pisarze).
Problem zagwarantowania wyłączności dostępu pisarzy do obiektu.
Najprostszy wariant: żaden czytelnik nie powinien czekać, chyba, że pisarz uzyskał dostęp.
Próba rozwiązania: procesy czytelników dzielą zmienne: var wzfywy, pis: semafor; liczp: integer\
wartości początkowe: wzajwy, pis 1, liczp 0.
Struktura procesu pisarza:
czekaj (pis);
pisanie
sygnał izuj (p is).
Struktura procesu czytelnika:
czekaj (wzaj wy);
liczp: =liczp 4- 1; if liczp = 1 then czekaj (pis); sygnalizuj (wzajwy);
czytanie
czekaj (wzajwy);
liczp: = liczp - 1; if liczp = 0 then sygnalizuj (pis); sygnał izuj (wzajwy);
Przykład prostego rozwiązania: pałeczka - semafor
próba podniesienia pałeczki - operacja czekaj odłożenie pałeczki - operacja sygnalizuj Dane dzielone:
varpałeczka'. array[0..4] of semafor', wartości początkowe = 1.
Struktura procesu filozofa nr i: rcpcat
czekaj (paleczka[\ ]); czekaj(pałęczka[i+1 mod 5]);
jedzenie
synal izuj(pałeczka [ i ]); sygnalizuj(pałeczka[i +1 mod 5]);
myślenie
until false\
Wyszukiwarka
Podobne podstrony:
Problem czytelników i pisarzy w bazach danych • Praktyczne implementacje rozwiązanProblem czytelników i pisarzy w bazach danych c.d. • W ogólności, zwiększenie stopSemafory. Problem czytelników i pisarzy• Wariant 1: liczba miejsc czytelników nie jest ograniczonaSemafory. Problem czytelników i pisarzy c.d. • Żaden z czytelników nie musi czekaćSemafory. Problem czytelników i pisarzy • Wariant 2 (specjalny): Znana jest liczbaSemafory. Problem czytelników i pisarzy c.d. • Przedstawiony wariant zakładaSemafory. Problem czytelników i pisarzy c.d.• Wariant 3: Problem czytelników i pisarzy z możliwościąSemafory. Problem czytelników i pisarzy c.d. process PISARZ begin 1: wait(mutex_2)Klasyczne problemy wspołbieżnosci. Problem czytelników i pisarzy • ProblemKlasyczne problemy wspołbieżnosci. Problem czytelników i pisarzy c.d • DotychczasProblem czytelników i pisarzy Dane są dwa rodzaje procesów: czytelnicy i pisarze, które mogą korzystMonitory - przykład •* Rozwiązanie problemu czytelników i pisarzy za pomocą monitorów ■* Zakładamy,Balans kolorow powoduje zmianę kanałów RGB w momencie eksportu obiektu do pliku SWF. Wybierz "O6. ZAWARTOŚĆ I FORMATY DANYCH W PLIKU Z WYNIKAMI OCENY RYZYKA W pliku z wynikami oceny ryzyka wykorzinteger wielkości A i wpisz do mej elementy z pliku dane.txt. Na danych z pliku dokonaj następującyccz1str7 Problem aktywnego czekania, wirującej blokady Procesy stojące pod semaforem wykonują pętle iwięcej podobnych podstron