Dekkersov algoritam

Autor: Robert Simon
Datum Stvaranja: 17 Lipanj 2021
Datum Ažuriranja: 24 Lipanj 2024
Anonim
Dekkersov algoritam - Tehnologija
Dekkersov algoritam - Tehnologija

Sadržaj

Definicija - Što znači algoritam Dekkera?

Dekkerov algoritam prvi je poznati algoritam koji rješava problem međusobne isključenosti u istodobnom programiranju. Zaslužan je za Th. J. Dekker, nizozemski matematičar koji je stvorio algoritam za drugu prijevaru. Dekkers algoritam koristi se u čekanju procesa i omogućava dvije različite niti da dijele isti resurs za jednokratnu upotrebu bez sukoba koristeći zajedničku memoriju za komunikaciju.


Uvod u Microsoft Azure i Microsoft Cloud | Kroz ovaj vodič naučit ćete o čemu se radi računalstvo u oblaku i kako vam Microsoft Azure može pomoći da preselite i pokrenete svoje poslovanje iz oblaka.

Tehopedija objašnjava Dekkersov algoritam

Dekkerov algoritam dopustit će samo jedan proces za korištenje resursa ako ga dva procesa pokušavaju koristiti istovremeno. Vrhunac algoritma je kako rješava ovaj problem. Uspijeva spriječiti sukob prisilnim međusobnim isključenjem, što znači da samo jedan proces može istovremeno koristiti resurs i čekati ako ga koristi drugi proces. To se postiže upotrebom dvije "zastave" i "tokena". Zastave označavaju da li proces želi ući u kritični odjeljak (CS) ili ne; vrijednost 1 znači TRUE da proces želi ući u CS, dok 0 ili FALSE znači suprotno. Token, koji također može imati vrijednost 1 ili 0, označava prioritet kada oba postupka zastave postave na TRUE.

Ovaj algoritam može uspješno nametnuti međusobno isključivanje, ali stalno će provjeravati je li kritični presjek dostupan i stoga gubi značajno procesorsko vrijeme. To stvara problem poznat kao lockstep sinkronizacija, u kojem se svaka nit može izvršiti samo u strogoj sinkronizaciji. Također se ne može proširivati ​​jer podržava samo dva procesa za međusobno isključivanje.