Преглед садржаја:
- Дефиниција - Шта значи међусобно искључивање (Мутек)?
- Техопедија објашњава међусобно искључење (Мутек)
Дефиниција - Шта значи међусобно искључивање (Мутек)?
Међусобно искључивање (мутек) је програмски објекат који спречава истовремено приступ заједничком ресурсу. Овај концепт се користи у истодобном програмирању са критичним одсеком, делом кода у којем процеси или нити приступају заједничком ресурсу. Само једна нит посједује мутек истовремено, тако да се мутек са јединственим именом креира када се покрене програм. Када нит држи ресурс, мора закључати мутек из других нити како би се спријечио истовремени приступ ресурсу. Након ослобађања ресурса, нит откључава мутек.
Техопедија објашњава међусобно искључење (Мутек)
Мутек долази у слику када две нити истовремено раде на истим подацима. Делује као закључавање и најосновнији је алат за синхронизацију. Када нит покушава да стекне мутек, он ће мутек добити ако је доступан, иначе је нит постављена у стање мировања. Међусобно искључивање смањује кашњење и заузето чекање помоћу реда чекања и контекстних преклопника. Мутек се може применити на нивоу хардвера и софтвера.
Онемогућавање прекида за најмањи број упутстава је најбољи начин да се наметне мутек на нивоу кернела и спречи оштећење дељених структура података. Ако више процесора дијели исту меморију, поставља се застава која омогућава и онемогућава прикупљање ресурса на основу доступности. Механизам заузетог чекања примењује мутек у софтверским областима. Опремљен је алгоритмима као што су Деккеров алгоритам, алгоритам црно-беле пекарнице, Сзимански алгоритам, Петерсон-ов алгоритам и Лампорт-ов пекарски алгоритам.
Могу се дефинисати међусобно искључиви читачи и читати / писати мутек класе кодова за ефикасну имплементацију мутека.