कर्नल पॅचेसची नवीन आवृत्ती Linux रस्ट भाषेच्या समर्थनासह

मिगुएल ओजेडा, रस्ट-फॉर-प्रकल्पाचे लेखकLinuxकर्नल डेव्हलपर्सनी विचारासाठी प्रस्तावित केले Linux выпуск v5 компонентов для разработки драйверов устройств на языке Rust. Это шестая редакция патчей с учётом первого варианта, опубликованного без номера версии. Поддержка Rust рассматривается как экспериментальная, но уже включена в ветку linux-next и достаточно развита для начала работы по созданию слоёв абстракции над подсистемами ядра, а также для написания драйверов и модулей. Разработка финансируется компанией Google и организацией ISRG (Internet Security Research Group), которая является учредителем проекта Let’s Encrypt и способствует продвижению HTTPS и развитию технологий для повышения защищённости интернета.

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

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

नवीन पॅच रिलीझ पहिल्या, दुसऱ्या, तिसऱ्या, चौथ्या आणि पाचव्या पॅच रिलीझच्या चर्चेदरम्यान उपस्थित झालेल्या चिंतांना संबोधित करत आहे. नवीन आवृत्तीमध्ये:

  • टूलचेन रस्ट १.५९.० वर अपडेट केले गेले आहे. अ‍ॅलोक लायब्ररी अंमलबजावणी देखील नवीन रस्ट आवृत्तीसह समक्रमित केली गेली आहे, ज्यामुळे मेमरीबाहेरच्या परिस्थितीसारख्या त्रुटींमुळे होणारे संभाव्य पॅनिक दूर केले गेले आहेत. असेंब्ली इंजेक्शन्स ("फीचर(ग्लोबल_एएसएम)") वापरण्याची क्षमता स्थिर केली गेली आहे.
  • कर्नल संकलनादरम्यान वापरल्या जाणाऱ्या रस्ट भाषेत होस्ट प्रोग्राम तयार करण्यासाठी समर्थन जोडले.
  • पूर्व-निर्मित लक्ष्य प्लॅटफॉर्म स्पेसिफिकेशन फाइल्स पुरवण्याऐवजी, त्या आता कर्नल कॉन्फिगरेशनवर आधारित गतिमानपणे तयार केल्या जातात.
  • HAVE_RUST कर्नल पॅरामीटर जोडला, जो रस्टला समर्थन देणाऱ्या आर्किटेक्चरसाठी सक्षम आहे.
  • हार्डवेअर स्यूडो-रँडम नंबर जनरेटरच्या रस्ट कोडमध्ये वापरण्यासाठी अ‍ॅब्स्ट्रॅक्शन्स प्रस्तावित आहेत.
  • "Error::" उपसर्ग (उदा. "return Err(EINVAL)") शिवाय एरर कोडचा वापर C मधील एरर कोडच्या हाताळणीच्या अंदाजे वापरासाठी परवानगी आहे.
  • मूळ C स्ट्रिंगसाठी "CString" प्रकार जोडला. फॉरमॅटर आणि बफर प्रकार एकत्र केले.
  • बूल आणि लॉकइन्फो प्रकार जोडले.
  • स्पिन लॉकची अंमलबजावणी सोपी करण्यात आली आहे.

स्त्रोत: opennet.ru

DDoS संरक्षण, VPS VDS सर्व्हर असलेल्या साइटसाठी विश्वसनीय होस्टिंग खरेदी करा 🔥 डीडॉस संरक्षणासह विश्वसनीय वेबसाइट होस्टिंग, व्हीपीएस (VPS) व्हीडीएस (VDS) सर्व्हर्स खरेदी करा | ProHoster