Programowanie współbieżne i rozproszone/PWR Wykład 10

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Monitory

 Podstawową wadą semafora jest to, że nie jest to mechanizm strukturalny, przez co trudno jest analizować programy  współbieżne i ogarnąć wszystkie możliwe przeploty. Dochodzą do tego częste błędy polegające na nieopatrznej zamianie operacji P i V ze sobą. 

Monitor jako moduł programistyczny

Monitor jako sekcja krytyczna

Zmienne warunkowe

Uproszczona semantyka instrukcji signal

Pełna semantyka instrukcji signal

Przykłady

Wzajemne wykluczanie

Czytelnicy i pisarze

Muteksy (zamki) i zmienne warunkowe w systemie Unix

Operacje lock i unlock

Operacje wait, signal i broadcast

Analogie z monitorami

Różnice w porównaniu z monitorami

Przykłady

Wzajemne wykluczania. Wersja 1.

Wzajemne wykluczania. Wersja 2.