थ्रेड और प्रक्रिया के बीच का अंतर

Anonim

थ्रेड बनाम प्रक्रिया

प्रक्रिया

कंप्यूटर प्रोग्रामिंग की दुनिया में, एक प्रक्रिया एक प्रोग्राम का एक उदाहरण या निष्पादन है। हर प्रक्रिया में एक प्रोग्राम कोड और मौजूदा गतिविधि शामिल है I एक से अधिक धागे हो सकते हैं जो एक विशिष्ट प्रक्रिया बना सकते हैं। निर्देश समवर्ती रूप से निष्पादित हो सकते हैं। हालांकि, इसका इस्तेमाल ऑपरेटिंग सिस्टम पर किया जाएगा।

असल में, प्रक्रियाएं भारी पर्याप्त कार्यक्रम हैं। वे काफी मात्रा में स्मृति का उपभोग करते हैं इसलिए, वे निष्पादन के लिए उपलब्ध संसाधनों पर बहुत निर्भर हैं। इन सभी ने कहा, एक प्रक्रिया को "हेवीवेट प्रोसेस" कहा जाता है

हर प्रक्रिया एक अलग स्मृति स्थान पर होती है इसलिए, यदि अधिक प्रक्रियाएं मौजूद हैं, तो प्रत्येक प्रक्रिया के बीच स्विचिंग भारी महंगा है क्योंकि यह प्रत्येक आवंटन से दूसरे आवंटन पर स्विच करने के लिए समय लेगा। प्रत्येक प्रक्रिया का अपना पता स्थान होता है जो आपूर्ति की पर्याप्त मात्रा में कमी कर सकता है।

एक प्रक्रिया अन्य प्रक्रियाओं से स्वतंत्र है इसलिए, जब किसी मूल प्रक्रिया को संशोधित किया जाता है तो यह अन्य प्रक्रियाओं को प्रभावित नहीं करेगा। इस व्यवहार के कारण, प्रक्रियाओं को अंतर-प्रक्रिया संचार की आवश्यकता होती है ताकि वे अपने भाइयों के साथ संवाद कर सकें।

इसके अलावा, प्रक्रियाएं, उनके अधिक जटिल प्रकृति के कारण, आसानी से नहीं बनाई जाती हैं इसके लिए निर्माण की प्राप्ति के लिए प्रक्रियाओं के कुछ दोहराव, आमतौर पर मूल प्रक्रिया की आवश्यकता हो सकती है।

-3 ->

थ्रेड

कम से कम सिस्टम संसाधनों के साथ भी, थ्रेड एक निर्दिष्ट कार्य को प्राप्त करने के लिए एक साथ निष्पादित करने में समर्थ हैं। इसका कारण यह तथ्य है कि एक थ्रेड केवल एक निष्पादन अनुक्रम है। यह केवल एक प्रक्रिया के भीतर है और यही वजह है कि इसे "हल्के प्रक्रिया" कहा जाता है

इसे किसी कार्यक्रम के सबसे छोटे हिस्से के रूप में माना जाता है क्योंकि यह एक कार्यक्रम के भीतर निष्पादन का स्वतंत्र अनुक्रमिक पथ है। सूत्रों के बीच स्विचिंग के संदर्भ में प्रक्रियाओं के विपरीत संसाधन की न्यूनतम मात्रा की आवश्यकता होती है थ्रेड्स, संक्षेप में, पता स्थान साझा करें और वे भी आसानी से बनाए जाते हैं।

यह भी उल्लेख किया जाना चाहिए कि मुख्य थ्रेड में किए गए परिवर्तनों को उसी प्रक्रिया के भीतर अन्य धागे के व्यवहार पर प्रभाव पड़ सकता है। जाहिर है, एक ही प्रक्रिया में धागे के बीच संचार प्रत्यक्ष और सहज है

सारांश:

1 एक प्रक्रिया में एक से अधिक धागा शामिल हो सकते हैं।

2। एक प्रक्रिया "लाइटवेट" के रूप में माना जाता है, जबकि एक प्रक्रिया को "हेवीवेट" माना जाता है

3। संसाधनों को संसाधन संसाधनों पर भारी निर्भर करते हुए उपलब्ध होते हैं जबकि धागे को संसाधन की न्यूनतम मात्रा की आवश्यकता होती है।

4। मुख्य थ्रेड को संशोधित करने के बाद के थ्रेड्स पर असर पड़ सकता है, जबकि किसी मूल प्रक्रिया पर होने वाले परिवर्तनों से बाल प्रक्रियाओं को प्रभावित नहीं किया जाएगा।

5। प्रक्रियाओं के भीतर सूत्र सीधे संपर्क करते हैं, जबकि प्रक्रियाएं इतनी आसानी से संचार नहीं करती हैं

6। प्रक्रियाओं को सरल बनाने के लिए थ्रेड्स आसान होते हैं जबकि प्रक्रियाएं सीधी नहीं होती हैं