drošība · 6 min · 03.09.2026

Pixel 11 aparatūrā MTE tomēr ir, bet programmaparatūra kodolam padod arm64.nomte

GrapheneOS 1. septembrī paziņoja, ka Pixel 11 procesorā Tensor G6 atmiņas marķēšanas aparatūra tomēr ir. Atbalsts ir pašā minimālākajā apjomā, tomēr tas eksistē. Aizsprosts ir programmaparatūrā: tā kodolam bez nosacījumiem padod parametru arm64.nomte, tāpēc operētājsistēmā MTE ir izslēgts pilnībā.

Nedēļu iepriekš stāsts izskatījās sliktāk. Pēc nedēļas darba pie porta GrapheneOS komanda paziņoja, ka Pixel 11, 11 Pro, 11 Pro XL un 11 Pro Fold atbalsta nebūs. Pircējiem komanda ieteica palikt pie Pixel 8, 9 vai 10. Atmiņas marķēšana ir bijusi katrā Pixel čipā kopš 2023. gada Pixel 8. Pixel līdz šim ir vienīgā oficiālā Android ierīču saime ar šo funkciju.

Ko MTE dara

Google publicētie dati rāda, ka aptuveni 76 % Android ievainojamību ir atmiņas drošības kļūdas: buferu pārpildes un piekļuve jau atbrīvotai atmiņai. ARM atmiņas marķēšanas paplašinājums tās pārtver izpildes laikā. Katram 16 baitu atmiņas blokam tiek piešķirta četru bitu birka. To pašu birku saņem rādītājs. Pie katras piekļuves aparatūra abas birkas salīdzina un pie neatbilstības aptur procesu.

MTE strādā divos galvenajos režīmos. Sinhronajā režīmā procesors aptur izpildi tieši tajā instrukcijā, kas birku pārkāpj, tāpēc kļūmes vieta ir precīzi zināma. Asinhronajā režīmā pārbaude notiek vēlāk un maksā mazāk, bet precīzā steka pēda pazūd. GrapheneOS pēc noklusējuma lieto stingrāko variantu. Tieši tas prasa visvairāk veiktspējas.

GrapheneOS lieto MTE dziļāk nekā parastais Android. Tas strādā kodolā, sistēmas procesos un lietotņu izpildlaikā pēc noklusējuma, nevis tikai atsevišķām atkļūdošanas būvēm. Bez aparatūras atbalsta liela daļa sistēmas aizsardzības modeļa nedarbojas, tāpēc komanda portu apturēja.

Ports palika pusceļā

Nedēļas darbs nebija veltīgs. Komanda dabūja Pixel 11 sērijai daļēju portu un sistēma uz ierīces startēja. Pabeigt to bez atmiņas marķēšanas GrapheneOS atteicās, jo uz šīs funkcijas balstās gan kodola aizsardzība, gan parasto sistēmas procesu izpilde.

Google publiski nav paskaidrojis, kāpēc MTE no Tensor G6 pazuda. Pixel 8 laikā uzņēmums šo funkciju izstrādātājiem piedāvāja kā ieslēdzamu opciju sistēmas iestatījumos. Trīs paaudzes vēlāk tā pati funkcija Pixel 11 čipā ir sasniedzama tikai ar atbloķētu ielādētāju.

Ielādētājā nav nevienas atsauces

Izstrādātājs ar segvārdu Romashka disasemblēja abu paaudžu ielādētājus un salīdzināja virknes. Pixel 10 ielādētājā ar kodnosaukumu deepspace ir gs_mte_enable, MTE cmdline override ON un fastboot_oem_cmd_mte. Pixel 11 ielādētājā spacecraft nav nevienas atsauces uz MTE. Funkcija nav izslēgta ar karodziņu. Tā ir izņemta no koda.

Notebookcheck publicēja arī noplūdušus Google iekšējos dokumentus. gChips ceļakartē MTE bija ierakstīts Tensor G6 pamatspecifikācijā. Čipa kodnosaukums ir Malibu. Dokumentā ar nosaukumu Google System Level Cache (GSLC) Architecture Specification un 2022. gada maija datumu MTE support ir otrais prioritātes punkts sarakstā. Vēlāk tas ir pārsvītrots ar sarkanu. Google plānoja G6 čipam savu MTE variantu un pēc tam to atcēla.

Iemesls slēpjas kešatmiņā

GrapheneOS skaidrojums ir tiešs.

Domājam, ka viņi izņēma lielāko daļu aparatūras paātrinājuma no procesora kešatmiņas, lai ietaupītu naudu. Veiktspēja tika sabojāta, tāpēc programmaparatūrā funkcija beigās tika izslēgta pilnībā.

Skaitļi šo versiju atbalsta. Sinhronajā režīmā MTE etalonos bremzē līdz 6,64 reizēm. Vieglākajā režīmā uz lielajiem kodoliem palēninājums sasniedz 1,82 reizes. Ampere serveru procesoros un Apple M5 tā pati funkcija maksā 2 līdz 3 % veiktspējas, sliktākajā gadījumā ap 10 %. Atšķirība rodas tieši kešatmiņas līmenī. Ja birkas jālasa no galvenās atmiņas, nevis no sistēmas līmeņa keša, katra atmiņas piekļuve kļūst dārga.

Tas sasaucas ar pārsvītroto rindu 2022. gada dokumentā. Runa tur ir tieši par sistēmas līmeņa kešatmiņas arhitektūru.

Kā MTE tomēr ieslēgt

Android 17 QPR2 Beta 4 iznāca 28. augustā un kļuva par pirmo beta laidienu ar Pixel 11 atbalstu. Tieši šajā būvējumā GrapheneOS atrada, ka aparatūra ir dzīva. Tagu atmiņu var rezervēt ar komandu fastboot oem mte on. Pēc tam jāielādē nestandarta kodols, kas ignorē arm64.nomte. Tad MTE sāk strādāt.

Parastam lietotājam tas neko nedod. Shēma prasa atvērtu ielādētāju un pašbūvētu kodolu. Stoka Android to nepieņems.

Privacy Guides raksta, ka GrapheneOS pašlaik noskaidro, cik pilnvērtīgi šī pieeja darbojas un kādi ir reālie veiktspējas rādītāji. Ja atklāsies, ka bez kešatmiņas paātrinājuma MTE bremzē tālrunī tikpat stipri, cik etalonos, tad tehniskā iespēja portu neizglābs. Google uz GrapheneOS jautājumiem nav atbildējis.

Nākamā ierīce nav Pixel

GrapheneOS paralēli pabeidz vienošanos ar Motorola par pirmo ne-Pixel ierīci. Runa ir par flagmani ar kodnosaukumu Wukong uz Snapdragon 8 Elite Extreme Gen 6 čipa, kura apzīmējums ir SM8975. Qualcomm Snapdragon Summit sākas 22. septembrī, tāpēc čipa specifikācija būs zināma šomēnes.

Pixel 11 pircējiem, kas rēķinājās ar GrapheneOS, izvēle pagaidām ir gaidīšana. Pixel 10 ar Tensor G5 paliek jaunākais aparāts, uz kura sistēma strādā pilnā apjomā. Tā atbalsta cikls beigsies gadu agrāk nekā Pixel 11 gadījumā.

Līdz tam vienīgais veids, kā dabūt GrapheneOS ar strādājošu aparatūras atmiņas marķēšanu, ir Pixel 8, 9 vai 10.

Avoti

komentārisaruna

Komentāri

Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.

Pievieno komentāru

Tavs e-pasts netiks publicēts. Obligātie lauki atzīmēti.

vēl no drošībasaistītie