Në degën e kernelit Linux-next është shtuar kod për zhvillimin e driverëve në gjuhën Rust

Në degën linux-next, mbi të cilën do të formohet lëshimi i kernelit Linux 5.13, është përfshirë një grup fillestar komponentësh për zhvillimin e driverëve të pajisjeve në gjuhën Rust. Dokumentacioni për përdorimin e Rust në kernelin Linux është botuar veçmas, si dhe një shembull moduli të kernelit me një driver të pajisjes simbolike në gjuhën Rust. Kodi është shtuar nga Steven Rothwell, mirëmbajtësi i degës Linux-next. Zakonisht, dega Linux-next përmban kodin e gatshëm për t'u pranuar në ciklin e ardhshëm të pranimit të ndryshimeve në kernel, por ende nuk është e qartë nëse mbështetja për Rust do të pranohesh nga Linus Torvalds në kernelin 5.13, pasi kodi nuk ka kaluar shqyrtimin nga një grup të gjerë zhvilluesish.

Mbështetja për zhvillimin e driverëve të kernelit Linux në gjuhën Rust është diskutuar aktivisht vitin e kaluar, përfshirë edhe pjesëmarrjen e Linus Torvalds, i cili nuk e përjashtoi një mundësi të tillë. Ideja u mbështet gjithashtu nga Greg Kroah-Hartman, i cili është përgjegjës për mbështetje të degës stabile të kernelit Linux. Përdorimi i Rust për zhvillimin e driverëve do të lejojë çimin e driverëve të sigurt dhe me cilësi më të lartë me përpjekje minimale, duke eliminuar probleme si qasja në memorien e liruar, dereferimi i pika të null dhe dalja jashtë kufijve të bufferit.

Për të aktivizuar mbështetje për Rust në degën linux-next, në KConfig është shtuar një opsion CONFIG_RUST («Rust support» në menunë «General setup»), aktivizimi i të cilit kontrollon praninë e kompilerit rustc në sistem, dhe, nëse ai është i pranishëm, ofron mundësinë për të aktivizuar komponentët e tjerë të lidhur me Rust (për shembull, në menunë «Kernel hacking» shfaqet seksi «Rust hacking»). Përdorimi i Rust konsiderohet si një opsion, i cili nuk është aktiv nga e drejta dhe nuk çon në përfshirjen e Rust në listën e varësive të detyrueshme për ndërtimin e kernelit.

Ndërtesa e komponentëve të kernelit në Rust është e mundur si gjatë përdorimit të GCC, ashtu dhe gjatë ndërtimit me Clang. Për përdorimin e Rust në kernel kërkohet instalimi i ndërtimeve më të reja të natës të kompilerit rustc, jo më të vjetra se dega nightly-2021-02-20 (pamjaftueshëm premtohet të shtohet mbështetje për degët stabile të Rust, por për momentin është e lidhur me disa funksionalitete eksperimentale). Gjithashtu kërkohet praninë në sistem të bibliotekave standarde të Rust, të cilat vijnë në paketën rust-src, dhe një gjenerues lidhjesh bindgen. Mbështetjeja për momentin është e kufizuar në platformat x86_64 dhe ARM64.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster