प्रक्रिया आणि थ्रेड दरम्यान फरक | प्रोसेस वि थ्रेड

Anonim

प्रक्रिया विरुद्ध थ्रेड

संगणक एका वेळी एकापेक्षा जास्त क्रिया करू देण्यासाठी, प्रक्रिया आणि थ्रेड दोन्ही चांगली सेवा प्रदान करतात, परंतु त्यांच्यात ज्या प्रकारे ते कार्य करतात त्यामध्ये फरक आहे. संगणकावरील सर्व कार्यक्रम किमान एक प्रक्रिया किंवा धागा वापरतात. प्रक्रिया आणि थ्रेड प्रोसेसर्स कॉम्प्यूटरच्या संसाधनांचे वाटप करताना अनेक कार्यांमधून सहजतेने स्विच करू देतात. म्हणून उच्च कार्यप्रदर्शनासह एक प्रोसेसर बनविण्यासाठी प्रभावीपणे थ्रेड्स आणि प्रक्रिया वापरण्यासाठी प्रोग्रामरचा हे कर्तव्य आहे. थ्रेड व प्रक्रिया अंमलबजावणी उपलब्ध ऑपरेटिंग सिस्टिम नुसार वेगवेगळे आहे.

एक प्रक्रिया काय आहे?

एक प्रक्रिया, सर्वसाधारणपणे, एक विशिष्ट परिणाम प्राप्त करण्यासाठी क्रियांची एक सतत श्रृंखला आहे. परंतु, संगणकांच्या जगात एक प्रक्रिया कार्यान्वित संगणक प्रोग्रामची एक घटना आहे.

दुसऱ्या शब्दांत, चालत असलेल्या संगणक प्रोग्रामच्या एकाच घटनेची कल्पना आहे. फक्त प्रक्रिया बायनरी चालविते ज्यामध्ये एक किंवा अधिक थ्रेड्स असतात. प्रक्रियेत समाविष्ट असलेल्या थ्रेडच्या संख्येनुसार, दोन प्रकारच्या प्रक्रिया असतात. ते एकल-थ्रेड प्रोसेस आणि मल्टि-थ्रेड प्रक्रिया आहेत. त्याचे नाव सुचविते म्हणून, एक सिंगल धागा प्रक्रिया ही एक प्रक्रिया आहे ज्यामध्ये केवळ एक थ्रेड आहे. म्हणूनच हा धागा एक प्रक्रिया आहे आणि तेथे केवळ एक क्रिया होत आहे.

मल्टि थ्रेड प्रक्रियेमध्ये, एकापेक्षा अधिक धागा आहेत, आणि तेथे एकापेक्षा जास्त क्रियाकलाप आहेत.

दोन किंवा अधिक प्रक्रिया आंतर-प्रक्रिया संप्रेषण वापरून एकमेकांमध्ये संप्रेषण करू शकतात. पण हे कठीण आहे आणि अधिक स्त्रोतांची आवश्यकता आहे. नवीन प्रक्रिया करताना प्रोग्रामरला दोन गोष्टी कराव्या लागतात. ते मूळ प्रक्रियेची आणि नवीन प्रक्रियेसाठी स्मृती आणि संसाधनांचे वाटप यांचे पुनराव्रुत्ती आहेत. तर हे खरोखर महाग आहे. थ्रेड म्हणजे काय? आयटीच्या जगभरातील, एक थ्रेड टी तो एका संगणकाच्या प्रोग्रामच्या सूचनांचे सर्वात कमी अंमलबजावणी करते जे

एका शेड्यूलनुसार स्वतंत्रपणे व्यवस्थापित केले जाऊ शकते. एक थ्रेड आहे

प्रक्रियेमध्ये अंमलबजावणी एक सोपा मार्ग

. एक थ्रेड प्रक्रिया म्हणून शक्तिशाली आहे कारण एखादा थ्रेड प्रक्रिया करू शकतो अशा प्रत्येक गोष्ट करू शकतो. थ्रेड हा प्रकाश-वजन प्रक्रिया असून त्याला फक्त थोड्या संसाधनांची आवश्यकता असते. थ्रेड्स वाचू शकतात आणि त्याच व्हेरिएबल्स आणि डेटा स्ट्रक्चर व्हेरिएबलवर लिहू शकतात. थ्रेड्स थ्रेड्समध्ये सहजपणे संवाद करू शकतात.

