Në GCC ata miratuan zbatimin e RUST (gccrs)

Kohët e fundit lajmi dha se Komiteti Drejtues i GCC ka miratuar përfshirjen e zbatimit të gccrs (GCC Rust) nga përpiluesi Rust në bërthamën e GCC.

Me atë GCC (Koleksioni i përpiluesit GNU) tashmë kanë një backend për Rust, përmes projektit të quajtur rustc_codegen_gcc i themeluar nga Antoni Boucher. Ai ende përshkruhet si një punë në vazhdim, por u shkri në depon kryesore të Rust në shtator 2021.

Për ata që nuk e dinë gjuhën Ndryshk, ata duhet të dinë se çfarë ështëe fokusohet në menaxhimin e sigurt të kujtesës dhe siguron mjetet për të arritur paralelizëm të lartë të punës. Trajtimi i sigurt i memories, i cili përjashton gabime të tilla si qasja në një zonë memorie pas lirimit të saj, mosreferencimi i treguesve null dhe tejmbushja e kufijve të tamponit, arrihet në Rust në kohën e përpilimit përmes kontrollit për referencat, gjurmimit të pronësisë së objektit, llogaritjes së jetëgjatësisë së objekteve (subjektet ), dhe vlerësimin e korrektësisë së aksesit në kujtesë gjatë ekzekutimit të kodit.

Ndryshk siguron gjithashtu mbrojtje nga tejkalimi i numrave të plotë, kërkon që variablat të inicializohen përpara përdorimit, trajton më mirë gabimet në bibliotekën standarde, zbaton konceptin e referencave dhe variablave të pandryshueshme si parazgjedhje.

Pas integrimit të ndërfaqes, në GCC standarde mund të përdoret për të përpiluar programet Rust pa pasur nevojë të instaloni përpiluesin rustc të ndërtuar me ndërtime LLVM.

Që nga nëntori 2020, unë kam punuar me kohë të plotë në pjesën e përparme Rust për GCC, falë Open Source Security, Inc dhe Embecosm. Si rezultat, po i shkruaj kësaj liste postare për të kërkuar komente nga përvoja kolektive këtu herët për të planifikuar një rrugë për të ngarkuar pjesën e përparme në GCC.

Rëndësia e këtij projekti është rëndësia e tij për Linux-in, i ndërtuar përgjithësisht me GCC, ku planet për të lejuar përdorimin e Rust së bashku me C për kodin e kernelit, për arsye të sigurisë së kujtesës, janë vazhdimisht duke ecur përpara.

Kjo do të thotë që përpiluesi Rust, rustc, mund të përdoret me prapavijën e GCC, Backend-i është gjeneruesi i kodit që mbështet më shumë arkitektura CPU se LLVM, përpiluesi i zakonshëm i backend-it të Rust, megjithëse ka kufizime, të tilla si kërkesa për një version të korrigjuar të GCC.

Alternativa është të keni një zinxhir të plotë mjetesh GCC. Në janar 2021, Open Source Security, Inc, prodhuesi i një versioni të ngurtësuar të kernelit Linux të quajtur Grsecurity, tha se do të financonte një "përpjekje për zhvillimin publik" të një ndërfaqeje GCC për Rust, me arsyetimin se ajo përmirësonte sigurinë. duke mos pasur për të përzier kompajler të ndryshëm.

Nga këndvështrimi im si udhëheqës në këtë front-end, ne jemi aktualisht nën zhvillim të madh, kështu që kjo do të thotë një sasi e drejtë kodi që rrotullohet megjithatë, dhe unë nuk e shoh këtë ndryshim derisa të mund të përpilojmë me sukses kutia libcore më vonë këtë vit. Edhe pse do të doja të shihesha i shkrirë në GCC 13, dua të sigurohem që ky projekt të jetë një sukses të gjitha, dhe kjo mund të nënkuptojë kthimin në dritaren tjetër të lëshimit për t'u siguruar që kjo është e menaxhueshme për të prodhuar një pjesë të përparme cilësore për t'u ulur fraksion ndaj të tjerëve.

Kompania citoi një dokument që tregon "si siguria e përgjithshme e një mjedisi të ekzekutimit mund të reduktohet duke futur kodin e shkruar në Rust ose në një gjuhë tjetër ku përpiluesi nuk ofron të njëjtën siguri të nivelit binar."

Zhvilluesit e gccrs inkurajohen të fillojnë të punojnë me ekipet e rishikimit dhe GCC Change Release për të finalizuar dhe miratuar arnimet për sa i përket plotësimit të kërkesave teknike për kodin që do të shtohet në GCC.

Duke supozuar se zhvillimi i gccrs vazhdon siç është planifikuar dhe nuk identifikohen çështje të paparashikuara, pjesa e përparme e gjuhës Rust do të integrohet në versionin GCC 13 të planifikuar për majin e vitit të ardhshëm. Zbatimi i Rust në GCC 13 do të jetë në statusin beta, i pa aktivizuar ende si parazgjedhje.

Më në fund nëse jeni të interesuar të dini më shumë për të në lidhje me projektin, ju mund të konsultoheni me detajet në lidhja e mëposhtme.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   qtrit dijo

    E shkëlqyeshme, shpresoj se zbatimi do të jetë i dobishëm për shumë programues.