Tsekani malonda

Chitetezo cha Memory chakhala chofunikira kwambiri kwa Google posachedwa, chifukwa zolakwika zokumbukira zimakhala zovuta kwambiri pakupanga mapulogalamu. M'malo mwake, zofooka m'derali zidayambitsa zovuta zambiri Androidu mpaka chaka chatha pomwe Google idapanga kachidutswa kakang'ono ka code yatsopano Androidm'chinenero cha Rust programming m'malo mwa C/C++. Chimphona cha mapulogalamu chikugwira ntchito kuti chithandizire njira zina zochepetsera kuwonongeka kwa kukumbukira mudongosolo lake, lomwe limatchedwa kukumbukira kukumbukira. Pazida zothandizidwa ndi dongosolo Android 14 pakhoza kukhala malo atsopano otchedwa Advanced memory protection omwe atha kusintha izi.

Memory Tagging Extension (MTE) ndi gawo lovomerezeka la zida zama processor kutengera Arm v9 zomangamanga zomwe zimapereka mwatsatanetsatane. informace za kuwonongeka kwa kukumbukira ndikuteteza ku zolakwika zachitetezo cha kukumbukira. Monga Google ikufotokozera: "Pamwamba, MTE imayika magawano / kugawa kukumbukira kulikonse ndi metadata yowonjezera. Imapatsa cholembera pamalo okumbukira, omwe amatha kulumikizidwa ndi zolozera zomwe zimalozera kumalo okumbukira. Panthawi yothamanga, purosesa imayang'ana kuti pointer ndi metadata tag zimagwirizana nthawi iliyonse ikawerengedwa ndikusungidwa."

Google ikugwira ntchito yothandizira MTE pamapulogalamu onse Android kwa nthawi yayitali. Ku Androidu 12 anawonjezera Scudo memory allocator ndi kuthandizira njira zitatu za MTE zogwirira ntchito pazida zogwirizana: mode synchronous, asynchronous mode, ndi asymmetric mode. Kampaniyo idapangitsanso kuti MTE ipangitse njira zamakina kudzera muzinthu zamakina ndi / kapena kusintha kwa chilengedwe. Mapulogalamu amatha kuwonjezera thandizo la MTE kudzera pamalingaliro android:memtagMode. Pamene MTE yayatsidwa kuti ma process mu Androidu, magulu onse a zolakwika zachitetezo cha kukumbukira monga Kugwiritsa Ntchito-After-Free ndi kusefukira kwa buffer kumayambitsa kuwonongeka m'malo mokhala chete kukumbukira.

Do Androidu 13 Google idawonjezera Userspace Application Binary Interface (ABI) kuti ilumikizane ndi MTE yomwe mukufuna ku bootloader. Izi zitha kugwiritsidwa ntchito kuti zithandizire MTE pazida zofananira zomwe sizitumiza ndi MTE mokhazikika, kapena zitha kugwiritsidwa ntchito kuyimitsa pazida zomwe zimagwirizana zomwe zimayatsidwa mwachisawawa. Kukhazikitsa ro.arm64.memtag.bootctl_supported system katundu kuti "zoona" pa dongosolo Android 13 idauza makinawo kuti bootloader imathandizira ABI ndikuyikanso batani pazosankha zopanga zomwe zimalola wosuta kuti atsegule MTE pakuyambiranso kotsatira.

V Androidinu 14 komabe, kuyatsa MTE pazida zomwe zimagwirizana kungafune kale kulowa mumndandanda wazosankha. Ngati chipangizochi chikugwiritsa ntchito purosesa ya Arm v8.5+ yokhala ndi chithandizo cha MTE, kukhazikitsa kwa chipangizochi kumathandizira ABI kuti adziwitse njira yogwiritsira ntchito MTE yofunidwa ku bootloader, ndi ro.arm64.memtag.bootctl_settings_toggle system katundu wakhazikitsidwa "zoona" , kenako tsamba latsopano Advanced memory protection v Zokonda→Chitetezo ndi zinsinsi→Zokonda zina zowonjezera. Tsambali litha kukhazikitsidwanso kudzera muzochitika zatsopano za ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS.

Chosangalatsa ndichakuti, chipangizo cha Tensor G2 chomwe chimathandizira mndandanda wa Google Pixel 7 chimagwiritsa ntchito Arm v8.2 processor cores, zomwe zikutanthauza kuti sichigwirizana ndi MTE. Ngati mndandanda womwe ukubwera wa Google Pixel 8 udzagwiritsa ntchito zida zatsopano za Arm v9 ngati mndandanda wina wazotsatsa androidmafoni, ndiye kuti zida zawo ziyenera kuthandizira MTE. Komabe, funso likadali ngati gawo la "advanced memory protection" lipangitsa kuti likhale lokhazikika Androidmu 14

Zowerengedwa kwambiri masiku ano

.