Linus Torvalds rishikoi arnimet që zbatuan aftësinë për të krijuar drejtues në gjuhën Rust për kernelin Linux dhe bëri disa komente kritike.
Ankesat më të mëdha u shkaktuan nga mundësia e mundshme e panikut () në situata gabimi, për shembull, në një situatë me memorie të ulët, kur operacionet e alokimit dinamik të memories, përfshirë brenda kernelit, mund të dështojnë. Torvalds deklaroi se një qasje e tillë në kernel është thelbësisht e papranueshme dhe, nëse kjo pikë nuk kuptohet, ai mund të anulojë plotësisht çdo kod që përpiqet të përdorë një qasje të tillë. Nga ana tjetër, zhvilluesi i patch-it u pajtua me këtë problem dhe e konsideron atë të zgjidhshëm.
Një problem tjetër ishin përpjekjet për të përdorur tipe floating point ose 128-bit, të cilat nuk janë të pranueshme për mjedise të tilla si kerneli Linux. Ky doli të ishte një problem më serioz, pasi për momentin biblioteka kryesore Rust është e pandashme dhe përfaqëson një pikë të madhe - nuk ka asnjë mënyrë për të kërkuar vetëm disa nga veçoritë, duke parandaluar përdorimin e një ose një tjetër funksionaliteti problematik. Zgjidhja e problemit mund të kërkojë ndryshime në përpiluesin e ndryshkut dhe bibliotekat, megjithëse për momentin ekipi nuk ka ende një strategji se si të zbatojë modularizimin e bibliotekave të gjuhëve.
Për më tepër, Torvalds vuri në dukje se shembulli i dhënë i shoferit ishte i padobishëm dhe na këshilloi të përdorim si shembull një shofer që zgjidh një nga problemet reale.
Përditësimi: Google ka njoftuar pjesëmarrjen e saj në iniciativën për të shtyrë mbështetjen e Rust në kernelin Linux dhe ka ofruar arsye teknike për prezantimin e Rust për të luftuar problemet që lindin nga gabimet e kujtesës. Google beson se Rust është gati të bashkohet me C si gjuhë për zhvillimin e komponentëve të kernelit Linux. Artikulli ofron gjithashtu shembuj të përdorimit të gjuhës Rust për të zhvilluar drejtuesit e kernelit, në kontekstin e përdorimit të tyre në platformën Android (Rust njihet si një gjuhë e mbështetur zyrtarisht për zhvillimin e Android).
Vihet re se Google ka përgatitur një prototip fillestar të një drejtuesi të shkruar në Rust për mekanizmin e komunikimit ndërprocesor Binder, i cili do të lejojë një krahasim të detajuar të performancës dhe sigurisë së zbatimeve të Binder në C dhe Rust. Në formën e tij aktuale, puna nuk është ende e plotë, por pothuajse për të gjitha abstraksionet bazë të funksionalitetit të kernelit që kërkohen për funksionimin e Binder, janë përgatitur shtresa për përdorimin e këtyre abstraksioneve në kodin Rust.
Burimi: opennet.ru