डिवाइस फ़ाइल: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
 
(10 intermediate revisions by 3 users not shown)
Line 2: Line 2:
{{Distinguish|युक्ति ट्री }}
{{Distinguish|युक्ति ट्री }}


यूनिक्स जैसे [[ऑपरेटिंग सिस्टम|ऑपरेटिंग प्रणाली]] में, डिवाइस फ़ाइल या विशेष फ़ाइल [[डिवाइस ड्राइवर]] के लिए [[इंटरफ़ेस (कंप्यूटर विज्ञान)]] है जो [[फाइल सिस्टम|फाइल प्रणाली]] में दिखाई देती है जैसे कि यह सामान्य [[कम्प्यूटर फाइल]] हो। डॉस, ओएस/2, और [[Windows|विंडोज]] में भी विशेष फ़ाइलें हैं। ये विशेष फाइलें मानक इनपुट/आउटपुट [[सिस्टम कॉल|प्रणाली कॉल]] के माध्यम से अपने डिवाइस ड्राइवर का उपयोग करके एप्लिकेशन प्रोग्राम को डिवाइस के साथ इंटरैक्ट करने [[की]] अनुमति देती हैं। मानक प्रणाली कॉल का उपयोग करना कई प्रोग्रामिंग कार्यों को सरल करता है, और डिवाइस सुविधाओं और कार्यों को ध्यान किए बिना संगत उपयोगकर्ता-स्थान इनपुट/आउटपुट प्रणाली की ओर जाता है।
यूनिक्स जैसे [[ऑपरेटिंग सिस्टम|ऑपरेटिंग प्रणाली]] में, डिवाइस फ़ाइल या विशेष फ़ाइल [[डिवाइस ड्राइवर]] के लिए [[इंटरफ़ेस (कंप्यूटर विज्ञान)]] है जो [[फाइल सिस्टम|फाइल प्रणाली]] में दिखाई देती है जैसे कि यह सामान्य [[कम्प्यूटर फाइल]] हो। डॉस, ओएस/2, और [[Windows|विंडोज]] में भी विशेष फ़ाइलें हैं। ये विशेष फाइलें मानक इनपुट/आउटपुट [[सिस्टम कॉल|प्रणाली कॉल]] के माध्यम से अपने डिवाइस ड्राइवर का उपयोग करके एप्लिकेशन प्रोग्राम को डिवाइस के साथ इंटरैक्ट करने [[की]] अनुमति देती हैं। मानक प्रणाली कॉल का उपयोग करना कई प्रोग्रामिंग कार्यों को सरल करता है, डिवाइस सुविधाओं और कार्यों को ध्यान किए बिना संगत उपयोगकर्ता-स्थान इनपुट/आउटपुट प्रणाली की ओर जाता है।


== सिंहावलोकन ==
== अवलोकन ==
डिवाइस फ़ाइलें आमतौर पर मानक उपकरणों (जैसे प्रिंटर और सीरियल पोर्ट) के लिए सरल इंटरफेस प्रदान करती हैं, लेकिन उन उपकरणों पर विशिष्ट विशिष्ट संसाधनों तक पहुंचने के लिए भी उपयोग किया जा सकता है, जैसे कि [[डिस्क विभाजन]]इसके अतिरिक्त, उपकरण फ़ाइलें [[संसाधन (कंप्यूटर विज्ञान)]] तक पहुँचने के लिए उपयोगी होती हैं जिनका किसी वास्तविक उपकरण से कोई संबंध नहीं होता है, जैसे [[डेटा सिंक]] और यादृच्छिक संख्या जनरेटर।
डिवाइस फ़ाइलें सामान्यतः मानक उपकरणों (जैसे प्रिंटर और सीरियल पोर्ट) के लिए सरल इंटरफेस प्रदान करती हैं, किंतु उन उपकरणों पर विशिष्ट अद्वितीय संसाधनों तक पहुंचने के लिए भी उपयोग की जा सकती हैं, जैसे कि [[डिस्क विभाजन]] हैं। इसके अतिरिक्त, डिवाइस फ़ाइलें उन प्रणाली [[संसाधन (कंप्यूटर विज्ञान)|संसाधनों (कंप्यूटर विज्ञान)]] तक पहुँचने के लिए उपयोगी होती हैं जिनका किसी वास्तविक उपकरण से कोई संबंध नहीं होता है, जैसे [[डेटा सिंक]] और यादृच्छिक संख्या जनरेटर है।


यूनिक्स जैसे ऑपरेटिंग प्रणाली में दो सामान्य प्रकार की डिवाइस फाइलें होती हैं, जिन्हें कैरेक्टर स्पेशल फाइल्स और ब्लॉक स्पेशल फाइल्स के रूप में जाना जाता है। उनके बीच का अंतर यह है कि ऑपरेटिंग प्रणाली और हार्डवेयर द्वारा कितना डेटा पढ़ा और लिखा जाता है। इन्हें एक साथ [[नामित पाइप]]ों के विपरीत 'डिवाइस विशेष फ़ाइलें' कहा जा सकता है, जो डिवाइस से कनेक्ट नहीं हैं लेकिन सामान्य फ़ाइलें भी नहीं हैं।
यूनिक्स जैसे ऑपरेटिंग प्रणाली में दो सामान्य प्रकार की डिवाइस फाइलें होती हैं, जिन्हें कैरेक्टर स्पेशल फाइल्स और ब्लॉक स्पेशल फाइल्स के रूप में जाना जाता है। इनके मध्य का अंतर यह है कि ऑपरेटिंग प्रणाली और हार्डवेयर द्वारा कितना डेटा पढ़ा और लिखा जाता है। इन्हें एक साथ [[नामित पाइप|नामित पाइपों]] के विपरीत 'डिवाइस विशेष फ़ाइलें' कहा जा सकता है, जो डिवाइस से कनेक्ट नहीं हैं किंतु सामान्य फ़ाइलें भी नहीं हैं।


[[MS-DOS]] ने यूनिक्स से विशेष फाइलों की अवधारणा को उधार लिया लेकिन उनका नाम बदलकर डिवाइस कर दिया।<ref name="kb90239"/>क्योंकि MS-DOS के शुरुआती संस्करण एक निर्देशिका (फ़ाइल प्रणाली) पदानुक्रम का समर्थन नहीं करते थे, उपकरणों को उनके नाम [[आरक्षित शब्द]] बनाकर नियमित फ़ाइलों से अलग किया गया था, उदाहरण के लिए: कुख्यात <code>CON</code>. इन्हें सीपी/एम के साथ संगतता की डिग्री के लिए चुना गया था और अभी भी पिछड़े संगतता के लिए आधुनिक विंडोज़ में मौजूद हैं।
[[MS-DOS|एमएस-डॉस]] ने यूनिक्स से विशेष फाइलों की अवधारणा को उधार ली थी किंतु उनका नाम परिवर्तित करके डिवाइस कर दिया।<ref name="kb90239"/>क्योंकि एमएस-डॉस के प्रारंभिक संस्करण निर्देशिका (फ़ाइल प्रणाली) पदानुक्रम का समर्थन नहीं करते थे, उपकरणों को उनके नाम [[आरक्षित शब्द]] बनाकर नियमित फ़ाइलों से भिन्न किया गया था, उदाहरण के लिए: इन्फमोउस <code>CON</code> हैं। इन्हें सीपी/एम के साथ संगतता की डिग्री के लिए चयन किया गया था और अभी भी पिछड़े संगतता के लिए आधुनिक विंडोज़ में उपस्थित हैं।


कुछ यूनिक्स जैसी प्रणालियों में, अधिकांश डिवाइस फ़ाइलों को पारंपरिक रूप से माउंटेड [[वर्चुअल फाइल सिस्टम|वर्चुअल फाइल प्रणाली]] के हिस्से के रूप में प्रबंधित किया जाता है <code>/dev</code>, संभवतः एक नियंत्रित डेमॉन से जुड़ा हुआ है, जो रन टाइम पर हार्डवेयर जोड़ने और हटाने की निगरानी करता है, डिवाइस फ़ाइल प्रणाली में संबंधित परिवर्तन करता है यदि वह कर्नेल द्वारा स्वचालित रूप से नहीं किया जाता है, और विशेष डिवाइस की जरूरतों को पूरा करने के लिए प्रणाली या यूजर स्पेस में स्क्रिप्ट्स को आमंत्रित करता है। [[FreeBSD]], [[DragonFly BSD]] और [[डार्विन (ऑपरेटिंग सिस्टम)|डार्विन (ऑपरेटिंग प्रणाली)]] के पास एक समर्पित फ़ाइल प्रणाली ''devfs'' है; इस फाइल प्रणाली द्वारा [[कर्नेल स्थान]] में डिवाइस नोड्स को स्वचालित रूप से प्रबंधित किया जाता है। लिनक्स में एक समान '' devfs '' कार्यान्वयन हुआ करता था, लेकिन बाद में इसे छोड़ दिया गया, और फिर संस्करण 2.6.17 के बाद से हटा दिया गया;<ref>{{cite web |last1=Kroah-Hartman |first1=Greg |title=[PATCH] devfs: Remove devfs from the kernel tree |url=https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/fs/devfs?id=d8deac5094988c7ad1127ee61f52c59a952fcabb |website=Linux kernel source tree |access-date=2021-06-12 |date=2005-06-20}}</ref> लिनक्स अब मुख्य रूप से एक [[ उपयोक्ता स्थान ]] कार्यान्वयन का उपयोग करता है जिसे [[udev]] के रूप में जाना जाता है, लेकिन इसके कई रूप हैं।
कुछ यूनिक्स जैसी प्रणालियों में, अधिकांश डिवाइस फ़ाइलों को [[वर्चुअल फाइल सिस्टम|वर्चुअल फाइल प्रणाली]] के भाग के रूप में प्रबंधित किया जाता है जो परंपरागत रूप से <code>/dev</code>, पर आरोहित होता है, संभवतः नियंत्रित डेमॉन से जुड़ा हुआ है, जो रन टाइम पर हार्डवेयर जोड़ने और विस्थापित करने का निरीक्षण करता है, डिवाइस फ़ाइल प्रणाली में संबंधित परिवर्तन करता है यदि यह स्वचालित रूप से कर्नेल द्वारा नहीं किया जाता है, और संभवतः विशेष डिवाइस की आवश्यकताओं को पूर्ण करने के लिए प्रणाली या उपयोगकर्ता स्थान में स्क्रिप्ट को प्रारम्भ करता है। [[FreeBSD|फ्रीबीएसडी]], [[DragonFly BSD|ड्रेगनफ्लाईबीएसडी]] और [[डार्विन (ऑपरेटिंग सिस्टम)|डार्विन (ऑपरेटिंग प्रणाली)]] के पास समर्पित फ़ाइल प्रणाली ''devfs'' है; इस फाइल प्रणाली द्वारा [[कर्नेल स्थान]] में डिवाइस नोड्स को स्वचालित रूप से प्रबंधित किया जाता है। लिनक्स में एक समान ''devfs ''कार्यान्वयन हुआ करता था, किंतु पश्चात में इसे छोड़ दिया गया, और फिर संस्करण 2.6.17 के पश्चात से विस्थापित कर दिया गया;<ref>{{cite web |last1=Kroah-Hartman |first1=Greg |title=[PATCH] devfs: Remove devfs from the kernel tree |url=https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/fs/devfs?id=d8deac5094988c7ad1127ee61f52c59a952fcabb |website=Linux kernel source tree |access-date=2021-06-12 |date=2005-06-20}}</ref> लिनक्स अब मुख्य रूप से[[ उपयोक्ता स्थान | उपयोगकर्ता स्थान]] कार्यान्वयन का उपयोग करता है जिसे [[udev]] के रूप में जाना जाता है, किंतु इसके कई संस्करण हैं।


यूनिक्स प्रणाली में जो [[चुरोट]] प्रक्रिया अलगाव का समर्थन करता है, जैसे कि [[सोलारिस कंटेनर]], आमतौर पर प्रत्येक चेरोट वातावरण को स्वयं की आवश्यकता होती है <code>/dev</code>; ये आरोह बिंदु वैश्विक फ़ाइल प्रणाली ट्री में विभिन्न नोड्स पर होस्ट OS पर दिखाई देंगे। के चेरोट उदाहरणों में पॉप्युलेट किए गए डिवाइस नोड्स को प्रतिबंधित करके <code>/dev</code>, हार्डवेयर आइसोलेशन को चेरोट वातावरण द्वारा लागू किया जा सकता है (एक प्रोग्राम हार्डवेयर के साथ दखल नहीं दे सकता है जिसे वह न तो देख सकता है और न ही नाम दे सकता है - यूनिक्स फ़ाइल प्रणाली अनुमतियों की तुलना में [[अभिगम नियंत्रण]] का एक और भी मजबूत रूप)।
यूनिक्स प्रणाली में जो [[चुरोट|क्रोट]] प्रक्रिया भिन्नता का समर्थन करता है, जैसे कि [[सोलारिस कंटेनर]], सामान्यतः प्रत्येक क्रोट वातावरण को स्वयं <code>/dev</code>की आवश्यकता होती है; ये आरोह बिंदु वैश्विक फ़ाइल प्रणाली ट्री में विभिन्न नोड्स पर होस्ट ओएस पर दिखाई देंगे। <code>/dev</code> के क्रोट पॉप्युलेट किए गए डिवाइस नोड्स को प्रतिबंधित करके, हार्डवेयर भिन्नता को क्रोट वातावरण द्वारा प्रारम्भ किया जा सकता है (प्रोग्राम हार्डवेयर के साथ हस्तक्षेप नहीं कर सकता है जिसे वह न तो देख सकता है और न ही नाम दे सकता है- यूनिक्स फ़ाइल प्रणाली अनुमतियों की तुलना में [[अभिगम नियंत्रण]] का एक और भी स्थिर रूप)।


