Rust yog suav nrog cov lus tseem ceeb rau Android platform txhim kho

Google tau tshaj tawm txog kev suav nrog Rust programming lus ntawm cov lus tso cai rau kev txhim kho Android platform. Rust language compiler tau suav nrog hauv Android qhov chaw tsob ntoo rov qab rau xyoo 2019, tab sis kev txhawb nqa rau cov lus no tseem sim. Ib co ntawm cov thawj Rust Cheebtsam npaj rau Android suav nrog kev siv tshiab ntawm Binder interprocess kev sib txuas lus mechanism thiab Bluetooth pawg.

Kev taw qhia ntawm Rust tau ua raws li ib feem ntawm txoj haujlwm los txhawb kev ruaj ntseg, txhawb nqa cov txheej txheem kev nyab xeeb thiab ua kom muaj txiaj ntsig ntawm kev txheeb xyuas cov teeb meem thaum ua haujlwm nrog kev nco hauv Android. Nws tau raug sau tseg tias kwv yees li 70% ntawm tag nrho cov teeb meem txaus ntshai uas pom hauv Android yog tshwm sim los ntawm kev ua yuam kev thaum ua haujlwm nrog lub cim xeeb. Siv Rust, uas tsom rau kev nyab xeeb ntawm kev nco thiab kev tswj hwm lub cim xeeb tsis siv neeg, yuav txo qhov kev pheej hmoo ntawm qhov tsis zoo los ntawm kev nco yuam kev xws li kev nkag mus tom qab tsis pub dawb thiab tsis pub dhau.

Rust tswj hwm kev nyab xeeb ntawm lub cim xeeb ntawm lub sijhawm sau los ntawm kev siv tshuaj xyuas, cov tswv cuab ntawm cov khoom thiab cov khoom mus txog lub neej (scopes), thiab los ntawm kev ntsuas qhov tseeb ntawm kev nkag mus rau lub cim xeeb ntawm lub sijhawm ua haujlwm. Rust kuj tseem muab kev tiv thaiv tus naj npawb overflows, xav kom qhov sib txawv ntawm qhov tseem ceeb tau pib ua ntej siv, muaj kev ua yuam kev zoo dua hauv cov tsev qiv ntawv tus qauv, siv lub tswv yim ntawm cov ntaub ntawv tsis hloov pauv thiab hloov pauv los ntawm lub neej ntawd, thiab muaj kev ntaus ntawv zoo li qub kom txo tau qhov yuam kev.

Hauv Android, kev ruaj ntseg nco yog muab rau hauv cov lus uas twb tau txais kev txhawb nqa Kotlin thiab Java, tab sis lawv tsis tsim nyog rau kev tsim cov khoom siv vim muaj nyiaj siv ua haujlwm siab. Rust ua rau nws muaj peev xwm ua tiav qhov kev ua tau zoo ze rau C thiab C ++ hom lus, uas tso cai rau nws siv los tsim cov qib qis ntawm lub platform thiab cov khoom siv rau kev cuam tshuam nrog cov khoom siv.

Txhawm rau kom muaj kev ruaj ntseg ntawm C thiab C ++ code, Android siv sandbox cais, kev tshuaj xyuas zoo li qub, thiab kev sim fuzzing. Lub peev xwm ntawm kev sib cais sandbox yog txwv thiab tau mus txog qhov txwv ntawm lawv lub peev xwm (ntxiv kev tawg mus rau hauv cov txheej txheem yog qhov tsis zoo los ntawm qhov pom ntawm kev siv peev txheej). Cov kev txwv ntawm kev siv sandbox suav nrog cov nqi siv nyiaj ntau dua thiab kev siv lub cim xeeb ntxiv los ntawm qhov xav tau los ua cov txheej txheem tshiab, nrog rau kev ncua ntxiv cuam tshuam nrog kev siv IPC.

Nyob rau tib lub sijhawm, sandbox tsis tshem tawm qhov tsis zoo hauv cov cai, tab sis tsuas yog txo cov kev pheej hmoo thiab ua rau muaj kev cuam tshuam rau kev tawm tsam, vim kev siv dag zog yuav tsum tau txheeb xyuas tsis yog ib qho, tab sis ntau qhov tsis zoo. Cov txheej txheem raws li kev xeem code raug txwv nyob rau hauv thiaj li yuav txheeb xyuas qhov yuam kev, nws yog ib qho tsim nyog los tsim cov xwm txheej rau qhov teeb meem kom pom nws tus kheej. Nws tsis tuaj yeem npog tag nrho cov kev xaiv ua tau, yog li ntau qhov yuam kev mus tsis pom.

Rau cov txheej txheem txheej txheem hauv Android, Google ua raws li "txoj cai ntawm ob", raws li cov cai ntxiv yuav tsum ua kom tsis pub dhau ob ntawm peb yam xwm txheej: ua haujlwm nrog cov ntaub ntawv tsis raug cai, siv cov lus tsis zoo (C / C ++), thiab khiav tsis nruj sandbox cais (muaj cai nce). Txoj cai no txhais tau hais tias txoj cai rau kev ua cov ntaub ntawv sab nraud yuav tsum raug txo kom tsawg kawg nkaus (kev cais tawm) lossis sau ua hom lus ruaj ntseg.

Google tsis xav rov sau dua C / C ++ code tam sim no hauv Rust, tab sis npaj yuav siv hom lus no los tsim cov cai tshiab. Nws ua rau kev txiav txim siab siv Rust rau cov lej tshiab vim tias, txheeb cais, feem ntau cov kab mob tshwm sim hauv cov lej tshiab lossis tsis ntev los no hloov pauv. Tshwj xeeb, kwv yees li 50% ntawm kev kuaj pom qhov yuam kev hauv Android raug kuaj pom hauv cov lej sau tsawg dua ib xyoos dhau los.

Rust yog suav nrog cov lus tseem ceeb rau Android platform txhim kho


Tau qhov twg los: opennet.ru

Ntxiv ib saib