Semaphore vs. Mutex

Συγγραφέας: Laura McKinney
Ημερομηνία Δημιουργίας: 4 Απρίλιος 2021
Ημερομηνία Ενημέρωσης: 10 Ενδέχεται 2024
Anonim
What is difference between Semaphore and Mutex
Βίντεο: What is difference between Semaphore and Mutex

Περιεχόμενο

Η διαφορά ανάμεσα στο σηματοφόρο και το mutex είναι ότι το σηματοφόρο είναι μηχανισμός σηματοδότησης ενώ ο mutex είναι ο μηχανισμός κλειδώματος.


Το λειτουργικό σύστημα είναι η πιο σημαντική έννοια στην επιστήμη των υπολογιστών, στο λειτουργικό σύστημα, δύο βασικές έννοιες είναι το σηματοφόρο και το mutex. Υπάρχει μεγάλη διαφορά ανάμεσα σε ένα σηματοφόρο και ένα mutex. Αν μιλάμε για την κύρια διαφορά, τότε η κύρια διαφορά μεταξύ σηματοφόρου και mutex είναι ότι το σηματοφόρο είναι ένας μηχανισμός σηματοδότησης ενώ ο mutex είναι ο μηχανισμός κλειδώματος.

Η διαφορά μεταξύ σηματοφόρου και mutex έρχεται στις διαδικασίες. το σηματοφόρο εκτελεί λειτουργία wait () και signal (), αυτή η λειτουργία είναι υπεύθυνη για το αν έχει αποκτήσει ή έχει απελευθερώσει τον πόρο. Από την άλλη πλευρά, αν μιλάμε για mutex, ο mutex είναι ο μηχανισμός κλειδώματος.

Το σεμάφος είναι μια ακέραια μεταβλητή S. το σηματοφόρο είναι ένας μηχανισμός σηματοδότησης. Σε ένα λειτουργικό σύστημα, υπάρχει ανάγκη για ένα εργαλείο συγχρονισμού και αυτό το εργαλείο στο λειτουργικό σύστημα είναι γνωστό ως ένα σηματοφόρο. Υπάρχουν δύο κύριες λειτουργίες του σηματοφόρου που περιμένουν (), σήμα (). Η τιμή του σηματοφόρου αλλάζει με δύο λειτουργίες που περιμένουν () και σήμα (). Όταν μια διαδικασία χρησιμοποιεί έναν πόρο, το σηματοφόρο είναι σε αναμονή (), και όταν η διαδικασία χρησιμοποίησε τον πόρο, και αυτός ο πόρος είναι ελεύθερος, τότε το σηματοφόρο δίνει το σήμα (). Αυτές οι λειτουργίες που είναι wait () και signal (), αυτές χρησιμοποιούνται επειδή μόνο μία διαδικασία μπορεί να χρησιμοποιήσει τον πόρο ταυτόχρονα. Δεν μπορεί να δοθεί ένας πόρος σε δύο διαδικασίες. Υπάρχουν δύο τύποι σηματοφοριών στο λειτουργικό σύστημα που είναι δυαδικός σηματοφόρος και μετρώντας το σηματοφόρο. Κατά την καταμέτρηση του σηματοφορέα, η αρχικοποιημένη τιμή είναι ο αριθμός των πόρων που είναι διαθέσιμοι. Όταν μια διαδικασία χρησιμοποιεί έναν πόρο, αντιμετωπίζει την αναμονή () και πρέπει να περιμένει τον πόρο αυτό. Η καταμέτρηση της τιμής του σημαιριού μειώνεται μία προς μία. Όταν μια διαδικασία χρησιμοποιεί έναν πόρο, απελευθερώνει εκείνο το πόρο και το σήμα απελευθέρωσης () έτσι ώστε να είναι ελεύθερο για άλλη διαδικασία. Όταν η καταμέτρηση των πόρων είναι 0, σημαίνει ότι δεν υπάρχει διαθέσιμος πόρος για την επόμενη διαδικασία. Υπάρχουν δυο τιμές στο δυαδικό σηματοφόρο που είναι 0 και 1. Όταν η διαδικασία χρησιμοποιεί μια τιμή πόρου του δυαδικού σηματοφόρου είναι από 1 έως 0 και όταν ένας πόρος έχει χρησιμοποιήσει τον πόρο, τότε η τιμή του δυαδικού σεφαραύματος είναι 1 προς 0.


Το mutex είναι επίσης γνωστό ως αντικείμενο αμοιβαίου αποκλεισμού. Γνωρίζουμε ότι μόνο μία διαδικασία μπορεί να χρησιμοποιήσει έναν πόρο ταυτόχρονα. Αυτός είναι ο λόγος για τον οποίο υπάρχει ένα σύστημα κλειδώματος και αυτό το σύστημα της κλειδαριάς είναι γνωστό ως mutex. Η κλειδαριά Mutex δίνεται σε μια διαδικασία όταν η διαδικασία χρησιμοποιεί έναν πόρο. Το αντικείμενο Mutex έχει ένα μοναδικό όνομα και αναγνωριστικό. Σε ένα πρόγραμμα όποτε υπάρχει ανάγκη για κλείδωμα mutex, η κλειδαριά mutex καλείται από το όνομα και την ταυτότητα. Αν δούμε τον κώδικα του mutex, θα έχουμε την σαφή κατανόηση της εφαρμογής και της χρήσης της κλειδαριάς mutex.

