लिनक्स के लिए / usr और / tmp निर्देशिका अपने वर्तनी में स्वर क्यों याद करते हैं?


34

मैंने अक्सर इस बारे में सोचना शुरू कर दिया है लेकिन कभी कोई अच्छा जवाब नहीं मिला। ये दो यूनिक्स निर्देशिका क्यों नहीं हैं /userऔर /tempइसके बजाय?

के तहत सभी अन्य निर्देशिकाओं को rootप्रतीत होता है कि कोई भी उन्हें होने का अनुमान लगाता है, लेकिन ये दोनों अजीब लगते हैं, मैंने हमेशा उन्हें अनुमान लगाया होगा userऔर temp

क्या वशीकरण के कुछ ऐतिहासिक कारण है?


2
कुछ मुझे बताता है कि यह यूनिक्स का एक कैरीओवर है। उस धारणा पर, मुझे लगता है कि इस तरह के ट्रंकेशन प्रमुख सिलेबल्स पर आधारित हैं।
केन

17
एक बार, केन थॉम्पसन से पूछा गया कि वह कुछ भी अलग वह यूनिक्स की पुनः रचना कर रहे थे करना चाहते हैं, और उन्होंने जवाब दिया "" मैं एक ई के साथ मूल्य बना वर्तनी हैं। "
mattdm

3
"रूट के तहत अन्य सभी निर्देशिकाएं वास्तव में वही प्रतीत होती हैं जो कोई उन्हें अनुमान लगाएगा" -> जो मुझे सच नहीं लगता। के अलावा boot, home, mediaऔर rootसब कुछ छोटा है। mntइसके स्वरों की भी कमी है।
फुनेहे

7
मैंने सोचा था कि 'यू' एक स्वर था ...
श्री शिखाडांस

1
@श्री। Shickadance: यह है।
0xC0000022L

जवाबों:


49

हाँ कारण थे। वे उपयोगकर्ता और अस्थायी हैं। पासव्ड वैसा ही है, जैसा कि resolv.conf। यूनिक्स एक विशेषज्ञ के अनुकूल, उपयोगकर्ता विरोधी ऑपरेटिंग सिस्टम है।

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

Vi से hjkl का एक इतिहास है जो बहुत कम लोग जानते हैं। vi को बिल जॉय द्वारा विकसित किया गया था जब वह इन्हीं वर्षों के दौरान UCB में एक स्नातक छात्र था। Cory हॉल में ADM 3a टर्मिनलों में उन अक्षरों के ऊपर तीर कुंजियाँ थीं


22
मुझे नहीं लगता कि जब इसे "विशेषज्ञ के अनुकूल, उपयोगकर्ता विरोधी" होने का विचार बनाया गया था, तो यह लक्ष्य का हिस्सा था। बल्कि, सभी उपयोगकर्ता विशेषज्ञ थे , इसलिए कोई सार्थक अंतर नहीं था।
Mattdm

7
LOL "उपयोगकर्ता के अनुकूल, उपयोगकर्ता विरोधी"। इसने मेरा दिन बना दिया। +1!
निको

5
बस एक छोटा सा नोट (किसी भी तरह से सुधार नहीं)। हालांकि इसे कभी-कभी "उपयोगकर्ता" कहा जाता है, लेकिन यूएसआर या तो "सार्वभौमिक सिस्टम संसाधन" या "यूनिक्स सिस्टम संसाधन" के लिए खड़ा है। जो भी है, यह यूनिक्स के प्राचीन इतिहास के कोहरे के बीच खो गया है :)
luis.espinal

20
जिस समय / usr को गढ़ा गया था, इसका अर्थ उपयोगकर्ता था और घर की निर्देशिकाएं वहां स्थित थीं। यूनिक्स / यूनिवर्सल सिस्टम संसाधन वास्तव में एक बैरोनियम है।
जुलैग्रे

2
जब यूनिक्स बाहर आया 300 बीपीएस रसीला था । वहाँ 75 bps लिंक थे, जो बोझिल, धीमे, इलेक्ट्रोमैकेनिकल टेलेटिप्राइटर (अक्सर Teletype® ASR-33) द्वारा नियंत्रित किए जाते थे।
एलेक्सिओस

20

वे यूनिक्स से होल्डओवर हैं। मेमोरी और डिस्क स्थान कम आपूर्ति में था। कुछ स्वरों और अन्य संक्षिप्तीकरणों को हैक करके वास्तविक बचत दी गई। कुछ डिस्क ब्लॉक या कुछ बाइट्स का मतलब प्रोग्राम चलाने या न करने में सक्षम होने में अंतर हो सकता है। (मैं एक बार चलने से पहले एक कार्यक्रम को 24 बाइट्स से ट्रिम करना पड़ता था।)

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

