cz1str8

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: semaforliczp: 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ązan
Problem czytelników i pisarzy w bazach danych c.d. •    W ogólności, zwiększenie stop
Semafory. Problem czytelników i pisarzy• Wariant 1: liczba miejsc czytelników nie jest ograniczona
Semafory. 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 liczba
Semafory. Problem czytelników i pisarzy c.d. •    Przedstawiony wariant zakłada
Semafory. 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 •    Problem
Klasyczne problemy wspołbieżnosci. Problem czytelników i pisarzy c.d •    Dotychczas
Problem czytelników i pisarzy Dane są dwa rodzaje procesów: czytelnicy i pisarze, które mogą korzyst
Monitory - 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 "O
6. ZAWARTOŚĆ I FORMATY DANYCH W PLIKU Z WYNIKAMI OCENY RYZYKA W pliku z wynikami oceny ryzyka wykorz
integer wielkości A i wpisz do mej elementy z pliku dane.txt. Na danych z pliku dokonaj następującyc
cz1str7 Problem aktywnego czekania, wirującej blokady Procesy stojące pod semaforem wykonują pętle i

więcej podobnych podstron