SO-1st-2.3-w12.tresc-1.0-Slajd31

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Problem pięciu filozofów

Problem pięciu filozofów


Synchronizacja w problemie pięciu filozofów odbywa się na dwóch poziomach:

  • lokalnym — synchronizacja dostępu do konkretnego widelca,
  • globalnym — koordynacja działań wszystkich pięciu filozofów w taki sposób, aby nie dopuścić do zakleszczenie, uwięzienia lub zagłodzenia któregoś z filozofów.

Potrzeba synchronizacji na poziomie lokalnym wynika z faktu, że każdy widelec jest współwłasnością dwóch filozofów, a używany w danej chwili może być tylko przez co najwyżej jednego z nich. Globalna koordynacja z kolei jest wymagana, gdyż każdy filozof w celu przejścia do stanu „jedzenie” potrzebuje dwóch widelców. Uzyskanie tylko jednego z nich może oznaczać przetrzymywanie zasobu bez wyraźnej perspektywy zwolnienia go po osiągnięciu stanu „sytości”, do czego potrzeba drugiego.


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