सेमाफोर एक इन्टिजर वेरिएबल है जो थ्रेड के बीच शेयर किया जाता है । इस वेरिएबल का उपयोग महत्वपूर्ण सेक्शन समस्या को हल करने और मल्टीप्रोसेसिंग वातावरण में प्रक्रिया सिंक्रनाइजेशन प्राप्त करने के लिए किया जाता है ।
एक सेमाफोर या तो संसाधन तक पहुंच की अनुमति देता है या अस्वीकार करता है, जो इस बात पर निर्भर करता है कि इसे कैसे स्थापित किया जाता है ।
सेमाफोर कितने प्रकार के है (Types of Semaphores) ?
- Binary Semaphore
- Counting Semaphore
Binary Semaphore
बाइनरी सेमाफोर एक सेमाफोर होता है जिसका पूर्णांक मान 0 और 1 से अधिक होता है । इस सेमाफोर का उपयोग करने के पीछे यह विचार है कि, यह एक समय में केवल एक प्रक्रिया को महत्वपूर्ण खं डमें प्रवेश करने की सुविधा प्रदान करता है ।
Counting Semaphore
काउंटिंग सेमाफोर एक सेमाफोर है जिसमें काउंटर के कई मान होते हैं । मान एक अप्रविबंधित डोमेन पर हो सकता है । इस सेमाफोर का उपयोग संसाधन पहुंच को समन्वयित करने के लिए किया जाता है, जहां सेमाफोर गणना उपलब्ध संसाधनों की संख्या जोड़े जाते हैं, तो सेमाफोर की संख्या स्वतः बढ़ जाती है और यदि संसाधन हटा दिए जाते हैं, तो गणना घट जाती है ।
सेमाफोर के फंक्शन (Functions of Semaphores) ?
सेमाफोर दो फंक्शन का उपयोग करता है, जो wait() और signal() है । इन दोनों फंक्शन का उपयोग सेमाफोर के मूल्य को बदलने के लिए किया जाता है, लेकिन मूल्य को एक विशेष समय में केवल एक प्रक्रिया द्वारा बदला जा सकता है और किसी अन्य प्रक्रिया को एक साथ मूल्य को नहीं बदल सकता ।
Wait()
Wait() फंक्शन का उपयोग वैरिएबल S के मान को एक से कम करने के लिए किया जाता है यदि सेमाफोर वैरिएबल का मान सकारात्मक है । यदि सेमाफोर वैरिएबल का मान 0 है, तो कोई ऑपरेशन नहीं किया जाएगा ।
Signal()
Signal() फंक्शन का उपयोग सेमोफोर वैरिएबल के मान को एक से बढ़ाने के लिए किया जाता है ।
सेमाफोर की क्या फायदे है (Advantages of Semaphore) ?
सेमाफोर के कुछ फायदे इस प्रकार है :-
सेमाफोर केवल एक प्रक्रिया को महत्वपूर्ण खंड में अनुमति देते हैं । वे पारस्परिक बहिष्करण सिद्धांत का सख्ती से पालन करते हैं और सिंक्रनाइजेशन के कुछ अन्य तरीको की तुलना में बहुत अधिक कुशल हैं ।
सेमाफोर को माइक्रो कर्नेल के मशीन स्वतंत्र कोड में लागू किया जाता है, इसलिए यह मशीन स्वतंत्र है ।
सेमाफोर की विशेषता क्या है ( Characteristic of Semaphore ) ?
- यह एक तंत्र है जिसका उपयोग कार्यों के सिंक्रनाइजेशन प्रदान करने के लिए किया जाता है ।
- सेमाफोर को परीक्षण संचालन और इंटरप्ट का उपयोग करके कार्यान्वित किया जा सकता है, जिसे फाइल डिस्क्रिप्टिर का उपयोग करके निष्पादित किया जाना चाहिए ।
- सेमाफोर हमेशा एक गैर निगेटिव इन्टिजर मान रखेगा ।
- यह एक निम्न स्तरीय तुल्यकालन तंत्र है ।
निर्ष्कष – Conclusion
मुझे आशा है, इस पोस्ट से आपने सेमाफोर के बारे में कुछ नया सीखा होगा वह भी हिन्दी में ।
यदि फिर भी सेमाफोर के बारे में अन्य कोई सवाल हैं, तो आप हमें निचे दिए गए टिप्पणी अनुभाग के जरीए हमसे पुछ सकते है । ज्ञान का प्रसार करने के लिए इस ब्लॉग को अपने दोस्तों के साथ शेयर करें ।
FAQ’s
अन्य पोस्ट पढ़े :-