Σπίτι Ανάπτυξη Τι είναι ο αλγόριθμος dekker; - ορισμός από την τεχνολογία

Τι είναι ο αλγόριθμος dekker; - ορισμός από την τεχνολογία

Πίνακας περιεχομένων:

Anonim

Ορισμός - Τι σημαίνει ο αλγόριθμος του Dekker;

Ο αλγόριθμος του Dekker είναι ο πρώτος γνωστός αλγόριθμος που λύνει το πρόβλημα αμοιβαίου αποκλεισμού στον παράλληλο προγραμματισμό. Πιστεύεται στον Th. J. Dekker, ολλανδός μαθηματικός που δημιούργησε τον αλγόριθμο για ένα άλλο πλαίσιο. Ο αλγόριθμος του Dekker χρησιμοποιείται στην ουρά διαδικασιών και επιτρέπει σε δύο διαφορετικά θέματα να μοιράζονται τον ίδιο πόρο μιας χρήσης χωρίς σύγκρουση, χρησιμοποιώντας κοινή μνήμη για επικοινωνία.

Η τεχνολογία εξηγεί τον Αλγόριθμο της Dekker

Ο αλγόριθμος του Dekker θα επιτρέψει σε μια μόνο διαδικασία να χρησιμοποιήσει έναν πόρο εάν δύο διαδικασίες προσπαθούν να το χρησιμοποιήσουν ταυτόχρονα. Το επίκεντρο του αλγορίθμου είναι το πώς λύνει αυτό το πρόβλημα. Καταφέρνει να αποτρέψει τη σύγκρουση επιβάλλοντας τον αμοιβαίο αποκλεισμό, πράγμα που σημαίνει ότι μόνο μία διαδικασία μπορεί να χρησιμοποιήσει τον πόρο κάθε φορά και θα περιμένει αν χρησιμοποιείται κάποια άλλη διαδικασία. Αυτό επιτυγχάνεται με τη χρήση δύο "σημαιών" και ενός "συμβόλου". Οι σημαίες υποδεικνύουν εάν μια διαδικασία θέλει να εισέλθει στο κρίσιμο τμήμα (CS) ή όχι. μια τιμή 1 σημαίνει TRUE ότι η διαδικασία θέλει να εισέλθει στο CS, ενώ 0, ή FALSE, σημαίνει το αντίθετο. Το διακριτικό, το οποίο μπορεί επίσης να έχει τιμή 1 ή 0, δείχνει προτεραιότητα όταν και οι δύο διαδικασίες έχουν τις σημαίες τους ρυθμισμένες σε TRUE.


Αυτός ο αλγόριθμος μπορεί επιτυχώς να επιβάλει αμοιβαίο αποκλεισμό, αλλά θα ελέγχει διαρκώς κατά πόσον είναι διαθέσιμο το κρίσιμο τμήμα και κατά συνέπεια σπαταλάει σημαντικό χρόνο επεξεργαστή. Δημιουργεί το πρόβλημα γνωστό ως συγχρονισμό lockstep, στο οποίο κάθε νήμα μπορεί να εκτελείται μόνο με αυστηρό συγχρονισμό. Επίσης δεν είναι επεκτάσιμη, καθώς υποστηρίζει μόνο δύο διαδικασίες για αμοιβαίο αποκλεισμό.

Τι είναι ο αλγόριθμος dekker; - ορισμός από την τεχνολογία