Google jatkaa Androidin siirtämistä Rustiin 

Ruoste-Android

Google työskentelee jo eri Android-komponenttien siirtämisessä Rustiin

Jo usean kuukauden ajan Olemme jakaneet joitain uutisia täällä blogissa korostaa sen saamaa tukea ja hyväksyntää Ruostetta erilaisissa projekteissa ja kehityshankkeissa, joista monet ovat raskassarjalaisia, esimerkiksi Linux, Windows ja jopa Android.

Huolimatta suuresta hyväksynnästä Rustiin siirtyminen ei ole helppoa, sillä jopa Linux-ytimen toisena ohjelmointikielenä sen täytyi käydä läpi useita asioita, jotta Linus Torvalds voisi kokeilla sitä. hyväksyminen.

Googlen tapauksessa tämä ei ole ollut poikkeus, ja Google on jo useiden kuukausien ajan ottanut käyttöön Rustin monissa projekteissaan ja Android on yksi niistä ja jossa on suoritettu melko hallittu migraatiovaihe, koska osana sen pyrkimyksiä vahvistaa alustan kriittisten ohjelmistokomponenttien turvallisuutta nyt Google ilmoitti saaneensa siirtotyöt päätökseen laiteohjelmistosta "Android Virtualization Frameworkin suojattu VM (pVM)" Rustille.

Tämä laiteohjelmisto Sitä käytetään pVM-hypervisorin Androidista käynnistämien virtuaalikoneiden toiminnan järjestämiseen. Aiemmin laiteohjelmisto on kirjoitettu C-kielellä ja toteutettu U-Boot-käynnistyslataimen päälle, jonka koodista löytyi aiemmin muistiongelmista johtuvia haavoittuvuuksia.

Hypervisori pVM ottaa hallinnan käynnistyksen varhaisessa vaiheessa y tarjoaa täydellisen virtuaalikoneen muistin eristämisen isäntäympäristöstä, estää pääsyn isäntäjärjestelmästä suojattuihin virtuaalikoneen, jotka käsittelevät arkaluonteisia tietoja. Pvmfm (Protected Virtual Machine Firmware) -laiteohjelmisto ottaa hallinnan välittömästi virtuaalikoneen käynnistämisen jälkeen, tarkistaa luodun ympäristön ja päättää keskeyttää käynnistyksen, jos eheysongelmia havaitaan, tai luo käynnistysvarmenteen vierasjärjestelmälle, jos luottamusketju on olemassa.

Uudelleenkirjoittaminen Ruoste tekee Googlen "kahden säännön" noudattamisesta helpompaa ja turvallisempaa pitääksesi Android-järjestelmän komponentit turvassa. Tämän säännön mukaan minkä tahansa lisätyn koodin tulee täyttää enintään kaksi kolmesta ehdosta: työskennellä vahvistamattomien syöttötietojen kanssa, käyttää vaarallista ohjelmointikieltä (C/C++) ja suorittaa korotetuilla oikeuksilla. Tämä sääntö tarkoittaa, että ulkoisten tietojen käsittelyyn käytettävä koodi on vähennettävä vähimmäisoikeuksiin (eristetty) tai kirjoitettava turvallisella ohjelmointikielellä. Googlen tilastojen mukaan noin 70 % kaikista Androidin tunnistetuista vaarallisista haavoittuvuuksista johtuu muistin kanssa työskentelyn virheistä.

Vaikeuksista, joita syntyy kehitettäessä matalan tason komponentteja, kuten ohjaimia Rust-kielellä, mainitaan tarve työskennellä osoittimien kanssa vaarallisessa tilassa, koska Rust luodaan käyttämällä kielelle varattua muistia. Ruoste.

Haittojen joukossa mm. On myös syytä korostaa tarve parantaa syntaksia rakennekenttien ja taulukkoindeksien käyttämiseen yksinkertaisten osoittimien kautta luomatta viittauksia sekä rajoituksia turvallisten linkkien luomiselle vaarallisille toiminnoille, jotka voivat aiheuttaa määrittelemätöntä toimintaa ja joita kääntäjä ei voi tarkistaa.

On syytä mainita, että uusi laiteohjelmisto on kirjoitettu uudelleen Rustissa sisältyy Android 14:ään ja laiteohjelmiston kehitysprosessin aikana luodut universaalit kirjastot pakataan paketteina ja siirretään Rust-yhteisöön. Tuloksena oleva koodikoko verrattuna pVM-laiteohjelmiston edelliseen versioon, joka vei 220 kt, uusi koodi vie 460 kt, mutta Uudelleenkirjoitettuun versioon on lisätty uusia ominaisuuksia, jonka ansiosta oli mahdollista päästä eroon joistakin muista käynnistyksen aikana käytetyistä komponenteista.

Tämän seurauksena kaikkien vanhojen ja uusien runko-osien yhteiskoko osoittautui vertailukelpoiseksi. On huomattava, että kun koko on suorituskykyä tärkeämpi, voidaan saavuttaa C-kieleen verrattavissa olevia tuloksia ottamalla käyttöön lisäkoon optimointitiloja kääntäjässä, hylkäämällä tarpeettomat riippuvuudet ja jättämällä käyttämättä merkkijonomuotoilijoita.

Vihdoin jos olet kiinnostunut tietämään siitä lisää, voit tarkistaa yksityiskohdat seuraava linkki.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.