What Are Multithreading Models in Hindi?
हेलो दोस्तों आज के इस ब्लॉग पोस्ट(What Is Multithreading models in Hindi) में हम आपको multithreaded Process और Multithreading Process models के बारे में हिंदी में जानकारी देंगे |
इस ब्लॉग पोस्ट(What Is Multithreading models in Hindi) में हम multithreading model से related और multithreaded Process से रिलेटेड कुछ बहुत इम्पोर्टेन्ट questions को discuss करेंगे जैसे कि:
What is the multithreaded process?
What are the multithreading models?
What is the difference between a single-threaded and multithreaded process?
What are the advantages of using multithreading instead of multiple processes?
What Is Multithreaded Process In Hindi?
What Is Multithreading models in Hindi?
What is a multithreaded process?/ multithreaded Process क्या है?|What are multithreading models in Hindi?
multithreaded Process मतलब कि एक ही प्रोग्राम के कई सारे threads अथवा parts|What Is Multithreading models in Hindi|
और जब एक multithreaded environment में एक program के कई सारे थ्रेड एक साथ parallely रन होते है|What Is Multithreading models in Hindi|
तब हम ऐसी Process और program को multithreaded Process अथवा program कहते है |What Is Multithreading models in Hindi|
एक्चुअली में यह CPU की ability होती है एक साथ Process को रन करना |
किसी भी computer architecture प्रोग्राम में जहाँ पर operating system multithreaded environment को सपोर्ट करता है|
वहां पर आसानी से एक प्रोग्राम के कई सारे thread parallel में रन हो सकते है |
What are the multithreading models?/ Multithreading models क्या होते है ?
जैसा कि हम जानते है कि computer architecture में दो तरह के threads होते है, एक होता है user thread और दूसरा होता है kernel thread |
User thread kernel thread के ऊपर होता है और यह बिना कर्नेल के सपोर्ट के काम करता है |
User thread वो thread होते है जिन्हे application प्रोग्राम उन्हें वहां पर रखता है |
और kernel threads जो होते है वो OS के साथ supported होते है |
लेकिन कुछ specific implementation के case में user threads को kernel threds के साथ mapped होना चाहिए |
और ऐसा करने के लिए हमें कुछ models की जरुरत होती है जो कि strategies provide करते है|
User threads को kernel threads के साथ mapped करने की |
What is the difference between a single-threaded and multithreaded process?/ single threaded और multithreaded Process में क्या डिफ्रेन्स होता है ?
single threded Process में जो Process का execution होता है वो एक sequence में होता है |
जब एक एक Process का execution खत्म हो जाता है तब दूसरी Process का execution start होता है |
वही दूसरी तरफ multithreaded Process में एक साथ कई सारी Process अथवा programs के कई सारे पार्ट्स को एक साथ execute किया जा सकता है |
What are the advantages of using multithreading instead of multiple processes?/ multiple process की अपेक्षा Multithreading Process का क्या advantages होता है ?
एक multiprocessor environment में हम कई सारे थ्रेड्स को एक साथ कई सारे CPU में रन करा सकते है parallely |
इसका मतलब यह हुआ कि जब हमारे पास कई सारे थ्रेड्स एक साथ हो रन करने के लिए|
तब यह थ्रेड्स मल्टीप्रोसेस्सोर एरिया में ज्यादा फ़ास्ट एक्सेक्यूटे होते है वजाये कि uniprocessor एरिया में |
और multiple threds वैसे भी multiple processes की अपेक्षा ज्यादा फ़ास्ट execute होती है|
क्योकि उन्हें कम resources की जरुरत होती है run होने के लिए और बे less overhead create करती है |
Benefits: multithreaded प्रोग्राम के benefits को हम निम्नलिखित categories में बाँट सकते है –
Resource sharing: वैसे तो जो threads होते है वो by default ही मेमोरी और रिसोर्सेज शेयर करते है उस process के जिसको वे belong करते है |
और इससे प्रॉफिट यह होता है कि कोई भी एप्लीकेशन डिफरेंट डिफरेंट activities के लिए कई सारे thread रख सकता है|
वो भी एक ही address space के साथ |
Responsiveness: एक interactive application को Multithreading बनाने से यह प्रॉफिट हो जाता है कि अगर प्रोग्राम का कोई पार्ट अभी…
… ब्लॉक भी है या फिर कोई lengthy operation perform कर रहा है तब तक parallel में प्रोग्राम का कोई और segment रन कर रहा होता है |
और इससे यूजर के लिए एक responsiveness क्रिएट होती है और यूजर का ध्यान application से नहीं हटता है |
Economy: प्रोसेस क्रिएशन के लिए मेमोरी और रिसोर्स को allocate करना थोड़ा महंगा होता है |
इसलिए थ्रेड्स का उपयोग करना कुछ इकोनोमिकल होता है क्योकि थ्रेड्स आसानी से उस प्रोसेस के रिसोर्सेज शेयर करते है जिसको वे belong करते है |
Utilization of multiprocessor architecture: Multithreading का एक benefit तो यह होता है कि इससे multiprocessor architecture को बढ़ावा मिलता है |
जहाँ पर प्रत्येक थ्रेड परलेली एक्सेक्यूटे हो सकते है वो भी अलग अलग प्रोसेसर पर |
Types of model / Multithreading models in OS / Multithreading models के प्रकार:
ऐसे कई सारे सिस्टम होते है जो कि दोनों यूजर थ्रेड और कर्नेल थ्रेड को सपोर्ट प्रोवाइड करवाते है |
और इसे के चलते एक नया multithrading models डेवेलोप होता है | Multithreading models के कई प्रकार निम्नलिखित है :
Many to one model:
many to one मॉडल के अनुसार कई सारे user level threads को एक kernel thread के साथ map किया जाता है |
जैसे कि नीचे दिए हुए fig में आप देख सकते है |
यहाँ पर जो thread management होती है वो यूजर स्पेस में होती है, इसलिए यह efficient है |
लेकिन अगर कोई भी एक thread blocking system कॉल बनाता है तो फिर पूरा सिस्टम ब्लॉक हो सकता है |
और multiple threads एक साथ multiprocessor में parallely रन नहीं हो पाएंगे |
क्योकि एक टाइम पर एक ही थ्रेड kernel को एक्सेस कर सकता है |

One-to-one model:
one to one model में हम हर एक user thread को kernel thread से map करते है |
और इस मॉडल में हम ज्यादा concurrency प्राप्त करते है many to one मॉडल की अपेक्षा क्योकि…
…अगर यहाँ पर एक थ्रेड ब्लॉकिंग सिस्टम क्रिएट करता है तो फिर भी दूसरा थ्रेड आसानी से रन जो सकता है |
और यह मॉडल हमें एक साथ कई सारे थ्रेड्स को मल्टीप्रोसेस्सोर में parallely रन करने के लिए allow करता है |
बस एक drawback जो है इस मॉडल का वो यह है कि यहाँ पर एक यूजर को यूजर थ्रेड create करने के लिए हमें एक corresponding kernel थ्रेड की जरुरत पड़ती है |
तो इस मॉडल में कई सारे kernel threads को क्रिएट करने का ओवरहेड कही न कही एप्लीकेशन की परफॉरमेंस को एफेक्ट कर सकती है |
और इस मॉडल के इम्प्लीमेंटेशन पर कई सारे threads को restrict किया जाता है जो कि सिस्टम द्वारा supported रहते है |
एक्साम्प्ले, Windows NT , Windows 2000 , and OS /2 इस model को implement करते है |
Many to many models:
many to many मॉडल में कई सारे यूजर थ्रेड्स को कुछ कम या फिर बराबर कर्नेल थ्रेड्स के साथ map अथवा multiplex किया जाता है |
और इनमे जो कर्नेल थ्रेड्स है वो स्पेसिफिक हो सकते है या तो किसी पर्टिकुलर एप्लीकेशन के लिए या फिर मशीन के लिए |
many to many model के अंतर्गत एक डेवलपर चाहे जितने भी यूजर थ्रेड्स को क्रिएट कर सकता है|
और इसमें हम true concurrency की expectation नहीं रख सकते है क्योकि kernel केवल एक ही थ्रेड को एक बार में schedule कर सकता है |

इन सभी मॉडल्स में से हमें सबसे ज्यादा concurrency हमें one to one model में मिलती है |
लेकिन developer को इस model का use करते समय इस बात का ध्यान देना चाहिए के वे एक application के लिए बहुत सारे threads को create न करें |
और जहाँ तक many to many model की बात है तो यह मॉडल ऐसे किसी भी तरह के drawbacks से suffer नहीं करता है |
यहाँ पर डेवेलपर चाहे जितने यूजर थ्रेड्स को क्रिएट कर सकता है और उसके हिसाब से पैरेलल में मल्टीप्रोसेस्सोर पर करेस्पोंडिंग कर्नेल थ्रेड रन हो सकते है |
एक्साम्प्ले के लिए salaries 2 IRI X और Tru64 Unix इस मॉडल को implement करते है |
You can also go through a few more amazing blog links below related to operating systems:
disk scheduling क्या होती है…
FAT32 Advantages and Disadvantages…
Overlay advantages and disadvantages in programs…
What is the use of Cache Memory…
What is Linker? Why is it required?…
types Of File Operations…
What are the file Organisation and its types…
Dijkstra: Bankers Algorithm For Deadlock Avoidance…
What is a thread in the operating system with an example…
Cache Memory In Hindi…
Linker In Hindi…
What Are Multithreading Models in Hindi…
Dynamic Storage Problem In OS In Hindi…
Process states in the Operating system in Hindi…
FAT32 Advantages And Disadvantages In Hindi…
Critical Section Problem With a Simple Example…
Critical Section Problem In OS In Hindi…
Dijkstra Algorithm In Hindi|Banker’s Algorithm In Hindi…
What Is Dynamic Storage Problem…
What are the Fork and Exec system calls…
Multithreaded Process: Benefits & Models…
The Process States In Operating System…
Quick Q&A:
What is the many-to-many multithreading model? Many-to-Many मल्टीथ्रीडिंग मॉडल क्या है?
Many-to-many मॉडल में प्रोग्राम चाहे कितनी भी थ्रेड्स(threads) रख सकता है अगर वह प्रोग्राम के लिए appropriate है |
और इसकी वजह से न तो प्रोसेस हैवी होती है और न ही उस पर कोई एक्स्ट्रा बर्डन(burden) पड़ता है |
इस मॉडल में एक यूजर-लेवल थ्रेड्स लाइब्रेरी होती है |
और यह लाइब्रेरी जो है वो कर्नेल थ्रेड्स के ऊपर यूजर लेवल थ्रेड्स के लिए सोफिस्टिकेटेड(sophisticated) सचेंडुलिंग प्रोवाइड करती है|
Which multithreading model is better and why? कौन सा multithreading model सबसे अच्छा होता है और क्यों?
Many -to -Many मॉडल सबसे बेस्ट होता है |
इसमें multiple यूजर थ्रेड्स जो है वो कम या ज्यादा कर्नेल थ्रेड्स के साथ मल्टीप्लेक्सीद होते है |
तीनो मॉडल्स में यह मॉडल सबसे अच्छा होता है क्योकि यह दूसरे अन्य मॉडल्स की कमियों को दूर करता है |
इसके अंदर हम चाहे कितने भी user threads क्रिएट कर सकते है, जैसा कि हम One -to -One मॉडल में नहीं कर सकते है |
How many threads are in multithreading? Multithreading में कितने threads होते है?
प्रत्येक CPU core जो है वो दो threads रख सकता है अगर वो multi /hyper threading enabled है तो |
यह चीज़ आप अपने CPU प्रोसेसर के लिए भी सर्च कर सकते है |
MAC यूजर यह डिटेल यहाँ से प्राप्त कर सकते है – About ->System Report |
और इसका मतलब यह होता है कि मेरा 6-Core i7 processor 6 core रखता है | इसलिए यह 12 threads तक create कर सकता है |
How many cores are required for multithreading? Multithreading के लिए कितने core की जरुरत होती है ?
Computing architecture में, मल्टीथ्रीडिंग जो है वो CPU (or a single core in a multi-core processor) की ability होती है |
इसके अंतर्गत multiple threads जो है वो एक साथ execute हो सकते है जो कि operating system के द्वारा support किये जाते है |
What are the 4 benefits of multithreading? Multithreading के क्या क्या फायदे होते है ?
Multithreading के फायदे निम्नलिखित है:
Improved throughput.
Simultaneous and fully symmetric use of multiple processors for computation and I/O.
Superior application responsiveness.
Improved server responsiveness.
Minimized system resource usage.
Program structure simplification.
Better communication.
What are two 2 benefits of multithreading? Multithreading के दो मुख्य benefits क्या होते है ?
Multithreading के benefits निम्नलिखित है:
Multithreading की मदद से एक प्रोग्राम के कई पार्ट्स एक साथ रन हो सकते है |
यह जो parts होते है उन्हें हम threads बोलते है |
यह बहुत ही light weight processes होती है जो की processes के साथ ही available होती है |
इस तरह Multithreading में multitasking की वजह से CPU का utilization बढ़ जाता है |
Which language is best for multithreading? Multithreading के लिए कौन सी language best है ?
C और C ++ language का उपयोग करके आप एक साथ बहुत सारे threads को use और manage कर सकते है |
अब तो C और C ++ में threads के लिए library भी उपलब्ध है |
What are the two types of threads in multithreading? Multithreading में दो तरह के Threads कौन से होते है ?
आज के modern system में दो तरह के Threads मुख्य रूप से होते है:
User Threads
Kernel Threads
User Threads जो है वो Kernel Threads के ऊपर supported होते है बिना किसी Kernel सपोर्ट के|
Kernel Threads जो है वो खुद ही OS Kernel से supported होते है |
Is multithreading concurrent or parallel? Multithreading concurrent होती है या फिर parallel ?
मल्टिपल processor cores में तो Multithreading बिल्कुल ही पैरेलल होती है |
individual microprocessor जो है वो एक साथ काम करते है result को efficiently प्राप्त करने के लिए|
ऐसे में बहुत सी parallel tasks और concurrent tasks एक साथ एक साथ रन हो रही होती है |
What’s the difference between cores and threads? cores और Threads में क्या अंतर होता है ?
cores और Threads में मुख्य अंतर यह होता है कि:
Core जो है वो एक individual physical unit है |
जबकि Threads जो है वो instructions का virtual sequence होते है |
किसी भी कंप्यूटर सिस्टम की performance इस बात पर depend करती है कि उसमे cores कितनी है और उसकी threading तकनीक क्या है |
What are the three types of multithreading model? Multithreading मॉडल कितने प्रकार के होते है?
Multithreading मॉडल के प्रकार निम्नलिखित है:
Many to many relationship.
Many to one relationship.
One to one relationship.
Why is multithreading used? Multithreading का उपयोग क्यों किया जाता है ?
आज कल हर एक computer system multitasking होता है|
multitasking वह ability होती है जिसके तहत दो या दो से अधिक concurrent programs को आप एक साथ execute कर सकते है |
और Multithreading की वजह से ही multitasking possible होता है |
क्योकि Multithreading में programs को छोटे छोटे executable Threads में divide कर दिया जाता है |
प्रत्येक thread के पास एक program element होता है जो कि main program को execute करने के लिए जरुरी होता है |
और computer system एक बार में एक thread को execute करता है |
Where is multithreading used? Multithreading का उपयोग हम कहाँ पर करते है?
Multithreading के उपयोग हम निम्नलिखित जगह पर करते है:
load content,
display animations,
play a video.
और एक बहुत common example Multithreading के उपयोग का जो शायद आप सभी लोगो ने सुना होगा वो है word processor |
What are the disadvantages of multithreading? Multithreading के disadvantages क्या क्या है?
Multithreading के disadvantages निम्नलिखित है:
Difficulty in writing code – Multithreaded and multicontexted applications को लिखना इतना आसान नहीं होता है .
The difficulty of debugging.
Difficulty in managing concurrency.
Difficulty of testing.
Difficulty in porting existing code.
What are the main advantages of multithreading? Multithreading के क्या advantages होते है?
Multithreading के कुछ common advantages निम्नलिखित है:
डेवलपमेंट टाइम कम होने से परफॉरमेंस बढ़ जाती है|
प्रोग्राम coding को सरल और streamlined बनाती है|
GUI responsiveness को improvise करती है|
tasks को simultaneously और parallely execute करती है|
रिसोर्सेज का बेहतर utilization करके cache storage का better use करती है|
Conclusion:
तो दोस्तों इस ब्लॉग पोस्ट(What Is Multithreading models in Hindi) में हमने multithreaded processes और उसके benefits के बारे में जाना | हमने इस ब्लॉग में एक्स्प्लोर किया कि multithreaded Process क्या होती है ? Multithreading models क्या होते है ? single threaded Process और multithreaded Process में क्या डिफरेंस होता है ? multiple Process से Multithreading Process कैसे अच्छी और advantageous होती है ?
इस ब्लॉग(What Is Multithreading models in Hindi) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते support@a5theory.comपर ईमेल लिख सकते है|
आशा करता हूँ, कि आपने इस पोस्ट(What Is Multithreading models in Hindi) को खूब एन्जॉय किया होगा|
आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|
आपका समय शुभ हो|