नया "बैश ऑन विंडोज़ 10" वास्तव में कैसे काम करता है?


25

मैंने ऑनलाइन पढ़ा कि उबंटू और बैश विंडोज़ 10 पर आ रहे हैं। मैंने यह भी पढ़ा कि यह विंडोज़ के ऊपर चलने वाला एमुलेटर या वर्चुअल मशीन नहीं है, बल्कि कुछ और है। तो वास्तव में यह सब एक साथ कैसे आता है? और क्या यह वास्तव में उबंटू में बास के रूप में स्थिर और उपयोगकर्ता के अनुकूल होने जा रहा है?



यह वास्तव में हुड के नीचे क्या हो रहा है की एक महान तस्वीर प्रदान नहीं करता है।
Maaverik

@maaverik हमने तब से ब्लॉग पोस्ट की एक श्रृंखला तैयार की है और वीडियो के साथ डब्ल्यूएसएल के इंटर्नल को समझा रहा है। लिंक के लिए नीचे मेरा जवाब देखें :)
रिच टर्नर

जवाबों:


21

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

हालाँकि, यह विशुद्ध रूप से एक विंडोज तकनीक है इसलिए यदि आप अधिक विवरण चाहते हैं, तो आपको उन्हें विंडोज सपोर्ट ग्रुप या कुछ और से प्राप्त करना चाहिए। विंडोज एक मालिकाना ओएस बना हुआ है, इसलिए मुझे सीमित मात्रा में विवरण की उम्मीद होगी।

और क्या यह वास्तव में उबंटू में बास के रूप में स्थिर और उपयोगकर्ता के अनुकूल होने जा रहा है?

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

यह जल्द ही किसी भी समय पूर्ण उबंटू अनुभव के पास कहीं भी नहीं होगा।


2
"एमुलेटर नहीं" शायद उद्धरण चिह्नों में है; जैसे शराब यह है सिर्फ हार्डवेयर स्तर पर नहीं लेकिन एपीआई स्तर पर एक एमुलेटर,। आप क्या कर रहे हैं (यानी आप कितने सिस्टम कॉल कर रहे हैं) के आधार पर दोनों प्रदर्शन हानि का परिणाम है।
थोमसट्रेटर

2
@thomasrutter क्षमा करें मैं सहमत नहीं हूँ। 'एमुलेटर' की आपकी परिभाषा बहुत ढीली है। इस तरह एक व्याख्या के तहत, हमें प्रॉक्सी को एमुलेटर भी कॉल करना होगा (लेकिन वे नहीं हैं)। एक एमुलेटर, परिभाषा के अनुसार, चीजों का अनुकरण करता है। डब्लूएसएल (और प्रॉक्सी) चीजों का अनुकरण नहीं करते हैं, वे चीजों को बदल देते हैं और आगे बढ़ते हैं और प्रतिक्रिया देते हैं।
सेगफॉल्ट

21

लिनक्स (WSL) के लिए विंडोज सबसिस्टम कैसे काम करता है और यह देशी लिनक्स ELF-64 बायनेरिज़ कैसे चलता है, के बारे में उत्सुक लोगों के लिए, हमने ब्लॉग पोस्ट की एक श्रृंखला प्रकाशित की है और वीडियो के साथ WSL वास्तुकला, प्रक्रियाओं, syscalls और filesystem समर्थन की व्याख्या की है ।

स्कॉट हैंसेलमैन ने इंस्टॉलेशन प्रक्रिया को कवर करने और विंडोज पर उबंटू पर बैश को कॉन्फ़िगर करने के लिए एक महान वॉकथ्रू वीडियो भी किया :

HTH


3
पहला लिंक किसी भी अधिक काम नहीं करता है, मुझे लगता है कि यह यहाँ स्थानांतरित हो गया है: blogs.msdn.microsoft.com/commandline/…
dpritch

अच्छी पकड़ - धन्यवाद। हमारे छोटे लिंक पर इंगित करने के लिए लिंक को निश्चित करें।
रिच टर्नर

2

डब्ल्यूएसएल में बैश भाग बहुत अच्छा काम करते हैं।

कर्नेल भाग नहीं हैं। उदाहरण के लिए, /sys/class/backlight/intel_backlight/brightnessस्क्रीन चमक सेट करने के लिए आप पहुँच नहीं है । पॉवरशेल कमांड हैं जिन्हें आप आसानी से कॉल कर सकते हैं यदि आपको COBOL शैली का बहुत लंबे क्षेत्र के नामों से ऐतराज नहीं है। एमएस पॉवर्सशेल को सीधे बैश के भीतर से बुलाया जा सकता है। तो आप यह कह सकते हैं कि शक्तिशाली विंडोज फीचर्स को अब बैश में बनाया गया है। एक ही टोकन एमएस पॉवरशेल के अनुसार मैं विश्वास कर सकता हूं। सच Powershell जैसे कार्यों के लिए उपयोग हो जाता है तो अगर grep, awk, head, tail, आदि

उबंटू डेस्कटॉप ( geditऔर nautilus, आदि) के लिए जीयूआई केवल स्थापित करने VcXsrvया कुछ इसी तरह काम करता है ।

लिनक्स और विंडोज WSL के बीच फ़ाइलों को साझा करना सेटअप के लिए जटिल है। जब साझा WSL ​​+ लिनक्स NTFS फ़ोल्डर के बीच फ़ाइलों को ले जाने पर मुझे कुछ फ़ाइल अनुमति "अजीबता" या तो मेरी अज्ञानता या सॉफ़्टवेयर की कमियों के कारण होती है।

उबंटू की तुलना में डब्ल्यूएसएल में स्पीड काफी धीमी है। आप वास्तव में चरित्र द्वारा स्क्रीन पेंट चरित्र देख सकते हैं जब आप चलाते हैं calया toilet: विंडो बैश और साइबरविन के बीच अंतर क्या हैं?

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

मैंने कुछ MS फ़ोरमों का दौरा किया है और मुझे कहना होगा कि रिच टर्नर और उनके WSL टीम के सदस्य मेरे द्वारा देखे गए सबसे अच्छे पेशेवरों में से कुछ हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.