Silná vazba (souběžné programování)

Silná vazba nastane, když algoritmus výslovně průchod ruky (handshake) mezi synem provedení ( závit ), který chce vstoupit do kritické sekce . V algoritmu bez silné vazby vstup do kritické sekce nezávisí na výstupu konkrétního úkolu, ale jednoduše na tom, zda se sekce nepoužije.

Příklady metod pro ochranu kritického úseku silnou vazbou

Následující algoritmus představuje algoritmus pro přístup do kritické sekce pro dva úkoly. Vstupním parametrem je číslo úkolu (index založený na nule). Proměnná AUTHORIZED slouží jako zámek přístupu. Na začátku provádění systému je nula (0).

ENTRER(i) : TANTQUE AUTORISE<>i FAIRE rien FIN TANTQUE SORTIR(i) : AUTORISE=1-AUTORISE

Úkol nula (0) výslovně předává úkolu jeden (1), který dělá totéž pro úkol nula (0), tyto dva úkoly přistupují ke společnému prostředku (kritický zdroj) a běží ve vzájemném vyloučení . Silná vazba znamená, že vstup jednoho z úkolů v kritickém úseku závisí na výjezdu z druhé, toto řešení je častou příčinou zablokování .

Kromě indukce silné vazby tento algoritmus také indukuje aktivní čekání . Tato situace však není nutná. Ve skutečnosti je možné dosáhnout silného propojení bez aktivního čekání .

Podívejte se také