- producent konzument
- písaři/čtenáři
- jakýkoliv počet čtenářů může číst, ale psát může pouze jeden
- pokud někdo zapisuje nikdo nemůže číst
- může dojít k vyhladovění písařů!
- semafor
mutex = pro čtenáře,
- při čtení zablokuje i mutex
wrt pro zápis
- uvolní
wrt pokud při dočtení je poslední čtenář (nikdo jiný už nečte)
- semafor
wrt = pro písaře
- podobné semaforům, ale jsou jednodušší na použití
- high-level construct
- obsahuje:
- několik procedur
- inicializační posloupnost
- jenom 1 proces může být v proceduře, který stráží monitor
- synchronizace pomocí conditional variables = podmíněné proměnné
wait klasicky v programovacích jazycích jinak např. yield
- na zkoušku
- pro každou podmínku a počet čekajících na podmínku je vlastní proměnné
deliver stane se, až chce příjemce
- liveness = iglů?
- bezpečností = procesy se nikdy nepotkají v krit. sekci
- zpráva může vzniknout jako reakce na něco, např. na doručení zprávy
- žádný proces nedoručí reakci před původní zprávou
- slide??
- řádek 3 chyba, místo m_1 má být m_2 a naopak, označení zprávy toho druhého
- koruna o velikosti k je kauzální asychnronní cyklus