Možnosť integrácie podpory Rust do jadra Linuxu 5.20 nie je vylúčená

Na konferencii Open-Source Summit 2022 prebieha v týchto dňoch v sekcii FAQ, Linus Torvalds spomenul možnosť skorej integrácie v jadre Linuxu komponentov na vývoj Ovládače zariadení v Rust.

Bolo teda spomenuté, že záplaty s podporou Rust môžu byť prijaté v nasledujúcom protokole zmien, ktorý tvorí kompozíciu jadra 5.20, naplánovanom na koniec septembra.

Je potrebné pripomenúť, že od minulého roka sa Rust stal jedným z obľúbených, ktorí sa zapájajú do rôznych dôležitých projektov a že za ten čas sa už vykonali práce súvisiace s implementáciou podpory Rust.

V rámci renomovaných projektov, ktoré sa o hrdzu zaujímajú už od minulého roka, môžeme vyzdvihnúť napríklad Android, keďže sa zaujímal o Hrdza pretože to umožňuje dosiahnuť výkon blízky jazykom C a C++, čo umožňuje jeho použitie na vývoj nízkoúrovňových častí platformy a komponentov na prepojenie s hardvérom.

Na zaistenie bezpečnosti kódu C a C ++ používa Android izoláciu izolovaného priestoru, statickú analýzu a fuzzing testy. Možnosti izolovanosti v karanténe sú obmedzené a dosiahli hranicu svojich schopností (ďalšia fragmentácia procesov nie je z hľadiska spotreby zdrojov praktická).

Medzi obmedzeniami používania karantény spomínajú vysokú réžiu a vyššiu spotrebu pamäte spôsobenú potrebou generovania nových procesov, ako aj ďalšiu latenciu spojenú s používaním IPC.

Rust-Android
Súvisiaci článok:
Rust je už obľúbený pre vývoj Android

Na druhej strane na to nesmieme zabúdať Linus Torvalds dal aj svoj názor na Rust a v ktorom preskúmaním implementácie patch možností nastaviť ovládače jazyka Rust v jadre Linuxu a vyjadril určitú kritiku.

Najväčšie sťažnosti spôsobili potenciál úniku „Panika zlyhania za chodu“ v nesprávnych situáciách, napríklad v situácii mimo pamäte, keď môžu zlyhať operácie dynamického prideľovania pamäte vrátane operácií jadra.

Torvalds uviedol, že takéto zameranie na jadro je zásadne neprijateľné, A ak tomuto bodu nerozumiete, môžete úplne odmietnuť akýkoľvek kód, ktorý sa snaží takýto prístup využiť. Na druhej strane vývojár opravy s problémom súhlasil a považoval ho za riešiteľný.

Linus Torvalds
Súvisiaci článok:
Rust nebol vyňatý z kritiky Linusa Torvaldsa

Ale je to už niekoľko mesiacov, čo Linus poskytol spätnú väzbu a tvrdo sa pracovalo na zlepšení implementácie. ako taký, žiadosť o stiahnutie jadra ešte nebola odoslaná Torvaldsovi, ale sada patchov bola ďalej revidovaná, kľúčové poznámky boli odstránené, dosť dlho testované na vetve linux-next a privedené do stavu vhodného na vytváranie abstraktných vrstiev nad subsystémami jadra, písanie ovládačov a modulov.

Podpora hrdze je voliteľná ktorá nie je štandardne povolená a nemá za následok zaradenie Rustu medzi požadované závislosti zostavy pre jadro.

Navrhované zmeny umožňujú používať Rust ako druhý jazyk na vývoj ovládačov a modulov jadra. Použitie Rustu na vývoj ovládačov vám umožní vytvárať lepšie a bezpečnejšie ovládače s minimálnym úsilím, bez problémov, ako je prístup k oblasti pamäte po jej uvoľnení, dereferencovanie nulových ukazovateľov a pretečenie vyrovnávacej pamäte.

Bezpečnosť pamäte je poskytovaná v Rust v čase kompilácie kontrolou referencií, sledovaním vlastníctva objektu a životnosti objektu (rozsahu), ako aj vyhodnocovaním správnosti prístupu do pamäte počas vykonávania kódu. Hrdza tiež poskytuje ochranu proti pretečeniu celého čísla, vyžaduje, aby boli premenné pred použitím inicializované, lepšie zvláda chyby v štandardnej knižnici, štandardne presadzuje koncepciu nemenných premenných a odkazov a ponúka silné statické typovanie na minimalizáciu logických chýb.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.