Семафор срещу Мутекс

Автор: Laura McKinney
Дата На Създаване: 4 Април 2021
Дата На Актуализиране: 10 Може 2024
Anonim
Семафор срещу Мутекс - Друг
Семафор срещу Мутекс - Друг

Съдържание

Разликата между семафор и мутекс е, че семафорът е сигнален механизъм, докато мутексът е заключващият механизъм.


Операционната система е най-важното понятие в компютърните науки, в операционната система две основни понятия са семафор и мутекс. Има голяма разлика между семафор и мутекс. Ако говорим за основната разлика, тогава основната разлика между семафор и мутекс е, че семафорът е сигнален механизъм, докато мутексът е заключващият механизъм.

Разликата между семафор и мутекс идва в процесите; semaphore извършва операция изчакване () и сигнал (), тази функция е отговорна за знанието дали са придобили или са освободили ресурса. От друга страна, ако говорим за мутекс, мутексът е заключващият механизъм.

Семафор е целочислена променлива S; семафор е сигнален механизъм. В операционната система има нужда от инструмент за синхронизация и този инструмент в операционната система е известен като семафор. Има две основни функции на семафор, които чакат (), сигнал (). Стойността на семафор се променя с две функции, които чакат () и сигнал (). Когато даден процес използва ресурс, семафорът е в режим на изчакване (), а когато процесът използва ресурса и този ресурс е безплатен, тогава семафорът дава сигнала (). Тези функции, които са изчакване () и сигнал (), се използват, защото само един процес може да използва ресурса наведнъж. Един ресурс не може да бъде даден на два процеса. В операционната система има два вида семафор, които са двоичен семафор и преброяващ семафор. При броенето на семафор инициализираната стойност е броят на наличните ресурси. Когато даден процес използва ресурс, той се сблъсква с wait () и трябва да изчака този ресурс. Броят на стойностите на семафор се намалява една по една. Когато даден процес използва ресурс, той освобождава този ресурс и освобождава сигнал (), така че трябва да бъде свободен за друг процес. Когато броят на ресурсите е 0, това означава, че няма наличен ресурс за идващия процес. В двоичния семафор има две стойности, които са 0 и 1. Когато процесът използва ресурсна стойност на двоичния семафор е от 1 до 0 и когато ресурс е използвал ресурса, тогава стойността на двоичния семафор е от 1 до 0.


Мутексът е известен и като обект на взаимно изключване. Знаем, че само един процес може да използва ресурс наведнъж. Това е причината да съществува система за заключване и тази система на заключването е известна като мутекс. Mutex заключване се дава на процес, когато този процес използва ресурс. Обектът Mutex има уникално име и идентификационен номер. В програма винаги, когато има нужда от заключване на мютекс, мутексното заключване се извиква чрез неговото име и идентификатор. Ако видим кода на mutex, ще имаме ясно разбиране за прилагането и използването на mutex lock.

Съдържание: Разлика между Семафор и Мутекс

  • Сравнителна диаграма
  • семафор
  • Mutex
  • заключение
  • Обяснително видео

Сравнителна диаграма

основасемафорMutex
значениеСемафорът е механизъм за сигнализиранеМутексът е заключващ механизъм.
стойностСемафор е цяло число.Мутексът е обект.
операцияОперации на семафор изчакване () и сигнал ().Операциите на mutex са заключване и отключване
ВидовеДва вида семафор са преброяване на семафор и двоичен семафор.Няма видове заключване на мютекс.

семафор

Семафор е целочислена променлива S; семафор е сигнален механизъм. В операционната система има нужда от инструмент за синхронизация и този инструмент в операционната система е известен като семафор. Има две основни функции на семафор, които чакат (), сигнал (). Стойността на семафор се променя с две функции, които чакат () и сигнал (). Когато даден процес използва ресурс, семафорът е в режим на изчакване (), а когато процесът използва ресурса и този ресурс е безплатен, тогава семафорът дава сигнала (). Тези функции, които са изчакване () и сигнал (), се използват, защото само един процес може да използва ресурса наведнъж.


Един ресурс не може да бъде даден на два процеса. В операционната система има два вида семафор, които са двоичен семафор и преброяващ семафор. При броенето на семафор първоначалната стойност е броят на наличните ресурси. Когато даден процес използва ресурс, той се сблъсква с wait () и трябва да изчака този ресурс. Броят на стойностите на семафор се намалява една по една. Когато даден процес използва ресурс, той освобождава този ресурс и освобождава сигнал (), така че трябва да бъде свободен за друг процес. Когато броят на ресурсите е 0, това означава, че няма наличен ресурс за идващия процес. В двоичния семафор има две стойности, които са 0 и 1. Когато процесът използва ресурсна стойност на двоичния семафор е от 1 до 0 и когато ресурс е използвал ресурса, тогава стойността на двоичния семафор е от 1 до 0.

Mutex

Мутексът е известен и като обект на взаимно изключване. Знаем, че само един процес може да използва ресурс наведнъж. Това е причината да съществува система за заключване и тази система на заключването е известна като мутекс. Mutex заключване се дава на процес, когато този процес използва ресурс. Обектът Mutex има уникално име и идентификационен номер. В програма винаги, когато има нужда от заключване на мютекс, мутексното заключване се извиква чрез неговото име и идентификатор. Ако видим кода на mutex, ще имаме ясно разбиране за прилагането и използването на mutex lock.

Ключова разлика

  1. Семафор е сигнален механизъм, докато Mutex е заключващото устройство
  2. Семафор е цяло число, докато Mutex е обект.
  3. Операции на семафор изчакват () и сигнал (), докато операциите на мутекс се заключват и отключват.
  4. Два вида семафор преброяват семафор и двоичен семафор, докато няма видове мутекс

заключение

В тази статия по-горе виждаме ясната разлика между семафор и мутекс при правилното им прилагане.

Обяснително видео