Daabacaadda labaad ee patches ee kernel Linux oo taageero u ah luqadda Rust

Miguel Ojeda, oo ah qoraaga mashruuca Rust-for-Linux, ayaa soo jeediyay nooc la cusboonaysiiyay oo ka kooban qaybo lagu horumarinayo wadayaasha aaladaha luqadda Rust si ay u tixgaliyaan horumariyayaasha kernel Linux. Taageerada miridhku waxa loo tixgaliyaa inay tijaabo tahay, laakiin waxa hore loogu heshiiyey in lagu daro laanta linux-ta xigta. Nooca cusubi wuxuu meesha ka saarayaa faallooyinka la sameeyay intii lagu jiray doodda nuqulkii ugu horreeyay ee dhejisyada. Linus Torvalds ayaa mar hore ku soo biiray dooda wuxuuna soo jeediyay in la beddelo caqli-galnimada habaynta hawlo yar yar.

Xusuusnow in isbeddellada la soo jeediyay ay suurtogal ka dhigayaan in la isticmaalo Rust sida luqadda labaad ee horumarinta darawallada iyo qaybaha kernel-ka. Taageerada miridhku waxa loo soo bandhigay sidii ikhtiyaar aan si toos ah u shaqayn oo aan keenin in miridhku lagu daro sidii ku-tiirsanaanta loo baahan yahay ee kernel-ka. Isticmaalka Rust ee horumarinta darawalka waxay kuu oggolaan doontaa inaad abuurto darawallo badbaado leh oo ka wanaagsan oo leh dadaal yar, oo ka madax bannaan dhibaatooyinka sida gelitaanka xusuusta ka dib markii la sii daayo, tilmaameyaal aan waxba lahayn, iyo xad-dhaaf ah.

Badbaadada xusuusta waxaa lagu bixiyaa miridhku marka la ururiyo wakhtiga iyada oo la hubinayo tixraaca, la socodka lahaanshaha shay iyo cimriga shayga (baaxadda), iyo sidoo kale iyada oo loo marayo qiimaynta saxda ah ee helitaanka xusuusta inta lagu jiro fulinta koodka. Daxalku sidoo kale wuxuu ka ilaaliyaa qulqulka isdhaafsiga, wuxuu u baahan yahay bilawga qasabka ah ee qiyamka doorsoomka ka hor intaan la isticmaalin, wuxuu si fiican u maareeyaa khaladaadka maktabadda caadiga ah, wuxuu dabaqaa fikradda tixraacyada aan bedeli karin iyo doorsoomayaasha si caadi ah, waxay bixisaa qorid adag oo adag si loo yareeyo khaladaadka macquulka ah.

Isbeddelada ugu muuqda ee nooca cusub ee balastarrada:

  • Koodhka qoondaynta xusuusta waxa uu xor ka yahay in uu dhaliyo xaalad "argagax" marka ay dhacaan khaladaad ay ka mid yihiin xusuus la'aanta. Nooc ka mid ah maktabadda Rust alloc ayaa lagu soo daray, kaas oo dib u habeynaya koodhka si uu wax uga qabto guuldarrooyinka, laakiin yoolka ugu dambeeya waa in lagu wareejiyo dhammaan sifooyinka looga baahan yahay kernel daabacaadda ugu weyn ee alloc (isbeddellada mar hore ayaa la diyaariyey oo loo wareejiyay heerka Maktabad miridhku).
  • Halkii habeenkii la dhisi lahaa, waxaad hadda isticmaali kartaa sii daynta beta iyo sii daynta xasilloon ee isku xidhka rustc si aad u ururiso kernel oo leh taageerada miridhku. Waqtigan xaadirka ah, rustc 1.54-beta1 waxaa loo isticmaalaa isku-duwaha tixraaca, laakiin ka dib marka la sii daayo 1.54 la sii daayo dhamaadka bisha, waxaa loo taageeri doonaa ururiyaha tixraaca.
  • Taageerada lagu daray ee imtixaanada qorista iyadoo la adeegsanayo heerka "#[tijaabo]" sifada Rustka iyo awoodda isticmaalka doktoosyada si loo diiwaangeliyo imtixaanada.
  • Taageero lagu daray ARM32 iyo qaab dhismeedka RISCV marka lagu daro x86_64 iyo ARM64 hore loo taageeray.
  • Hirgelinta la wanaajiyay ee GCC Rust (GCC frontend for Rust) iyo rustc_codegen_gcc (rustc backend for GCC), kaas oo hadda dhaafa dhammaan imtixaanada aasaasiga ah.
  • Heer cusub oo soo koobid ah ayaa loo soo jeediyay in loo isticmaalo barnaamijyada Rust ee hababka kernel ee ku qoran C, sida geedaha cas-madow, walxaha tixraaca la tiriyo, abuurista fayl-fayl-yaqaan, hawlo, faylal, iyo I/O vectors.
  • Qaybaha horumarinta darawalku waxa ay wanaajiyeen taageerada moduleka_operations, moduleka! makro, diiwan gelinta weyn, iyo darawalada aasaasiga ah (baaritaan iyo ka saar).
  • Binder hadda waxay taageertaa gudbinta sharraxayaasha faylka iyo qabsashada LSM.
  • Tusaal shaqo oo dheeraad ah oo darawalka Rust ah ayaa la soo jeediyay - bcm2835-rng koronto-dhaliyaha lambarka random hardware ee looxyada Raspberry Pi.

Intaa waxaa dheer, mashaariicda shirkadaha qaarkood ee la xidhiidha isticmaalka Rust ee kernel-ka ayaa lagu xusay:

  • Microsoft ayaa muujisay xiisaha ay u leedahay ka qayb qaadashada shaqada si loogu daro taageerada Rust ee kernel Linux waxayna diyaar u tahay inay bixiso hirgelinta darawalka Hyper-V ee Rust bilaha soo socda.
  • ARM waxay ka shaqaynaysaa sidii ay u wanaajin lahayd taageerada miridhku ee nidaamyada ku salaysan ARM. Mashruuca Rust wuxuu horey u soo jeediyay isbeddelo ka dhigaya nidaamyada 64-bit ARM madal Tier 1 ah.
  • Google wuxuu si toos ah u bixiyaa taageerada mashruuca Rust ee Linux, wuxuu horumarinayaa hirgelinta cusub ee habka isgaadhsiinta isdhexgalka ee Binder ee Rust, wuxuuna tixgelinayaa suurtogalnimada dib-u-shaqeynta darawalada kala duwan ee Rust. Iyadoo loo marayo ISRG (Kooxda Cilmi-baarista Amniga Internetka), Google waxay bixisay maalgelin shaqada si loogu daro taageerada Rust ee kernel Linux.
  • IBM waxay hirgelisay taageerada kernel ee Rust ee nidaamyada PowerPC.
  • Shaybaarka LSE (Systems Research Laboratory) wuxuu sameeyay darawal SPI gudaha Rust.

Source: opennet.ru

Add a comment