ग्राफ़िकल इंटरफेस चलाने वाली प्रणालियों पर यह आम तौर पर मायने नहीं रखता है कि जितना औसत उपयोगकर्ता उनके चारों ओर प्रहार नहीं करेंगे। निर्देशिकाओं को आमतौर पर hierमैन पेज में अच्छी तरह से प्रलेखित किया जाता है ।

अधिक समय तक नाम बदलने से मौजूदा कार्यक्रमों के लिए बहुत सारी समस्याएं होंगी। यह स्क्रिप्ट पोर्टेबिलिटी को भी सीमित करेगा। एक ही निर्देशिका में कई नामों को जोड़ने से मददगार की तुलना में अधिक भ्रमित होने की संभावना होगी।

संपादित करें: पीडीपी -7 जिस पर यूनिक्स विकसित किया गया था, उसमें स्मृति के 4KW का आधार विन्यास और अधिकतम 32KW था। शब्द जहां 18 बिट्स चौड़े हैं। इनपुट एक टेलेटाइप था, इसलिए गति की संभावना 110 बॉड या 10 सीपीएस थी, लगभग 100 शब्द जो भाषण की तुलना में काफी धीमा है।


8
मैं mmd nd dsk spc नहीं खरीदता, लेकिन धीमी tltyps। जब तक आप cn dcphr th cronyms - क्यों नहीं?
यूजर अज्ञात

@user अज्ञात: तब आप युवा हैं और कभी भी स्मृति या डिस्क स्थान के बारे में चिंता करने की आवश्यकता नहीं थी। मेरा पहला कंप्यूटर 30 साल पुराना है - ऐनक पर चमत्कार।

1
मैंने कभी भी किसी फाइल सिस्टम का गहराई से लिखा या निरीक्षण नहीं किया है, लेकिन क्या फाइल सिस्टम में किसी फाइल / डायरेक्टरी का नाम 1 वर्ण के आधार पर अधिक या कम जगह घेरता है? फ़ाइलें स्वयं हमेशा किसी न किसी आकार के कई पर कब्जा करती हैं - आज 4k। इसलिए ज्यादातर फाइलें जिनमें / usr या / tmp का रास्ता होता है, वे प्रभावी रूप से छोटे या बड़े नहीं होते हैं, जो एक एकल पर निर्भर करते हैं e। अच्छी तरह से - कभी-कभी वे करेंगे, और फिर वे पूरे ब्लॉक के लिए बढ़ते हैं, लेकिन शायद ही कभी। और रैम में? मुझे नहीं पता।
उपयोगकर्ता अज्ञात

1
और यह टाइप करने के लिए अधिक कष्टप्रद होता। "अस्थायी बनाम tmp" ऊ ... क्यों कोई भी उन्हें लंबे समय तक चाहेगा?
xenoterracide

4
आधुनिक यूनिक्स निर्देशिका में परिवर्तनशील लंबाई वाली प्रविष्टियाँ हैं। रिसर्च यूनिक्स में वापस, एक निर्देशिका प्रविष्टि एक निश्चित 16 बाइट्स थी: 14 फ़ाइल नाम के लिए, 2 इनोड संख्या के लिए। और यह छोटा हो सकता है जब / usr आदि को रद्द कर दिया गया था।
गिकोसोरस

5

मुझे आश्चर्य है कि /userअभी तक किसी ने टिप्पणी नहीं की है। यह स्पष्ट है: क्योंकि यह "उपयोगकर्ता" नहीं है, यह "यूनिवर्सल सिस्टम रिसोर्स" है।

जैसा कि /tmp, यह केवल छोटा है और टाइप करना आसान है। सी प्रोग्रामर को जब संभव हो तो छोटे नामों का उपयोग करने की आदत होती है क्योंकि वे एक कार्यक्रम में कई बार उन्हें टाइप करते हैं। यह बहुत ही आम है "अस्थायी" नाम के बजाय "अस्थायी" नाम का एक अस्थायी चर है इसी कारण से, आप "इंड" के लिए "इंडेक्स" के बजाय "इंडेक्स" या "काउंटर" के लिए लूप का उपयोग करते हैं।


22
जिस समय / usr को गढ़ा गया था, इसका अर्थ उपयोगकर्ता था और घर की निर्देशिकाएं वहां स्थित थीं। यूनिक्स / यूनिवर्सल सिस्टम संसाधन वास्तव में एक बैरोनियम है।
जूलियाग्रे

3
@ जल्लीगर्रे विस्मयकारी। मुझे एक और सूत्र मिला जो वास्तव में उसका आधिकारिक स्रोत है। us.generation-nt.com/answer/…
Shawn J. Goff

2
सबसे शुरुआती सी प्रोग्रामर पहले फोरट्रान प्रोग्रामर थे। जिस तरह से आपने फोरट्रान IV में पूर्णांक टाइप किया था, वह पहचानकर्ता को 'i' से 'n' तक के चरित्र के साथ शुरू करना था, बाकी सब कुछ REAL नंबर था। इस प्रकार लूप इंडेक्स आमतौर पर i, j, या k थे; जो हम वैज्ञानिक प्रोग्रामर मैट्रिसेस के लिए पर्याप्त थे, तब वापस आ रहे थे।
टॉम मर्फी

@TomMurphy, C से शुरू होने वाले ज्यादातर लोग शायद असेंबली लैंग्वेज प्रोग्रामर थे, या शायद BCPL या B यूजर्स। RATFOR का आविष्कार उन गरीब आत्माओं के लिए किया गया था जिनके पास एक सभ्य भाषा नहीं थी। और कर्निघन और प्लॉजर पुस्तक "सॉफ्टवेयर टूल्स" में (RFFOR के लिए पूर्ण पूर्वप्रक्रम सूचीबद्ध करता है)। अभी भी बहुत कुछ पढ़ने लायक है।
वॉनब्रांड

1
/usr"यूनिवर्सल सिस्टम रिसोर्स" नहीं था, यह वास्तव में उपयोगकर्ता था । Youtube देखें : AT & T अभिलेखागार: UNIX ऑपरेटिंग सिस्टम (1982 के आसपास निर्मित), जहां लगभग 13min 35sec पर, /usr/bwkस्पष्ट रूप से "उपयोगकर्ता-bwk" /usrका उच्चारण किया जाता है और ब्रायन डब्ल्यू । कर्निशन द्वारा "स्लैश-उपयोगकर्ता" का उच्चारण किया जाता है । / usr भी स्पष्ट रूप से 13min 30sec पर आरेख में घर निर्देशिकाओं वाले स्थान के रूप में निहित है। मुझे नहीं लगता कि आप इससे अधिक आधिकारिक हो सकते हैं।
बजे एक CVn

4

एक ऐसा कारक जिसका किसी ने उल्लेख नहीं किया है, वह यह है कि उस समय की कीबोर्ड तकनीक को देखते हुए, छोटे नामों का उपयोग करने में पर्याप्त लाभ था जो टाइप करने में आसान होते हैं। मुद्रण userबनाम usr, यहां तक ​​कि 110-बीपीएस टेलेटाइप पर, शायद बहुत बड़ी बात नहीं थी; टाइप करने के लिए कि अतिरिक्त पत्र शायद अधिक महत्वपूर्ण था।


1

रूट के तहत अन्य सभी निर्देशिकाएं वास्तव में प्रतीत होती हैं कि कोई उन्हें क्या अनुमान लगाएगा,

वहाँ भी है / var, / mnt और / ऑप्ट;)

लेकिन ये दोनों अजीब लगते हैं, मैंने हमेशा उन्हें उपयोगकर्ता और अस्थायी के रूप में अनुमान लगाया होगा।

लगभग वहाँ। जैसा कि शॉन ने कहा, "उपयोगकर्ता" का अर्थ "यूनिवर्सल सिस्टम रिसोर्स" है (हालांकि Google के अनुसार अन्य संसाधन इंगित करते हैं कि यह "यूनिक्स सिस्टम रिसोर्स" के लिए है)।

क्या वशीकरण के कुछ ऐतिहासिक कारण है?

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

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

जैसा कि पहले कहा गया है, यह / usr और / tmp (देखें / var, / mnt और / ऑप्ट) के लिए अद्वितीय नहीं है।

इसके अलावा, यूनिक्स के लिए यह अद्वितीय नहीं है। उदाहरण के लिए डॉक्स को लें (उदाहरण के लिए chkdsk)। स्वरविज्ञान जहां आप स्वरों को काटते हैं, एक शक्तिशाली, आसान अवधारणा है।

यहां तक ​​कि प्राकृतिक भाषाओं (जैसे सेमेटिक भाषाओं) में भी अवधारणा मौजूद है (जहां शब्दों की जड़ सार्वभौमिक और लगभग स्पष्ट रूप से 3-व्यंजन समूहों द्वारा पहचानी जाती है।) यह जानकारी के प्रबंधन के लिए एक सहज मानव तंत्र है।


/ Var, / mnt और / ऑप्ट बाद में MUCH आया। हालांकि, / बिन, / देव, और / आदि बहुत प्रारंभिक यूनिक्स में थे और उसी कारण से लोगों ने कहा - क्योंकि ttys धीमा था और सभी CRT और डिस्क स्थान नहीं थे। पेपर टेप, छोटे (अंतरिक्ष-वार) महंगी ड्राइव और यहां तक ​​कि 8 "
फ्लॉपर्स

1
यह तर्क दिया जा सकता है कि सामी भाषाएं वास्तव में व्यंजन का उपयोग नहीं करती हैं, लेकिन अनिश्चित स्वर के साथ शब्दांश। तो, जड़ शब्दांश अर्थ प्रदान करते हैं, जबकि विशिष्ट स्वर व्याकरणिक अर्थ जोड़ते हैं।
नवजाल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.