Իրականացում. Սեմալտի հիմնական թերությունը է, որ այն պահանջում է զբաղված սպասում Զբաղված սպասումը վատնում է պրոցեսորի ցիկլերը, որոնք այլ գործընթացներ կարող են արդյունավետ օգտագործել: Այս տեսակի սեմաֆորը կոչվում է նաև սպինլոկ, քանի որ գործընթացը պտտվում է կողպեքին սպասելիս:
Սեմաֆորները սպասելու հերթեր ունե՞ն:
Սեմաֆորի իրականացումՍեմաֆորները կարող են իրականացվել օպերացիոն համակարգի ներսում՝ ինտերֆեյսով պրոցեսի վիճակի և պլանավորման հերթերի հետ. սեմալտի վրա արգելափակված շարանը տեղափոխվում է վազքից սպասման (սեմաֆորին հատուկ սպասում հերթ).
Մուտեքսներն օգտագործում են զբաղված սպասո՞ւմ:
Ստանդարտ ընդդեմ պտտվող մուտեքսների.
Անգործուն սպասում. շարանը, որը սպասում է mutex-ը կողպելուն, արգելափակված է սպասման վիճակում, ինչպես բացատրված է Գլուխ 2-ում:Այն թողարկում է պրոցեսորը, որն այնուհետև կարող է օգտագործվել մեկ այլ թեմա գործարկելու համար: … Զբաղված սպասում, որը նաև կոչվում է պտտվող սպասում, որտեղ մուտեքսը կողպելու սպասող շարանը չի ազատում պրոցեսորը
Ի՞նչ տարբերություն կա սեմաֆորի և մուտեքսի միջև:
Մուտեքսը օբյեկտ է, իսկ սեմաֆորը ամբողջ թվով փոփոխական է: … Մուտեքս օբյեկտը թույլ է տալիս մի քանի պրոցեսային թելեր մուտք գործել մեկ ընդհանուր ռեսուրս, բայց միայն մեկ անգամ: Մյուս կողմից, semaphore-ը թույլ է տալիս մի քանի գործընթացային թելերի մուտք գործել ռեսուրսի վերջավոր օրինակ, քանի դեռ հասանելի չէ:
Որո՞նք են սեմաֆորների հիմնական խնդիրները:
Սեմաֆորի լուծման հետ համաժամացման դասական խնդիրներ
- Սահմանափակ բուֆեր (կամ Արտադրող-Սպառող) Խնդիր. Սահմանափակված բուֆերային խնդիրը կոչվում է նաև արտադրողի սպառողի խնդիր: …
- Ճաշի փիլիսոփաների խնդիր. …
- Ընթերցողների և գրողների խնդիր․ …
- Քնած վարսավիրի խնդիր.