MS-DOS प्रत्येक डिवाइस फ़ाइल को विशेष रूप से खुला बनाकर हार्डवेयर डिवाइस विवाद को प्रबंधित करता है ([[टर्मिनेट-एंड-स्टे-रेजिडेंट प्रोग्राम]] देखें)। पहले से उपयोग में आने वाले डिवाइस तक पहुंचने का प्रयास करने वाला एप्लिकेशन खुद को डिवाइस फ़ाइल नोड खोलने में असमर्थ पाएगा। यूनिक्स और लिनक्स में समवर्ती पहुंच के संबंध में विभिन्न प्रकार के डिवाइस ड्राइवर सिमेंटिक्स लागू किए गए हैं।<ref>{{cite book |last=Corbet |first=Jonathan |last2= Kroah-Hartman |first2=Greg |last3=Rubini |first3=Alessandro |date=2005 |title=Linux Device Drivers, 3rd Edition |section=Access Control on a Device File|url=http://www.makelinux.net/ldd3/chp-6-sect-6.shtml |publisher=[[O'Reilly Media|O'Reilly]] |access-date=28 April 2017 |quote=The next step beyond a single-open device is to let a single user open a device in multiple processes but allow only one user to have the device open at a time.}}</ref>
एमएस-डॉस प्रत्येक डिवाइस फ़ाइल को विशेष रूप से विवृत बनाकर हार्डवेयर डिवाइस विवाद को प्रबंधित करता है ([[टर्मिनेट-एंड-स्टे-रेजिडेंट प्रोग्राम]] देखें)। पहले से उपयोग में आने वाले डिवाइस तक पहुंचने का प्रयास करने वाला एप्लिकेशन स्वयं को डिवाइस फ़ाइल नोड विवृत करने में असमर्थ पाएगा। यूनिक्स और लिनक्स में समवर्ती पहुंच के संबंध में विभिन्न प्रकार के डिवाइस ड्राइवर सिमेंटिक्स प्रारम्भ किए गए हैं।<ref>{{cite book |last=Corbet |first=Jonathan |last2= Kroah-Hartman |first2=Greg |last3=Rubini |first3=Alessandro |date=2005 |title=Linux Device Drivers, 3rd Edition |section=Access Control on a Device File|url=http://www.makelinux.net/ldd3/chp-6-sect-6.shtml |publisher=[[O'Reilly Media|O'Reilly]] |access-date=28 April 2017 |quote=The next step beyond a single-open device is to let a single user open a device in multiple processes but allow only one user to have the device open at a time.}}</ref>




== यूनिक्स और यूनिक्स जैसी प्रणालियाँ ==
== यूनिक्स और यूनिक्स जैसी प्रणालियाँ ==
[[File:Simplified Structure of the Linux Kernel.svg|thumb|लिनक्स कर्नेल की एक सरलीकृत संरचना। फाइल प्रणाली I/O सबप्रणाली के हिस्से के रूप में कार्यान्वित किए जाते हैं।]]डिवाइस नोड्स उन संसाधनों के अनुरूप हैं जो एक ऑपरेटिंग प्रणाली के कर्नेल (कंप्यूटर साइंस) ने पहले ही आवंटित कर दिए हैं। यूनिक्स उन संसाधनों की एक बड़ी संख्या और एक छोटी संख्या द्वारा पहचान करता है,<ref>{{cite book |title=यूनिक्स प्रोग्रामिंग पर्यावरण|page=[https://archive.org/details/unixprogramminge0000kern/page/66 66] |author-first1=Brian W. |author-last1=Kernighan |author-link1=Brian W. Kernighan |author-first2=Rob |author-last2=Pike |author-link2=Rob Pike |publisher=[[Prentice-Hall]] |date=1984 |isbn=0-13-937681-X |url-access=registration |url=https://archive.org/details/unixprogramminge0000kern/page/66 }}</ref> दोनों एक [[नोड (कंप्यूटर विज्ञान)]] की संरचना के हिस्से के रूप में संग्रहीत हैं। इन नंबरों का असाइनमेंट अलग-अलग [[ऑपरेटिंग सिस्टम|ऑपरेटिंग प्रणाली]] और अलग-अलग [[ कंप्यूटर मंच ]] पर विशिष्ट रूप से होता है। आम तौर पर, प्रमुख संख्या डिवाइस ड्राइवर की पहचान करती है और छोटी संख्या एक विशेष डिवाइस की पहचान करती है (संभवतः कई में से) जिसे ड्राइवर नियंत्रित करता है:<ref>{{cite web |author=Neil Brown |title=Ghosts of Unix Past: a historical search for design patterns |website=Linux Weekly News |date=October 27, 2010 |access-date=30 March 2014 |url=https://lwn.net/Articles/411845/}}</ref> इस मामले में, प्रणाली ड्राइवर को माइनर नंबर दे सकता है। हालाँकि, डायनेमिक नंबर आवंटन की उपस्थिति में, यह मामला नहीं हो सकता है (उदाहरण के लिए FreeBSD 5 और ऊपर)।
[[File:Simplified Structure of the Linux Kernel.svg|thumb|लिनक्स कर्नेल की एक सरलीकृत संरचना। फाइल प्रणाली I/O सबप्रणाली के भाग के रूप में कार्यान्वित किए जाते हैं।]]डिवाइस नोड्स उन संसाधनों के अनुरूप होते हैं जो ऑपरेटिंग प्रणाली के कर्नेल (कंप्यूटर साइंस) ने पहले ही आवंटित कर दिए हैं। यूनिक्स उन संसाधनों की प्रमुख संख्या और छोटी संख्या द्वारा पहचान करता है,<ref>{{cite book |title=यूनिक्स प्रोग्रामिंग पर्यावरण|page=[https://archive.org/details/unixprogramminge0000kern/page/66 66] |author-first1=Brian W. |author-last1=Kernighan |author-link1=Brian W. Kernighan |author-first2=Rob |author-last2=Pike |author-link2=Rob Pike |publisher=[[Prentice-Hall]] |date=1984 |isbn=0-13-937681-X |url-access=registration |url=https://archive.org/details/unixprogramminge0000kern/page/66 }}</ref> दोनों [[नोड (कंप्यूटर विज्ञान)]] की संरचना के भाग के रूप में संग्रहीत हैं। इन नंबरों का असाइनमेंट भिन्न-भिन्न [[ऑपरेटिंग सिस्टम|ऑपरेटिंग प्रणाली]] और भिन्न-भिन्न [[ कंप्यूटर मंच |कंप्यूटर प्लेटफॉर्म]] पर विशिष्ट रूप से होता है। सामान्यतः, प्रमुख संख्या डिवाइस ड्राइवर की पहचान करती है और छोटी संख्या विशेष डिवाइस (संभवतः कई में से) की पहचान करती है जिसे ड्राइवर नियंत्रित करता है:<ref>{{cite web |author=Neil Brown |title=Ghosts of Unix Past: a historical search for design patterns |website=Linux Weekly News |date=October 27, 2010 |access-date=30 March 2014 |url=https://lwn.net/Articles/411845/}}</ref> इस स्थिति में, प्रणाली ड्राइवर को माइनर नंबर दे सकता है। चूँकि, डायनेमिक नंबर आवंटन की उपस्थिति में, यह विषय नहीं हो सकता है (उदाहरण के लिए फ्रीबीएसडी 5 और ऊपर)।


अन्य विशेष फ़ाइल प्रकारों की तरह, कंप्यूटर प्रणाली मानक प्रणाली कॉल का उपयोग करके डिवाइस नोड्स तक पहुँचता है और उन्हें नियमित कंप्यूटर फ़ाइलों की तरह व्यवहार करता है। दो मानक प्रकार की डिवाइस फ़ाइलें मौजूद हैं; दुर्भाग्य से उनके नाम ऐतिहासिक कारणों से प्रति-सहज हैं, और परिणामस्वरूप दोनों के बीच अंतर की व्याख्या अक्सर गलत होती है।
अन्य विशेष फ़ाइल प्रकारों के जैसे, कंप्यूटर प्रणाली मानक प्रणाली कॉल का उपयोग करके डिवाइस नोड्स तक पहुँचता है और उन्हें नियमित कंप्यूटर फ़ाइलों के जैसे व्यवहार करता है। दो मानक प्रकार की डिवाइस फ़ाइलें उपस्थित हैं; दुर्भाग्य से उनके नाम ऐतिहासिक कारणों से प्रति-सहज हैं, और परिणामस्वरूप दोनों के मध्य अंतर की व्याख्या प्रायः त्रुटिपूर्ण होती है।


=== वर्ण उपकरण ===
=== वर्ण उपकरण ===
कैरेक्टर स्पेशल फाइल्स या कैरेक्टर डिवाइस हार्डवेयर डिवाइस तक बिना बफर, सीधी पहुंच प्रदान करते हैं। जरूरी नहीं कि वे कार्यक्रमों को एक बार में एक अक्षर को पढ़ने या लिखने की अनुमति दें; यह प्रश्न में डिवाइस पर निर्भर है। उदाहरण के लिए, हार्ड डिस्क के लिए कैरेक्टर डिवाइस को सामान्य रूप से आवश्यकता होगी कि सभी पढ़ने और लिखने को ब्लॉक सीमाओं के साथ गठबंधन किया जाए और सबसे निश्चित रूप से एक बाइट को पढ़ने की अनुमति नहीं दी जाएगी।
कैरेक्टर स्पेशल फाइल्स या कैरेक्टर डिवाइस हार्डवेयर डिवाइस तक बिना बफर, सीधी पहुंच प्रदान करते हैं। आवश्यक नहीं कि वे प्रोग्रामो को एक बार में अक्षर को पढ़ने या लिखने की अनुमति दें; यह प्रश्न डिवाइस पर निर्भर है। उदाहरण के लिए, हार्ड डिस्क के लिए कैरेक्टर डिवाइस को सामान्य रूप से आवश्यकता होगी कि सभी पढ़ने और लिखने को ब्लॉक सीमाओं के साथ गठबंधन किया जाए और सबसे निश्चित रूप से एक बाइट को पढ़ने की अनुमति नहीं दी जाएगी।


चरित्र उपकरणों को कभी-कभी कच्चे उपकरणों के रूप में जाना जाता है ताकि इस तथ्य के आस-पास के भ्रम से बचा जा सके कि ब्लॉक-आधारित हार्डवेयर के एक टुकड़े के लिए एक चरित्र डिवाइस को आम तौर पर संरेखित ब्लॉकों को पढ़ने और लिखने के लिए प्रोग्राम की आवश्यकता होगी।
करैक्टर उपकरणों को कभी-कभी रॉ उपकरणों के रूप में जाना जाता है जिससे इस तथ्य के निकट के भ्रम से बचा जा सके कि ब्लॉक-आधारित हार्डवेयर के टुकड़े के लिए करैक्टर डिवाइस को सामान्यतः संरेखित ब्लॉकों को पढ़ने और लिखने के लिए प्रोग्राम की आवश्यकता होगी।


===ब्लॉक डिवाइस ===
===ब्लॉक डिवाइस ===
विशेष फ़ाइलों को ब्लॉक करें या डिवाइस को ब्लॉक करें, हार्डवेयर डिवाइस को बफ़र्ड एक्सेस प्रदान करें, और उनकी बारीकियों से कुछ अमूर्तता प्रदान करें।<ref>{{cite web|title=IEEE Std 1003.1, 2013 Edition|url=http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_79|access-date=24 April 2014}}</ref> चरित्र उपकरणों के विपरीत, ब्लॉक डिवाइस हमेशा प्रोग्रामर को किसी भी आकार (एकल अक्षर/बाइट सहित) और किसी भी संरेखण के ब्लॉक को पढ़ने या लिखने की अनुमति देगा। नकारात्मक पक्ष यह है कि क्योंकि ब्लॉक डिवाइस बफ़र किए जाते हैं, प्रोग्रामर को यह नहीं पता होता है कि कर्नेल के बफ़र्स से लिखित डेटा को वास्तविक डिवाइस पर पास करने में कितना समय लगेगा, या वास्तव में किस क्रम में भौतिक डिवाइस पर दो अलग-अलग राइट्स आएंगे। इसके अतिरिक्त, यदि एक ही हार्डवेयर कैरेक्टर और ब्लॉक डिवाइस दोनों को उजागर करता है, तो कैरेक्टर डिवाइस का उपयोग करने वाले क्लाइंट को ब्लॉक डिवाइस के बफ़र्स में किए गए परिवर्तनों से अनजान होने के कारण डेटा भ्रष्टाचार का खतरा होता है।
विशेष फाइलों को ब्लॉक करें या ब्लॉक डिवाइस हार्डवेयर उपकरणों को बफर्ड एक्सेस प्रदान करें, और साधारण से कुछ सार प्रदान करें।<ref>{{cite web|title=IEEE Std 1003.1, 2013 Edition|url=http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_79|access-date=24 April 2014}}</ref> कैरेक्टर उपकरणों के विपरीत, ब्लॉक डिवाइस सदैव प्रोग्रामर को किसी भी आकार (एकल अक्षर/बाइट सहित) और किसी भी संरेखण के ब्लॉक को पढ़ने या लिखने की अनुमति देगा। नकारात्मक पक्ष यह है कि क्योंकि ब्लॉक डिवाइस बफ़र किए जाते हैं, प्रोग्रामर को यह नहीं ज्ञात होता है कि कर्नेल के बफ़र्स से लिखित डेटा को वास्तविक डिवाइस पर पास करने में कितना समय लगेगा, या वास्तव में किस क्रम में भौतिक डिवाइस पर दो भिन्न-भिन्न राइट्स आएंगे। इसके अतिरिक्त, यदि हार्डवेयर कैरेक्टर और ब्लॉक डिवाइस दोनों को उजागर करता है, तो कैरेक्टर डिवाइस का उपयोग करने वाले क्लाइंट को ब्लॉक डिवाइस के बफ़र्स में किए गए परिवर्तनों से अपरिचित होने के कारण डेटा भ्रष्टाचार की आशंका होती है।


अधिकांश प्रणाली हार्ड डिस्क जैसे हार्डवेयर का प्रतिनिधित्व करने के लिए ब्लॉक और कैरेक्टर डिवाइस दोनों बनाते हैं। FreeBSD और Linux विशेष रूप से नहीं; पूर्व ने ब्लॉक उपकरणों के लिए समर्थन हटा दिया है,<ref>{{cite web|title=फ्रीबीएसडी आर्किटेक्चर हैंडबुक|url=http://www.freebsd.org/doc/en/books/arch-handbook/driverbasics-block.html|access-date=7 March 2013}}</ref> जबकि बाद वाला केवल ब्लॉक डिवाइस बनाता है। लिनक्स में, डिस्क के लिए एक कैरेक्टर डिवाइस प्राप्त करने के लिए, कच्चे ड्राइवर का उपयोग करना चाहिए, हालांकि लिनक्स-विशिष्ट के साथ ब्लॉक डिवाइस को खोलकर एक कैरेक्टर डिवाइस को खोलने के समान प्रभाव प्राप्त कर सकते हैं। {{mono|O_DIRECT}} झंडा।
अधिकांश प्रणाली हार्ड डिस्क जैसे हार्डवेयर का प्रतिनिधित्व करने के लिए ब्लॉक और कैरेक्टर डिवाइस दोनों बनाते हैं। फ्रीबीएसडी और लिनक्स विशेष रूप से नहीं; पूर्व ने ब्लॉक उपकरणों के लिए विस्थापित कर दिया है,<ref>{{cite web|title=फ्रीबीएसडी आर्किटेक्चर हैंडबुक|url=http://www.freebsd.org/doc/en/books/arch-handbook/driverbasics-block.html|access-date=7 March 2013}}</ref> जबकि पश्चात वाले ने केवल ब्लॉक उपकरणों का निर्माण किया है। लिनक्स में, डिस्क के लिए कैरेक्टर डिवाइस प्राप्त करने के लिए, रॉ ड्राइवर का उपयोग करना चाहिए, चूँकि लिनक्स-विशिष्ट {{mono|O_DIRECT}} फ्लैग के साथ ब्लॉक डिवाइस को विवृत करके कैरेक्टर डिवाइस को विवृत करने के समान प्रभाव प्राप्त कर सकते हैं।


=== छद्म उपकरण ===
=== सूडो उपकरण ===
यूनिक्स जैसी प्रणालियों पर डिवाइस नोड्स को [[भौतिक उपकरण]]ों के अनुरूप होना जरूरी नहीं है। जिन नोड्स में इस पत्राचार की कमी है, वे छद्म उपकरणों का समूह बनाते हैं। वे ऑपरेटिंग प्रणाली द्वारा संचालित विभिन्न कार्य प्रदान करते हैं। सबसे अधिक इस्तेमाल किए जाने वाले कुछ (चरित्र-आधारित) छद्म-उपकरणों में शामिल हैं:
यूनिक्स जैसी प्रणालियों पर डिवाइस नोड्स को [[भौतिक उपकरण|भौतिक उपकरणों]] के अनुरूप होना आवश्यक नहीं है। जिन नोड्स में इस पत्राचार की कमी है, वे सूडो उपकरणों का समूह बनाते हैं। वे ऑपरेटिंग प्रणाली द्वारा संचालित विभिन्न कार्य प्रदान करते हैं। सबसे अधिक उपयोग किए जाने वाले कुछ (कैरेक्टर-आधारित) सूडो-उपकरणों में सम्मिलित हैं:


* {{mono|[[/dev/null]]}}{{snd}} इसमें लिखे गए सभी इनपुट को स्वीकार करता है और खारिज करता है; से पढ़ने पर फ़ाइल का अंत संकेत प्रदान करता है।
* {{mono|[[/dev/null]]}}{{snd}} इसमें लिखे गए सभी इनपुट को स्वीकार करता है और बहिष्कृत करता है; पढ़ने पर फ़ाइल का अंत संकेत प्रदान करता है।
* {{mono|[[/dev/zero]]}}{{snd}} इसमें लिखे गए सभी इनपुट को स्वीकार करता है और खारिज करता है; जब से पढ़ा जाता है तो आउटपुट के रूप में अशक्त वर्णों (शून्य-मान बाइट्स) की एक सतत धारा उत्पन्न करता है।
* {{mono|[[/dev/zero]]}}{{snd}} इसमें लिखे गए सभी इनपुट को स्वीकार करता है और बहिष्कृत करता है; जब से पढ़ा जाता है तो आउटपुट के रूप में अशक्त वर्णों (शून्य-मान बाइट्स) की सतत धारा उत्पन्न करता है।
* {{mono|[[/dev/full]]}}{{snd}} से पढ़ने पर आउटपुट के रूप में अशक्त वर्णों (शून्य-मान बाइट्स) की एक सतत धारा उत्पन्न करता है, और एक उत्पन्न करता है {{mono|[[errno.h|ENOSPC]]}} (डिस्क भर गई) त्रुटि जब इसमें लिखने का प्रयास किया गया।
* {{mono|[[/dev/full]]}}{{snd}} पढ़ने पर आउटपुट के रूप में अशक्त वर्णों (शून्य-मान बाइट्स) की सतत धारा उत्पन्न करता है, और इसे लिखने का प्रयास करते समय {{mono|[[errno.h|ENOSPC]]}} (डिस्क पूर्ण) त्रुटि उत्पन्न करता है।
* {{mono|[[/dev/random]]}}{{snd}} कर्नेल के [[क्रिप्टोग्राफिक रूप से सुरक्षित छद्म यादृच्छिक संख्या जनरेटर]] द्वारा उत्पन्न बाइट उत्पन्न करता है। इसका सटीक व्यवहार कार्यान्वयन से भिन्न होता है, और कभी-कभी भिन्न होता है जैसे {{mono|/dev/urandom}} या {{mono|/dev/arandom}} भी दिए गए हैं।
* {{mono|[[/dev/random]]}}{{snd}} कर्नेल के [[क्रिप्टोग्राफिक रूप से सुरक्षित छद्म यादृच्छिक संख्या जनरेटर|क्रिप्टोग्राफिक रूप से सुरक्षित सूडो यादृच्छिक संख्या जनरेटर]] द्वारा बाइट उत्पन्न करता है। इसका त्रुटिहीन व्यवहार कार्यान्वयन से भिन्न होता है, और कभी-कभी वेरिएंट जैसे {{mono|/dev/urandom}} या {{mono|/dev/arandom}} भी दिए गए हैं।
* {{mono|/dev/stdin}}, {{mono|/dev/stdout}}, {{mono|/dev/stderr}}{{snd}} प्रक्रिया की मानक धाराओं तक पहुंचें।
* {{mono|/dev/stdin}}, {{mono|/dev/stdout}}, {{mono|/dev/stderr}}{{snd}} प्रक्रिया के मानक स्ट्रीम तक पहुँचें।
* {{mono|/dev/fd/}}एन{{snd}} प्रक्रिया के [[फाइल डिस्क्रिप्टर]] n तक पहुँचता है।
* {{mono|/dev/fd/}}एन{{snd}} प्रक्रिया के [[फाइल डिस्क्रिप्टर]] n को एक्सेस करता है।


इसके अतिरिक्त, बीएसडी-विशिष्ट स्यूडो-डिवाइस a {{mono|[[ioctl]]}} इंटरफ़ेस में ये भी शामिल हो सकते हैं:
इसके अतिरिक्त, {{mono|[[ioctl]]}} इंटरफ़ेस वाले बीएसडी विशिष्ट सूडो उपकरणों में ये भी सम्मिलित हो सकते हैं:
* {{mono|[[/dev/pf]]}}{{snd}} उपयोगकर्ताभूमि प्रक्रियाओं को [[पीएफ (फ़ायरवॉल)]] को नियंत्रित करने की अनुमति देता है a {{mono|ioctl}} इंटरफेस।
* {{mono|[[/dev/pf]]}}{{snd}} {{mono|ioctl}} इंटरफेस के माध्यम से उपयोगकर्ता भूमि प्रक्रियाओं को [[पीएफ (फ़ायरवॉल)]] को नियंत्रित करने की अनुमति देता है   ।
* {{mono|[[/dev/bio]]}}{{snd}} प्रदान करता है {{mono|ioctl}} उपकरणों तक पहुंच अन्यथा नहीं मिली {{mono|/dev}} नोड्स, द्वारा उपयोग किया जाता है {{mono|[[bioctl]]}} [[OpenBSD]] और [[NetBSD]] में [[RAID]] प्रबंधन लागू करने के लिए।
* {{mono|[[/dev/bio]]}}{{snd}} उपकरणों को {{mono|ioctl}} एक्सेस प्रदान करता है अन्यथा {{mono|/dev}} नोड्स, के रूप में नहीं मिलता है, जिसका उपयोग {{mono|[[bioctl]]}} द्वारा [[OpenBSD|ओपनबीएसडी]] और [[NetBSD|नेटबीएसडी]] में [[RAID|रेड]] प्रबंधन को प्रारम्भ करने के लिए किया जाता है।
* {{mono|[[/dev/sysmon]]}}{{snd}} [[सिस्टम मॉनिटर|प्रणाली मॉनिटर]] के लिए NetBSD के [[envsys]] फ्रेमवर्क द्वारा उपयोग किया जाता है, जिसके माध्यम से यूजरलैंड में एक्सेस किया जाता है {{mono|[[proplib(3)]]}} से {{mono|envstat}} उपयोगिता।<ref name=envstat>{{cite web |url= http://bxr.su/n/usr.sbin/envstat/envstat.c |title= usr.sbin/envstat/envstat.c |website= BSD Cross Reference |publisher= [[NetBSD]] |date=November 2021}}
* {{mono|[[/dev/sysmon]]}}{{snd}}हार्डवेयर निरीक्षण के लिए नेटबीएसडी के [[envsys]] फ्रेमवर्क द्वारा उपयोग किया जाता है, {{mono|envstat}} उपयोगिता द्वारा {{mono|[[proplib(3)]]}} के माध्यम से उपयोक्ता भूमि में पहुँचा जाता है।<ref name=envstat>{{cite web |url= http://bxr.su/n/usr.sbin/envstat/envstat.c |title= usr.sbin/envstat/envstat.c |website= BSD Cross Reference |publisher= [[NetBSD]] |date=November 2021}}
*{{cite book |section=envstat -- utility to handle environmental sensors |title=NetBSD System Manager's Manual |url= http://mdoc.su/n/envstat.8 |archive-url=https://web.archive.org/web/20190323041807/http://netbsd.gw.com/cgi-bin/man-cgi?envstat+8 |archive-date=2019-03-23}}</ref>
*{{cite book |section=envstat -- utility to handle environmental sensors |title=NetBSD System Manager's Manual |url= http://mdoc.su/n/envstat.8 |archive-url=https://web.archive.org/web/20190323041807/http://netbsd.gw.com/cgi-bin/man-cgi?envstat+8 |archive-date=2019-03-23}}</ref>




=== नोड निर्माण ===
=== नोड निर्माण ===
द्वारा नोड बनाए जाते हैं {{mono|mknod}} प्रणाली कॉल। नोड बनाने के लिए कमांड-लाइन प्रोग्राम को भी कहा जाता है {{mono|mknod}}. सामान्य फाइलप्रणाली प्रणाली कॉल द्वारा नोड्स को स्थानांतरित या हटाया जा सकता है ({{mono|[[rename (computing)|rename]]}}, {{mono|[[unlink (Unix)|unlink]]}}) और [[कमांड (कंप्यूटिंग)]] ({{mono|[[mv (Unix)|mv]]}}, {{mono|[[rm (Unix)|rm]]}}).
{{mono|mknod}} प्रणाली कॉल द्वारा नोड बनाए जाते हैं। नोड बनाने के लिए कमांड-लाइन प्रोग्राम को भी {{mono|mknod}} कहा जाता है। सामान्य फाइलप्रणाली प्रणाली कॉल ({{mono|[[rename (computing)|rename]]}}, {{mono|[[unlink (Unix)|unlink]]}}) और [[कमांड (कंप्यूटिंग)]] ({{mono|[[mv (Unix)|mv]]}}, {{mono|[[rm (Unix)|rm]]}}) द्वारा नोड्स को स्थानांतरित या विस्थापित किया जा सकता है.


कुछ यूनिक्स संस्करणों में निर्देशिका में सभी आवश्यक उपकरण बनाने के लिए Makedev या MAKEDEV नाम की एक स्क्रिप्ट शामिल है {{mono|/dev}}. यह केवल उन प्रणालियों पर समझ में आता है जिनके उपकरणों को स्थिर रूप से प्रमुख संख्याएँ सौंपी जाती हैं (उदाहरण के लिए, उनके कर्नेल मॉड्यूल में हार्डकोडिंग के माध्यम से)।
कुछ यूनिक्स संस्करणों में निर्देशिका में सभी आवश्यक उपकरण बनाने के लिए Makedev या MAKEDEV नाम की एक स्क्रिप्ट सम्मिलित है। {{mono|/dev}} यह केवल उन प्रणालियों पर समझ में आता है जिनके उपकरणों को स्थिर रूप से प्रमुख संख्याएँ प्रदान की जाती हैं (उदाहरण के लिए, उनके कर्नेल मॉड्यूल में हार्डकोडिंग के माध्यम से)।


जबकि कुछ अन्य यूनिक्स प्रणाली जैसे कि FreeBSD, कर्नेल-आधारित डिवाइस नोड प्रबंधन का उपयोग केवल devfs के माध्यम से करते हैं, और मैन्युअल नोड निर्माण का समर्थन नहीं करते हैं। {{mono|mknod(2)}} प्रणाली कॉल और {{mono|mknod(8)}} कमांड POSIX के साथ संगतता बनाए रखने के लिए मौजूद है, लेकिन devfs के बाहर मैन्युअल रूप से बनाए गए डिवाइस नोड काम नहीं करेंगे।<ref>{{cite web |title=mknod(8) |url=https://www.freebsd.org/cgi/man.cgi?query=mknod&apropos=0&sektion=8&manpath=FreeBSD+13.0-RELEASE&arch=default&format=html |website=FreeBSD Manual Pages |publisher=The FreeBSD Project |access-date=2021-06-12 |date=2016-10-03}}</ref>
जबकि कुछ अन्य यूनिक्स प्रणाली जैसे कि फ्रीबीएसडी, कर्नेल-आधारित डिवाइस नोड प्रबंधन का उपयोग केवल devfs के माध्यम से करते हैं, और मैन्युअल नोड निर्माण का समर्थन नहीं करते हैं। {{mono|mknod(2)}} प्रणाली कॉल और {{mono|mknod(8)}} कमांड POSIX के साथ संगतता बनाए रखने के लिए उपस्थित है, किंतु devfs के बाहर मैन्युअल रूप से बनाए गए डिवाइस नोड कार्य नहीं करेंगे।<ref>{{cite web |title=mknod(8) |url=https://www.freebsd.org/cgi/man.cgi?query=mknod&apropos=0&sektion=8&manpath=FreeBSD+13.0-RELEASE&arch=default&format=html |website=FreeBSD Manual Pages |publisher=The FreeBSD Project |access-date=2021-06-12 |date=2016-10-03}}</ref>




=== नामकरण परंपराएं ===
=== नामकरण परंपराएं ===
निम्नलिखित उपसर्गों का उपयोग कुछ उपकरणों के नामों के लिए किया जाता है {{mono|/dev}} पदानुक्रम, डिवाइस के प्रकार की पहचान करने के लिए:
डिवाइस के प्रकार की पहचान करने के लिए, {{mono|/dev}} पदानुक्रम में कुछ उपकरणों के नाम के लिए निम्नलिखित उपसर्गों का उपयोग किया जाता है:


* {{mono|lp}}: [[लाइन प्रिंटर]] (एलपी की तुलना करें (यूनिक्स))
* {{mono|lp}}: [[लाइन प्रिंटर]] (एलपी की तुलना करें (यूनिक्स))
* {{mono|pt}}: [[छद्म टर्मिनल]]|छद्म-टर्मिनल (वर्चुअल टर्मिनल)
* {{mono|pt}}: [[छद्म टर्मिनल|सूडो टर्मिनल]] (वर्चुअल टर्मिनल)
* {{mono|tty}}: [[कंप्यूटर टर्मिनल]]
* {{mono|tty}}: [[कंप्यूटर टर्मिनल]]


कुछ ऑपरेटिंग प्रणाली में कुछ अतिरिक्त उपसर्ग सामान्य उपयोग में आ गए हैं:
कुछ ऑपरेटिंग प्रणाली में अतिरिक्त उपसर्ग सामान्य उपयोग में आ गए हैं:


* {{mono|fb}}: [[फ्रेम बफर]]
* {{mono|fb}}: [[फ्रेम बफर]]
* {{mono|fd}}: (प्लेटफ़ॉर्म) [[फ्लॉपी डिस्क]], हालांकि इसी संक्षिप्त नाम का इस्तेमाल आमतौर पर फ़ाइल डिस्क्रिप्टर को संदर्भित करने के लिए भी किया जाता है
* {{mono|fd}}: (प्लेटफ़ॉर्म) [[फ्लॉपी डिस्क]], चूँकि इसी संक्षिप्त नाम का उपयोग सामान्यतः फ़ाइल डिस्क्रिप्टर को संदर्भित करने के लिए भी किया जाता है
* {{mono|hd}}: (क्लासिक) [[ एकीकृत ड्राइव इलेक्ट्रॉनिक्स ]] ड्राइवर (पहले ATA [[हार्ड डिस्क ड्राइव]], ATAPI [[ऑप्टिकल डिस्क ड्राइव]], आदि के लिए उपयोग किया जाता था)
* {{mono|hd}}: (क्लासिक) [[ एकीकृत ड्राइव इलेक्ट्रॉनिक्स |एकीकृत ड्राइव इलेक्ट्रॉनिक्स]] ड्राइवर (पहले एटीए [[हार्ड डिस्क ड्राइव]], एटीएपीआई [[ऑप्टिकल डिस्क ड्राइव]], आदि के लिए उपयोग किया जाता था)
** {{mono|hda}}: पहले [[एटीए चैनल]] पर मास्टर डिवाइस (आमतौर पर प्रमुख संख्या 3 और छोटी संख्या 0 द्वारा पहचाना जाता है)
** {{mono|hda}}: पहले [[एटीए चैनल]] पर मास्टर डिवाइस (सामान्यतः प्रमुख संख्या 3 और छोटी संख्या 0 द्वारा पहचाना जाता है)
** {{mono|hdb}}: पहले ATA चैनल पर स्लेव डिवाइस
** {{mono|hdb}}: पहले एटीए चैनल पर स्लेव डिवाइस
** {{mono|hdc}}: दूसरे एटीए चैनल पर मास्टर डिवाइस
** {{mono|hdc}}: दूसरे एटीए चैनल पर मास्टर डिवाइस
** {{mono|hdd}}: दूसरे ATA चैनल पर स्लेव डिवाइस
** {{mono|hdd}}: दूसरे एटीए चैनल पर स्लेव डिवाइस
* {{mono|parport}}, {{mono|pp}}: [[समानांतर बंदरगाह]]
* {{mono|parport}}, {{mono|pp}}: [[समानांतर बंदरगाह|समानांतर पोर्ट्स]]  
* {{mono|mem}}: मुख्य मेमोरी (कैरेक्टर डिवाइस)
* {{mono|mem}}: मुख्य मेमोरी (कैरेक्टर डिवाइस)
* [[एनवीएम एक्सप्रेस]] चालक:
* [[एनवीएम एक्सप्रेस]] चालक:
** {{mono|nvme0}}: पहले पंजीकृत डिवाइस का डिवाइस कंट्रोलर (कैरेक्टर डिवाइस)
** {{mono|nvme0}}: प्रथम पंजीकृत डिवाइस का डिवाइस कंट्रोलर (कैरेक्टर डिवाइस)
** {{mono|nvme0n1}}: पहले पंजीकृत डिवाइस का पहला नेमस्पेस (ब्लॉक डिवाइस)
** {{mono|nvme0n1}}: प्रथम पंजीकृत डिवाइस का प्रथम नेमस्पेस (ब्लॉक डिवाइस)
** {{mono|nvme0n1p1}}: पहले पंजीकृत डिवाइस का पहला नामस्थान का पहला विभाजन (ब्लॉक डिवाइस)
** {{mono|nvme0n1p1}}: प्रथम पंजीकृत डिवाइस का प्रथम नामस्थान का प्रथम विभाजन (ब्लॉक डिवाइस)
* [[मल्टीमीडिया कार्ड]] ड्राइवर:
* [[मल्टीमीडिया कार्ड]] ड्राइवर:
** {{mono|mmcblk}}: मल्टीमीडिया कार्ड मीडिया के लिए स्टोरेज ड्राइवर ([[एसडी कार्ड]] कार्ड, लैपटॉप पर eMMC चिप्स, आदि)
** {{mono|mmcblk}}: मल्टीमीडिया कार्ड मीडिया के लिए स्टोरेज ड्राइवर ([[एसडी कार्ड]], लैपटॉप पर इएमएमसी चिप्स, आदि)
*** {{mono|mmcblk0}}: पहला पंजीकृत उपकरण
*** {{mono|mmcblk0}}: प्रथम पंजीकृत उपकरण
*** {{mono|mmcblk0p1}}: पहले पंजीकृत डिवाइस का पहला विभाजन
*** {{mono|mmcblk0p1}}: प्रथम पंजीकृत डिवाइस का प्रथम विभाजन
* [[SCSI]] ड्राइवर, [[libATA]] (आधुनिक समानांतर ATA/सीरियल ATA ड्राइवर), [[यूनिवर्सल सीरियल बस]], [[IEEE 1394]], आदि द्वारा भी उपयोग किया जाता है।
* [[SCSI|एससीएसआई]] ड्राइवर, [[libATA]] (आधुनिक समानांतर PATA/SATA ड्राइवर), [[यूनिवर्सल सीरियल बस]], [[IEEE 1394|आईईईई 1394]], आदि द्वारा भी उपयोग किया जाता है।
** {{mono|sd}}: मास-स्टोरेज ड्राइवर (ब्लॉक डिवाइस)
** {{mono|sd}}: मास-स्टोरेज ड्राइवर (ब्लॉक डिवाइस)
*** {{mono|sda}}: पहला पंजीकृत उपकरण
*** {{mono|sda}}: प्रथम पंजीकृत उपकरण
*** {{mono|sdb, sdc}}, आदि: दूसरा, तीसरा, आदि पंजीकृत उपकरण
*** {{mono|sdb, sdc}}, आदि: दूसरा, तीसरा, आदि पंजीकृत उपकरण
** {{mono|ses}}: संलग्नक चालक
** {{mono|ses}}: संलग्नक चालक
Line 93: Line 93:
** {{mono|st}}: [[चुंबकीय टेप]] चालक
** {{mono|st}}: [[चुंबकीय टेप]] चालक
* {{mono|tty}}: कंप्यूटर टर्मिनल
* {{mono|tty}}: कंप्यूटर टर्मिनल
** {{mono|ttyS}}: (प्लेटफ़ॉर्म) [[ आनुक्रमिक द्वार ]] ड्राइवर
** {{mono|ttyS}}: (प्लेटफ़ॉर्म) [[ आनुक्रमिक द्वार |आनुक्रमिक पोर्ट]] ड्राइवर
** {{mono|ttyUSB}}: यूएसबी सीरियल कन्वर्टर्स, मोडेम, आदि।
** {{mono|ttyUSB}}: यूएसबी सीरियल कन्वर्टर्स, मोडेम, आदि।


Linux में उपयोग किए जाने वाले उपसर्गों की विहित सूची Linux Device List में पाई जा सकती है, आवंटित डिवाइस नंबरों की आधिकारिक रजिस्ट्री और {{mono|/dev}} लिनक्स ऑपरेटिंग प्रणाली के लिए निर्देशिका नोड।<ref>{{cite web | url = https://www.kernel.org/doc/Documentation/devices.txt | title = Linux allocated devices (2.6+ version) | work = [[Linux kernel]] (Documentation/devices.txt) | author = Linux Assigned Names and Numbers Authority | author-link = Linux Assigned Names and Numbers Authority | date = 2009-04-06 | access-date = 2013-06-08 | archive-url = https://web.archive.org/web/20160424173724/https://www.kernel.org/doc/Documentation/devices.txt | archive-date = 24 April 2016 | url-status = dead }}</ref>
लिनक्स में प्रयुक्त उपसर्गों की विहित सूची लिनक्स डिवाइस सूची, लिनक्स ऑपरेटिंग प्रणाली के लिए आवंटित डिवाइस नंबरों की आधिकारिक रजिस्ट्री और {{mono|/dev}} निर्देशिका नोड में पाई जा सकती है।<ref>{{cite web | url = https://www.kernel.org/doc/Documentation/devices.txt | title = Linux allocated devices (2.6+ version) | work = [[Linux kernel]] (Documentation/devices.txt) | author = Linux Assigned Names and Numbers Authority | author-link = Linux Assigned Names and Numbers Authority | date = 2009-04-06 | access-date = 2013-06-08 | archive-url = https://web.archive.org/web/20160424173724/https://www.kernel.org/doc/Documentation/devices.txt | archive-date = 24 April 2016 | url-status = dead }}</ref>
अधिकांश उपकरणों के लिए, इस उपसर्ग के बाद विशिष्ट रूप से विशिष्ट उपकरण की पहचान करने वाला एक नंबर होता है। हार्ड ड्राइव के लिए, उपकरणों की पहचान के लिए एक अक्षर का उपयोग किया जाता है और उसके बाद डिस्क विभाजन की पहचान करने के लिए एक संख्या होती है। इस प्रकार एक फाइल प्रणाली डिस्क पर एक क्षेत्र को जान सकता है {{mono|/dev/sda3}}, उदाहरण के लिए, या नेटवर्क से जुड़े टर्मिनल सत्र को देखें {{mono|/dev/pts/14}}.


विशिष्ट पीसी [[ मास्टर बूट दस्तावेज़ ]] का उपयोग करने वाले डिस्क पर, प्राथमिक और वैकल्पिक विस्तारित विभाजन की डिवाइस संख्या 1 से 4 तक होती है, जबकि किसी भी तार्किक विभाजन की अनुक्रमणिका 5 और आगे होती है, पूर्व विभाजनों के लेआउट की परवाह किए बिना (उनके पैरेंट विस्तारित) विभाजन को डिस्क पर चौथा विभाजन होने की आवश्यकता नहीं है, न ही सभी चार प्राथमिक विभाजनों का अस्तित्व होना चाहिए)।
अधिकांश उपकरणों के लिए, इस उपसर्ग के पश्चात विशिष्ट रूप से विशिष्ट उपकरण की पहचान करने वाला एक नंबर होता है। हार्ड ड्राइव के लिए, उपकरणों की पहचान के लिए एक अक्षर का उपयोग किया जाता है और उसके पश्चात डिस्क विभाजन की पहचान करने के लिए एक संख्या होती है। इस प्रकार फाइल प्रणाली डिस्क पर क्षेत्र को {{mono|/dev/sda3}} के रूप में जान सकता है, उदाहरण के लिए, या नेटवर्क से जुड़े टर्मिनल सत्र को {{mono|/dev/pts/14}} से जुड़ा "देख" सकता है।


डिवाइस के नाम आमतौर पर विभिन्न यूनिक्स-जैसे प्रणाली वेरिएंट के बीच पोर्टेबल नहीं होते हैं, उदाहरण के लिए, कुछ [[बीएसडी]] प्रणाली पर, आईडीई डिवाइसों को नाम दिया जाता है {{mono|/dev/wd0}}, {{mono|/dev/wd1}}, वगैरह।
विशिष्ट पीसी [[ मास्टर बूट दस्तावेज़ |मास्टर बूट रिकॉर्ड]] का उपयोग करने वाले डिस्क पर, प्राथमिक और वैकल्पिक विस्तारित विभाजन की डिवाइस संख्या 1 से 4 तक होती है, जबकि किसी भी तार्किक विभाजन की अनुक्रमणिका 5 और आगे होती है, पूर्व विभाजनों के लेआउट को ध्यान दिए बिना (उनके पैरेंट विस्तारित) विभाजन को डिस्क पर चौथा विभाजन होने की आवश्यकता नहीं है, न ही सभी चार प्राथमिक विभाजनों का अस्तित्व होना चाहिए)।
 
डिवाइस के नाम सामान्यतः विभिन्न यूनिक्स-जैसे प्रणाली वेरिएंट के मध्य पोर्टेबल नहीं होते हैं, उदाहरण के लिए, कुछ [[बीएसडी]] प्रणाली पर, आईडीई डिवाइसों को नाम {{mono|/dev/wd0}}, {{mono|/dev/wd1}} आदि होता है।


=== डेवफ्स ===
=== डेवफ्स ===
devfs यूनिक्स जैसे ऑपरेटिंग प्रणाली पर डिवाइस फ़ाइल प्रणाली का एक विशिष्ट कार्यान्वयन है, जिसका उपयोग डिवाइस फ़ाइलों को प्रस्तुत करने के लिए किया जाता है। ओएस के आधार पर कार्यान्वयन की अंतर्निहित तंत्र भिन्न हो सकती है।
डेवफ्स यूनिक्स जैसे ऑपरेटिंग प्रणाली पर डिवाइस फ़ाइल प्रणाली का विशिष्ट कार्यान्वयन है, जिसका उपयोग डिवाइस फ़ाइलों को प्रस्तुत करने के लिए किया जाता है। ओएस के आधार पर कार्यान्वयन की अंतर्निहित प्रणाली भिन्न हो सकती है।


भौतिक रूप से कार्यान्वित फ़ाइल प्रणाली जैसे कि हार्ड ड्राइव पर इन विशेष फ़ाइलों को बनाए रखना असुविधाजनक है, और चूंकि इसे वैसे भी कर्नेल सहायता की आवश्यकता होती है, यह विचार एक विशेष-उद्देश्य तार्किक फ़ाइल प्रणाली से उत्पन्न हुआ जो भौतिक रूप से संग्रहीत नहीं है।
भौतिक रूप से कार्यान्वित फ़ाइल प्रणाली जैसे कि हार्ड ड्राइव पर इन विशेष फ़ाइलों को बनाए रखना असुविधाजनक है, और चूंकि इसे वैसे भी कर्नेल सहायता की आवश्यकता होती है, यह विचार विशेष-उद्देश्य तार्किक फ़ाइल प्रणाली से उत्पन्न हुआ जो भौतिक रूप से संग्रहीत नहीं है।


डिवाइस प्रदर्शित होने के लिए तैयार होने पर परिभाषित करना तुच्छ नहीं है। devfs दृष्टिकोण डिवाइस ड्राइवर के लिए सक्षम और अक्षम डिवाइस से संबंधित devfs प्रविष्टियों को बनाने और हटाने का अनुरोध करने के लिए है।
डिवाइस प्रदर्शित होने के लिए तैयार होने पर परिभाषित करना तुच्छ नहीं है। डेवफ्स दृष्टिकोण डिवाइस ड्राइवर के लिए सक्षम और अक्षम डिवाइस से संबंधित डेवफ्स प्रविष्टियों को बनाने और विस्थापित करने के अनुरोध करने के लिए है।


==PC DOS, TOS, OS/2, और Windows==
==पीसी डॉस, टीओएस, ओएस/2, और विंडोज़==
एक डिवाइस फ़ाइल [[आईबीएम पीसी डॉस]], [[टीओएस (अटारी)]], ओएस / 2, और विंडोज प्रणाली में कुछ बंदरगाहों और उपकरणों तक पहुंच की अनुमति देने के लिए उपयोग किया जाने वाला एक आरक्षित कीवर्ड है।
डिवाइस फ़ाइल आरक्षित कीवर्ड है जिसका उपयोग [[आईबीएम पीसी डॉस]], [[टीओएस (अटारी)|टीओएस]], ओएस / 2, और विंडोज प्रणाली में कुछ पोर्ट और डिवाइस तक पहुंच की अनुमति देने के लिए किया जाता है।


MS-DOS ने यूनिक्स से विशेष फाइलों की अवधारणा को उधार लिया लेकिन उनका नाम बदलकर डिवाइस कर दिया।<ref name="kb90239">{{cite web|url=http://support.microsoft.com/kb/90239 |title=Windows for Workgroups: How VSHARE.386 Manages File Sharing |publisher=Support.microsoft.com |date=1999-09-22 |access-date=2014-01-22}}</ref> क्योंकि MS-DOS के शुरुआती संस्करण एक निर्देशिका (फाइल प्रणाली) पदानुक्रम का समर्थन नहीं करते थे, उपकरणों को उनके नाम को आरक्षित शब्द बनाकर नियमित फाइलों से अलग किया गया था। इसका अर्थ है कि कुछ फ़ाइल नाम उपकरणों के लिए आरक्षित थे, और उन्हें नई फ़ाइलों या निर्देशिकाओं के नाम के लिए उपयोग नहीं किया जाना चाहिए।<ref>{{cite web|url=http://support.microsoft.com/kb/120740/a |title=Macintosh फ़ाइलनाम बनाने से बचें जो NT डिवाइस नाम हैं|publisher=Support.microsoft.com |date=2006-11-01 |access-date=2014-01-22}}</ref>
एमएस-डॉस ने यूनिक्स से विशेष फाइलों की अवधारणा को उधार ली थी किंतु उनका नाम परिवर्तित करके डिवाइस कर दिया।<ref name="kb90239">{{cite web|url=http://support.microsoft.com/kb/90239 |title=Windows for Workgroups: How VSHARE.386 Manages File Sharing |publisher=Support.microsoft.com |date=1999-09-22 |access-date=2014-01-22}}</ref> क्योंकि एमएस-डॉस के प्रारंभिक संस्करण निर्देशिका (फाइल प्रणाली) पदानुक्रम का समर्थन नहीं करते थे, उपकरणों को उनके नाम को आरक्षित शब्द बनाकर नियमित फाइलों से भिन्न किया गया था। इसका अर्थ है कि कुछ फ़ाइल नाम उपकरणों के लिए आरक्षित थे, और उन्हें नई फ़ाइलों या निर्देशिकाओं के नाम के लिए उपयोग नहीं किया जाना चाहिए।<ref>{{cite web|url=http://support.microsoft.com/kb/120740/a |title=Macintosh फ़ाइलनाम बनाने से बचें जो NT डिवाइस नाम हैं|publisher=Support.microsoft.com |date=2006-11-01 |access-date=2014-01-22}}</ref>आरक्षित नामों को स्वयं सीपी/एम में <code>[[PIP (CP/M)|PIP]]</code> कमांड की "विशेष फाइलों" के साथ संगत होने के लिए चयन किया गया था। डॉस में दो प्रकार के उपकरण थे: ब्लॉक डिवाइसेस (डिस्क ड्राइव के लिए प्रयुक्त) और कैरेक्टर डिवाइसेस (सामान्यतः कॉम और पीआरएन डिवाइस सहित अन्य सभी डिवाइस)।<ref>{{cite web|url=http://stanislavs.org/helppc/device_attributes.html |title=डिवाइस गुण|publisher=Stanislavs.org |access-date=2014-01-22}}</ref>
आरक्षित नामों को विशेष फाइलों को संभालने के साथ संगत होने के लिए चुना गया था <code>[[PIP (CP/M)|PIP]]</code> सीपी/एम में कमांड। डॉस में दो प्रकार के उपकरण थे: ब्लॉक डिवाइसेस (डिस्क ड्राइव के लिए प्रयुक्त) और कैरेक्टर डिवाइसेस (आम तौर पर कॉम और पीआरएन डिवाइस सहित अन्य सभी डिवाइस)।<ref>{{cite web|url=http://stanislavs.org/helppc/device_attributes.html |title=डिवाइस गुण|publisher=Stanislavs.org |access-date=2014-01-22}}</ref>
 
DOS प्रिंटर और पोर्ट तक पहुँचने के लिए डिवाइस फ़ाइलों का उपयोग करता है। विंडोज के अधिकांश संस्करणों में भी यह समर्थन होता है, जो कुछ नामों की फाइलों और फ़ोल्डरों को बनाने की कोशिश करते समय भ्रम पैदा कर सकता है, क्योंकि उनके पास ये नाम नहीं हो सकते।<ref name="FileNameUse">{{cite web |title=MS-DOS डिवाइस ड्राइवर नाम का उपयोग फ़ाइल नाम के रूप में नहीं किया जा सकता है|date=2003-05-12 |version=Revision 2.0 |id=KB74496, Q74496 |publisher=[[Microsoft]] |url=http://support.microsoft.com/kb/74496/en-us |url-status=dead |archive-url=https://archive.today/2012.07.21-143046/http://support.microsoft.com/kb/74496/en-us |archive-date=2012-07-21}}</ref> MS-DOS के संस्करण 2.x प्रदान करते हैं <code>[[AVAILDEV]]</code> CONFIG.SYS पैरामीटर, यदि सेट किया गया है <code>FALSE</code>, इन विशेष नामों को केवल तभी सक्रिय बनाता है जब इसके साथ उपसर्ग किया जाता है <code>\DEV\</code>, इस प्रकार साधारण फ़ाइलों को इन नामों से बनाने की अनुमति देता है।<ref>{{cite web |title=अप्रमाणित आदेश|date=2002-04-12 |publisher=Kevtronics |work=4dos.info |url=http://www.4dos.info/tools/undoc_dos.txt |access-date=2014-05-16}}</ref>
डॉस प्रिंटर और पोर्ट तक पहुँचने के लिए डिवाइस फ़ाइलों का उपयोग करता है। विंडोज के अधिकांश संस्करणों में भी यह समर्थन होता है, जो कुछ नामों की फाइलों और फ़ोल्डरों को बनाने के प्रयास करते समय भ्रम उत्पन्न कर सकता है, क्योंकि उनके पास ये नाम नहीं हो सकते।<ref name="FileNameUse">{{cite web |title=MS-DOS डिवाइस ड्राइवर नाम का उपयोग फ़ाइल नाम के रूप में नहीं किया जा सकता है|date=2003-05-12 |version=Revision 2.0 |id=KB74496, Q74496 |publisher=[[Microsoft]] |url=http://support.microsoft.com/kb/74496/en-us |url-status=dead |archive-url=https://archive.today/2012.07.21-143046/http://support.microsoft.com/kb/74496/en-us |archive-date=2012-07-21}}</ref> एमएस-डॉस के संस्करण 2.x <code>[[AVAILDEV]]</code> CONFIG.SYS पैरामीटर प्रदान करते हैं, जो कि <code>FALSE</code> पर सेट होने पर, इन विशेष नामों को केवल तभी सक्रिय बनाता है जब <code>\DEV\</code>, के साथ उपसर्ग किया जाता है, इस प्रकार इन नामों के साथ साधारण फ़ाइलों को बनाने की अनुमति मिलती है। <ref>{{cite web |title=अप्रमाणित आदेश|date=2002-04-12 |publisher=Kevtronics |work=4dos.info |url=http://www.4dos.info/tools/undoc_dos.txt |access-date=2014-05-16}}</ref>
[[GEMDOS]], अटारी TOS का DOS [[जैसा]] हिस्सा, DOS के समान डिवाइस नामों का समर्थन करता है, लेकिन DOS के विपरीत इसे एक अनुगामी की आवश्यकता होती है: सामान्य फ़ाइलनामों के विपरीत उपकरणों के रूप में उनकी पहचान करने के लिए वर्ण (DOS पर, यह वैकल्पिक है) (इस प्रकार CON: होगा DOS और TOS दोनों पर काम करते हैं, लेकिन CON TOS पर एक साधारण फ़ाइल का नाम देगा लेकिन DOS पर कंसोल डिवाइस)। MiNT और [[MagiC]] में, U: ड्राइव लेटर के माध्यम से एक्सेस किए गए एक विशेष यूनिक्स-जैसे एकीकृत फ़ाइल प्रणाली व्यू में डिवाइस फ़ाइलों को U:\DEV में भी रखा गया है।
 
[[GEMDOS|जेमडोस]], अटारी टॉस का डॉस [[जैसा]] भाग, डॉस के समान डिवाइस नामों का समर्थन करता है, किंतु डॉस के विपरीत इसे अनुगामी ":" वर्ण की आवश्यकता होती है (डॉस पर, यह वैकल्पिक है)  उन्हें सामान्य फ़ाइलनामों के विपरीत डिवाइस के रूप में पहचानने के लिए (इस प्रकार इनपुट के रूप में प्रयोग करें: डॉस और टॉस दोनों पर कार्य करते हैं, किंतु इनपुट के रूप में प्रयोग करें टॉस पर साधारण फ़ाइल का नाम देगा किंतु डॉस पर कंसोल डिवाइस)। मिंटऔर [[MagiC|मैजिक]] में, U: ड्राइव लेटर के माध्यम से एक्सेस किए गए विशेष यूनिक्स-जैसे एकीकृत फ़ाइल प्रणाली व्यू में डिवाइस फ़ाइलों को U:\DEV में भी रखा गया है।


{| class="wikitable"
{| class="wikitable"
|-
|-
! Device keyword<ref name="FileNameUse"/>
! डिवाइस कीवर्ड<ref name="FileNameUse"/>
! Use as input
! इनपुट के रूप में प्रयोग करें
! Use as output
! आउटपुट के रूप में प्रयोग करें
|-
|-
| CON
| कॉन
| Receives typed data until [[Caret notation|^]]Z (Ctrl-Z) is pressed.
| [[Caret notation|^]]Z (Ctrl-Z) दबाए जाने तक टाइप किए गए डेटा को प्राप्त करता है।
| Prints data to the console.
| डेटा को कंसोल पर प्रिंट करता है।
|-
|-
| [[PRN:|PRN]]<ref name="IBM_1987_OS2"/>
| [[PRN:|पीआरएन]]<ref name="IBM_1987_OS2"/>
| {{n/a}}
| {{n/a}}
| Prints text to the printer, usually redirected to [[LPT1:|LPT1]] or [[LST:|LST]]. Sometimes reconfigurable to other devices.<ref name="HP_1985_PP">{{cite book |title=Hewlett-Packard - Technical Reference Manual - Portable PLUS |date=August 1985 |edition=1 |id=45559-90001 |publisher=[[Hewlett-Packard Company]], Portable Computer Division |location=Corvallis, OR, USA |url=https://archive.org/details/bitsavers_hpportableblePLUSTechnicalReferenceManualAug1985_25919880 |access-date=2016-11-27 }}</ref><ref name="HP_1986_PP">{{cite book |title=Hewlett-Packard - Technical Reference Manual - Portable PLUS |date=December 1986 |orig-date=August 1985 |edition=2 |id=45559-90006 |publisher=[[Hewlett-Packard Company]] |location=Portable Computer Division, Corvallis, OR, USA |url=http://www.jeffcalc.hp41.eu/hpplus/files/techrefman.pdf |access-date=2016-11-27 |url-status=live |archive-url=https://web.archive.org/web/20161128194426/http://www.jeffcalc.hp41.eu/hpplus/files/techrefman.pdf |archive-date=2016-11-28}}</ref><ref name="Paul_1997_OD-A3">{{cite web |author-first=Matthias R. |author-last=Paul |title=Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM README.TXT |url=http://www.uni-bonn.de/~uzs180/download/ibmbioa3.zip |date=1997-10-02 |access-date=2009-03-29 |url-status=dead |archive-url=https://web.archive.org/web/20031004074600/http://www-student.informatik.uni-bonn.de/~frinke/ibmbioa3.zip |archive-date=2003-10-04}} [https://web.archive.org/web/20181225154705/http://mirror.macintosharchive.org/max1zzz.co.uk/+Windows%20&%20DOS/DOS/System/Novell/Support/Bins/Op702src.zip<!-- Op702src.zip is an unofficial renamed distribution of the ibmbioa3.zip file -->]</ref>
| प्रिंटर पर टेक्स्ट प्रिंट करता है, सामान्यतः [[LPT1:|पीएलटी1]] या [[LST:|एलएसटी]] पर रीडायरेक्ट किया जाता है। कभी-कभी अन्य उपकरणों के लिए पुन: कॉन्फ़िगर करने योग्य।<ref name="HP_1985_PP">{{cite book |title=Hewlett-Packard - Technical Reference Manual - Portable PLUS |date=August 1985 |edition=1 |id=45559-90001 |publisher=[[Hewlett-Packard Company]], Portable Computer Division |location=Corvallis, OR, USA |url=https://archive.org/details/bitsavers_hpportableblePLUSTechnicalReferenceManualAug1985_25919880 |access-date=2016-11-27 }}</ref><ref name="HP_1986_PP">{{cite book |title=Hewlett-Packard - Technical Reference Manual - Portable PLUS |date=December 1986 |orig-date=August 1985 |edition=2 |id=45559-90006 |publisher=[[Hewlett-Packard Company]] |location=Portable Computer Division, Corvallis, OR, USA |url=http://www.jeffcalc.hp41.eu/hpplus/files/techrefman.pdf |access-date=2016-11-27 |url-status=live |archive-url=https://web.archive.org/web/20161128194426/http://www.jeffcalc.hp41.eu/hpplus/files/techrefman.pdf |archive-date=2016-11-28}}</ref><ref name="Paul_1997_OD-A3">{{cite web |author-first=Matthias R. |author-last=Paul |title=Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM README.TXT |url=http://www.uni-bonn.de/~uzs180/download/ibmbioa3.zip |date=1997-10-02 |access-date=2009-03-29 |url-status=dead |archive-url=https://web.archive.org/web/20031004074600/http://www-student.informatik.uni-bonn.de/~frinke/ibmbioa3.zip |archive-date=2003-10-04}} [https://web.archive.org/web/20181225154705/http://mirror.macintosharchive.org/max1zzz.co.uk/+Windows%20&%20DOS/DOS/System/Novell/Support/Bins/Op702src.zip<!-- Op702src.zip is an unofficial renamed distribution of the ibmbioa3.zip file -->]</ref>
|-
|-
| [[AUX:|AUX]] (not in OS/2<ref name="IBM_1987_OS2"/>)
| [[AUX:|औक्स]] (ओएस/2 में नहीं<ref name="IBM_1987_OS2"/>)
| Reads data from an auxiliary device, usually a serial device like [[COM1:|COM1]]. Sometimes reconfigurable to other devices.<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/><ref name="Paul_1997_OD-A3"/>
| एक सहायक उपकरण से डेटा पढ़ता है, सामान्यतः सीरियल डिवाइस जैसे [[COM1:|COM1]].कभी-कभी अन्य उपकरणों के लिए पुन: कॉन्फ़िगर करने योग्य।<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/><ref name="Paul_1997_OD-A3"/>
| Sends data to an auxiliary device, usually a serial device like [[COM1:|COM1]]. Sometimes reconfigurable to other devices.<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/><ref name="Paul_1997_OD-A3"/>
| सहायक डिवाइस को डेटा भेजता है, सामान्यतः सीरियल डिवाइस जैसे [[COM1:|कॉम1]] कभी-कभी अन्य उपकरणों के लिए पुन: कॉन्फ़िगर करने योग्य।<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/><ref name="Paul_1997_OD-A3"/>
|-
|-
| [[NUL:|NUL]]
| [[NUL:|नल]]
| Returns null or no data.
| शून्य या कोई डेटा नहीं देता है।
| Discards received data.
| प्राप्त डेटा को त्यागें।
|-
|-
| [[CLOCK$]] (still named [[CLOCK (device name)|CLOCK]] in some versions of MS-DOS 2.11<ref name="Microsoft_2014_Altos">{{cite web |author-first1=Tim |author-last1=Paterson |author-link1=Tim Paterson |author2=Microsoft |title=Microsoft DOS V1.1 and V2.0: /msdos/v20source/SKELIO.TXT, /msdos/v20source/HRDDRV.ASM
| [[CLOCK$|क्लॉक$]] (एमएस-डॉस 2.11 के कुछ संस्करणों में अभी भी [[CLOCK (device name)|क्लॉक]] नाम दिया गया है<ref name="Microsoft_2014_Altos">{{cite web |author-first1=Tim |author-last1=Paterson |author-link1=Tim Paterson |author2=Microsoft |title=Microsoft DOS V1.1 and V2.0: /msdos/v20source/SKELIO.TXT, /msdos/v20source/HRDDRV.ASM
|url=http://www.computerhistory.org/atchm/microsoft-research-license-agreement-msdos-v1-1-v2-0/ |publisher=[[Computer History Museum]], [[Microsoft]] |date=2013-12-19<!-- 2014-03-25 --> |orig-date=1983<!-- 1983-05-17 --> |access-date=2014-03-25}} (Note: While the publishers claim this would be MS-DOS 1.1 and 2.0, it actually is [[SCP MS-DOS 1.25]] and a mixture of [[Altos MS-DOS 2.11]] and [[TeleVideo PC DOS 2.11]].)</ref><ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
|url=http://www.computerhistory.org/atchm/microsoft-research-license-agreement-msdos-v1-1-v2-0/ |publisher=[[Computer History Museum]], [[Microsoft]] |date=2013-12-19<!-- 2014-03-25 --> |orig-date=1983<!-- 1983-05-17 --> |access-date=2014-03-25}} (Note: While the publishers claim this would be MS-DOS 1.1 and 2.0, it actually is [[SCP MS-DOS 1.25]] and a mixture of [[Altos MS-DOS 2.11]] and [[TeleVideo PC DOS 2.11]].)</ref><ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| {{n/a}}<!-- Returns system real-time clock. Removed: Not under DOS. --><!-- (Note that "CLOCK$" no longer appears to exist under Windows 7) Removed: This is about DOS, not Windows -->
| {{n/a}}<!-- Returns system real-time clock. Removed: Not under DOS. --><!-- (Note that "CLOCK$" no longer appears to exist under Windows 7) Removed: This is about DOS, not Windows -->
| {{n/a}}
| {{n/a}}
|-
|-
| [[KEYBD$]] (only in [[MS-DOS 4.0 (multitasking)|multitasking MS-DOS]])
| [[KEYBD$|केबीडी$]] (केवल [[MS-DOS 4.0 (multitasking)|मल्टीटास्किंग एमएस-डॉस]])
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
|-
| [[KBD$]] (only in [[OS/2]]<ref name="IBM_1987_OS2">{{cite book |title=IBM Operating System/2 Technical Reference - Programming Family |publisher=[[IBM]] |date=September 1987 |orig-date=1986 |volume=1 |edition=1st |url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/pc/os2/84X1434_OS2_Technical_Reference_Volume_1_Sep87.pdf |url-status=live |archive-url=https://web.archive.org/web/20170103220718/http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/pc/os2/84X1434_OS2_Technical_Reference_Volume_1_Sep87.pdf |archive-date=2017-01-03}}</ref>)
| [[KBD$|केबीडी]][[KBD$|$]] (केवल [[OS/2|ओएस/2]] में<ref name="IBM_1987_OS2">{{cite book |title=IBM Operating System/2 Technical Reference - Programming Family |publisher=[[IBM]] |date=September 1987 |orig-date=1986 |volume=1 |edition=1st |url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/pc/os2/84X1434_OS2_Technical_Reference_Volume_1_Sep87.pdf |url-status=live |archive-url=https://web.archive.org/web/20170103220718/http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/pc/os2/84X1434_OS2_Technical_Reference_Volume_1_Sep87.pdf |archive-date=2017-01-03}}</ref>)
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
|-
| [[SCREEN$]] (only in multitasking MS-DOS and OS/2<ref name="IBM_1987_OS2"/>)
| [[SCREEN$|स्क्रीन$]] (केवल मल्टीटास्किंग एमएस-डॉस और ओएस/2 में<ref name="IBM_1987_OS2"/>)
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
|-
| [[POINTER$]] (only in OS/2<ref name="IBM_1987_OS2"/>)
| [[POINTER$|पॉइंटर$]] (केवल ओएस/2 में<ref name="IBM_1987_OS2"/>)
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
|-
| [[MOUSE$]] (only in OS/2<ref name="IBM_1987_OS2"/>)
| [[MOUSE$|माउस$]] (केवल ओएस/2 में<ref name="IBM_1987_OS2"/>)
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
|-
| [[$IDLE$]] (only in [[DR-DOS]] (since 5.0) and [[Multiuser DOS]] (since [[Concurrent DOS 386]]) families)
| [[$IDLE$|$आईडीएलइ$]] (केवल [[DR-DOS|डीआर-डॉस]] (5.0 से) और [[Multiuser DOS|बहुउपयोगकर्ता डॉस]] ([[Concurrent DOS 386|समवर्ती डॉस 386]]) से सदस्यों में)
| {{n/a}}
| {{n/a}}
| {{n/a}}
| {{n/a}}
|-
|-
| [[CONFIG$]] (only in MS-DOS 7.0 and higher)
| [[CONFIG$|कॉन्फिग$]] (केवल एमएस-डॉस 7.0 और उच्चतर में)
| {{n/a}}
| {{n/a}}
| {{n/a}}
| {{n/a}}
|-
|-
| [[LST:|LST]] (only in [[86-DOS]] and DOS 1.x, also in Hewlett-Packard's MS-DOS 2.11 for the [[HP Portable Plus]]<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| [[LST:|एलएसटी]] (केवल [[86-DOS|86-डॉस]] और डॉस 1.x में, [[HP Portable Plus|एचपी पोर्टेबल प्लस]] के लिए हेवलेट पैकर्ड के एमएस-डॉस 2.11 में भी<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| Returns no data.
| कोई डेटा नहीं लौटाता.
| Sends data to the line printer. (LPT2 for Hewlett-Packard's MS-DOS 2.11<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| लाइन प्रिंटर को डेटा भेजता है। (हेवलेट-पैकार्ड के एमएस-डॉस 2.11 के लिए एलपीटी2<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
|-
|-
| PLT (only in Hewlett-Packard's MS-DOS 2.11 for the [[HP Portable Plus]]<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| पीएलटी ([[HP Portable Plus|एचपी पोर्टेबल प्लस]] के लिए केवल हेवलेट पैकर्ड के एमएस-डॉस 2.11 में<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| Returns no data.
| कोई डेटा नहीं लौटाता.
| Sends data to the assigned [[plotter]]. The attached plotter device is reconfigurable.<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>
| असाइन किए गए प्लॉटर को डेटा भेजता है। संलग्न [[plotter|प्लॉटर]] डिवाइस पुनः कॉन्फ़िगर करने योग्य है।<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>
|-
|-
| [[LPT1:|LPT1]], [[LPT2:|LPT2]], [[LPT3:|LPT3]], and sometimes [[LPT4:|LPT4]] (in DR-DOS 7.02 and higher and some versions of Multiuser DOS)
| [[LPT1:|पीएलटी1]], [[LPT2:|पीएलटी2]], [[LPT3:|पीएलटी3]],और कभी-कभी [[LPT4:|पीएलटी4]] (डीआर-डॉस 7.02 और उच्चतर और बहुउपयोगकर्ता डॉस  कुछ संस्करणों में)
| {{n/a}}
| {{n/a}}
| Sends data to the selected parallel port.
| चयनित समांतर पोर्ट पर डेटा भेजता है।
|-
|-
| [[COM1:|COM1]], [[COM2:|COM2]], [[COM3:|COM3]], [[COM4:|COM4]]
| [[COM1:|कॉम1]], [[COM2:|कॉम2]], [[COM3:|कॉम3]], [[COM4:|कॉम4]]
| Reads data from the selected serial port.
| चयनित सीरियल पोर्ट से डेटा पढ़ता है।
| Sends data to the selected serial port.
| चयनित सीरियल पोर्ट पर डेटा भेजता है।
|-
|-
| 82164A (only in Hewlett-Packard's MS-DOS 2.11 for the [[HP Portable Plus]]<ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| 82164A ([[HP Portable Plus|एचपी पोर्टेबल प्लस]] के लिए केवल हेवलेट पैकर्ड के एमएस-डॉस 2.11 में <ref name="HP_1985_PP"/><ref name="HP_1986_PP"/>)
| Redirects to COM2.
| कॉम2 पर रीडायरेक्ट करता है।
| Redirects to COM2.
| कॉम2 पर रीडायरेक्ट करता है।
|}
|}
शेल [[ पुनर्निर्देशन (कंप्यूटिंग) ]] और पाइप का उपयोग करके, डेटा को डिवाइस से भेजा या प्राप्त किया जा सकता है। उदाहरण के लिए, निम्नलिखित टाइप करने से फाइल भेज दी जाएगी <code>c:\data.txt</code> प्रिंटर के लिए:
शेल [[ पुनर्निर्देशन (कंप्यूटिंग) |पुनर्निर्देशन (कंप्यूटिंग)]] और पाइप का उपयोग करके, डेटा को डिवाइस से भेजा या प्राप्त किया जा सकता है। उदाहरण के लिए, निम्नलिखित टाइप करने से फाइल <code>c:\data.txt</code> प्रिंटर को भेज दी जाएगी:
<pre>टाइप c:\data.txt > PRN</pre>
<pre>TYPE c:\data.txt > PRN</pre>


पाइप, मेलस्लॉट और एमयूपी अन्य मानक विंडोज डिवाइस हैं।<ref>{{cite web |url=http://support.microsoft.com/kb/102985 |title=REG: CurrentControlSet Entries PART 2: SessionManager |publisher=Support.microsoft.com |date=2006-11-01 |access-date=2014-01-22}}</ref>
पाइप, मेलस्लॉट और एमयूपी अन्य मानक विंडोज उपकरण हैं।<ref>{{cite web |url=http://support.microsoft.com/kb/102985 |title=REG: CurrentControlSet Entries PART 2: SessionManager |publisher=Support.microsoft.com |date=2006-11-01 |access-date=2014-01-22}}</ref>




== आईओसीएस ==
== आईओसीएस ==
[[Sharp Corporation]] [[पॉकेट कंप्यूटर]] के 8-बिट ऑपरेटिंग प्रणाली जैसे [[Sharp PC-E500]]|PC-E500, [[Sharp PC-E500S]]|PC-E500S आदि में एक [[BASIC]] दुभाषिया, एक DOS 2-जैसी फाइल कंट्रोल प्रणाली (FCS) लागू होता है। एक अल्पविकसित 12-बिट FAT-जैसी फाइलप्रणाली, और एक BIOS-जैसी इनपुट/आउटपुट कंट्रोल प्रणाली (IOCS) कई मानक कैरेक्टर और ब्लॉक डिवाइस ड्राइवरों को लागू करने के साथ-साथ STDO:/SCRN: (डिस्प्ले), STDI सहित विशेष फाइल डिवाइस :/KYBD: (कीबोर्ड), COM: (सीरियल I/O), STDL:/PRN: (प्रिंटर), CAS: (कैसेट टेप), E:/F:/G: (मेमोरी फ़ाइल), S1:/S2 :/S3: (मेमोरी कार्ड), X:/Y: (फ्लॉपी), SYSTM: (प्रणाली), और NIL: (फंक्शन)<ref>{{cite book |title=Technical Reference Manual PC-E500 |publisher=[[Sharp Corporation]], Information Systems Group, Personal Equipment Division |date=March 1990 |page=17 |url=http://www.sarnau.info/static/files/TechnicalReferenceManualPC-E500.pdf |access-date=2017-03-14 |url-status=live |archive-url=https://web.archive.org/web/20170314222851/http://www.sarnau.info/static/files/TechnicalReferenceManualPC-E500.pdf |archive-date=2017-03-14}}</ref>
[[Sharp PC-E500|पीसी-ई500]], [[Sharp PC-E500S|पीसी-ई500एस]] आदि जैसे [[Sharp Corporation|शार्प]] [[पॉकेट कंप्यूटर|पॉकेट कंप्यूटरों]] के 8-बिट ऑपरेटिंग प्रणाली में [[BASIC|बेसिक]] दुभाषिया, डॉस2-लाइक फाइल कंट्रोल सिस्टम (FCS) प्रारम्भ होता है। जो अल्पविकसित 12-बिट फैट-जैसी फाइलप्रणाली को प्रारम्भ करता है, और बीआईओएस-जैसी इनपुट/आउटपुट कंट्रोल प्रणाली (IOCS) कई मानक कैरेक्टर और ब्लॉक डिवाइस ड्राइवरों के साथ-साथ एसटीडीओ:/एससीआरएन: (डिस्प्ले), एसटीडीआई:/केवाईबीडी: (कीबोर्ड), कॉम:( सहित विशेष फाइल डिवाइस को प्रारम्भ करता है (सीरियल इनपुट/आउटपुट), एसटीडीएल:/पीआरएन: (प्रिंटर), कैस: (कैसेट टेप), :/एफ:/जी: (मेमोरी फ़ाइल), एस1:/एस2:/एस3: (मेमोरी कार्ड), एक्स:/वाई: (फ्लॉपी), सिस्टम: (प्रणाली), और निल: (फंक्शन) हैं।<ref>{{cite book |title=Technical Reference Manual PC-E500 |publisher=[[Sharp Corporation]], Information Systems Group, Personal Equipment Division |date=March 1990 |page=17 |url=http://www.sarnau.info/static/files/TechnicalReferenceManualPC-E500.pdf |access-date=2017-03-14 |url-status=live |archive-url=https://web.archive.org/web/20170314222851/http://www.sarnau.info/static/files/TechnicalReferenceManualPC-E500.pdf |archive-date=2017-03-14}}</ref>




Line 206: Line 208:
{| class="wikitable" style="width: 100%; text-align: center; <!-- font-size: smaller; table-layout: fixed;-->"
{| class="wikitable" style="width: 100%; text-align: center; <!-- font-size: smaller; table-layout: fixed;-->"
|-
|-
! Operating System
! ऑपरेटिंग सिस्टम
! Filesystem or managing software
! फाइलसिस्टम या प्रबंधन सॉफ्टवेयर
! Standard [[mount point]]
! मानक [[mount point|आरोह बिंदु]]
! Author
! लेखक
! Notes
! टिप्पणियाँ
|-
|-
! [[Linux]] 2.3.46pre5–2.6.17
! लिनक्स 2.3.46pre5–2.6.17
| devfs<ref>{{cite web |last1=Gooch |first1=Richard |title=Linux Devfs (Device File System) FAQ |url=https://www.safe-mbox.com/~rgooch/linux/docs/devfs.html |access-date=2021-06-13 |date=2002-08-20}}</ref> and [[devfsd]]
| डेवफ्स<ref>{{cite web |last1=Gooch |first1=Richard |title=Linux Devfs (Device File System) FAQ |url=https://www.safe-mbox.com/~rgooch/linux/docs/devfs.html |access-date=2021-06-13 |date=2002-08-20}}</ref> and [[devfsd|डेवफ्स]]
| <code>/dev</code>
| <code>/dev</code>
| [[Richard Gooch (computer scientist)|Richard Gooch]]
| [[Richard Gooch (computer scientist)|रिचर्ड गूच]]
| Implemented fully in the kernel, with optional daemon ''devfsd'' to handle device node events in user space.<ref>{{cite web |last1=Gooch |first1=Richard |title=My Linux Contributions |url=https://www.safe-mbox.com/~rgooch/linux/ |access-date=2021-06-13 |quote=Devfsd provides configurable management of device nodes using the Linux Device Filesystem.}}</ref> Obsolete users are encouraged to migrate to [[udev]] and/or [[devtmpfs]].
| उपयोगकर्ता स्थान में डिवाइस नोड घटनाओं को संभालने के लिए वैकल्पिक डेमन devfsd के साथ पूर्ण रूप से कर्नेल में कार्यान्वित किया गया।<ref>{{cite web |last1=Gooch |first1=Richard |title=My Linux Contributions |url=https://www.safe-mbox.com/~rgooch/linux/ |access-date=2021-06-13 |quote=Devfsd provides configurable management of device nodes using the Linux Device Filesystem.}}</ref>अप्रचलित उपयोगकर्ताओं को [[udev]] और/या [[devtmpfs]] में माइग्रेट करने के लिए प्रोत्साहित किया जाता है।
|-
|-
! [[Linux]] 2.5–
! लिनक्स 2.5–
| [[udev]] on any fs, but usually [[tmpfs]]
| [[udev]] किसी भी fs किंतु सामान्यतः [[tmpfs]]
| <code>/dev</code>
| <code>/dev</code>
| [[Greg Kroah-Hartman]], [[Kay Sievers]] and [[Dan Stekloff]]
| [[Greg Kroah-Hartman|ग्रेग क्रोहा-हार्टमैन]], [[Kay Sievers|के सिवर्स]] और [[Dan Stekloff|डैन स्टेकलॉफ़]]
| Implemented largely in user space, device information is gathered from [[sysfs]]. Device files can be stored on a conventional general-purpose file system, or in a memory file system ([[tmpfs]]).
| उपयोक्ता स्थान में बड़े पैमाने पर कार्यान्वित, युक्ति सूचना [[sysfs]] से एकत्रित की जाती है। डिवाइस फ़ाइलों को पारंपरिक सामान्य-उद्देश्य फ़ाइल सिस्टम, या मेमोरी फ़ाइल सिस्टम ([[tmpfs]]) में संग्रहीत किया जा सकता है।
|-
|-
! [[Linux]] 2.6.32–
! लिनक्स 2.6.32–
| devtmpfs with or without udev
| devtmpfs udev के साथ या उसके बिना
| <code>/dev</code>
| <code>/dev</code>
| [[Kay Sievers]], Jan Blunck, [[Greg Kroah-Hartman]]
| [[Kay Sievers|के सिवर्स]], जान ब्लंक, [[Greg Kroah-Hartman|ग्रेग क्रोह-हार्टमैन]]
| A hybrid kernel/userspace approach of a device filesystem to provide nodes before udev runs for the first time<ref>{{cite web|url=https://lwn.net/Articles/345480/|title=Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev|publisher=LWN|access-date=2009-08-10}}</ref>
|पहली बार udev चलने से पहले नोड प्रदान करने के लिए डिवाइस फ़ाइल सिस्टम का हाइब्रिड कर्नेल/यूज़रस्पेस दृष्टिकोण
|-
|-
! [[Solaris (operating system)|Solaris]]
! [[Solaris (operating system)|सोलारिस]]
| devfs<ref>{{cite web |title=devfs(7FS) |url=https://docs.oracle.com/cd/E36784_01/html/E36884/devfs-7fs.html |website=man pages section 7: Device and Network Interfaces |publisher=Oracle |access-date=2021-06-12 |date=2014}}</ref>
| डेवफ्स<ref>{{cite web |title=devfs(7FS) |url=https://docs.oracle.com/cd/E36784_01/html/E36884/devfs-7fs.html |website=man pages section 7: Device and Network Interfaces |publisher=Oracle |access-date=2021-06-12 |date=2014}}</ref>
| <code>/devices</code>
| <code>/devices</code>
| [[Sun Microsystems]]
| [[Sun Microsystems|सन माइक्रोसिस्टम्स]]
| Introduced with dynamic loaded drivers in Solaris-2.1
| सोलारिस-2.1 में डायनेमिक लोडेड ड्राइवरों के साथ पेश किया गया
|-
|-
! [[FreeBSD]] 2.0–
! [[FreeBSD|फ्रीबीएसडी]] 2.0–
| devfs
| डेवफ्स
| <code>/dev</code>
| <code>/dev</code>
| [[Poul-Henning Kamp]]
| [[Poul-Henning Kamp|पॉल-हेनिंग कैंप]]
| Implemented fully in the kernel.
| कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
|-
|-
! [[DragonFly BSD]] 2.3.2–
! [[DragonFly BSD|ड्रेगनफ्लाई बीएसडी]] 2.3.2–
| devfs
| डेवफ्स
| <code>/dev</code>
| <code>/dev</code>
| [[Alex Hornung]]
| [[Alex Hornung|एलेक्स हॉर्नंग]]
| Implemented fully in the kernel.
| कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
|-
|-
! [[macOS]]
! [[macOS|मैक ओएस]]
| devfs
| डेवफ्स
| <code>/dev</code>
| <code>/dev</code>
| [[Apple Inc.]]
| [[Apple Inc.|एप्पल इंक.]]
| Implemented fully in the kernel.
| कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
|-
|-
! [[HP-UX]] B.11.31
! [[HP-UX|एचपी-यूएक्स]] B.11.31
| devfs
| डेवफ्स
| <code>/dev</code>
| <code>/dev</code>
| [[Hewlett-Packard|HP]]
| [[Hewlett-Packard|एचपी]]  
| Implemented fully in the kernel.
| कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
|-
|-
! [[Plan 9 from Bell Labs|Plan 9]]
! [[Plan 9 from Bell Labs|योजना9]]
|
|
| <code>#</code>
| <code>#</code>
| [[Bell Labs]]
| [[Bell Labs|बेल लैब्स]]
| Implemented in the kernel.
| कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
|-
|-
! [[RISC OS]]
! [[RISC OS|आरआईएससी ओएस]]
| DeviceFS
| डिवाइसएफएस
| <code>Devices:</code>
| <code>Devices:</code>
| [[Acorn Computers]]
| [[Acorn Computers|एकोर्न कंप्यूटर]]
| DeviceFS was started in 1991<ref>{{cite web|url=https://www.riscosopen.org/viewer/view/castle/RiscOS/Sources/HWSupport/DeviceFS/BlackLog?rev=4.1;content-type=text%2Fplain|title=Project Black change log|access-date=2016-05-15}}</ref> and first appeared in RISC OS 3. It manages several device like special files, most commonly: Parallel, Serial, FastParallel, and USB. The SystemDevices module implements the pseudo devices such as: Vdu, Kbd, Null and Printer.
| डिवाइसएफएस को 1991 में प्रारम्भ किया गया था और पहली बार<ref>{{cite web|url=https://www.riscosopen.org/viewer/view/castle/RiscOS/Sources/HWSupport/DeviceFS/BlackLog?rev=4.1;content-type=text%2Fplain|title=Project Black change log|access-date=2016-05-15}}</ref> आरआईएससी ओएस 3 में दिखाई दिया था। यह विशेष फ़ाइलों जैसे कई उपकरणों का प्रबंधन करता है, सबसे सामान्य: समानांतर, सीरियल, फास्ट समानांतर, और यूएसबी प्रणाली उपकरणमॉड्यूल छद्म उपकरणों को प्रारम्भ करता है जैसे: वीडीयू, केबीडी, नल और प्रिंटर।
|-
|-
! [[MS-DOS]], [[PC&nbsp;DOS]], [[DR-DOS]]
! [[MS-DOS|एमएस-डॉस]], [[PC&nbsp;DOS|पीसी डॉस]], [[DR-DOS|डीआर-डॉस]]
| [[File Allocation Table|FAT]]
| [[File Allocation Table|फैट]]  
| <code>\DEV</code> (and <code>/DEV</code>)
| <code>\DEV</code> (and <code>/DEV</code>)
| various
| वेरियस
| As implemented in the kernel, character devices appear in the virtual \DEV directory and any disk directory. Under MS-DOS/PC&nbsp;DOS 2.x, the [[CONFIG.SYS]] [[AVAILDEV (CONFIG.SYS directive)|AVAILDEV]]=FALSE directive can be used to force devices to exist only in \DEV.
| जैसा कि कर्नेल में प्रारम्भ किया गया है, कैरेक्टर डिवाइस वर्चुअल  \DEV डायरेक्टरी और किसी भी डिस्क डायरेक्टरी में दिखाई देते हैं। एमएस-डॉस/पीसी डॉस 2.x, के अंतर्गत,[[CONFIG.SYS]] [[AVAILDEV (CONFIG.SYS directive)|AVAILDEV]]=FALSE निर्देश का उपयोग उपकरणों को केवल \DEV में उपस्तिथ रहने के लिए बाध्य करने के लिए किया जा सकता है
|-
|-
! [[MagiC]], [[MiNT]], [[MultiTOS]]
! [[MagiC|मैजिक]], [[MiNT|एमआईएनटी]], [[MultiTOS|मल्टीटीओएस]]
|
|
| <code>U:\DEV</code><ref>{{cite web |url=http://toshyp.atari.org/en/00b00b.html |title=The drive U: in MagiC |date=2016-03-28 |access-date=2017-01-09 |url-status=live |archive-url=https://web.archive.org/web/20170115164938/http://toshyp.atari.org/en/00b00b.html |archive-date=2017-01-15}}</ref><ref>{{cite web |url=http://freemint.de/docs/mint.mint_doc.html |title=FreeMiNT-Portal - mint.doc |date=2000-04-27 |access-date=2017-01-09 |url-status=live |archive-url=https://web.archive.org/web/20170115165043/http://freemint.de/docs/mint.mint_doc.html |archive-date=2017-01-15}}</ref>
| <code>U:\DEV</code><ref>{{cite web |url=http://toshyp.atari.org/en/00b00b.html |title=The drive U: in MagiC |date=2016-03-28 |access-date=2017-01-09 |url-status=live |archive-url=https://web.archive.org/web/20170115164938/http://toshyp.atari.org/en/00b00b.html |archive-date=2017-01-15}}</ref><ref>{{cite web |url=http://freemint.de/docs/mint.mint_doc.html |title=FreeMiNT-Portal - mint.doc |date=2000-04-27 |access-date=2017-01-09 |url-status=live |archive-url=https://web.archive.org/web/20170115165043/http://freemint.de/docs/mint.mint_doc.html |archive-date=2017-01-15}}</ref>
| Application Systems Heidelberg, Eric R. Smith, [[Atari|Atari Corp.]]
| अनुप्रयोग प्रणाली हीडलबर्ग, एरिक आर. स्मिथ, [[Atari|अटारी कॉर्प.]]
| The special U: drive contains a virtual DEV directory, inside which one can find device files.
| विशेष U: ड्राइव में एक वर्चुअल DEV डायरेक्टरी होती है, जिसके अंदर कोई डिवाइस फाइल ढूंढ सकता है।
|-
|-
! [[Windows 9x]]
! [[Windows 9x|विंडोज 9x]]
|
|
| <code>\\devices\</code>
| <code>\\devices\</code>
| [[Microsoft]]
| [[Microsoft|माइक्रोसॉफ्ट]]
|
|
|-
|-
! [[Windows NT]]
! [[Windows NT|विंडोज एनटी]]
|
|
| <code>\Device</code>
| <code>\Device</code>
| [[Microsoft]]
| [[Microsoft|माइक्रोसॉफ्ट]]
| The <code>\Device</code> directory is a part of [[Object Manager (Windows)|Windows NT object namespace]].
| <code>\Device</code> निर्देशिका [[Object Manager (Windows)|विंडोज एनटी ऑब्जेक्ट नेमस्पेस]] का भाग है।
|-
|-
! Windows NT Win32 Subsystem
! विंडोज एनटी विन32 सबसिस्टम
|
|
| <code>\\.\</code>
| <code>\\.\</code>
| [[Microsoft]]
| [[Microsoft|माइक्रोसॉफ्ट]]
| The <code>\\.\</code> prefix makes supporting APIs access the Win32 device namespace instead of the Win32 file namespace. The Win32 device names are symbolic links to device names under Windows NT <code>\Device</code> directory.
| <code>\\.\</code> उपसर्ग समर्थन करने वाले एपीआई को विन32 फ़ाइल नामस्थान केअतिरिक्त विन32 डिवाइस नामस्थान तक पहुँच प्रदान करता है। विन32 डिवाइस नाम विंडोज एनटी <code>\Device</code>निर्देशिका के अंतर्गत डिवाइस नामों के सांकेतिक लिंक हैं।
|}
|}


Line 339: Line 341:
{{Disk operating systems}}
{{Disk operating systems}}


{{DEFAULTSORT:Device File System}}[[Category: डिवाइस फ़ाइल | डिवाइस फ़ाइल ]] [[Category: लिनक्स कर्नेल के इंटरफेस]] [[Category: लिनक्स कर्नेल द्वारा समर्थित छद्म फाइल सिस्टम]] [[Category: विशेष-उद्देश्य फ़ाइल सिस्टम]] [[Category: यूनिक्स फ़ाइल सिस्टम प्रौद्योगिकी]]
{{DEFAULTSORT:Device File System}}
 
 


[[Category: Machine Translated Page]]
[[Category:Articles with hatnote templates targeting a nonexistent page|Device File System]]
[[Category:Created On 10/06/2023]]
[[Category:Collapse templates|Device File System]]
[[Category:Created On 10/06/2023|Device File System]]
[[Category:Lua-based templates|Device File System]]
[[Category:Machine Translated Page|Device File System]]
[[Category:Multi-column templates|Device File System]]
[[Category:Navigational boxes| ]]
[[Category:Navigational boxes without horizontal lists|Device File System]]
[[Category:Pages using div col with small parameter|Device File System]]
[[Category:Pages with script errors|Device File System]]
[[Category:Sidebars with styles needing conversion|Device File System]]
[[Category:Template documentation pages|Documentation/doc]]
[[Category:Templates Vigyan Ready|Device File System]]
[[Category:Templates generating microformats|Device File System]]
[[Category:Templates that add a tracking category|Device File System]]
[[Category:Templates that are not mobile friendly|Device File System]]
[[Category:Templates that generate short descriptions|Device File System]]
[[Category:Templates using TemplateData|Device File System]]
[[Category:Templates using under-protected Lua modules|Device File System]]
[[Category:Wikipedia fully protected templates|Div col]]
[[Category:Wikipedia metatemplates|Device File System]]
[[Category:डिवाइस फ़ाइल| डिवाइस फ़ाइल ]]
[[Category:यूनिक्स फ़ाइल सिस्टम प्रौद्योगिकी|Device File System]]
[[Category:लिनक्स कर्नेल के इंटरफेस|Device File System]]
[[Category:लिनक्स कर्नेल द्वारा समर्थित छद्म फाइल सिस्टम|Device File System]]
[[Category:विशेष-उद्देश्य फ़ाइल सिस्टम|Device File System]]

Latest revision as of 16:43, 19 June 2023

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

अवलोकन

डिवाइस फ़ाइलें सामान्यतः मानक उपकरणों (जैसे प्रिंटर और सीरियल पोर्ट) के लिए सरल इंटरफेस प्रदान करती हैं, किंतु उन उपकरणों पर विशिष्ट अद्वितीय संसाधनों तक पहुंचने के लिए भी उपयोग की जा सकती हैं, जैसे कि डिस्क विभाजन हैं। इसके अतिरिक्त, डिवाइस फ़ाइलें उन प्रणाली संसाधनों (कंप्यूटर विज्ञान) तक पहुँचने के लिए उपयोगी होती हैं जिनका किसी वास्तविक उपकरण से कोई संबंध नहीं होता है, जैसे डेटा सिंक और यादृच्छिक संख्या जनरेटर है।

यूनिक्स जैसे ऑपरेटिंग प्रणाली में दो सामान्य प्रकार की डिवाइस फाइलें होती हैं, जिन्हें कैरेक्टर स्पेशल फाइल्स और ब्लॉक स्पेशल फाइल्स के रूप में जाना जाता है। इनके मध्य का अंतर यह है कि ऑपरेटिंग प्रणाली और हार्डवेयर द्वारा कितना डेटा पढ़ा और लिखा जाता है। इन्हें एक साथ नामित पाइपों के विपरीत 'डिवाइस विशेष फ़ाइलें' कहा जा सकता है, जो डिवाइस से कनेक्ट नहीं हैं किंतु सामान्य फ़ाइलें भी नहीं हैं।

एमएस-डॉस ने यूनिक्स से विशेष फाइलों की अवधारणा को उधार ली थी किंतु उनका नाम परिवर्तित करके डिवाइस कर दिया।[1]क्योंकि एमएस-डॉस के प्रारंभिक संस्करण निर्देशिका (फ़ाइल प्रणाली) पदानुक्रम का समर्थन नहीं करते थे, उपकरणों को उनके नाम आरक्षित शब्द बनाकर नियमित फ़ाइलों से भिन्न किया गया था, उदाहरण के लिए: इन्फमोउस CON हैं। इन्हें सीपी/एम के साथ संगतता की डिग्री के लिए चयन किया गया था और अभी भी पिछड़े संगतता के लिए आधुनिक विंडोज़ में उपस्थित हैं।

कुछ यूनिक्स जैसी प्रणालियों में, अधिकांश डिवाइस फ़ाइलों को वर्चुअल फाइल प्रणाली के भाग के रूप में प्रबंधित किया जाता है जो परंपरागत रूप से /dev, पर आरोहित होता है, संभवतः नियंत्रित डेमॉन से जुड़ा हुआ है, जो रन टाइम पर हार्डवेयर जोड़ने और विस्थापित करने का निरीक्षण करता है, डिवाइस फ़ाइल प्रणाली में संबंधित परिवर्तन करता है यदि यह स्वचालित रूप से कर्नेल द्वारा नहीं किया जाता है, और संभवतः विशेष डिवाइस की आवश्यकताओं को पूर्ण करने के लिए प्रणाली या उपयोगकर्ता स्थान में स्क्रिप्ट को प्रारम्भ करता है। फ्रीबीएसडी, ड्रेगनफ्लाईबीएसडी और डार्विन (ऑपरेटिंग प्रणाली) के पास समर्पित फ़ाइल प्रणाली devfs है; इस फाइल प्रणाली द्वारा कर्नेल स्थान में डिवाइस नोड्स को स्वचालित रूप से प्रबंधित किया जाता है। लिनक्स में एक समान devfs कार्यान्वयन हुआ करता था, किंतु पश्चात में इसे छोड़ दिया गया, और फिर संस्करण 2.6.17 के पश्चात से विस्थापित कर दिया गया;[2] लिनक्स अब मुख्य रूप से उपयोगकर्ता स्थान कार्यान्वयन का उपयोग करता है जिसे udev के रूप में जाना जाता है, किंतु इसके कई संस्करण हैं।

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

एमएस-डॉस प्रत्येक डिवाइस फ़ाइल को विशेष रूप से विवृत बनाकर हार्डवेयर डिवाइस विवाद को प्रबंधित करता है (टर्मिनेट-एंड-स्टे-रेजिडेंट प्रोग्राम देखें)। पहले से उपयोग में आने वाले डिवाइस तक पहुंचने का प्रयास करने वाला एप्लिकेशन स्वयं को डिवाइस फ़ाइल नोड विवृत करने में असमर्थ पाएगा। यूनिक्स और लिनक्स में समवर्ती पहुंच के संबंध में विभिन्न प्रकार के डिवाइस ड्राइवर सिमेंटिक्स प्रारम्भ किए गए हैं।[3]


यूनिक्स और यूनिक्स जैसी प्रणालियाँ

लिनक्स कर्नेल की एक सरलीकृत संरचना। फाइल प्रणाली I/O सबप्रणाली के भाग के रूप में कार्यान्वित किए जाते हैं।

डिवाइस नोड्स उन संसाधनों के अनुरूप होते हैं जो ऑपरेटिंग प्रणाली के कर्नेल (कंप्यूटर साइंस) ने पहले ही आवंटित कर दिए हैं। यूनिक्स उन संसाधनों की प्रमुख संख्या और छोटी संख्या द्वारा पहचान करता है,[4] दोनों नोड (कंप्यूटर विज्ञान) की संरचना के भाग के रूप में संग्रहीत हैं। इन नंबरों का असाइनमेंट भिन्न-भिन्न ऑपरेटिंग प्रणाली और भिन्न-भिन्न कंप्यूटर प्लेटफॉर्म पर विशिष्ट रूप से होता है। सामान्यतः, प्रमुख संख्या डिवाइस ड्राइवर की पहचान करती है और छोटी संख्या विशेष डिवाइस (संभवतः कई में से) की पहचान करती है जिसे ड्राइवर नियंत्रित करता है:[5] इस स्थिति में, प्रणाली ड्राइवर को माइनर नंबर दे सकता है। चूँकि, डायनेमिक नंबर आवंटन की उपस्थिति में, यह विषय नहीं हो सकता है (उदाहरण के लिए फ्रीबीएसडी 5 और ऊपर)।

अन्य विशेष फ़ाइल प्रकारों के जैसे, कंप्यूटर प्रणाली मानक प्रणाली कॉल का उपयोग करके डिवाइस नोड्स तक पहुँचता है और उन्हें नियमित कंप्यूटर फ़ाइलों के जैसे व्यवहार करता है। दो मानक प्रकार की डिवाइस फ़ाइलें उपस्थित हैं; दुर्भाग्य से उनके नाम ऐतिहासिक कारणों से प्रति-सहज हैं, और परिणामस्वरूप दोनों के मध्य अंतर की व्याख्या प्रायः त्रुटिपूर्ण होती है।

वर्ण उपकरण

कैरेक्टर स्पेशल फाइल्स या कैरेक्टर डिवाइस हार्डवेयर डिवाइस तक बिना बफर, सीधी पहुंच प्रदान करते हैं। आवश्यक नहीं कि वे प्रोग्रामो को एक बार में अक्षर को पढ़ने या लिखने की अनुमति दें; यह प्रश्न डिवाइस पर निर्भर है। उदाहरण के लिए, हार्ड डिस्क के लिए कैरेक्टर डिवाइस को सामान्य रूप से आवश्यकता होगी कि सभी पढ़ने और लिखने को ब्लॉक सीमाओं के साथ गठबंधन किया जाए और सबसे निश्चित रूप से एक बाइट को पढ़ने की अनुमति नहीं दी जाएगी।

करैक्टर उपकरणों को कभी-कभी रॉ उपकरणों के रूप में जाना जाता है जिससे इस तथ्य के निकट के भ्रम से बचा जा सके कि ब्लॉक-आधारित हार्डवेयर के टुकड़े के लिए करैक्टर डिवाइस को सामान्यतः संरेखित ब्लॉकों को पढ़ने और लिखने के लिए प्रोग्राम की आवश्यकता होगी।

ब्लॉक डिवाइस

विशेष फाइलों को ब्लॉक करें या ब्लॉक डिवाइस हार्डवेयर उपकरणों को बफर्ड एक्सेस प्रदान करें, और साधारण से कुछ सार प्रदान करें।[6] कैरेक्टर उपकरणों के विपरीत, ब्लॉक डिवाइस सदैव प्रोग्रामर को किसी भी आकार (एकल अक्षर/बाइट सहित) और किसी भी संरेखण के ब्लॉक को पढ़ने या लिखने की अनुमति देगा। नकारात्मक पक्ष यह है कि क्योंकि ब्लॉक डिवाइस बफ़र किए जाते हैं, प्रोग्रामर को यह नहीं ज्ञात होता है कि कर्नेल के बफ़र्स से लिखित डेटा को वास्तविक डिवाइस पर पास करने में कितना समय लगेगा, या वास्तव में किस क्रम में भौतिक डिवाइस पर दो भिन्न-भिन्न राइट्स आएंगे। इसके अतिरिक्त, यदि हार्डवेयर कैरेक्टर और ब्लॉक डिवाइस दोनों को उजागर करता है, तो कैरेक्टर डिवाइस का उपयोग करने वाले क्लाइंट को ब्लॉक डिवाइस के बफ़र्स में किए गए परिवर्तनों से अपरिचित होने के कारण डेटा भ्रष्टाचार की आशंका होती है।

अधिकांश प्रणाली हार्ड डिस्क जैसे हार्डवेयर का प्रतिनिधित्व करने के लिए ब्लॉक और कैरेक्टर डिवाइस दोनों बनाते हैं। फ्रीबीएसडी और लिनक्स विशेष रूप से नहीं; पूर्व ने ब्लॉक उपकरणों के लिए विस्थापित कर दिया है,[7] जबकि पश्चात वाले ने केवल ब्लॉक उपकरणों का निर्माण किया है। लिनक्स में, डिस्क के लिए कैरेक्टर डिवाइस प्राप्त करने के लिए, रॉ ड्राइवर का उपयोग करना चाहिए, चूँकि लिनक्स-विशिष्ट O_DIRECT फ्लैग के साथ ब्लॉक डिवाइस को विवृत करके कैरेक्टर डिवाइस को विवृत करने के समान प्रभाव प्राप्त कर सकते हैं।

सूडो उपकरण

यूनिक्स जैसी प्रणालियों पर डिवाइस नोड्स को भौतिक उपकरणों के अनुरूप होना आवश्यक नहीं है। जिन नोड्स में इस पत्राचार की कमी है, वे सूडो उपकरणों का समूह बनाते हैं। वे ऑपरेटिंग प्रणाली द्वारा संचालित विभिन्न कार्य प्रदान करते हैं। सबसे अधिक उपयोग किए जाने वाले कुछ (कैरेक्टर-आधारित) सूडो-उपकरणों में सम्मिलित हैं:

  • /dev/null – इसमें लिखे गए सभी इनपुट को स्वीकार करता है और बहिष्कृत करता है; पढ़ने पर फ़ाइल का अंत संकेत प्रदान करता है।
  • /dev/zero – इसमें लिखे गए सभी इनपुट को स्वीकार करता है और बहिष्कृत करता है; जब से पढ़ा जाता है तो आउटपुट के रूप में अशक्त वर्णों (शून्य-मान बाइट्स) की सतत धारा उत्पन्न करता है।
  • /dev/full – पढ़ने पर आउटपुट के रूप में अशक्त वर्णों (शून्य-मान बाइट्स) की सतत धारा उत्पन्न करता है, और इसे लिखने का प्रयास करते समय ENOSPC (डिस्क पूर्ण) त्रुटि उत्पन्न करता है।
  • /dev/random – कर्नेल के क्रिप्टोग्राफिक रूप से सुरक्षित सूडो यादृच्छिक संख्या जनरेटर द्वारा बाइट उत्पन्न करता है। इसका त्रुटिहीन व्यवहार कार्यान्वयन से भिन्न होता है, और कभी-कभी वेरिएंट जैसे /dev/urandom या /dev/arandom भी दिए गए हैं।
  • /dev/stdin, /dev/stdout, /dev/stderr – प्रक्रिया के मानक स्ट्रीम तक पहुँचें।
  • /dev/fd/एन – प्रक्रिया के फाइल डिस्क्रिप्टर n को एक्सेस करता है।

इसके अतिरिक्त, ioctl इंटरफ़ेस वाले बीएसडी विशिष्ट सूडो उपकरणों में ये भी सम्मिलित हो सकते हैं:

  • /dev/pf – ioctl इंटरफेस के माध्यम से उपयोगकर्ता भूमि प्रक्रियाओं को पीएफ (फ़ायरवॉल) को नियंत्रित करने की अनुमति देता है ।
  • /dev/bio – उपकरणों को ioctl एक्सेस प्रदान करता है अन्यथा /dev नोड्स, के रूप में नहीं मिलता है, जिसका उपयोग bioctl द्वारा ओपनबीएसडी और नेटबीएसडी में रेड प्रबंधन को प्रारम्भ करने के लिए किया जाता है।
  • /dev/sysmon – हार्डवेयर निरीक्षण के लिए नेटबीएसडी के envsys फ्रेमवर्क द्वारा उपयोग किया जाता है, envstat उपयोगिता द्वारा proplib(3) के माध्यम से उपयोक्ता भूमि में पहुँचा जाता है।[8]


नोड निर्माण

mknod प्रणाली कॉल द्वारा नोड बनाए जाते हैं। नोड बनाने के लिए कमांड-लाइन प्रोग्राम को भी mknod कहा जाता है। सामान्य फाइलप्रणाली प्रणाली कॉल (rename, unlink) और कमांड (कंप्यूटिंग) (mv, rm) द्वारा नोड्स को स्थानांतरित या विस्थापित किया जा सकता है.

कुछ यूनिक्स संस्करणों में निर्देशिका में सभी आवश्यक उपकरण बनाने के लिए Makedev या MAKEDEV नाम की एक स्क्रिप्ट सम्मिलित है। /dev यह केवल उन प्रणालियों पर समझ में आता है जिनके उपकरणों को स्थिर रूप से प्रमुख संख्याएँ प्रदान की जाती हैं (उदाहरण के लिए, उनके कर्नेल मॉड्यूल में हार्डकोडिंग के माध्यम से)।

जबकि कुछ अन्य यूनिक्स प्रणाली जैसे कि फ्रीबीएसडी, कर्नेल-आधारित डिवाइस नोड प्रबंधन का उपयोग केवल devfs के माध्यम से करते हैं, और मैन्युअल नोड निर्माण का समर्थन नहीं करते हैं। mknod(2) प्रणाली कॉल और mknod(8) कमांड POSIX के साथ संगतता बनाए रखने के लिए उपस्थित है, किंतु devfs के बाहर मैन्युअल रूप से बनाए गए डिवाइस नोड कार्य नहीं करेंगे।[9]


नामकरण परंपराएं

डिवाइस के प्रकार की पहचान करने के लिए, /dev पदानुक्रम में कुछ उपकरणों के नाम के लिए निम्नलिखित उपसर्गों का उपयोग किया जाता है:

कुछ ऑपरेटिंग प्रणाली में अतिरिक्त उपसर्ग सामान्य उपयोग में आ गए हैं:

  • fb: फ्रेम बफर
  • fd: (प्लेटफ़ॉर्म) फ्लॉपी डिस्क, चूँकि इसी संक्षिप्त नाम का उपयोग सामान्यतः फ़ाइल डिस्क्रिप्टर को संदर्भित करने के लिए भी किया जाता है
  • hd: (क्लासिक) एकीकृत ड्राइव इलेक्ट्रॉनिक्स ड्राइवर (पहले एटीए हार्ड डिस्क ड्राइव, एटीएपीआई ऑप्टिकल डिस्क ड्राइव, आदि के लिए उपयोग किया जाता था)
    • hda: पहले एटीए चैनल पर मास्टर डिवाइस (सामान्यतः प्रमुख संख्या 3 और छोटी संख्या 0 द्वारा पहचाना जाता है)
    • hdb: पहले एटीए चैनल पर स्लेव डिवाइस
    • hdc: दूसरे एटीए चैनल पर मास्टर डिवाइस
    • hdd: दूसरे एटीए चैनल पर स्लेव डिवाइस
  • parport, pp: समानांतर पोर्ट्स
  • mem: मुख्य मेमोरी (कैरेक्टर डिवाइस)
  • एनवीएम एक्सप्रेस चालक:
    • nvme0: प्रथम पंजीकृत डिवाइस का डिवाइस कंट्रोलर (कैरेक्टर डिवाइस)
    • nvme0n1: प्रथम पंजीकृत डिवाइस का प्रथम नेमस्पेस (ब्लॉक डिवाइस)
    • nvme0n1p1: प्रथम पंजीकृत डिवाइस का प्रथम नामस्थान का प्रथम विभाजन (ब्लॉक डिवाइस)
  • मल्टीमीडिया कार्ड ड्राइवर:
    • mmcblk: मल्टीमीडिया कार्ड मीडिया के लिए स्टोरेज ड्राइवर (एसडी कार्ड, लैपटॉप पर इएमएमसी चिप्स, आदि)
      • mmcblk0: प्रथम पंजीकृत उपकरण
      • mmcblk0p1: प्रथम पंजीकृत डिवाइस का प्रथम विभाजन
  • एससीएसआई ड्राइवर, libATA (आधुनिक समानांतर PATA/SATA ड्राइवर), यूनिवर्सल सीरियल बस, आईईईई 1394, आदि द्वारा भी उपयोग किया जाता है।
    • sd: मास-स्टोरेज ड्राइवर (ब्लॉक डिवाइस)
      • sda: प्रथम पंजीकृत उपकरण
      • sdb, sdc, आदि: दूसरा, तीसरा, आदि पंजीकृत उपकरण
    • ses: संलग्नक चालक
    • sg: सामान्य एससीएसआई परत
    • sr: ROM ड्राइवर (डेटा-उन्मुख ऑप्टिकल डिस्क ड्राइव; scd केवल एक द्वितीयक उपनाम है)
    • st: चुंबकीय टेप चालक
  • tty: कंप्यूटर टर्मिनल
    • ttyS: (प्लेटफ़ॉर्म) आनुक्रमिक पोर्ट ड्राइवर
    • ttyUSB: यूएसबी सीरियल कन्वर्टर्स, मोडेम, आदि।

लिनक्स में प्रयुक्त उपसर्गों की विहित सूची लिनक्स डिवाइस सूची, लिनक्स ऑपरेटिंग प्रणाली के लिए आवंटित डिवाइस नंबरों की आधिकारिक रजिस्ट्री और /dev निर्देशिका नोड में पाई जा सकती है।[10]

अधिकांश उपकरणों के लिए, इस उपसर्ग के पश्चात विशिष्ट रूप से विशिष्ट उपकरण की पहचान करने वाला एक नंबर होता है। हार्ड ड्राइव के लिए, उपकरणों की पहचान के लिए एक अक्षर का उपयोग किया जाता है और उसके पश्चात डिस्क विभाजन की पहचान करने के लिए एक संख्या होती है। इस प्रकार फाइल प्रणाली डिस्क पर क्षेत्र को /dev/sda3 के रूप में जान सकता है, उदाहरण के लिए, या नेटवर्क से जुड़े टर्मिनल सत्र को /dev/pts/14 से जुड़ा "देख" सकता है।

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

डिवाइस के नाम सामान्यतः विभिन्न यूनिक्स-जैसे प्रणाली वेरिएंट के मध्य पोर्टेबल नहीं होते हैं, उदाहरण के लिए, कुछ बीएसडी प्रणाली पर, आईडीई डिवाइसों को नाम /dev/wd0, /dev/wd1 आदि होता है।

डेवफ्स

डेवफ्स यूनिक्स जैसे ऑपरेटिंग प्रणाली पर डिवाइस फ़ाइल प्रणाली का विशिष्ट कार्यान्वयन है, जिसका उपयोग डिवाइस फ़ाइलों को प्रस्तुत करने के लिए किया जाता है। ओएस के आधार पर कार्यान्वयन की अंतर्निहित प्रणाली भिन्न हो सकती है।

भौतिक रूप से कार्यान्वित फ़ाइल प्रणाली जैसे कि हार्ड ड्राइव पर इन विशेष फ़ाइलों को बनाए रखना असुविधाजनक है, और चूंकि इसे वैसे भी कर्नेल सहायता की आवश्यकता होती है, यह विचार विशेष-उद्देश्य तार्किक फ़ाइल प्रणाली से उत्पन्न हुआ जो भौतिक रूप से संग्रहीत नहीं है।

डिवाइस प्रदर्शित होने के लिए तैयार होने पर परिभाषित करना तुच्छ नहीं है। डेवफ्स दृष्टिकोण डिवाइस ड्राइवर के लिए सक्षम और अक्षम डिवाइस से संबंधित डेवफ्स प्रविष्टियों को बनाने और विस्थापित करने के अनुरोध करने के लिए है।

पीसी डॉस, टीओएस, ओएस/2, और विंडोज़

डिवाइस फ़ाइल आरक्षित कीवर्ड है जिसका उपयोग आईबीएम पीसी डॉस, टीओएस, ओएस / 2, और विंडोज प्रणाली में कुछ पोर्ट और डिवाइस तक पहुंच की अनुमति देने के लिए किया जाता है।

एमएस-डॉस ने यूनिक्स से विशेष फाइलों की अवधारणा को उधार ली थी किंतु उनका नाम परिवर्तित करके डिवाइस कर दिया।[1] क्योंकि एमएस-डॉस के प्रारंभिक संस्करण निर्देशिका (फाइल प्रणाली) पदानुक्रम का समर्थन नहीं करते थे, उपकरणों को उनके नाम को आरक्षित शब्द बनाकर नियमित फाइलों से भिन्न किया गया था। इसका अर्थ है कि कुछ फ़ाइल नाम उपकरणों के लिए आरक्षित थे, और उन्हें नई फ़ाइलों या निर्देशिकाओं के नाम के लिए उपयोग नहीं किया जाना चाहिए।[11]आरक्षित नामों को स्वयं सीपी/एम में PIP कमांड की "विशेष फाइलों" के साथ संगत होने के लिए चयन किया गया था। डॉस में दो प्रकार के उपकरण थे: ब्लॉक डिवाइसेस (डिस्क ड्राइव के लिए प्रयुक्त) और कैरेक्टर डिवाइसेस (सामान्यतः कॉम और पीआरएन डिवाइस सहित अन्य सभी डिवाइस)।[12]

डॉस प्रिंटर और पोर्ट तक पहुँचने के लिए डिवाइस फ़ाइलों का उपयोग करता है। विंडोज के अधिकांश संस्करणों में भी यह समर्थन होता है, जो कुछ नामों की फाइलों और फ़ोल्डरों को बनाने के प्रयास करते समय भ्रम उत्पन्न कर सकता है, क्योंकि उनके पास ये नाम नहीं हो सकते।[13] एमएस-डॉस के संस्करण 2.x AVAILDEV CONFIG.SYS पैरामीटर प्रदान करते हैं, जो कि FALSE पर सेट होने पर, इन विशेष नामों को केवल तभी सक्रिय बनाता है जब \DEV\, के साथ उपसर्ग किया जाता है, इस प्रकार इन नामों के साथ साधारण फ़ाइलों को बनाने की अनुमति मिलती है। [14]

जेमडोस, अटारी टॉस का डॉस जैसा भाग, डॉस के समान डिवाइस नामों का समर्थन करता है, किंतु डॉस के विपरीत इसे अनुगामी ":" वर्ण की आवश्यकता होती है (डॉस पर, यह वैकल्पिक है) उन्हें सामान्य फ़ाइलनामों के विपरीत डिवाइस के रूप में पहचानने के लिए (इस प्रकार इनपुट के रूप में प्रयोग करें: डॉस और टॉस दोनों पर कार्य करते हैं, किंतु इनपुट के रूप में प्रयोग करें टॉस पर साधारण फ़ाइल का नाम देगा किंतु डॉस पर कंसोल डिवाइस)। मिंटऔर मैजिक में, U: ड्राइव लेटर के माध्यम से एक्सेस किए गए विशेष यूनिक्स-जैसे एकीकृत फ़ाइल प्रणाली व्यू में डिवाइस फ़ाइलों को U:\DEV में भी रखा गया है।

डिवाइस कीवर्ड[13] इनपुट के रूप में प्रयोग करें आउटपुट के रूप में प्रयोग करें
कॉन ^Z (Ctrl-Z) दबाए जाने तक टाइप किए गए डेटा को प्राप्त करता है। डेटा को कंसोल पर प्रिंट करता है।
पीआरएन[15] प्रिंटर पर टेक्स्ट प्रिंट करता है, सामान्यतः पीएलटी1 या एलएसटी पर रीडायरेक्ट किया जाता है। कभी-कभी अन्य उपकरणों के लिए पुन: कॉन्फ़िगर करने योग्य।[16][17][18]
औक्स (ओएस/2 में नहीं[15]) एक सहायक उपकरण से डेटा पढ़ता है, सामान्यतः सीरियल डिवाइस जैसे COM1.कभी-कभी अन्य उपकरणों के लिए पुन: कॉन्फ़िगर करने योग्य।[16][17][18] सहायक डिवाइस को डेटा भेजता है, सामान्यतः सीरियल डिवाइस जैसे कॉम1 कभी-कभी अन्य उपकरणों के लिए पुन: कॉन्फ़िगर करने योग्य।[16][17][18]
नल शून्य या कोई डेटा नहीं देता है। प्राप्त डेटा को त्यागें।
क्लॉक$ (एमएस-डॉस 2.11 के कुछ संस्करणों में अभी भी क्लॉक नाम दिया गया है[19][16][17])
केबीडी$ (केवल मल्टीटास्किंग एमएस-डॉस) ? ?
केबीडी$ (केवल ओएस/2 में[15]) ? ?
स्क्रीन$ (केवल मल्टीटास्किंग एमएस-डॉस और ओएस/2 में[15]) ? ?
पॉइंटर$ (केवल ओएस/2 में[15]) ? ?
माउस$ (केवल ओएस/2 में[15]) ? ?
$आईडीएलइ$ (केवल डीआर-डॉस (5.0 से) और बहुउपयोगकर्ता डॉस (समवर्ती डॉस 386) से सदस्यों में)
कॉन्फिग$ (केवल एमएस-डॉस 7.0 और उच्चतर में)
एलएसटी (केवल 86-डॉस और डॉस 1.x में, एचपी पोर्टेबल प्लस के लिए हेवलेट पैकर्ड के एमएस-डॉस 2.11 में भी[16][17]) कोई डेटा नहीं लौटाता. लाइन प्रिंटर को डेटा भेजता है। (हेवलेट-पैकार्ड के एमएस-डॉस 2.11 के लिए एलपीटी2[16][17])
पीएलटी (एचपी पोर्टेबल प्लस के लिए केवल हेवलेट पैकर्ड के एमएस-डॉस 2.11 में[16][17]) कोई डेटा नहीं लौटाता. असाइन किए गए प्लॉटर को डेटा भेजता है। संलग्न प्लॉटर डिवाइस पुनः कॉन्फ़िगर करने योग्य है।[16][17]
पीएलटी1, पीएलटी2, पीएलटी3,और कभी-कभी पीएलटी4 (डीआर-डॉस 7.02 और उच्चतर और बहुउपयोगकर्ता डॉस कुछ संस्करणों में) चयनित समांतर पोर्ट पर डेटा भेजता है।
कॉम1, कॉम2, कॉम3, कॉम4 चयनित सीरियल पोर्ट से डेटा पढ़ता है। चयनित सीरियल पोर्ट पर डेटा भेजता है।
82164A (एचपी पोर्टेबल प्लस के लिए केवल हेवलेट पैकर्ड के एमएस-डॉस 2.11 में [16][17]) कॉम2 पर रीडायरेक्ट करता है। कॉम2 पर रीडायरेक्ट करता है।

शेल पुनर्निर्देशन (कंप्यूटिंग) और पाइप का उपयोग करके, डेटा को डिवाइस से भेजा या प्राप्त किया जा सकता है। उदाहरण के लिए, निम्नलिखित टाइप करने से फाइल c:\data.txt प्रिंटर को भेज दी जाएगी:

TYPE c:\data.txt > PRN

पाइप, मेलस्लॉट और एमयूपी अन्य मानक विंडोज उपकरण हैं।[20]


आईओसीएस

पीसी-ई500, पीसी-ई500एस आदि जैसे शार्प पॉकेट कंप्यूटरों के 8-बिट ऑपरेटिंग प्रणाली में बेसिक दुभाषिया, डॉस2-लाइक फाइल कंट्रोल सिस्टम (FCS) प्रारम्भ होता है। जो अल्पविकसित 12-बिट फैट-जैसी फाइलप्रणाली को प्रारम्भ करता है, और बीआईओएस-जैसी इनपुट/आउटपुट कंट्रोल प्रणाली (IOCS) कई मानक कैरेक्टर और ब्लॉक डिवाइस ड्राइवरों के साथ-साथ एसटीडीओ:/एससीआरएन: (डिस्प्ले), एसटीडीआई:/केवाईबीडी: (कीबोर्ड), कॉम:( सहित विशेष फाइल डिवाइस को प्रारम्भ करता है (सीरियल इनपुट/आउटपुट), एसटीडीएल:/पीआरएन: (प्रिंटर), कैस: (कैसेट टेप), इ:/एफ:/जी: (मेमोरी फ़ाइल), एस1:/एस2:/एस3: (मेमोरी कार्ड), एक्स:/वाई: (फ्लॉपी), सिस्टम: (प्रणाली), और निल: (फंक्शन) हैं।[21]


कार्यान्वयन

ऑपरेटिंग सिस्टम फाइलसिस्टम या प्रबंधन सॉफ्टवेयर मानक आरोह बिंदु लेखक टिप्पणियाँ
लिनक्स 2.3.46pre5–2.6.17 डेवफ्स[22] and डेवफ्स /dev रिचर्ड गूच उपयोगकर्ता स्थान में डिवाइस नोड घटनाओं को संभालने के लिए वैकल्पिक डेमन devfsd के साथ पूर्ण रूप से कर्नेल में कार्यान्वित किया गया।[23]अप्रचलित – उपयोगकर्ताओं को udev और/या devtmpfs में माइग्रेट करने के लिए प्रोत्साहित किया जाता है।
लिनक्स 2.5– udev किसी भी fs किंतु सामान्यतः tmpfs /dev ग्रेग क्रोहा-हार्टमैन, के सिवर्स और डैन स्टेकलॉफ़ उपयोक्ता स्थान में बड़े पैमाने पर कार्यान्वित, युक्ति सूचना sysfs से एकत्रित की जाती है। डिवाइस फ़ाइलों को पारंपरिक सामान्य-उद्देश्य फ़ाइल सिस्टम, या मेमोरी फ़ाइल सिस्टम (tmpfs) में संग्रहीत किया जा सकता है।
लिनक्स 2.6.32– devtmpfs udev के साथ या उसके बिना /dev के सिवर्स, जान ब्लंक, ग्रेग क्रोह-हार्टमैन पहली बार udev चलने से पहले नोड प्रदान करने के लिए डिवाइस फ़ाइल सिस्टम का हाइब्रिड कर्नेल/यूज़रस्पेस दृष्टिकोण
सोलारिस डेवफ्स[24] /devices सन माइक्रोसिस्टम्स सोलारिस-2.1 में डायनेमिक लोडेड ड्राइवरों के साथ पेश किया गया
फ्रीबीएसडी 2.0– डेवफ्स /dev पॉल-हेनिंग कैंप कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
ड्रेगनफ्लाई बीएसडी 2.3.2– डेवफ्स /dev एलेक्स हॉर्नंग कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
मैक ओएस डेवफ्स /dev एप्पल इंक. कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
एचपी-यूएक्स B.11.31 डेवफ्स /dev एचपी कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
योजना9 # बेल लैब्स कर्नेल में पूर्ण रूप से प्रारम्भ किया गया।
आरआईएससी ओएस डिवाइसएफएस Devices: एकोर्न कंप्यूटर डिवाइसएफएस को 1991 में प्रारम्भ किया गया था और पहली बार[25] आरआईएससी ओएस 3 में दिखाई दिया था। यह विशेष फ़ाइलों जैसे कई उपकरणों का प्रबंधन करता है, सबसे सामान्य: समानांतर, सीरियल, फास्ट समानांतर, और यूएसबी प्रणाली उपकरणमॉड्यूल छद्म उपकरणों को प्रारम्भ करता है जैसे: वीडीयू, केबीडी, नल और प्रिंटर।
एमएस-डॉस, पीसी डॉस, डीआर-डॉस फैट \DEV (and /DEV) वेरियस जैसा कि कर्नेल में प्रारम्भ किया गया है, कैरेक्टर डिवाइस वर्चुअल \DEV डायरेक्टरी और किसी भी डिस्क डायरेक्टरी में दिखाई देते हैं। एमएस-डॉस/पीसी डॉस 2.x, के अंतर्गत,CONFIG.SYS AVAILDEV=FALSE निर्देश का उपयोग उपकरणों को केवल \DEV में उपस्तिथ रहने के लिए बाध्य करने के लिए किया जा सकता है
मैजिक, एमआईएनटी, मल्टीटीओएस U:\DEV[26][27] अनुप्रयोग प्रणाली हीडलबर्ग, एरिक आर. स्मिथ, अटारी कॉर्प. विशेष U: ड्राइव में एक वर्चुअल DEV डायरेक्टरी होती है, जिसके अंदर कोई डिवाइस फाइल ढूंढ सकता है।
विंडोज 9x \\devices\ माइक्रोसॉफ्ट
विंडोज एनटी \Device माइक्रोसॉफ्ट \Device निर्देशिका विंडोज एनटी ऑब्जेक्ट नेमस्पेस का भाग है।
विंडोज एनटी विन32 सबसिस्टम \\.\ माइक्रोसॉफ्ट \\.\ उपसर्ग समर्थन करने वाले एपीआई को विन32 फ़ाइल नामस्थान केअतिरिक्त विन32 डिवाइस नामस्थान तक पहुँच प्रदान करता है। विन32 डिवाइस नाम विंडोज एनटी \Deviceनिर्देशिका के अंतर्गत डिवाइस नामों के सांकेतिक लिंक हैं।


यह भी देखें

संदर्भ

  1. 1.0 1.1 "Windows for Workgroups: How VSHARE.386 Manages File Sharing". Support.microsoft.com. 1999-09-22. Retrieved 2014-01-22.
  2. Kroah-Hartman, Greg (2005-06-20). "[PATCH] devfs: Remove devfs from the kernel tree". Linux kernel source tree. Retrieved 2021-06-12.
  3. Corbet, Jonathan; Kroah-Hartman, Greg; Rubini, Alessandro (2005). "Access Control on a Device File". Linux Device Drivers, 3rd Edition. O'Reilly. Retrieved 28 April 2017. The next step beyond a single-open device is to let a single user open a device in multiple processes but allow only one user to have the device open at a time.
  4. Kernighan, Brian W.; Pike, Rob (1984). यूनिक्स प्रोग्रामिंग पर्यावरण. Prentice-Hall. p. 66. ISBN 0-13-937681-X.
  5. Neil Brown (October 27, 2010). "Ghosts of Unix Past: a historical search for design patterns". Linux Weekly News. Retrieved 30 March 2014.
  6. "IEEE Std 1003.1, 2013 Edition". Retrieved 24 April 2014.
  7. "फ्रीबीएसडी आर्किटेक्चर हैंडबुक". Retrieved 7 March 2013.
  8. "usr.sbin/envstat/envstat.c". BSD Cross Reference. NetBSD. November 2021.
  9. "mknod(8)". FreeBSD Manual Pages. The FreeBSD Project. 2016-10-03. Retrieved 2021-06-12.
  10. Linux Assigned Names and Numbers Authority (2009-04-06). "Linux allocated devices (2.6+ version)". Linux kernel (Documentation/devices.txt). Archived from the original on 24 April 2016. Retrieved 2013-06-08.
  11. "Macintosh फ़ाइलनाम बनाने से बचें जो NT डिवाइस नाम हैं". Support.microsoft.com. 2006-11-01. Retrieved 2014-01-22.
  12. "डिवाइस गुण". Stanislavs.org. Retrieved 2014-01-22.
  13. 13.0 13.1 "MS-DOS डिवाइस ड्राइवर नाम का उपयोग फ़ाइल नाम के रूप में नहीं किया जा सकता है". Revision 2.0. Microsoft. 2003-05-12. KB74496, Q74496. Archived from the original on 2012-07-21.
  14. "अप्रमाणित आदेश". 4dos.info. Kevtronics. 2002-04-12. Retrieved 2014-05-16.
  15. 15.0 15.1 15.2 15.3 15.4 15.5 IBM Operating System/2 Technical Reference - Programming Family (PDF). Vol. 1 (1st ed.). IBM. September 1987 [1986]. Archived (PDF) from the original on 2017-01-03.
  16. 16.0 16.1 16.2 16.3 16.4 16.5 16.6 16.7 16.8 Hewlett-Packard - Technical Reference Manual - Portable PLUS (1 ed.). Corvallis, OR, USA: Hewlett-Packard Company, Portable Computer Division. August 1985. 45559-90001. Retrieved 2016-11-27.
  17. 17.0 17.1 17.2 17.3 17.4 17.5 17.6 17.7 17.8 Hewlett-Packard - Technical Reference Manual - Portable PLUS (PDF) (2 ed.). Portable Computer Division, Corvallis, OR, USA: Hewlett-Packard Company. December 1986 [August 1985]. 45559-90006. Archived (PDF) from the original on 2016-11-28. Retrieved 2016-11-27.
  18. 18.0 18.1 18.2 Paul, Matthias R. (1997-10-02). "Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM README.TXT". Archived from the original on 2003-10-04. Retrieved 2009-03-29. [1]
  19. Paterson, Tim; Microsoft (2013-12-19) [1983]. "Microsoft DOS V1.1 and V2.0: /msdos/v20source/SKELIO.TXT, /msdos/v20source/HRDDRV.ASM". Computer History Museum, Microsoft. Retrieved 2014-03-25. (Note: While the publishers claim this would be MS-DOS 1.1 and 2.0, it actually is SCP MS-DOS 1.25 and a mixture of Altos MS-DOS 2.11 and TeleVideo PC DOS 2.11.)
  20. "REG: CurrentControlSet Entries PART 2: SessionManager". Support.microsoft.com. 2006-11-01. Retrieved 2014-01-22.
  21. Technical Reference Manual PC-E500 (PDF). Sharp Corporation, Information Systems Group, Personal Equipment Division. March 1990. p. 17. Archived (PDF) from the original on 2017-03-14. Retrieved 2017-03-14.
  22. Gooch, Richard (2002-08-20). "Linux Devfs (Device File System) FAQ". Retrieved 2021-06-13.
  23. Gooch, Richard. "My Linux Contributions". Retrieved 2021-06-13. Devfsd provides configurable management of device nodes using the Linux Device Filesystem.
  24. "devfs(7FS)". man pages section 7: Device and Network Interfaces. Oracle. 2014. Retrieved 2021-06-12.
  25. "Project Black change log". Retrieved 2016-05-15.
  26. "The drive U: in MagiC". 2016-03-28. Archived from the original on 2017-01-15. Retrieved 2017-01-09.
  27. "FreeMiNT-Portal - mint.doc". 2000-04-27. Archived from the original on 2017-01-15. Retrieved 2017-01-09.


अग्रिम पठन