Περιεχόμενα: Διαφορά μεταξύ Semaphore και Mutex

  • Συγκριτικό διάγραμμα
  • Σηματοφόρος
  • Mutex
  • συμπέρασμα
  • Επεξηγηματικό βίντεο

Συγκριτικό διάγραμμα

ΒάσηΣηματοφόροςMutex
ΕννοιαΤο σηματοφόρο είναι ένας μηχανισμός σηματοδότησηςΤο mutex είναι ένας μηχανισμός κλειδώματος.
αξίαΤο σεματοφόρο είναι ένας ακέραιος αριθμός.Ένα mutex είναι ένα αντικείμενο.
ΛειτουργίαΛειτουργίες αναμονής () και σήματος ().Οι λειτουργίες του mutex είναι κλειδώματος και ξεκλειδώματος
ΤύποιΔύο τύποι σηματοφοριών μετρώνουν το σηματοφόρο και το δυαδικό σηματοφόρο.Δεν υπάρχουν τύποι κλειδαριάς mutex.

Σηματοφόρος

Το σεμάφος είναι μια ακέραια μεταβλητή S. το σηματοφόρο είναι ένας μηχανισμός σηματοδότησης. Σε ένα λειτουργικό σύστημα, υπάρχει ανάγκη για ένα εργαλείο συγχρονισμού και αυτό το εργαλείο στο λειτουργικό σύστημα είναι γνωστό ως ένα σηματοφόρο. Υπάρχουν δύο κύριες λειτουργίες του σηματοφόρου που περιμένουν (), σήμα (). Η τιμή του σηματοφόρου αλλάζει με δύο λειτουργίες που περιμένουν () και σήμα (). Όταν μια διαδικασία χρησιμοποιεί έναν πόρο, το σηματοφόρο είναι σε αναμονή (), και όταν η διαδικασία χρησιμοποίησε τον πόρο, και αυτός ο πόρος είναι ελεύθερος, τότε το σηματοφόρο δίνει το σήμα (). Αυτές οι λειτουργίες που είναι μια wait () και σήμα (), αυτές χρησιμοποιούνται επειδή μόνο μία διαδικασία μπορεί να χρησιμοποιήσει τον πόρο ταυτόχρονα.


Δεν μπορεί να δοθεί ένας πόρος σε δύο διαδικασίες. Υπάρχουν δύο τύποι σηματοφοριών στο λειτουργικό σύστημα που είναι δυαδικός σηματοφόρος και μετρώντας το σηματοφόρο. Κατά την καταμέτρηση του σηματοφόρου, η αρχικοποιημένη τιμή είναι ο αριθμός των πόρων που είναι διαθέσιμοι. Όταν μια διαδικασία χρησιμοποιεί έναν πόρο, αντιμετωπίζει την αναμονή () και πρέπει να περιμένει τον πόρο αυτό. Η καταμέτρηση της τιμής του σημαιριού μειώνεται μία προς μία. Όταν μια διαδικασία χρησιμοποιεί έναν πόρο, απελευθερώνει εκείνο το πόρο και το σήμα απελευθέρωσης () έτσι ώστε να είναι ελεύθερο για άλλη διαδικασία. Όταν η καταμέτρηση των πόρων είναι 0, σημαίνει ότι δεν υπάρχει διαθέσιμος πόρος για την επόμενη διαδικασία. Υπάρχουν δυο τιμές στο δυαδικό σηματοφόρο που είναι 0 και 1. Όταν η διαδικασία χρησιμοποιεί μια τιμή πόρου του δυαδικού σηματοφόρου είναι από 1 έως 0 και όταν ένας πόρος έχει χρησιμοποιήσει τον πόρο, τότε η τιμή του δυαδικού σεφαραύματος είναι 1 προς 0.

Mutex

Το mutex είναι επίσης γνωστό ως αντικείμενο αμοιβαίου αποκλεισμού. Γνωρίζουμε ότι μόνο μία διαδικασία μπορεί να χρησιμοποιήσει έναν πόρο ταυτόχρονα. Αυτός είναι ο λόγος για τον οποίο υπάρχει ένα σύστημα κλειδώματος και αυτό το σύστημα της κλειδαριάς είναι γνωστό ως mutex. Η κλειδαριά Mutex δίνεται σε μια διαδικασία όταν η διαδικασία χρησιμοποιεί έναν πόρο. Το αντικείμενο Mutex έχει ένα μοναδικό όνομα και αναγνωριστικό. Σε ένα πρόγραμμα όποτε υπάρχει ανάγκη για κλείδωμα mutex, η κλειδαριά mutex καλείται από το όνομα και την ταυτότητα. Αν δούμε τον κώδικα του mutex, θα έχουμε την σαφή κατανόηση της εφαρμογής και της χρήσης της κλειδαριάς mutex.

Βασική διαφορά

  1. Το σηματοφόρο είναι μηχανισμός σηματοδότησης, ενώ το Mutex είναι το κλείδωμα
  2. Το Semaphore είναι ένας ακέραιος αριθμός ενώ το Mutex είναι ένα αντικείμενο.
  3. Οι λειτουργίες του σηματοφόρου περιμένουν () και σήμα () ενώ οι λειτουργίες του mutex είναι lock και unlock.
  4. Δύο τύποι σηματοφάρων μετρώνουν το σηματοφόρο και το δυαδικό σηματοφόρο ενώ δεν υπάρχουν τύποι mutex

συμπέρασμα

Σε αυτό το άρθρο παραπάνω βλέπουμε τη σαφή διαφορά μεταξύ του semaphore και του mutex με την ορθή εφαρμογή τους.

Επεξηγηματικό βίντεο