- Linux kernel में Rust integration पर काम ने experimental चरण पूरा कर लिया है और अब इसे औपचारिक component के रूप में मान्यता मिल गई है
- वार्षिक Maintainers Summit में developers ने Rust support को स्थायी फीचर के रूप में अपनाने पर सहमति दी
- इसके अनुसार kernel के भीतर Rust से जुड़े code से ‘experimental’ टैग हटाया जाएगा
- LWN के संपादक ने कहा, “प्रयोग खत्म हो गया, और यह सफल रहा,” और Rust for Linux टीम की उपलब्धि का उल्लेख किया
- इसे kernel development language के विस्तार और सुरक्षा व आधुनिकता की दिशा में एक महत्वपूर्ण मोड़ के रूप में देखा जा रहा है
kernel Rust प्रयोग का समापन और औपचारिक स्वीकृति
- वार्षिक Maintainers Summit में kernel के भीतर Rust support पर चर्चा हुई, और उपस्थित developers इस बात पर सहमत हुए कि Rust अब experimental फीचर नहीं है
- Rust अब kernel का एक मुख्य हिस्सा बन चुका है
- इसके अनुसार संबंधित code से ‘experimental’ चिह्न हटाया जाएगा
- LWN के संपादक ने पोस्ट में स्पष्ट लिखा, “प्रयोग खत्म हो गया, और यह सफल रहा”
- उन्होंने Rust for Linux टीम की मेहनत पर बधाई संदेश भी दिया
समुदाय की प्रतिक्रिया
- पोस्ट के शीर्षक ने कुछ समय के लिए भ्रम पैदा किया, जिससे कुछ पाठकों ने गलती से समझा कि Rust हटाया जा रहा है
- कई comments में “एक पल के लिए धोखा खा गया”, “यह तो भावनात्मक रोलरकोस्टर था” जैसी प्रतिक्रियाएँ दिखीं
- कुछ users ने Phoronix की headline style का ज़िक्र करते हुए मज़ाकिया प्रतिक्रिया दी
- साथ ही यह भी कहा गया कि Phoronix की benchmark गतिविधियाँ और open source ecosystem updates उपयोगी होते हैं
- अन्य comments में यह भी कहा गया कि Microsoft Windows kernel में भी Rust ला रहा है
- कुछ components पहले से Rust में लिखे जा चुके हैं और shipping stage में शामिल हो चुके हैं, ऐसा मत सामने आया
Rust अपनाने का महत्व
- kernel के भीतर Rust support के आधिकारिक और दीर्घकालिक फीचर में बदलने के साथ,
memory safety को मजबूत करना और modern language adoption अब kernel development का स्थापित हिस्सा बन रहा है - kernel और Windows दोनों में Rust अपनाए जाने से, system programming language की पीढ़ीगत बदलाव की प्रवृत्ति और स्पष्ट दिख रही है
- समुदाय इस निर्णय को एक सफल प्रयोग की पूर्णता के रूप में देख रहा है, और आगे Rust-आधारित kernel modules के विस्तार की उम्मीद कर रहा है
3 टिप्पणियां
फिर भी, क्या कई maintainer बीच में हट नहीं गए?
हंगुल से जुड़ी सिर्फ़ एक ही किताब आई है, लेकिन अफ़सोस कि Linux kernel में Rust इस्तेमाल करने का तरीका कई बार breaking changes से गुज़रा, इसलिए वह आजकल के kernel के साथ बिल्कुल compatible नहीं है। GitHub वगैरह के ज़रिए अगर इसमें सुधार हो जाए तो बहुत अच्छा होगा।
Hacker News टिप्पणियाँ
पिछले 2 सालों में Rust सपोर्ट ने सच में बहुत प्रगति की है
अब हालत यह है कि लगभग बिना boilerplate के kernel modules लिखे जा सकते हैं
मुझे लगता है कि “experimental” टैग हटाया जाना एक बड़ा milestone है
आगे चलकर जिस दिन distributions Rust सपोर्ट डिफ़ॉल्ट रूप से सक्षम किए हुए kernel जारी करेंगी, वही सच में टर्निंग पॉइंट होगा
उदाहरण के लिए NixOS और Arch, Rust में लिखा हुआ QR code kernel panic screen सक्षम करते हैं
मेरा खयाल है Fedora भी इसे सपोर्ट करता है
CONFIG_RUST=yके साथ compile किया गया हैमेरा समझना है कि इसका मतलब यह नहीं कि kernel Rust user space को सपोर्ट करता है, बल्कि सिर्फ इतना कि kernel code का कुछ हिस्सा rustc से compile होता है
लंबे प्रतिरोध के बाद Linux kernel में Rust का आधिकारिक रूप से अपनाया जाना भावुक कर देने वाला है
Rust for Linux टीम के लिए ज़ोरदार तालियाँ
सोचता हूँ कि क्या वही घटना project का पहला domino थी
Rust for Linux के सह-maintainer Alex Gaynor आधिकारिक रूप से हट गए हैं
अब Miguel Ojeda ही एकमात्र आधिकारिक maintainer बचे हैं, और कई code reviewers मौजूद हैं
मैं जानना चाहता हूँ कि “experimental” टैग हटने का मतलब क्या यह है कि अब सभी maintainers के लिए Rust code को न तोड़ना अनिवार्य होगा
यह इस भरोसे का संकेत है कि developers Rust-आधारित drivers में निवेश कर सकते हैं
नियम अब भी वही हैं, और Rust build को तोड़ने वाला code Linus को नहीं भेजा जा सकता
यानी अगर कोई maintainer आंतरिक Rust code तोड़ देता है, तो वह नियमों का उल्लंघन नहीं माना जाएगा
जिज्ञासा है कि जिन architectures को Rust सपोर्ट नहीं करता, क्या अब वे छोड़ दिए जाएँगे
kernel का core हिस्सा अब भी C में ही लिखा जाना चाहिए
कहा गया कि लेख का शीर्षक “The (successful) end of the kernel Rust experiment” में बदला गया
क्योंकि समुदाय ने फीडबैक दिया कि मूल शीर्षक बढ़ा-चढ़ाकर लिखा गया था
Hacker News guidelines के अनुसार
“मूल शीर्षक को सिर्फ तब बदलें जब वह भ्रामक हो”
क्योंकि असफल प्रयोग इस तरह समाप्त नहीं होते
“क्या यह बड़ी बात है?” इस सवाल पर
अगर Linux kernel drivers सच में Rust की ओर जा रहे हैं, तो जिज्ञासा है कि क्या FreeBSD जैसे BSD परिवार भी उसी oxidation से गुजरेंगे
या फिर वहाँ प्रतिरोध और विभाजन देखने को मिलेगा
नए प्रयासों का स्वागत करने वाला नज़रिया है
फिर भी लगता है कि Rust की memory safety और expressive nature के कारण यह कठिनाई उठाने लायक है
जिज्ञासा है कि अभी kernel में Rust में लिखा हुआ क्या-क्या है
Phoronix लेख देखें
जिज्ञासा है कि kernel के Rust code में unsafe कितना शामिल है
पहले unsafe के बहुत असुविधाजनक होने की शिकायतें आम थीं
driver developers को लगभग कभी unsafe लिखने की ज़रूरत नहीं पड़ती
ज़्यादातर code safe Rust में लिखा जाता है
उदाहरण के लिए pwm_th1520.rs में
SendऔरSyncसपोर्ट के लिए सिर्फ एक पंक्ति का unsafe है