Бъдещите мобилни процесори на Arm няма да поддържат 32-битови приложения: Ето какво означава това

Бъдещите мобилни чипове на Arm няма да поддържат 32-битови приложения от 2023 г., което означава, че всички смартфони с Android ще преминат към 64-битови.

Arm обяви, че всички техни дизайни на мобилни процесори няма да поддържат 32-битови операции от 2023 г. нататък, в ход, който ще убие изцяло 32-битовата поддръжка на Android. Дизайнерът на чипове вече преместен на отказ от 32-битова поддръжка върху дизайна на големите си основни чипове през 2020 г., след като 64-битовата поддръжка беше представена за първи път на пазара на смартфони през 2013 г. Въпреки че изглежда като голям ход, вероятно ще има малко разклонения (ако има такива) за екосистемата на Android.

„Битове“ се отнася до броя на адресите на паметта, които могат да бъдат достъпни в една машина. 32-битова машина може като цяло да има достъп до 2^32 адреса на паметта, еквивалентни на около 4GB. 64-битова машина може да има достъп до 2^64 адреса на паметта, приблизително в сферата на 18 квинтилиона. Няма много осезаеми предимства за едно приложение да бъде компилирано с 64-битов набор от инструкции, но няма причина то да бъде компилирано и с 32-битов. 64-битовата е от по-голяма полза за операционната система, тъй като може да препраща към повече от 4 GB виртуална памет. При 32-битови дизайни ARM CPU е в състояние да адресира максимум 4GB виртуална памет, която трябва да бъде споделена между процесите на потребителското пространство, ядрото и хардуерните устройства. Бъдещите мобилни чипсети на Arm ще се въртят изцяло около 64-битови от 2023 г. нататък (чрез

Android Authority), което означава, че целият софтуер, работещ на устройството, ще трябва да бъде компилиран с 64-битов набор от инструкции.

Android е 64-битов, а 64-битовите приложения вече са стандарт

Android 5.0 Lollipop постави основите за поддръжка на 64-битова ОС, въпреки че поддръжката беше запазена за 32-битови приложения, така че те все още да могат да работят. Android 12 все пак изглежда е първото издание с пълни 64-битови версии на системни приложения и услуги.

Що се отнася до приложенията, още през август 2019 г. Google принуди разработчиците за изпращане на 64-битови версии на собствени приложения в Google Play Store. Всички приложения, компилирани в Java или Kotlin, вероятно ще се нуждаят от много малко работа (ако има такава), за да работят в 64-битов режим, като приложения компилиран в Android Studio с помощта на стандартни библиотеки, трябва просто да се компилира в 64-битов без програмист интервенция. Самите разработчици на приложения и игри дори започват да отказват 32-битова поддръжка с Niantic през 2020 г. обещавайки да спре 32-битовата поддръжка от Pokémon Go както добре.

Наистина само разработчиците, използващи библиотеки на трети страни или двигатели за игри, трябва да се тревожат за каква архитектура е компилирано тяхното приложение. Основните двигатели за игри на Android вече поддържат 64-битова версия, като Unity добави 64-битова поддръжка през 2018 г., цяла година преди Google да я изисква в Play Store. Armv8 беше първият набор от инструкции на Arm, който поддържа 64-битови операции и беше обявен през 2011 г., и Armv9 продължава тази поддръжка. Google предоставя информация за преминаването към 64-бита от дълго време и го направи обещаха да спрат изцяло да обслужват 32-битови приложения от 1 август 2021 г. Написаното е на стената за 32-битови приложения от дълго време и ангажиментът на Arm към 64-битовите вероятно няма да бъде шок за никого.

Чиповете Cortex-A на Arm ще бъдат само 64-битови

Предишните чипове, проектирани от Arm, можеха да изпълняват както 32-битов, така и 64-битов код и да превключват между тях в движение. Някои от най-ранно внедрените Armv8 SoC бяха използвани само в 32-битов режим, въпреки че референтните дизайни имаха 64-битова поддръжка. В днешно време някои чипове Arm са само 32-битови, докато други са само 64-битови, въпреки че чиповете само с 64 бита не се използват в момента в нито един смартфон. Всички чипове от серията Cortex-A ще бъдат 64-битови само до 2023 г. и както вече знаем, всичките му големи ядра ще бъдат 64-битови през 2022 г.

Струва си да се спомене също, че чиповете Cortex-A се използват почти изключително в смартфони, таблети, и Chromebook, докато Cortex-M чиповете са евтини и енергийно ефективни, използвани в подобни на IoT устройства. Докато чиповете Cortex-A получават само 64-битово третиране, чиповете Cortex-M са изключително 32-битови и в момента няма планове да бъдат направени само 64-битови.

Бъдещето на Arm в Android

Нищо не трябва да се променя за крайния потребител и е малко вероятно да има някакви проблеми. Google се подготвя за това от години, а разработчиците дори не успяха да изпратят 32-битови собствени приложения в Google Play Store от две години. Не мога да се сетя за скорошни смартфони, които са пуснати само като 32-битови, тъй като всички смартфони, за които се сещам и които са пуснати през последните години, са 64-битови. Това трябва (да се надяваме) да бъде плавен преход за всички и е малко вероятно да засегне по-голямата част от потребителите на смартфони, когато му дойде времето.

Тази статия беше актуализирана в 14:18 ET, за да се коригират някои подробности относно 32 срещу 64 бита.