Kerla: Rust मध्ये लिहिलेले नवीन कर्नल आणि Linux ABI शी सुसंगत

केर्ला प्रकल्पाची माहिती नुकतीच प्रसिद्ध करण्यात आली, जी रस्ट भाषेत लिहिलेली ऑपरेटिंग सिस्टम कर्नल म्हणून विकसित केली जात आहे. कोड Apache 2.0 आणि MIT लायसन्स अंतर्गत वितरित केला जातो. हा प्रकल्प जपानी डेव्हलपर Seiya Nuta द्वारे विकसित केला जात आहे, जो C भाषेत लिहिलेली मायक्रोकर्नल ऑपरेटिंग सिस्टम Resea तयार करण्यासाठी ओळखला जातो.

नवीन कर्नलचे उद्दिष्ट सुरुवातीला आहे ABI स्तरावर लिनक्स कर्नलशी सुसंगतता सुनिश्चित करा, जे केर्ला-आधारित वातावरणात लिनक्ससाठी तयार न केलेल्या बायनरींना चालवण्यास अनुमती देईल.

केरळ बद्दल

केर्ला एक मोनोलिथिक ऑपरेटिंग सिस्टम कर्नल आहे गंज मध्ये सुरवातीपासून तयार. विकासाच्या सध्याच्या टप्प्यावर, केर्ला फक्त x86_64 आर्किटेक्चर असलेल्या सिस्टीमवर चालवता येते आणि रायट, स्टेट, एमएमएप, पाईप आणि पोल सारख्या मूलभूत सिस्टम कॉलची अंमलबजावणी करते, सिग्नल, अनामित पाईप्स आणि कॉन्टेक्स्ट स्विचचे समर्थन करते. फोर्क, wait4 आणि execve सारखे कॉल प्रक्रिया नियंत्रित करण्यासाठी प्रदान करतात. tty आणि स्यूडो-टर्मिनल्स (pty) साठी समर्थन आहे. initramfs फाइल प्रणालींपैकी (रूट FS माउंट करण्यासाठी वापरले जाते), tmpfs आणि devfs अजूनही समर्थित आहेत.

TCP आणि UDP सॉकेटसाठी समर्थन असलेले नेटवर्क स्टॅक देखील प्रदान केले आहे, smoltcp लायब्ररीवर आधारित. विकसकाने बूट वातावरण तयार केले आहे जे QEMU किंवा Firecracker VM मध्ये ड्रायव्हर virtio-net सह कार्य करते, ज्यात तुम्ही आधीच SSH द्वारे कनेक्ट करू शकता.. Musl एक सिस्टम लायब्ररी म्हणून वापरले जाते आणि BusyBox वापरकर्ता उपयुक्तता म्हणून वापरले जाते. डॉकरवर आधारित, एक बिल्ड प्रणाली तयार केली गेली आहे जी तुम्हाला केर्ला कर्नलसह तुमचे स्वतःचे initramfs बूट तयार करण्यास परवानगी देते.

आतापर्यंत, त्याच्या नवीन कर्नलबद्दल काही तपशील प्रदान केले गेले आहेत, परंतु केर्लाच्या वैशिष्ट्यांकडे सर्वात लक्ष वेधून घेणारी गोष्ट म्हणजे ते रस्टमध्ये लिहिलेले आहे. तर रस्टमध्ये लिहिण्याचा इतर भाषांवर किंवा विद्यमान कोडपेक्षा काही फायदा आहे का? अनेकांनी या प्रश्नाला होय असे उत्तर दिले आणि भाषा प्रदान करणाऱ्या मेमरी सुरक्षा फायद्यांवर जोर दिला.

रन टाइममध्ये मेमरी ऍक्सेसच्या अचूकतेचे मूल्यांकन करताना देखील ते प्रदान केले जाते. आणखी काय, Mozilla चा विश्वास आहे की रस्ट पूर्णांक ओव्हरफ्लोपासून संरक्षण देते, वापरण्यापूर्वी व्हेरिएबल व्हॅल्यूजचे अनिवार्य आरंभ करणे आवश्यक आहे, डीफॉल्टनुसार संदर्भ आणि अपरिवर्तनीय व्हेरिएबल्सची संकल्पना स्वीकारते, तार्किक त्रुटी कमी करण्यासाठी मजबूत स्थिर टायपिंग ऑफर करते आणि पॅटर्नच्या जुळणीद्वारे इनपुट प्रक्रिया सुलभ करते.

फायद्यांपैकी, आम्ही कोडच्या गुणवत्तेचे मूल्यांकन करण्यासाठी एकात्मिक साधने हायलाइट करतो आणि युनिट चाचण्या तयार करणे ज्या केवळ वास्तविक हार्डवेअरवरच नव्हे तर QEMU वर देखील चालवल्या जाऊ शकतात. मुळात, Mozilla ला रस्ट डीबग करणे सोपे वाटते कारण कंपाइलर त्रुटी नाकारेल. तथापि, कोव्सने रस्टसह काही कमतरता दर्शवल्या.

“C++ प्रमाणे, टेम्प्लेट्स न वापरता मुहावरेदार रस्ट लिहिणे जवळजवळ अशक्य आहे, म्हणून त्यात फुगलेले बायनरी आणि संकलित वेळा संथ आहेत. या सर्व संकलित-वेळ तपासण्या देखील खर्चात येतात. तसेच, तुम्ही काहीतरी पुन्हा लिहिल्यास, तुम्ही जुना प्रौढ कोडबेस गमावाल, आणि तुम्ही वाजवी वेळेत समान गुणवत्तेचा कोडबेस तयार करू शकत नाही; रस्ट मधील प्रोग्राम पुन्हा लिहिण्याऐवजी विस्तारित करणे अधिक चांगले आहे. रस्टमध्ये पुन्हा लिहिण्यापेक्षा प्रोग्राम वाढवणे चांगले आहे,” सॉफ्टवेअर इंजिनीअर म्हणतो.

त्याच्या निर्मात्याच्या मते, या कारणास्तव लिनक्स विकसक, विशेषतः लिनस टोरवाल्ड्स स्वतः, त्यांनी रस्टमध्ये संपूर्ण कर्नल पुन्हा लिहिण्याची कल्पना नाकारली.

“सुरक्षित लिंक्स तयार करण्यासाठी काही काम करा, नंतर Rust मध्ये अतिरिक्त कोड लिहा आणि तरीही तुम्ही त्या प्रौढ कोडचा आनंद घेऊ शकता. (लिनक्स हेच करते, रस्टमध्ये कर्नल मॉड्यूल लिहिण्याची क्षमता जोडण्याचे प्रयत्न आहेत), ”तो पुढे म्हणाला. लिनक्स डेव्हलपर सुमारे तीन वर्षांपासून रस्ट भाषा वापरून काही नवीन कर्नल मॉड्यूल्स लिहिण्याच्या शक्यतांचा शोध घेत आहेत. यामुळे "रस्ट फॉर लिनक्स" प्रकल्पाला जन्म दिला.

शेवटी, आपल्याला त्याबद्दल अधिक जाणून घेण्यास स्वारस्य असल्यास आपण तपशीलांचा सल्ला घेऊ शकता पुढील लिंकवर


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.