Мутек вс Семапхоре
Мутек се користи да пруже серијски приступ делу кода поновног уласка који се не може паралелно извршити више од једне нити. Мутек осигурава да само један код може истовремено приступити контролираном одјељку. Да би стекли приступ, други се кодови чекају да изађе први код. Можете то сматрати кључем неке собе. Особа која има приступ том кључу прво иде прво. Све док се особа не врати назад, нико други не може приступити тој соби.
Семапхоре истовремено омогућава приступ дељеном ресурсу већем броју корисника. Како се повећава број корисника који приступају ресурсу, број семафора се смањује. Једном када корисници почну да ослобађају ресурс, број семафора поново почиње да расте. Користе га апликације које захтевају синхронизацију. Број истодобних корисника је ограничен на основу ограничења семафоре. Семафор се може сматрати гомилом сличних кључева сличним бравама у једној соби, али ти су кључеви ограничени. Људи који имају ове кључеве могу делити собу.
Разлике између мутекса и семафора:
1. Мутек се користи за међусобно искључење док семафор налази своју корисност у оба случаја
обавештавање и међусобна изузећа.
2. Мутек пружа серијски приступ заједничким ресурсима док семафор поставља границу
број истовремених приступа.
3. Мутек делује истовремено с једном нитом, док семафор управља више нити
заједно.
4. Мутек има концепт власника код кога процес који закључава мутек може само
поново га отвори. Ниједан други процес не може то учинити. Али у случају семафора, такав
ограничења не постоје.
5. Мутекс је механизам за закључавање, док је семафор сигнални механизам са
поштовање синхронизације приступа ресурсу.
Резиме:
1. Семантички и теоретски су и мутек и семафор исти. Један може бити
примењује се помоћу другог, али се практично и једно и друго разликују.
2. Мутек није ништа друго него семафор са бројећом вриједношћу једнаком једном.
3. Мутек је семафор са додатним функцијама као што су власништво и инверзија приоритета
заштита.
4. Семафор је апстрактни тип података који контролише приступ заједничком ресурсу
више процеса у паралелном програмском окружењу.
5. Семапхоре налази у многим оперативним системима као синхронизацију примитивну.
6. И мутек и семафор су извори језгре који се користе у сврху
синхронизација.