अनुशंसित, 2020

संपादक की पसंद

ओएस में मल्टीटास्किंग और मल्टीथ्रेडिंग के बीच अंतर

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

तुलना चार्ट

तुलना के लिए आधारबहु कार्यणबहु सूत्रण
बुनियादीमल्टीटास्किंग एक ही समय में कई कार्यों को निष्पादित करने के लिए सीपीयू देता है।एक साथ कई थ्रेड को निष्पादित करने के लिए CPU को मल्टीथ्रेडिंग करते हैं।
स्विचिंगमल्टीटास्किंग में सीपीयू अक्सर कार्यक्रमों के बीच स्विच करता है।बहु-सूत्रण CPU में थ्रेड्स के बीच अक्सर स्विच होता है।
मेमोरी और संसाधनमल्टीटास्किंग सिस्टम में प्रत्येक प्रोग्राम को अलग-अलग मेमोरी और संसाधन आवंटित करने होते हैं जो CPU निष्पादित कर रहा है।मल्टीथ्रेडिंग सिस्टम में मेमोरी को एक प्रोसेस में आवंटित करना होता है, उस प्रक्रिया के कई थ्रेड्स उसी मेमोरी और रिसोर्सेस को प्रोसेस को आवंटित करते हैं।

मल्टीटास्किंग की परिभाषा

मल्टीटास्किंग वह है जब एक ही सीपीयू एक ही समय में कई कार्य (प्रोग्राम, प्रोसेस, टास्क, थ्रेड्स) करता है। मल्टीटास्किंग करने के लिए, सीपीयू कार्य के बीच बहुत बार स्विच करता है ताकि उपयोगकर्ता प्रत्येक प्रोग्राम के साथ एक साथ बातचीत कर सके।

मल्टीटास्किंग ऑपरेटिंग सिस्टम में, कई उपयोगकर्ता एक साथ सिस्टम साझा कर सकते हैं। जैसा कि हमने देखा कि सीपीयू तेजी से कार्यों के बीच स्विच करता है, इसलिए एक उपयोगकर्ता से अगले उपयोगकर्ता तक स्विच करने के लिए थोड़ा समय आवश्यक है। यह एक उपयोगकर्ता पर एक धारणा डालता है कि संपूर्ण कंप्यूटर सिस्टम उसके लिए समर्पित है।

जब कई उपयोगकर्ता मल्टीटास्किंग ऑपरेटिंग सिस्टम साझा कर रहे हैं, तो सीपीयू शेड्यूलिंग और मल्टीप्रोग्रामिंग प्रत्येक उपयोगकर्ता के लिए मल्टीटास्किंग ओएस का कम से कम हिस्सा होना संभव बनाता है और प्रत्येक उपयोगकर्ता के पास निष्पादन के लिए मेमोरी में कम से कम एक प्रोग्राम होना चाहिए।

मल्टीथ्रेडिंग की परिभाषा

मल्टीथ्रेडिंग मल्टीटास्किंग से इस अर्थ में भिन्न है कि मल्टीटास्किंग एक ही समय में कई कार्यों की अनुमति देता है, जबकि, मल्टीथ्रेडिंग एक ही कार्य के कई थ्रेड्स (प्रोग्राम, प्रक्रिया) को एक ही समय में सीपीयू द्वारा संसाधित करने की अनुमति देता है।

मल्टीथ्रेडिंग का अध्ययन करने से पहले हम इस बारे में बात करते हैं कि एक धागा क्या है? एक धागा एक मूल निष्पादन इकाई है जिसका अपना प्रोग्राम काउंटर, रजिस्टर का सेट, स्टैक होता है, लेकिन यह उस प्रक्रिया के कोड, डेटा और फ़ाइल को साझा करता है, जिसके पास यह है। एक प्रक्रिया में एक साथ कई थ्रेड्स हो सकते हैं, और CPU इन थ्रेड्स के बीच स्विच करता है जिससे अक्सर उपयोगकर्ता पर यह धारणा बनती है कि सभी थ्रेड्स एक साथ चल रहे हैं और इसे मल्टीथ्रेडिंग कहा जाता है।

मल्टीथ्रेडिंग प्रणाली की जवाबदेही को बढ़ाता है, जैसे कि यदि आवेदन का एक धागा जवाब नहीं दे रहा है, तो दूसरा इस अर्थ में जवाब देगा कि उपयोगकर्ता को बेकार नहीं बैठना होगा। मल्टीथ्रेडिंग संसाधन को साझा करने की अनुमति देता है क्योंकि एक ही प्रक्रिया से संबंधित थ्रेड्स कोड और प्रक्रिया के डेटा को साझा कर सकते हैं, और यह एक प्रक्रिया को एक ही पते के स्थान पर एक ही समय में कई थ्रेड सक्रिय करने की अनुमति देता है
एक अलग प्रक्रिया बनाना महंगा है क्योंकि सिस्टम को प्रत्येक प्रक्रिया के लिए अलग-अलग मेमोरी और संसाधन आवंटित करने होते हैं, लेकिन थ्रेड्स बनाना आसान होता है क्योंकि इसमें एक ही प्रक्रिया के थ्रेड्स के लिए अलग-अलग मेमोरी और संसाधनों को आवंटित करने की आवश्यकता नहीं होती है।

ओएस में मल्टीटास्किंग और मल्टीथ्रेडिंग के बीच महत्वपूर्ण अंतर

  1. मल्टीटास्किंग और मल्टीथ्रेडिंग के बीच मूल अंतर यह है कि मल्टीटास्किंग में, सिस्टम एक ही समय में कई कार्यक्रमों और कार्यों को निष्पादित करने की अनुमति देता है, जबकि, मल्टीथ्रेडिंग में, सिस्टम एक ही समय में एक ही या विभिन्न प्रक्रियाओं के कई थ्रेड निष्पादित करता है।
  2. मल्टीटास्किंग में सीपीयू को कई कार्यक्रमों के बीच स्विच करना पड़ता है ताकि यह प्रतीत हो कि कई कार्यक्रम एक साथ चल रहे हैं। दूसरी ओर, मल्टीथ्रेडिंग में सीपीयू को कई थ्रेड्स के बीच स्विच करना पड़ता है ताकि यह दिखाई दे कि सभी थ्रेड्स एक साथ चल रहे हैं।
  3. मल्टीटास्किंग प्रत्येक प्रक्रिया / कार्यक्रम के लिए अलग-अलग मेमोरी और संसाधन आवंटित करता है, जबकि, मल्टीथ्रेडिंग थ्रेड्स में एक ही प्रक्रिया से संबंधित समान मेमोरी और संसाधन साझा करते हैं।

निष्कर्ष:

मल्टीटास्किंग मल्टीरोग्रामिंग के समान है, जबकि मल्टीथ्रेडिंग थ्रेड-आधारित मल्टीटास्किंग है। मल्टीटास्किंग मल्टीटास्किंग की तुलना में कम खर्चीला है क्योंकि थ्रेड बनाना आसान है फिर एक प्रक्रिया।

Top