Budúce mobilné CPU spoločnosti Arm nebudú podporovať 32-bitové aplikácie: Tu je to, čo to znamená

Budúce mobilné čipy spoločnosti Arm nebudú od roku 2023 podporovať 32-bitové aplikácie, čo znamená, že všetky smartfóny so systémom Android prejdú na 64-bitové.

Spoločnosť Arm oznámila, že všetky jej návrhy mobilných CPU nebudú od roku 2023 podporovať 32-bitové operácie, čo je krok, ktorý úplne zruší 32-bitovú podporu v systéme Android. Dizajnér čipov už presunutý na podporu 32-bitovej verzie na jeho dizajnoch veľkých základných čipov v roku 2020, po tom, čo bola 64-bitová podpora prvýkrát predstavená na trhu smartfónov v roku 2013. Aj keď to vyzerá ako veľký krok, pravdepodobne to bude mať niekoľko dôsledkov (ak vôbec nejaké) pre ekosystém Androidu.

"Bity" označujú počet adries pamäte, ku ktorým je možné pristupovať v stroji. 32-bitový stroj môže vo všeobecnosti získať prístup k 2^32 pamäťovým adresám, čo zodpovedá približne 4 GB. 64-bitový stroj môže pristupovať k 2^64 pamäťovým adresám, zhruba v oblasti 18 kvintiliónov. Pre kompiláciu aplikácie so 64-bitovou inštrukčnou sadou nie je veľa hmatateľných výhod, ale nie je dôvod, aby bola kompilovaná aj s 32-bitovou inštrukčnou sadou. 64-bitový operačný systém prospieva viac, pretože môže odkazovať na viac ako 4 GB virtuálnej pamäte. Na 32-bitových návrhoch je procesor ARM schopný adresovať maximálne 4 GB virtuálneho pamäťového priestoru, ktorý musí byť zdieľaný medzi procesmi používateľského priestoru, jadrom a hardvérovými zariadeniami. Budúce mobilné čipové sady Arm sa budú od roku 2023 točiť výlučne okolo 64-bitových

Android Authority), čo znamená, že všetok softvér spustený na zariadení bude musieť byť skompilovaný so 64-bitovou inštrukčnou sadou.

Android je 64-bitový a 64-bitové aplikácie sú už štandardom

Android 5.0 Lollipop položil základy pre podporu 64-bitových OS, aj keď podpora bola zachovaná pre 32-bitové aplikácie, aby mohli stále bežať. Android 12 Zdá sa však, že ide o prvé vydanie s úplnými 64-bitovými verziami systémových aplikácií a služieb.

Pokiaľ ide o aplikácie, v auguste 2019 Google donútil vývojárov odosielať 64-bitové verzie natívnych aplikácií do obchodu Google Play. Akékoľvek aplikácie skompilované v jazyku Java alebo Kotlin budú pravdepodobne potrebovať veľmi málo práce (ak vôbec nejaké) na spustenie v 64-bitovom režime, pretože aplikácie kompilovaný v Android Studio pomocou štandardných knižníc by mal byť kompilovaný v 64-bitovej verzii bez akéhokoľvek vývojára zásah. Samotní vývojári aplikácií a hier dokonca začínajú upúšťať od 32-bitovej podpory s Niantic v roku 2020 zaviazal sa ukončiť 32-bitovú podporu od Pokémon Go tiež.

Skutočne, iba vývojári používajúci knižnice alebo herné nástroje tretích strán sa musia starať o to, pre akú architektúru je ich aplikácia zostavená. Hlavné herné enginy v systéme Android už podporujú 64-bitovú verziu, pričom Unity pridalo 64-bitovú podporu v roku 2018, teda celý rok predtým, ako ju Google požadoval v obchode Play. Armv8 bola prvá inštrukčná sada Arm na podporu 64-bitových operácií a bola ohlásená v roku 2011 a Armv9 pokračuje v tejto podpore. Google poskytuje informácie o prechode na 64-bitovú verziu už dlhšiu dobu a má zaviazala úplne zastaviť poskytovanie 32-bitových aplikácií od 1. augusta 2021. Písanie bolo na stene pre 32-bitové aplikácie už dlhú dobu a záväzok spoločnosti Arm k 64-bitovej verzii pravdepodobne nikoho neprekvapí.

Čipy Cortex-A od spoločnosti Arm budú len 64-bitové

Predchádzajúce čipy navrhnuté spoločnosťou Arm mohli spúšťať 32-bitový aj 64-bitový kód a prepínať medzi nimi za behu. Niektoré z najskôr implementovaných Armv8 SoC sa používali iba v 32-bitovom režime, napriek tomu, že referenčné návrhy mali podporu 64-bitov. V súčasnosti sú niektoré čipy Arm iba 32-bitové, zatiaľ čo iné sú iba 64-bitové, hoci iba 64-bitové čipy sa v súčasnosti nepoužívajú v žiadnych smartfónoch. Všetky čipy série Cortex-A budú 64-bitové až v roku 2023 a ako už vieme, všetky jeho veľké jadrá budú v roku 2022 64-bitové.

Za zmienku tiež stojí, že čipy Cortex-A sa takmer výlučne používajú v smartfónoch, tabletoch, a Chromebooky, zatiaľ čo čipy Cortex-M sú lacné a energeticky efektívne a používajú sa v oblasti internetu vecí zariadení. Zatiaľ čo čipy Cortex-A dostávajú iba 64-bitové spracovanie, čipy Cortex-M sú výlučne 32-bitové a v súčasnosti sa neplánuje urobiť z nich iba 64-bitové.

Budúcnosť Arm v systéme Android

Pre koncového používateľa by sa v skutočnosti nemalo nič zmeniť a je nepravdepodobné, že by došlo k nejakým problémom. Google sa na to pripravoval už roky a vývojári už dva roky nemôžu ani len posielať 32-bitové natívne aplikácie do obchodu Google Play. Nemôžem si spomenúť na žiadne nedávne smartfóny, ktoré boli spustené iba ako 32-bitové, pretože všetky smartfóny, o ktorých si myslím, že boli vydané v posledných rokoch, sú 64-bitové. Toto by (dúfajme) malo byť plynulým prechodom pre všetkých a je nepravdepodobné, že sa to dotkne veľkej väčšiny používateľov smartfónov, keď príde čas.

Tento článok bol aktualizovaný o 14:18 ET, aby sa opravili niektoré podrobnosti o 32 a 64-bitovej verzii.