Çapa çaremîn a patchên ji bo kernel Linux bi piştgiriya ji bo zimanê Rust

Miguel Ojeda, nivîskarê projeya Rust-for-Linux, guhertoyek çaremîn a pêkhateyan ji bo pêşdebirina ajokarên cîhazê bi zimanê Rust pêşniyar kir ku ji hêla pêşdebirên kernel Linux ve were nirxandin. Piştgiriya Rust wekî ceribandinek tête hesibandin, lê jixwe ji bo tevlêbûna di şaxê linux-next de li ser hate pejirandin û têra xwe gihîştî ye ku dest bi xebata li ser çêkirina qatên abstractionê li ser binepergalên kernel, û her weha nivîsandina ajoker û modulan bike. Pêşveçûn ji hêla Google û ISRG (Koma Lêkolînê ya Ewlekariya Înternetê) ve tê fînanse kirin, ku damezrênerê projeya Let's Encrypt e û HTTPS û pêşkeftina teknolojiyên ji bo baştirkirina ewlehiya Înternetê pêşve dike.

Bînin bîra xwe ku guheztinên pêşniyarkirî dihêle ku hûn Rust wekî zimanek duyemîn ji bo pêşvebirina ajokar û modulên kernel bikar bînin. Piştgiriya Rust wekî vebijarkek ku ji hêla xwerû ve nehatiye çalak kirin tê pêşkêş kirin û nahêle ku Rust wekî pêwendiyek çêkirî ya pêdivî ya ji bo kernelê tevbigere. Bikaranîna Rust ji bo pêşkeftina ajokerê dê bihêle ku hûn bi hewildanek hindiktirîn ajokarên ewledar û çêtir biafirînin, ji pirsgirêkên wekî gihandina bîranînê piştî azadkirinê, veqetandina nîşana betal, û derbasbûna tamponê.

Desthilatdariya ewledar a bîranînê di Rust de di dema berhevkirinê de bi kontrolkirina referansê, şopandina xwedaniya tiştan û dema jiyanê (çarçove) û her weha bi nirxandina rastbûna gihîştina bîranînê di dema darvekirina kodê de tê peyda kirin. Rust di heman demê de parastinê li hember hejmarên bêkêmasî peyda dike, hewce dike ku guhêrbar berî bikarbînê werin destpêkirin, di pirtûkxaneya standard de xeletiyan çêtir digire, têgeha referansên neguhêrbar û guhêrbar ji hêla xwerû ve bicîh tîne, û nivîsandina statîk a bihêz pêşkêşî dike da ku xeletiyên mantiqî kêm bike.

Guhertoya nû ya paçeyan ji holê rakirina şîroveyên ku di dema nîqaşa çapa yekem, duyemîn û sêyemîn a paçeyan de hatine kirin berdewam dike. Di guhertoya nû de:

  • Veguherîna karanîna serbestberdana stabîl a Rust 1.58.0 wekî berhevkarê referansê hate çêkirin. Di nav guheztinên ku ji bo projeyê hewce ne, ku hîna di nav amûra sereke ya Rust de cih nagirin, ala "-Zsymbol-mangling-version=v0" (di Rust 1.59.0 de tê hêvî kirin) û moda "dibe_uninit_extra" (di Rust 1.60.0 de tê hêvî kirin. .XNUMX) têne destnîşan kirin.
  • Ji bo hebûna amûrên Rust-ê yên maqûl kontrolên otomatîk lê zêde kirin û şiyana ceribandina piştgiriya Rust di pergalê de berfireh kir.
  • Ji bo gihîştina tabloyên nasnameyên cîhazê ("IdArray" û "IdTable") ji koda Rust veqetandinên nû hatine pêşniyar kirin.
  • Ji bo gihîştina fonksiyonên têkildar bi demjimêr (çarçoveya demjimêrê) qat zêde kirin.
  • Naha ajokarên platformê bi navgîniya pêkanînên taybetmendiyê têne destnîşankirin.
  • Makroyek nû hate zêdekirin da ku qeydkirina ajokarên platformê hêsan bike, û şablonek ajokerek giştî ya nû hate pêşniyar kirin.
  • Ji bo strukturên "dev_*" makro zêde kirin.
  • Ji bo cureyê IoMem rêbazên "{xwendin, binivîsin}*_relaksed" zêde kirin .
  • Taybetmendiya FileOpener rakirin da ku karûbarên pelê hêsan bike.
  • Parametreya "ThisModule" li argumanên ku di dema qeydkirina ajokerek derbas bûne de hate zêdekirin.
  • Şablonek standard ji bo afirandina modulên kernelê bi zimanê Rust tê pêşniyar kirin.

Source: opennet.ru

Add a comment