Det verkar som Problem har börjat uppstå i antagandet av Rust inom kärnan av Linux, och vid den tidpunkt då folk pratade om fördelarna och alla underverk som skulle kunna uppnås om Rust introducerades i Linux, gladde det många av utvecklarna och många gav till och med sitt godkännande till detta programmeringsspråk.
Efter det Linus Torvalds som gav sitt godkännande och jag accepterar integrationen av Rust i Linus i Kärnversion 6.1 (naturligtvis, dess vederbörliga förberedelse och granskning) och sedan det ögonblicket har olika förändringar och komponenter integrerats i detta språk.
Och även om allt såg bra ut för Rust på Linux, har saker och ting börjat förändras sedan dess Linux-utvecklare har börjat visa ett visst motstånd att förändras och detta har till och med börjat märkas i nedgången i implementeringen av Rust på Linux.
Det var samma sak Linus Torvalds Quien uttrycklig under sitt tal vid Open Source Summit China-konferensen, deras önskan att påskynda integrationsprocessen av komponenter skrivna i Rust på Linux. Han nämnde att ett av de största hindren för denna adoption är att fler veteranutvecklare är vana vid C-språket och inte ser behovet av att lära sig ett så annorlunda språk. Denna attityd skapar ett visst motstånd mot användningen av Rust inom kärnutvecklingsgemenskapen.
En annan faktor som Torvalds nämnts är det Rostinfrastrukturen är inte helt stabil ännu, vilket har bromsat utvecklingen av dess integration i Linux-kärnan. Trots dessa utmaningar fortsätter intresset för Rust att växa på grund av dess fördelar när det gäller säkerhet och minneshantering, kritiska aspekter i kärnutveckling.
Dessutom, ett hårt slag har också fått i antagandet av Rust, sedan Wedson Almeida meddelade sin avgång som underhållare av Rust-for-Linux-projektet, vilket lämnar Miguel Ojeda, huvudförfattare till projektet, och Alex Gaynor, tidigare chef för Python Software Foundation, som ansvariga för att gå vidare med detta initiativ som försöker integrera Rust i kärnan .
Almeida nämnde som lämnade projektet efter att ha uttryckt sitt Frustration över utbrändhet orsakad av icke-tekniska diskussioner. Även om han fortfarande är en fast övertygelse om vikten av att använda minnessäkra språk, som Rust, i kärnutveckling, varnade han också för att om Linux inte anammar denna syn, kan den så småningom ersättas.
Och som Linus Torvalds nämnde i början, är en av de kritiska punkterna i implementeringen av Rust på Linux motståndet från veteranutvecklare, som inte ser behovet av att lära sig ett nytt språk.
Ted Ts'o, nyckelutvecklare av filsystem ext2/ext3/ext4, kritiserade öppet Rust-for-Linux-initiativet, vilket tyder på att det kan skapa onödiga komplikationer. I synnerhet noterade han att containerisering av C-gränssnitt för användning i Rust-kod kan leda till problem, eftersom alla ändringar av gränssnitt i C oundvikligen skulle påverka bindningar för Rust.
James Bottomley SCSI-underhållare, framhävde den länkningen av rost i kärnan kommer att fortsätta vara en utmaning, eftersom inte alla utvecklare kommer att vara villiga att lära sig Rust, vilket kommer att komplicera samarbete och kodunderhåll.
Samtidigt, har Google delat med sig av sin erfarenhetatt skriva om i Rust firmware delar pvmfw Använd i virtuella Android-maskiner, i syfte att förbättra systemsäkerheten. Googles strategi går ut på att gradvis ersätta kritiska firmware-komponenter skrivna i C eller C++ med motsvarigheter i Rust, bibehålla den ursprungliga funktionaliteten men öka säkerheten, särskilt i områden som behandlar opålitlig extern data.
Huvudsyftet med denna övergång är att använda Rust för att ny kod och för dem delar av koden som är grundläggande för säkerhet. Detta inkluderar funktionalitet som interagerar med data från externa källor, där fördelarna med Rusts minnessäkerhet är mest kritiska.
För att underlätta samexistensen av Rust med äldre C-kod, föreslår Google användning av översättningslager o mellanlägg. Dessa lager tillåt anrop mellan C och Rust API:er är kompatibla. Med detta tillvägagångssätt kan C API:er exporteras för användning i Rustkod och vice versa, vilket möjliggör enkel migrering. gradvis av säkerhetskritiska komponenter till Rust, utan att behöva utföra en total systemomskrivning från grunden.