Motūrus OS का परिचय
- Motūrus प्रोजेक्ट क्लाउड के लिए एक सरल, तेज़ और सुरक्षित ऑपरेटिंग सिस्टम MotūrusOS विकसित कर रहा है।
- Motūrus OS एक नया ऑपरेटिंग सिस्टम है जो virtual machine-आधारित workload को लक्ष्य करता है, और इसका उपयोग web server, serverless, edge caching आदि में किया जा सकता है।
Motūrus OS क्यों?
- वर्तमान में अधिकांश virtualized production workload Linux पर चल रहे हैं।
- Linux में कई उन्नत फीचर हैं, लेकिन इसमें कुछ ऐसी जटिलताएँ भी हैं जो virtualized workload के लिए आदर्श नहीं हैं:
- Linux bare metal के लिए optimized है, इसलिए VM के भीतर उपयोग करने पर यह अक्षम हो सकता है।
- Linux का उपयोग करना कठिन है।
- Linux ऐतिहासिक रूप से काफ़ी असुरक्षित रहा है।
- virtualized workload पर केंद्रित एक नया ऑपरेटिंग सिस्टम Linux की तुलना में कहीं अधिक सरल और सुरक्षित बनाया जा सकता है, और performance या efficiency में Linux के बराबर या उससे बेहतर हो सकता है।
Motūrus OS क्या है?
- Motūrus OS एक microkernel-आधारित ऑपरेटिंग सिस्टम है, जिसे Rust भाषा में बनाया गया है, और यह केवल virtualized workload को ही लक्ष्य करता है।
- यह वर्तमान में x64 KVM-आधारित virtual machine को support करता है, और Qemu या Cloud Hypervisor पर चल सकता है।
- Rust, Motūrus OS की मुख्य भाषा है; केवल implementation ही नहीं, ABI भी Rust में प्रदान किया जाता है।
जो फीचर काम कर रहे हैं
- फिलहाल अधिकांश subsystem POC/MVP मोड में काम कर रहे हैं, लेकिन web server जैसे workload चलाए जा सकते हैं।
- विशेष रूप से, निम्नलिखित फीचर काम कर रहे हैं:
- MBR(Qemu) या PVH(Cloud Hypervisor) के माध्यम से लगभग 200ms में boot होता है।
- himem microkernel।
- scheduling: सरल multiprocessor round robin(SMP), kernel scheduling cooperative है।
- memory management: वर्तमान में केवल 4K page support, stack protected है, और user space के page fault सही ढंग से handle होते हैं।
- I/O subsystem (user space के भीतर): VirtIO-BLK और VirtIO-NET driver, दो सरल file system, smoltcp-आधारित networking (केवल TCP support)।
- user space: multi-process, preemption, thread, TLS, Rust standard library का अधिकांश हिस्सा port किया गया है।
- एक सरल Unix-शैली shell प्रदान किया जाता है।
जो फीचर काम नहीं कर रहे
- अधिकांश हिस्से अभी production उपयोग के लिए तैयार नहीं हैं।
- security audit नहीं किया गया है।
- sys-io (user space I/O subsystem) में "not implemented" panic आसानी से हो सकता है।
- विशेष रूप से, निम्नलिखित फीचर काम नहीं कर रहे हैं:
- file system: Rust
std::fs API का अधिकांश हिस्सा POC के रूप में लागू किया गया है, लेकिन इसे async I/O का उपयोग करके फिर से implement करना होगा।
- networking:
std::net::TcpStream का अधिकांश हिस्सा implement किया गया है, लेकिन अन्य protocol अभी implement नहीं किए गए हैं।
- Rust standard library के बाहर का ecosystem: कुछ crate छोटे-मोटे adjustment के साथ compile और उपयोग किए जा सकते हैं, लेकिन Tokio जैसे async runtime पर निर्भर crate अभी compile नहीं होते।
Motūrus OS को build/run कैसे करें?
docs/build.md दस्तावेज़ देखें।
आभार
- Rust में OS लिखने पर ब्लॉग श्रृंखला लिखने वाले Philipp Oppermann को बहुत धन्यवाद। उन्होंने कई लोगों को इस क्षेत्र में प्रयोग करने के लिए प्रेरित किया है।
GN⁺ की राय
- नवोन्मेषी दृष्टिकोण: Motūrus OS virtualized environment के लिए विशेष रूप से बनाया गया एक नया ऑपरेटिंग सिस्टम है, जो Linux की जटिलता और अक्षमता को हल करने की कोशिश करता है।
- Rust भाषा को अपनाना: Rust memory safety और performance पर ज़ोर देने वाली भाषा है, और यह Motūrus OS की सुरक्षा और दक्षता में योगदान दे सकती है।
- डेवलपर कम्युनिटी में योगदान: यह प्रोजेक्ट ऑपरेटिंग सिस्टम विकास में रुचि रखने वाले डेवलपरों को नई संभावनाएँ खोजने और मौजूदा सीमाओं से आगे बढ़ने में मदद कर सकता है।
3 टिप्पणियां
मैं भी
writing an os in rustब्लॉग देख रहा हूँ, लेकिन लगता है कि इसमें तो पहले से ही हलचल शुरू हो गई है!मुझे लगता है यह एक अच्छा लेख है
Hacker News राय
प्रोजेक्ट डेवलपर/लेखक की राय:
"Rust-first" approach की व्याख्या:
यह जिज्ञासा कि एक छोटा kernel आधुनिक कंप्यूटर पर 200ms क्यों लेता है:
Rust में लिखे kernel में async-first kernel देखना चाहने वाली राय:
Linux से competition पर Linus Torvalds के पुराने बयान की याद दिलाने वाली राय:
Motor OS जैसे प्रोजेक्ट्स में रुचि और इसके विकास के जारी रहने की उम्मीद जताने वाली राय:
यह राय कि Linux की जटिलता के कारण Docker, Nix OS, "serverless" आदि मौजूद हैं:
नई तकनीक को लेकर शुरू में संदेह था, लेकिन फिर लगा कि अनावश्यक layers हटाने से मिलने वाली efficiency और security improvements आकर्षक हैं:
यह राय कि Motor OS, Docker आदि के साथ प्रतिस्पर्धा करता हुआ दिखता है:
यह राय कि नया operating system शुरू करना कठिन नहीं, लेकिन अगले 50 वर्षों तक उसे support करना बेहद कठिन है:
"जो फ़ीचर्स काम नहीं करते" वाला सेक्शन तो कमाल का है। खिलौना प्रोजेक्ट।