आज बहु-थ्रेडिंग अनेक समस्या एक नैसर्गिक दृष्टिकोन बनले आहे. एक मोठे काम भागांमध्ये विभागले आहे आणि त्यातील प्रत्येक फॉर एक्जिक्युशन एक थ्रेड नावाचा एक भाग म्हणून नेमला जातो. हे फक्त मल्टि-थ्रेडिंग आहेत्यासाठी सावध प्रोग्रामिंग आवश्यक आहे कारण थ्रेड्स डेटा स्ट्रक्चर्स जे एका वेळी एका थ्रेडद्वारे सुधारित केले आहेत आणि थ्रेड एकाच पत्त्याची जागा सामायिक करतात. थ्रेडचा आणखी एक फायदा हा आहे की थ्रेड समांतर साध्य करण्याच्या एक कार्यक्षम आणि प्रभावी मार्ग प्रदान करतात. एकाधिक थ्रेड एकाधिक प्रोसेसरवर चालविण्यामुळे एका प्रणालीचे थ्रुपुट वाढवता येते कारण थ्रेड स्वतंत्रपणे अनुसूचीयोग्य घटक आहे. मुळ-थ्रेडिंग प्रक्रिया आणि थ्रेड यामधील फरक काय आहे? • प्रक्रिया तयार करणे कठीण आहे कारण मूळ प्रक्रियेची आणि स्मृती वाटपाची पुनरावृत्ती आवश्यक आहे, तर थ्रेड्स तयार करणे सोपे आहे कारण त्यांना वेगळ्या अॅड्रेस स्पेस ची गरज नाही.

• अनुप्रयोग म्हणजे कार्यवाहीसारख्या जड-वेट कामे करण्यासाठी वापरली जाणारी प्रक्रिया सोपी कार्यांसाठी वापरली जाते.

• प्रक्रिया समान पत्त्याची जागा सामायिक करीत नाहीत, परंतु त्याच प्रक्रियेमधील थ्रेड्स समान पत्त्याची जागा सामायिक करतात

• प्रक्रिया एकमेकांपासून स्वतंत्र आहेत, परंतु थ्रेड तेच परस्पर निर्भर असतात कारण ते त्याच पत्ता स्थानावर सामायिक करतात. • एक प्रक्रिया एकाधिक थ्रेड्स असू शकतात

• धागे समान पत्ता स्थान शेअर केल्यामुळे, वर्च्युअलाइज्ड मेमरी केवळ प्रक्रियांसह संबंधित आहे परंतु थ्रेडसह नाही. परंतु प्रत्येक वेगळ्या थ्रेडसह वेगळा व्हर्च्युअलाइज्ड् प्रोसेसर संबंधित आहे.

• प्रत्येक प्रक्रियेचा स्वतःचा कोड आणि डेटा असतो तर प्रक्रियांचा थ्रेड समान कोड आणि डेटा सामायिक करतात.

• प्रत्येक प्रक्रिया प्राथमिक धागासह सुरू होते, परंतु आवश्यक असल्यास ते अतिरिक्त थ्रेड तयार करू शकते.

• प्रक्रियेतील संदर्भ स्विच करणे समान प्रक्रियेच्या थ्रेड दरम्यान संदर्भ स्विचिंगपेक्षा खूपच धीमी आहे.

• थ्रेड्सचा डेटा सेगमेंटवर प्रत्यक्ष प्रवेश असू शकतो परंतु प्रक्रियांच्या डेटा सेगमेंटची त्यांची स्वतःची कॉपी असते.

• प्रक्रियेकडे ओव्हरहेड्स आहेत परंतु थ्रेड नाहीत

सारांश:

प्रक्रिया वि थ्रेड

प्रोसेसर नियंत्रित करण्यासाठी आणि संगणकावरील सूचना एक कार्यक्षम व प्रभावी पद्धतीने अंमलात आणण्यासाठी प्रक्रिया आणि थ्रेड प्रोग्रामरद्वारे वापरलेली दोन पद्धती आहेत. एका प्रक्रियेमध्ये अनेक थ्रेड असू शकतात थ्रेड्स मेमरी शेअर करण्याचा एक प्रभावी मार्ग प्रदान करतात जरी तो प्रक्रियांच्या तुलनेत अनेक फाशीची शिक्षा देते. म्हणूनच थ्रेड्स अनेक प्रक्रियांसाठी पर्याय आहेत. मल्टी-कोर प्रोसेसरच्या दिशेने वाढणारी कल, प्रोग्रामर्सच्या विश्वात थ्रेड्स हे सर्वात महत्वाचे साधन बनले जातील.

चित्रे सौजन्याने:

Mattias द्वारे mutithreading उदाहरण कॅमप (CC BY 2. 0)