64 битная архитектура в смартфоне что это
Что значит отказ от поддержки 32-битной архитектуры в будущих процессорах ARM
Константин Иванов
Во время выступления на конференции Arm DevSummit Пол Вильямсон, вице-президент и глава клиентского подразделения ARM, заявил, что новые процессоры Arm Cortex-A, то есть те самые, что служат основой платформы для чипсета вашего смартфона, к 2022 году будут поддерживать только 64-битную архитектуру. Это означает, что на аппаратном уровне поддержки 32-битных приложений в будущем не будет, а следовательно, это небольшой, но весьма значимый шаг для будущего смартфонов и ОС Android.
Если вы волновались насчет поддержки приложений, то напрасно. Компания Google с августа 2019 года требует, чтобы все приложения в магазине Google Play были 64-битными. Со стороны ARM также подчеркивают, что около 60% приложений уже совместимы с 64-битной архитектурой. Большая часть тех, что 64-бита не поддерживают, находятся за пределами западных экосистем, созданных Apple и Google. Так что большинство приложений или уже 64-битные, или у их создателей есть еще масса времени для обеспечения такой поддержки. Худший вариант – это старые приложения, у которых уже нет поддержки. Они просто перестанут работать.
А разве Android еще не 64-битный?
Технически ОС Android уже 64-битная. Поддержка 64-битных приложений была внедрена еще в 2014 году с обновлением до версии 5.0 Lollipop, но ОС Android и ядра ARM сохраняют поддержку 32-битных приложений. Так что называть ОС Android полностью 64-битной системой будет неверно. Это наследство в виде поддержки старой архитектуры просуществует до 2022 года с точки зрения аппаратной части, так что нет предпосылок к тому, чтобы из Android его исключили заранее. Так что для пользователей переход должен быть бесшовным.
Польза от перехода полностью на 64-битную архитектуру должна включать улучшение производительности для приложений, игр и операционной системы. В некоторых случаях оно может достигать 20%. Разработчикам больше не потребуется заботиться о поддержке двух архитектур, и они смогут сосредоточиться исключительно на 64-битной. Возможно, это даст некоторое ускорение в выпуске обновлений.
В большинстве случаев переход к 64-битной архитектуре будет заурядным событием. Смартфоны и приложения находятся в переходном периоде уже несколько лет. Так что и с точки зрения аппаратной и программной части переход давно пора завершить. В конце концов, в Apple еще в 2017 году уже сделали iOS 11 полностью 64-битной.
Что известно о 64-битных процессорах ARM
Важной новостью от Arm является то, что они наконец-то смогут избавиться от лишней части своих процессоров, которая требуется исключительно для поддержки 32-битной архитектуры. Это сэкономит полезную площадь при печати, что означает меньший физический размер ядра и его меньшую теплоотдачу, ну или большую производительность при тех же размерах.
Кодовые названия ядер Arm для 2021 и 2022 года – Matterhorn и Makalu. И вот у второго уже не будет поддержки 32 бит. Компания Arm обещает 30% прирост в производительности между ядрами 2020 года Cortex-A78 и Makalu, так что не заметить улучшение будет сложно. Переход к полностью 64-битной архитектуре начнется с больших ядер Cortex-A. При этом сам переход не будет непременно сопровождаться новой архитектурой самого ядра, такой как ArmV9. Другими словами, скорее всего, мы увидим дизайн кластера ядер, в котором будут присутствовать как полностью 64-битные Makalu, так и меньшие ядра с поддержкой 32/64-бит, такие как Cortex-A55. Хотя финальный продукт с точки зрения пользователя и разработчика будет исключительно 64-битным.
Так что до того, как появятся чипсеты, работающие исключительно с 64-битами, нам придется подождать, чтобы появились малые ядра в полностью 64-битном исполнении. Это оставляет пространство для менее производительных устройств, которые используют только меньшие ядра. Они смогут обеспечивать поддержку 32-битной архитектуры несколько дольше. И есть даже предпосылки к тому, что обновление данного типа ядер произойдет до этого момента. Это будет более новая модель в сравнении с Cortex-A55, но у нее все еще будет поддержка и 32, и 64-бит, так что тут переход будет еще более плавным.
Переход полностью на 64-бита – это важный шаг для ОС Android и компании Arm. Его значение – в упрощении в сравнении с современным состоянием, когда требуется поддержка наследия 32-битной эры. Однако не нужно воспринимать его как фундаментальное изменение экосистемы или радикальное обновление пользовательского опыта, поскольку вся сложность перехода ложится исключительно на плечи разработчиков. А простые пользователи устройств, скорее всего, вообще ничего не заметят.
Как узнать, работает ли устройство на 32-битном или 64-битном Android
Наступает время в жизни каждого пользователя Android, когда нужно ответить на важный вопрос: мое устройство работает под управлением 32- или 64-разрядной операционной системы? Это может быть трудное, тревожное время, если Вы не знаете, как ответить на этот вопрос. Мы поможем Вам понять, что делать, если возникнет такой вопрос.
Вот как узнать, устройство работает под управлением 32- или 64-разрядной операционной системы.
Итак, первое, что Вам нужно сделать, это загрузить и установить AnTuTu Benchmark. Мы не будем запускать какие-либо тесты, просто используйте его, чтобы получить информацию о процессоре.
После того, как Вы установите его, откройте его и затем нажмите вкладку «Инфа» внизу.
Найдите в этом списке строку с надписью «Android» — это должна быть третья запись. Справа от него будет показана версия Android, а также разрядность ОС.
Хотя это не обязательная информация, которую Вам нужно знать, но всегда полезно знать, как получить доступ к этой информации, если Вам это понадобится. Например, если Вы загружаете стороннее приложение и оно зависит от версии.
64 бита в смартфонах и планшетах: есть ли польза?
Скоро смартфоны и планшеты станут мощнее: в устройствах высшего и среднего класса появляются 64-разрядные процессоры. CHIP рассказывает об их преимуществах.
Что общего у iPhone 6, Nexus 9 и HTC Desire 510? Все три устройства оснащены 64-разрядными процессорами. Если на рынке настольных компьютеров переход с 32-битной на 64-битную архитектуру уже давно завершился, то среди мобильных гаджетов этот процесс только начинается.
HTC Desire 510 на базе 64-разрядной системы на чипе Snapdragon 410
64-разрядные процессоры могут взаимодействовать более чем с 4 Гбайт ОЗУ, однако в современных смартфонах и планшетах пока используется не более 3 Гбайт. Преимущества, обеспечиваемые 64-битным мобильным процессором, другие, и далее мы о них расскажем.
Технически 64-разрядная архитектура означает, что процессор за один такт может одновременно обрабатывать восемь байтов (64 бита) информации, 32-разрядная же система работает с четырьмя байтами за такт. Уже только данная особенность сама по себе является большим преимуществом.
Например, производители смогут намеренно занижать тактовую частоту процессора: скорость работы смартфонов при этом не упадет (с оговорками, о которых рассказано ниже), зато значительно уменьшится энергопотребление.
Чтобы обеспечить 64-разрядный процессор необходимым количеством данных, нужно принять во внимание некоторые другие факторы. Так как информация передается на процессор через шины, каждая из них тоже должна иметь ширину в 64 бита.
Внутреннее устройство Snapdragon 810. Лидер рынка чипов для мобильных устройств Qualcomm воплотила в своем новом продукте топового уровня целый ряд новшеств, требующих большой вычислительной мощности и выигрывающих от поддержки 64-разрядного режима.
Удвоение вычислительной мощности
Определяющим фактором для 64-битной тенденции в мире мобильных устройств стало решение ARM (разработчика архитектуры большинства всех мобильных процессоров) перейти с архитектуры ARMv7 на 64-разрядную архитектуру ARMv8. Первым же 64-битным ARM-процессором является чип Apple A7, который установлен в смартфоне iPhone 5s.
Продукты конкурентов, где реализована архитектура ARMv8, не заставили себя долго ждать. Сейчас на рынке появляются 64-разрядные однокристальные системы от Qualcomm и других. Но осуществить переход на 64 бита в сжатые сроки невозможно, поскольку в настоящее время подавляющее количество смартфонов и планшетов оснащены 32-разрядными процессорами и операционными системами. Ни одно из стандартных 32-разрядных приложений в «чистой» 64-разрядной среде работать не будет, поэтому ARM внедрила в ARMv8 своего рода мост между обеими архитектурами: 32-разрядные приложения запускаются в 32-разрядном режиме, операционная система и 64-разрядные приложения — в 64-разрядном, причем пользователь этого совершенно не замечает.
Характеристики некоторых новых мобильных чипов
Ассортимент 64-разрядных систем на кристалле (SoC) растет. Мы рассказываем, на что способны эти новые мобильные процессоры.
Система на чипе | Exynos 7 Octa | MT6735 | Snapdragon 615 | Snapdragon 810 | Snapdragon 410 | Tegra K1 | A8X | A8 |
---|---|---|---|---|---|---|---|---|
Разработчик | Samsung | Mediatek | Qualcomm | Qualcomm | Qualcomm | NVIDIA | Apple | Apple |
Дата выхода | уже на рынке | начало 2015 г. | уже на рынке | середина 2015 г. | уже на рынке | уже на рынке | уже на рынке | уже на рынке |
Пример устройства | Galaxy Note 4 | нет | HTC Desire 820 | нет | HTC Desire 510 | Nexus 9 | iPad Air 2 | iPhone 6 |
Процессор (частота) | Cortex A57 (1,9 ГГц), Cortex A53 (1,3 ГГц) | Cortex A53 (1,5 ГГц) | Cortex A53 (1,8 и 1 ГГц) | Cortex A57, Cortex A53 | Cortex A53 (1,2 ГГц) | Denver (2,5 ГГц) | Cyclone 2 (1,5 ГГц) | Cyclone 2 (1,5 ГГц) |
Количество ядер CPU | 8 | 4 | 8 | 8 | 4 | 2 | 3 | 2 |
Архитектура | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 |
ОЗУ | LPDDR3 800 | LPDDR3 800 | LPDDR3 800 | LPDDR4 1600 | LPDDR3 533 | LPDDR3 933 | LPDDR3 1333 | LPDDR3 1333 |
Видеоядро | Mali-T760 | Mali-T720 | Adreno 405 | Adreno 430 | Adreno 306 | Kepler | PowerVR GX6650 | PowerVR GX6450 |
Техпроцесс | 20 нм | 28 нм | 28 нм | 20 нм | 28 нм | 28 нм | 20 нм | 20 нм |
Совместимость со всеми приложениями
В ARMv8 на адресацию ОЗУ из 64 битов используется 48, то есть новая архитектура способна взаимодействовать с 256 Тбайт памяти. Но самым большим преимуществом ARMv8 является 64-разрядный набор команд A64. Разработчики основательно переделали ARMv7, избавившись от всего лишнего, что препятствовало достижению оптимальной скорости работы. Длина всех команд теперь составляет ровно 32 бита, так что в 64-разрядном командном слове теперь можно комбинировать две команды.
В ARMv7 допускается различная длина команд — звучит лучше, но на практике это вызывает дополнительную нагрузку на процессор при декодировании команд.Так как отныне длина всех команд составляет 32 бита, их обработка занимает меньше времени. Благодаря постоянной длине команд прогноз условных переходов в исполняемой команде выполняется проще, и кроме того, он меньше подвержен ошибкам.
ARM снабдила 64-разрядную архитектуру немалым количеством регистров. Регистров общего назначения и регистров с плавающей точкой теперь в два раза больше, благодаря чему увеличивается производительность. От этого в первую очередь выигрывают различные ресурсоемкие приложения, а также фоновые динамические JIT-компиляторы, преобразующие байт-код в машинный язык непосредственно во время работы программы. Благодаря этому увеличивается скорость работы веб-программ, активно использующих JavaScript.
Не отстает ARMv8 и в вопросах безопасности: архитектура добавляет аппаратное шифрование AES и поддержку алгоритмов хеширования SHA-1 и SHA-256.
Сравнение архитектур ARMv7 и ARMv8
ARMv8 | ARMv7 | |
---|---|---|
Архитектура | 64 бита (AArch64) | 32 бита (AArch32) |
Набор команд | А64 | А32 |
Поддержка 32-/64-разрядного ПО | да/да | да/нет |
Разрядность регистра | 64 бита | 32 бита |
Регистры общего назначения, шт. | 31 | 16 |
Регистры с плавающей точкой, шт. | 31 | 14 |
Длина команды | 32 бита | непостоянная |
Объем физического адресного пространства/адресуемая ОЗУ | 48 бит/ 256 Тбайт | 40 бит/ 1 Тбайт |
Объем виртуального адресного пространства/адресуемая ОЗУ | 64 бита/ 16 Эбайт | 32 бита/ 4 Гбайт |
Шифрование | да | нет |
Однако воплощение 64-разрядной архитектуры в технической составляющей — это только половина дела, на практике также нужна поддержка со стороны операционной системы и приложений. Хорошая новость для пользователей: в iOS 8 и Android 5.0 эта функция уже есть. Apple нащупывает почву и в Apple Store. Так, в новые приложения, которые будут выгружаться в магазин с 1 февраля 2015 года, в обязательном порядке должна быть включена поддержка 64-разрядной архитектуры.
Фото: компании-производители; Инфографика: Doreen Heimann
Русские Блоги
Android arm64-v8a, armeabi-v7a, armeabi, x86 подробное объяснение
Недавно при упаковке с флаттером я столкнулся с ситуацией, когда упаковка не могла быть напечатана. Я долго проверял причину и обнаружил, что это было вызвано отсутствием конфигурации руки. После того, как она была экипирована, она разыгралась. Я воспользовался этой возможностью, чтобы изучить abi с нуля.
перед началом
Прежде чем начать, вам нужно знать lib, libs и т. Д.
1. lib и libs
Ссылки на те, что помещены в lib, включены в библиотеки.
Файлы, помещенные в библиотеки, будут автоматически включены редактором. Так что не ставьте API в библиотеках.
Содержимое библиотеки lib не будет упаковано в APK, содержимое библиотеки li будет упаковано в APK
Введение в архитектуру
Нет картины без правды:
Существует только один неизвестный телефон с операционной системой Android 4.3, который использует архитектуру v7.
Для 64-битных телефонов и 64-битных процессоров
Поскольку новый 64-разрядный процессор в настоящее время включает в себя две архитектуры, а технология процесса не была улучшена (28 нм), в то же время на мобильных телефонах и планшетах площадь чипа строго ограничена и не может быть чрезмерно увеличена, что приводит к среднему распределению 64-разрядных процессоров ARM. Количество транзисторов в каждой архитектуре резко сократилось, то есть из 32-разрядной архитектуры 64-разрядных процессоров для 32-разрядных процессоров с одинаковыми характеристиками они не только не улучшились, но и производительность снизилась в определенном масштабе. Однако производители процессоров должны объяснить потребителям, как лучше продвигать 64-разрядные системы, поэтому производители должны повысить производительность в других аспектах, чтобы компенсировать потери, вызванные сокращением числа транзисторов ЦП. Например: замените более мощный графический процессор, увеличьте пропускную способность памяти, многоядерный виртуальный одноядерный для повышения производительности одноядерного, совместные поставщики программного обеспечения для работы, чтобы изменить веса работы (повысить оценку GPU, снизить вес процессора) и т. Д. Таким образом, приобретая сильные стороны и избегая недостатков и, наконец, попадающих в руки потребителей, они работают с запущенным программным обеспечением, оно действительно улучшилось, пользователи довольны, карманы производителя также выпирают.
Таким образом, битовый процессор ARM64 более точно называется ARM32 + 64 в строгом смысле слова. По сравнению с битовым процессором ARM32, он имеет место для регресса и возможности для улучшения, но именно из-за регрессии, который стимулировал прогресс ARM Определено, что он внесет смелые и смелые изменения, и это должно быть улучшением. Но действительно ли ARM64 полезен для мобильных телефонов? Я могу только сказать, что это действительно бесполезно в данный момент, но это может произойти в будущем. (Собранный в другом месте) Таким образом, в строгом смысле ARM64-битный процессор более точно называется ARM32 + 64. По сравнению с ARM32-битным процессором он имеет некоторые недостатки и возможности для улучшения, но это из-за Эта регрессия подтолкнула ARM к решимости добиться прогресса, что позволило ему внести радикальные изменения, что, по-видимому, является улучшением. Но действительно ли ARM64 полезен для мобильных телефонов? Я могу только сказать, что это действительно бесполезно в данный момент, но это может произойти в будущем. (Искал в другом месте)
Однако Google официально объявил об обязательной 64-битной архитектуре в начале этого года.:
Еще в январе этого года (2019 г.) Google выпустил уведомление о том, что с 1 августа этого года перечисленные приложения, помимо предоставления 32-разрядных версий, также должны предоставлять 64-разрядные версия.
Следовательно, больше невозможно принудительно использовать только архитектуру armeabi перед проектом.
Что конкретно означает поддержка 64-битной версии?
Если ваше приложение написано полностью на Java или Kotlin и не содержит никакой встроенной поддержки, то это означает, что приложение уже поддерживает 64-битную версию.
Однако в приложении используется любая встроенная поддержка (например, библиотека), поэтому вам необходимо обеспечить разные версии поддержки этих файлов и разных архитектур ЦП.
Следует отметить, что иногда в нашем собственном коде встроенная поддержка действительно не используется, но в нее включены некоторые сторонние библиотеки, используемые в приложении.
В настоящее время наиболее надежным способом является анализ файла APK, созданного окончательной упаковкой, для определения необходимости обеспечения поддержки 64-разрядной архитектуры.
Конфигурация упаковки
Трещина
Эта команда может быть заключена в соответствии с различными правилами, такими как abi, плотность экрана (например, ldpi, hdpi и т. д.)
Включить включено, а исключить не включено. Каждый элемент, включенный в конфигурацию, будет генерировать пакет apk.
Фильтр ndk
Эта инструкция может быть настроена для упаковки только той библиотеки, которую вы настраиваете, и она не будет упакована, если она не настроена, что очень гибко.
Эта конфигурация упакует библиотеку so из трех пакетов armeabi, armeabi-v71, arm64-v8a в apk, в отличие от split, которая будет воспроизводить apk для каждого пакета.
64-битная версия Android — Как это работает? Все, что нужно знать
Android Lollipop поддерживает 64-битные чипы. CDNEWS объясняет, что такое 64-битная версия и что она для вас.
Android: как это работает?
Чтобы объяснить Android 64 бит, необходимо, чтобы мы начали с самого начала. Android в основном состоит из ядра Linux с открытым исходным кодом, которое вместе с некоторыми важными программными дополнениями образует Android. Ядро — это сердце Linux, которое связывает программное обеспечение с оборудованием. Например, ядро управляет экраном, камерой, Bluetooth и Wi-Fi. Android является дистрибутивом Linux и в основном использует стандартное ядро Linux, которое доступно каждому.
До Android 4.4 KitKat: Dalvik
У вас есть три важных компонента после ядра Linux: среда выполнения Android, инфраструктура приложений и библиотеки. Начнем с Android Runtime: в основном это Dalvik, разработанный Google. Dalvik — это виртуальная среда, в которой работают в основном Java-приложения. Вы можете назвать это своего рода мини-операционной системой, которая позволяет Java-приложениям работать на разных типах оборудования.
Виртуальная среда, которую создает Dalvik, может быть очень эффективной. Например, виртуальные среды на настольных компьютерах работают быстрее, чем так называемые собственные приложения. Это приложения, которые общаются напрямую и пропускают шаг, который делает Dalvik. Однако для рынка мобильных устройств все еще применяется то, что нативные приложения обычно работают быстрее, чем приложения в Dalvik. Последний, тем не менее, является нативным, но приложения, работающие в Dalvik, не являются нативными вообще или только частично. Среди прочего, приложения для редактирования тяжелых фотографий и игры для Android работают частично изначально. С нативными компонентами приложения вы можете обойти Dalvik и обеспечить повышение скорости.
Большинство приложений для Android работают в Dalvik, включая WhatsApp, Gmail, Twitter и Facebook. Чтобы предоставить этим приложениям права и функции, Dalvik использует среду приложения, а затем библиотеки для получения различных прав и выполнения действий. Платформа приложения контролирует, например, телефонные функции, местоположение или уведомления, библиотеки, помимо прочего, имеют дело с графическими возможностями смартфона и взаимодействуют с ядром Linux, чтобы глубже погрузиться в систему.
С Android 5.0 Lollipop: ART
Начиная с Android 5.0 Lollipop, Google больше не использует Dalvik, а использует совершенно новую Android Runtime (ART). Эта технология состоит из так называемого компилятора Ahead-Of-Time. Это гарантирует, что при установке приложения создается специальный код, который позволяет устанавливать приложение как собственное приложение. Приложение больше не работает в виртуальной среде, такой как Dalvik, но напрямую взаимодействует с ядром Linux.
Используя ART, разработчики должны написать только один общий код для своего приложения, после чего ART создает собственный код для каждого устройства. Многие устройства Android имеют различное аппаратное обеспечение, что означает, что код нативного приложения часто отличается для каждого устройства. Установка приложений с помощью ART занимает немного больше времени, чем с Dalvik, но, по словам Google, приложения с ART работают более плавно и потребляют меньше энергии.
64 бит: как это работает?
64-битная история начинается с чиповой архитектуры процессора. Невозможно просто запустить Android-смартфон на 64-битной платформе, потому что устройство должно иметь 64-битную микросхему, чтобы работать на 64-битной. Начнем с того, что у вас есть разные архитектуры чипов, в том числе ARM (Qualcomm, Nvidia, Samsung Exynos) и X86 от Intel. Чип Intel пока широко не используется в мобильных устройствах, но постепенно прогрессирует. Так что на данный момент все дело в ARM.
Преимущество операционной системы Linux с открытым исходным кодом заключается в том, что 64-битная поддержка архитектуры ARM присутствует в ядре довольно давно, а точнее с начала 2012 года. В общем, 64-битная версия поддерживается Linux гораздо дольше. Джим Зимлин, директор Linux Foundation, кратко и убедительно говорит об этом: «Мы поддерживаем 64-битную версию в течение очень долгого времени. Экосистема Android просто берет 64-разрядную версию и извлекает из нее выгоду, при этом экосистеме не нужно проходить специальную обработку ».
Android Runtime (ART) поддерживает 64-разрядную версию, поэтому приложения, работающие на устройстве с 64-разрядной микросхемой, сразу получают преимущества. Dalvik не обновляется до 64-разрядной версии, поскольку многие устройства с Android 4.4 KitKat или ниже не имеют 64-разрядной микросхемы.
Android 64 bit: какая от этого польза?
По-прежнему сложно и четко объяснить 64-битную версию без каких-либо уступок. Короче говоря, 64-разрядная версия гарантирует, что программное обеспечение может использовать больше памяти. Прибыль получена благодаря тому, что отныне 64-битные регистры присутствуют и могут обрабатывать вдвое больше данных за одно действие, чем 32-битные в настоящее время. Это позволяет (тяжелым) расчетным задачам выполняться быстрее.
Одним из самых больших преимуществ 64-битной версии является то, что поддерживаются устройства с объемом памяти более 4 ГБ. Android уже в пути: несколько устройств уже имеют 3 ГБ памяти. При использовании 64-разрядной памяти можно использовать больше памяти, что на практике означает, что в памяти может храниться больше приложений и что они также могут использовать больше памяти.
«Однако все еще сложно сказать, какие дополнительные преимущества может предложить 64-битная версия. Энергоэффективность в основном связана с архитектурой чипа, и я считаю, что чип не только более экономичен благодаря 64-битной архитектуре. Я не вижу непосредственного преимущества в 64-битных процессорах, и процессоры станут более быстрыми и более энергоэффективными в будущем. И если 64-битный может способствовать этому, это бонус. »
Когда вы получите 64-бит?
С конца 2014 года на рынке появились различные смартфоны и планшеты с 64-битным чипом, которые часто поставляются с Android 5.0 Lollipop или выше. Эти устройства оснащены Android Runtime (ART), который напрямую поддерживает 64-битные. Тогда, в основном, от пользователя зависит, замечает ли человек что-то 64-битное. Легкие приложения, такие как WhatsApp, не сразу выиграют от использования 64-битных приложений, но тяжелые приложения, такие как приложения для редактирования видео или графически интенсивные игры, получат прямую выгоду.