Ipata wa laarin awọn ede akọkọ fun idagbasoke Syeed Android

Google ti kede ifisi ti ede siseto Rust laarin awọn ede ti a gba laaye fun idagbasoke iru ẹrọ Android. Akopọ ede Rust naa wa ninu igi orisun Android pada ni ọdun 2019, ṣugbọn atilẹyin fun ede yii jẹ idanwo. Diẹ ninu awọn paati Rust akọkọ ti a gbero lati firanṣẹ lori Android jẹ awọn imuṣẹ tuntun ti ẹrọ ibaraẹnisọrọ interprocess Binder ati akopọ Bluetooth.

Ifihan ti Rust ni a ṣe gẹgẹ bi apakan ti iṣẹ akanṣe kan lati teramo aabo, igbelaruge awọn ilana siseto ailewu ati mu iṣẹ ṣiṣe ti idamo awọn iṣoro nigba ṣiṣẹ pẹlu iranti ni Android. O ṣe akiyesi pe nipa 70% ti gbogbo awọn ailagbara ti o lewu ti a damọ ni Android ni o fa nipasẹ awọn aṣiṣe nigba ṣiṣẹ pẹlu iranti. Lilo ipata, eyiti o dojukọ aabo iranti ati iṣakoso iranti aifọwọyi, yoo dinku eewu ti awọn ailagbara ti o fa nipasẹ awọn aṣiṣe iranti gẹgẹbi iraye si ọfẹ lẹhin ati awọn apọju ifipamọ.

Ipata fi agbara mu aabo iranti ni akoko iṣakojọpọ nipasẹ iṣayẹwo itọkasi, nini ohun ati ipasẹ igbesi aye ohun (awọn dopin), ati nipa ṣiṣe iṣiro deede awọn iraye si iranti ni akoko asiko. Ipata tun pese aabo lodi si ṣiṣan odidi odidi, nilo pe awọn iye oniyipada wa ni ipilẹṣẹ ṣaaju lilo, ni mimu aṣiṣe ti o dara julọ ni ile-ikawe boṣewa, lo ero ti awọn itọkasi ti ko yipada ati awọn oniyipada nipasẹ aiyipada, ati funni ni titẹ aimi to lagbara lati dinku awọn aṣiṣe ọgbọn.

Ni Android, a pese aabo iranti ni awọn ede ti o ni atilẹyin tẹlẹ Kotlin ati Java, ṣugbọn wọn ko dara fun idagbasoke awọn paati eto nitori oke giga. Ipata jẹ ki o ṣee ṣe lati ṣaṣeyọri iṣẹ ṣiṣe nitosi awọn ede C ati C ++, eyiti o fun laaye laaye lati lo fun idagbasoke awọn ẹya ipele kekere ti pẹpẹ ati awọn paati fun ibaraenisọrọ pẹlu ohun elo.

Lati rii daju aabo koodu C ati C++, Android nlo ipinya apoti iyanrin, itupalẹ aimi, ati idanwo iruju. Awọn agbara ti ipinya apoti iyanrin ti ni opin ati pe o ti de opin awọn agbara wọn (pipa siwaju si awọn ilana jẹ aiṣedeede lati oju wiwo ti agbara awọn orisun). Awọn idiwọn lilo apoti iyanrin pẹlu awọn idiyele ti o tobi ju ati agbara iranti pọ si ti o fa nipasẹ iwulo lati tan awọn ilana tuntun, ati awọn idaduro afikun ni nkan ṣe pẹlu lilo IPC.

Ni akoko kanna, apoti iyanrin ko ṣe imukuro awọn ailagbara ninu koodu, ṣugbọn nikan dinku awọn ewu ati idiju ikọlu, nitori ilokulo nilo idanimọ ti kii ṣe ọkan, ṣugbọn awọn ailagbara pupọ. Awọn ọna ti o da lori idanwo koodu ni opin ni pe lati le ṣe idanimọ awọn aṣiṣe, o jẹ dandan lati ṣẹda awọn ipo fun iṣoro naa lati ṣafihan ararẹ. Ko ṣee ṣe lati bo gbogbo awọn aṣayan ti o ṣeeṣe, nitorinaa ọpọlọpọ awọn aṣiṣe ko ni akiyesi.

Fun awọn ilana eto ni Android, Google faramọ “ofin ti meji”, ni ibamu si eyiti eyikeyi koodu ti a ṣafikun ko gbọdọ pade diẹ sii ju meji ninu awọn ipo mẹta: ṣiṣẹ pẹlu data titẹ sii ti ko fọwọsi, lilo ede siseto ti ko lewu (C/C++), ati nṣiṣẹ laisi ipinya apoti iyanrin ti o muna (nini awọn anfani ti o ga). Ofin yii tumọ si pe koodu fun sisẹ data ita gbọdọ boya dinku si awọn anfani ti o kere ju (ya sọtọ) tabi kọ ni ede siseto to ni aabo.

Google ko ṣe ifọkansi lati tun kọ koodu C/C++ ti o wa tẹlẹ ni Rust, ṣugbọn ngbero lati lo ede yii lati ṣe agbekalẹ koodu tuntun. O jẹ oye lati lo Rust fun koodu titun nitori, iṣiro, ọpọlọpọ awọn idun han ni titun tabi koodu ti yipada laipe. Ni pataki, nipa 50% ti awọn aṣiṣe iranti ti a rii ni Android ni a rii ni koodu ti a kọ kere ju ọdun kan sẹhin.

Ipata wa laarin awọn ede akọkọ fun idagbasoke Syeed Android


orisun: opennet.ru

Fi ọrọìwòye kun