በሴማፎር እና ሙቴክስ መካከል ያለው ልዩነት

በሴማፎር እና ሙቴክስ መካከል ያለው ልዩነት
በሴማፎር እና ሙቴክስ መካከል ያለው ልዩነት

ቪዲዮ: በሴማፎር እና ሙቴክስ መካከል ያለው ልዩነት

ቪዲዮ: በሴማፎር እና ሙቴክስ መካከል ያለው ልዩነት
ቪዲዮ: ከለማዳ ጉሬዛ እና ጦጣ ጋር ይዝናኑ 2024, ሀምሌ
Anonim

ሴማፎር vs ሙቴክስ

ሴማፎር ብዙ ሂደቶች ወደ አንድ የጋራ መገልገያ ወይም ወሳኝ ክፍል በተመሳሳይ ጊዜ፣ በትይዩ የፕሮግራም አወጣጥ አካባቢዎች እንዳይደርሱ ለማረጋገጥ የሚያገለግል የውሂብ መዋቅር ነው። ሴማፎሮች የሞቱ መቆለፊያዎችን እና የዘር ሁኔታዎችን ለማስወገድ ያገለግላሉ። ሙቴክስ (እርስ በርስ መገለል ነገር) በተመሳሳይ ጊዜ በተለያዩ ሂደቶች የጋራ ሀብትን ለማስቀረት ይጠቅማል።

ሴማፎር ምንድን ነው?

Semaphore ወሳኝ ለሆኑ ክፍሎች የጋራ መገለልን ለማቅረብ የሚያገለግል የውሂብ መዋቅር ነው። ሴማፎሮች በዋነኝነት የሚጠቅሙትን ሁለት ኦፕሬሽኖች ይደግፋሉ (በታሪክ P በመባል የሚታወቁት) እና ሲግናል (በታሪክ V በመባል ይታወቃል)።የመጠባበቂያ ክዋኔው ሴማፎሩ ክፍት እስኪሆን ድረስ ሂደቱን ያግዳል እና የሲግናል ኦፕሬሽኑ ሌላ ሂደት (ክር) እንዲገባ ይፈቅዳል። እያንዳንዱ ሴማፎር ከመጠባበቅ ሂደቶች ወረፋ ጋር የተያያዘ ነው. የመጠባበቂያ ክዋኔው በክር ሲጠራ, ሴማፎሩ ክፍት ከሆነ, ክርው ሊቀጥል ይችላል. የጥበቃ ክዋኔው በክር ሲጠራ ሴማፎር ከተዘጋ ክሩ ታግዷል እና ወረፋው ላይ መጠበቅ አለበት። የሲግናል ክዋኔው ሴማፎርን ይከፍታል እና በወረፋው ውስጥ ቀድሞውኑ የሚጠብቀው ክር ካለ, ሂደቱ እንዲቀጥል ይፈቀድለታል እና በወረፋው ውስጥ የሚጠብቁ ክሮች ከሌሉ ምልክቱ ለቀጣዮቹ ክሮች ይታወሳል. mutex semaphores እና semaphores መቁጠር የሚባሉት ሁለት ዓይነት ሴማፎሮች አሉ። ሙቴክስ ሴማፎርስ ለአንድ ግብአት አንድ ጊዜ ይፈቅዳል እና ሴማፎሮች መቁጠር ብዙ ክሮች ሃብትን እንዲደርሱ ያስችላቸዋል (ይህም በርካታ ክፍሎች አሉት)።

Mutex ምንድን ነው?

የኮምፒውተር አፕሊኬሽን ሲጀመር ሙቴክስ ይፈጥራል እና ከመርጃ ጋር ያያይዘዋል።ሀብቱ በክር ሲጠቀም ተቆልፏል እና ሌሎች ክሮች ሊጠቀሙበት አይችሉም. ሌላ ክር ተመሳሳይ ግብዓት ለመጠቀም ከፈለገ ጥያቄ ማቅረብ አለበት። ከዚያም የመጀመሪያው ክር በሀብቱ እስኪያልቅ ድረስ ያ ክር በወረፋ ውስጥ ይቀመጣል። የመጀመሪያው ክር ከንብረቱ ጋር ሲጠናቀቅ መቆለፊያው ይወገዳል እና በወረፋው ውስጥ የሚጠብቀው ክር ወደ ሀብቱ መድረስ ይችላል. በወረፋው ውስጥ ብዙ ክሮች ካሉ, በሚሽከረከርበት መሰረት መዳረሻ ይሰጣቸዋል. በተጨባጭ፣ mutex በበርካታ ክሮች መካከል ያለውን የሀብት መዳረሻ ሲቀይር፣ ብዙ ክሮች በተመሳሳይ ጊዜ ሃብት ስለሚበሉ ይታያል። ግን በውስጥ በኩል አንድ ነጠላ ክር ብቻ ነው ሀብቱን በተወሰነ ጊዜ እየደረሰ ያለው።

በሴማፎር እና ሙቴክስ መካከል ያለው ልዩነት ምንድነው?

ምንም እንኳን ሁለቱም ሴማፎሮች እና ሙቴክስ ነገሮች በትይዩ የፕሮግራም አወጣጥ አከባቢዎች የጋራ መገለልን ለማሳካት ጥቅም ላይ ይውላሉ፣ አንዳንድ ልዩነቶች አሏቸው።ሙቴክስ ነገር አንድ ነጠላ ክር ሀብትን ወይም ወሳኝ ክፍልን ብቻ እንዲበላ የሚፈቅደው ሲሆን ሴማፎሮች ግን ለተወሰነ ጊዜ በአንድ ጊዜ የሚገኙ ሀብቶችን (ከፍተኛው በሚፈቀደው ቁጥር) እንዲጠቀሙ ያስችላቸዋል። በ mutex ነገሮች፣ ሀብቱን ማግኘት የሚፈልጉ ሌሎች ክሮች አሁን ያለው ክር ሃብቱን ተጠቅሞ እስኪያልቅ ድረስ ወረፋ መጠበቅ አለባቸው።

የሚመከር: