क्या एक वास्तविक USB संचार प्रोटोकॉल है?
हम में से अधिकांश अपने USB उपकरणों के बारे में कभी नहीं सोचते हैं, हम बस उन्हें प्लग इन करते हैं और उनके बारे में भूल जाते हैं। लेकिन क्या होगा अगर आप जिज्ञासु प्रकार हैं जो यूएसबी के बारे में अधिक जानना चाहते हैं कि कैसे काम करता है? आज के SuperUser Q & A पोस्ट में एक जिज्ञासु पाठक के सवालों के जवाब हैं.
आज का प्रश्न और उत्तर सत्र सुपरयूज़र के सौजन्य से आता है-स्टैक एक्सचेंज का एक उपखंड, क्यू एंड ए वेब साइटों का एक समुदाय-संचालित समूह है।.
एविलेल्का कोवाल्स्की (फ़्लिकर) की फोटो शिष्टाचार.
प्रश्न
SuperUser रीडर स्माइब जानना चाहता है कि क्या वास्तव में एक वास्तविक USB संचार प्रोटोकॉल है:
विकिपीडिया के अनुसार, USB:
- कंप्यूटर और इलेक्ट्रॉनिक उपकरणों के बीच कनेक्शन, संचार और बिजली की आपूर्ति के लिए बस में उपयोग किए जाने वाले केबल, कनेक्टर और संचार प्रोटोकॉल को परिभाषित करता है.
लेकिन क्या कोई वास्तविक है USB संचार प्रोटोकॉल? मेरी समझ यह है कि:
- आप USB डिवाइस को मशीन से कनेक्ट करते हैं (उदाहरण के लिए उबंटू या किसी भी तरह का लिनक्स).
- लिनक्स किसी भी तरह उस डिवाइस के लिए डिवाइस ड्राइवर ढूंढता है (यदि आप जानते हैं कि बोनस!) और इसे लोड करता है.
- डिवाइस अब के तहत जुड़ा हुआ है / Dev / theDevice.
- उपयोगकर्ता स्थान एप्लिकेशन अब पढ़ और लिख सकते हैं / Dev / theDevice और ड्राइवर अंतर्निहित डिवाइस / हार्डवेयर में निम्न-स्तरीय इनपुट और आउटपुट को संभालता है.
जहाँ तक मैं बता सकता हूँ, a USB संचार प्रोटोकॉल इस प्रवाह में कहीं भी प्रकट नहीं होता है। अगर मेरी समझ सही है, तो USB सिर्फ पीसी और डिवाइस के बीच का केबल और इलेक्ट्रिकल कनेक्शन है.
क्या मैं यहाँ गलत हूँ? क्या USB वास्तव में किसी प्रकार के निम्न-स्तरीय प्रोटोकॉल को लागू करता है जो ऊपर दिए गए प्रवाह को रेखांकित करता है? यदि हां, तो यह क्या है और यह 30,000 फीट के दृश्य पर कैसे काम करता है?
क्या कोई वास्तविक USB संचार प्रोटोकॉल है?
उत्तर
SuperUser योगदानकर्ताओं RedGrittyBrick और projectdp का हमारे लिए जवाब है। सबसे पहले, RedGrittyBrick:
हाँ (USB प्रोटोकॉल देखें).
जैसा कि मैंने इसे समझा, USB कल्पना स्तरित प्रोटोकॉल और डिवाइस प्रोफाइल के एक जटिल सेट को परिभाषित करता है.
उदाहरण के लिए, USB डिवाइस मास-स्टोरेज, कीबोर्ड, मानव इंटरफ़ेस डिवाइस, आदि जैसे उच्च-स्तरीय टेम्पलेट्स के अनुरूप हो सकते हैं और जेनरेटर डिवाइस ड्राइवर द्वारा प्रबंधित किए जा सकते हैं। कुछ USB डिवाइस निचले स्तर पर संचार कर सकते हैं जैसे कि ऑपरेटिंग सिस्टम का निम्न स्तर USB समर्थन यह पहचान सकता है कि डिवाइस-विशिष्ट उच्च स्तर के ड्राइवरों की आवश्यकता है.
Projectdp के उत्तर द्वारा अनुसरण किया गया:
सवाल
क्या एक्शन में निम्न स्तर का यूएसबी संचार प्रोटोकॉल है और यह क्या है?
उत्तर
हाँ वहाँ है। USB विनिर्देश में USB प्रोटोकॉल शामिल होता है जो बस के स्तर को थोड़ा स्तर पर उपयोग करने के तरीके को परिभाषित करता है। यह निम्न-स्तरीय प्रोटोकॉल होगा जो उच्च स्तर के प्रोटोकॉल (यानी द्रव्यमान-भंडारण, छिपाई, आदि) को रेखांकित करता है।.
USB प्रोटोकॉल कैसे काम करता है, इसकी बारीकियों के लिए, यह OSDev wiki मददगार है। USB प्रोटोकॉल के अनुसार विभिन्न डेटा लेनदेन का वर्णन करने के लिए अनुक्रम आरेखों का उपयोग करते हुए एक और दिलचस्प विवरण यहां दिया गया है.
बोनस प्रश्न
लिनक्स उस डिवाइस के लिए डिवाइस ड्राइवर को कैसे ढूंढता और लोड करता है?
बोनस उत्तर
USB- सक्षम कर्नेल का उपयोग करते समय लिनक्स पर, USB विनिर्देशन के कारण हार्डवेयर और कर्नेल के माध्यम से एक कार्यशील USB डिवाइस का पता लगाया जाएगा। हार्डवेयर की तरफ, USB होस्ट नियंत्रक द्वारा पता लगाया जाता है। फिर कर्नेल में होस्ट कंट्रोलर चालक यूएसबी प्रोटोकॉल के लिए तैयार किए गए निम्न-स्तरीय बिट्स को USB प्रोटोकॉल स्वरूपित सूचना पर ले जाता है। यह जानकारी तब कर्नेल में usbcore ड्राइवर में पॉप्युलेट हो जाती है.
मैंने इस उत्कृष्ट Opensourceforu लेख से विरोधाभास किया है, जिसमें लिनक्स में आपके प्रश्न के बारे में अधिक विस्तार और स्पष्टता है.
नीचे दिए गए थ्रेड लिंक के माध्यम से बाकी जीवंत चर्चा की जाँच करना सुनिश्चित करें!
स्पष्टीकरण में कुछ जोड़ना है? टिप्पणियों में विचार व्यक्त करो। अन्य टेक-सेवी स्टैक एक्सचेंज उपयोगकर्ताओं से अधिक उत्तर पढ़ना चाहते हैं? पूरी चर्चा धागा यहाँ देखें.