Что такое arm64 v8a

Русские Блоги

Понимание arm64-v8a, armeabi-v7a, armeabi, x86 в Android

При разработке android вы часто сталкиваетесь с проблемой, в каком каталоге находится библиотека. Сегодня я кратко проанализирую различия между процессорами различных архитектур. Пока читатель может понять смысл этих каталогов, в него не нужно углубляться.

Сначала поговорим о разнице между 32-битным процессором и 64-битным процессором

64-битные и 32-битные относятся к процессоруОбщий регистрШирина данных.

Первоначально дизайн операционной системы отличается,64-битная операционная системаПервоначально был разработан для удовлетворения механического проектирования и анализа,3D анимация、Редактирование видеоИ создание, иНаучные вычисленияиВысокопроизводительные вычисленияКлиентам, которым требуется много памяти и производительность с плавающей запятой в приложениях и других областях, основное внимание уделяется запуску некоторых специальных отраслевых приложений, и32-битная операционная системаОн предназначен для обычных пользователей, и основное внимание уделяется ежедневному использованию прикладного программного обеспечения.

Программное обеспечение отличается

Разный контроль над памятью

32-битная операционная системаФактическая идентифицируемая память составляет 3,5 ГБ, и 64-разрядная операционная система может фактически поддерживать 128 ГБ памяти, что также является основным отличием 64-разрядной и 32-разрядной системы по внешнему виду и фактическому значению.

1. Являются ли lib и libs одинаковыми?
Ссылка на то, что помещается в lib, и на то, что помещается в lib, включена.
Файлы, размещенные в библиотеках, автоматически включаются Eclipse. Так что не ставьте API в библиотеки.
Содержимое lib не будет упаковано в APK, а содержимое libs будет упаковано в APK

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Так называемая архитектура ARMv8 была разработана на основе архитектуры MIPS64, добавив в архитектуру ARMv7 такие функции, как технология TrustZone, технология виртуализации и усовершенствованная технология NEON SIMON.

64-битная архитектура ARMv8 содержит два состояния выполнения: AArch32 (также известный как ARMv7) и AArch64 (ARMv8). Состояние выполнения AArch64 предназначено для 64-битной технологии обработки, в которой вводится новый набор команд A64 (то есть на основе полученной архитектуры MIPS64), а состояние выполнения AArch32 будет поддерживать существующий набор команд ARM. Следовательно, 64-разрядный процессор ARM содержит как 32-разрядную архитектуру ARMv7, так и 64-разрядную архитектуру ARMv8. Поэтому:

Новые 64-разрядные процессоры в настоящее время включают две архитектуры, и технология процесса не была улучшена (28 нм). В то же время на мобильных телефонах и планшетах область микросхем строго ограничена и не может быть чрезмерно увеличена. Это привело к равномерному распределению 64-разрядных процессоров ARM. Количество транзисторов в каждой архитектуре резко уменьшилось, то есть с точки зрения 32-разрядной архитектуры в 64-разрядном процессоре, для 32-разрядного процессора той же спецификации не только не улучшилось, но и производительность в некоторой степени снизилась. Однако производители процессоров должны дать потребителям объяснение, как лучше продвигать 64-разрядные системы, поэтому производители должны повысить производительность в других аспектах, чтобы компенсировать потери, вызванные сокращением числа транзисторов ЦП. Например: замените графический процессор на более высокую производительность, увеличьте пропускную способность памяти, многоядерный виртуальный одноядерный для повышения производительности одноядерного процессора, измените рабочий вес поставщика совместно работающего программного обеспечения (улучшите графический процессор, уменьшите вес центрального процессора) и так далее. Таким образом можно избежать сильных сторон, и, наконец, они попадают в руки потребителей. Когда они работают с работающим программным обеспечением, они улучшаются, пользователи довольны, а карманы производителей также увеличиваются.

В итоге, ARM64-битный процессор в строгом смысле более строго называется ARM32 + 64. По сравнению с ARM32-битным процессором он имеет место для регресса и возможности для улучшения, но именно из-за регрессии он мотивировал ARM на прогресс. Решимость сделать это радикально вперед может рассматриваться только как улучшение. Но действительно ли ARM64 полезен для мобильных телефонов? Я могу только сказать, что это действительно бесполезно в данный момент, но, возможно, в будущем. (Собран в другом месте)

Настоящий 64-разрядный телефон не просто остается на процессоре. Если он называется 64-разрядным телефоном только потому, что его процессор 64-разрядный, мы можем без колебаний сказать, что это может быть ложной пропагандой. К счастью, Lenovo Очень умно, когда дело дошло до анонса A678t и A805e, были упомянуты только телефоны с 64-битным процессором.

«Мобильный телефон с 64-разрядным процессором» и «Мобильный телефон с 64-разрядной архитектурой» представляют собой два совершенно разных понятия: поскольку процессор содержит биты с 64 архитектурами, его можно назвать «мобильный телефон с 64-разрядным процессором», этот тип мобильного телефона может не работать 64-битные программы используются только для захвата рынка. По сравнению с 32-битными мобильными телефонами преимущества не очевидны.

«64-разрядный телефон» отличается: он содержит 64-разрядный процессор, 64-разрядную стандартную систему, 64-разрядную виртуальную машину Android и 64-разрядную программу. Это настоящий 64-разрядный телефон!

Представители Google заявили, что Android уже давно поддерживает 64-разрядную версию. Это правда. От Android 4.0 до Android 4.4 Android поддерживает 64-разрядное оборудование, но это только означает, что основной драйвер поддерживает 64-разрядную версию и может работать. На вершине 64-битного оборудования, не более того. Однако программное обеспечение, работающее на верхнем уровне, как виртуальная машина Dalvik, так и виртуальная машина ART, является 32-разрядным. Другими словами, до тех пор, пока ваша система мобильной связи работает под управлением Android 4.0-4.4, даже если ваш процессор 64-разрядный, вы можете запускать 32-разрядные программы только на 32-разрядной виртуальной машине. Даже если перед вами стоит настоящая 64-разрядная программа, И при этом это не может быть установлено.

В ноябре 2011 года ARM выпустила некоторые технические подробности о ARMv8, 64-разрядной архитектуре процессора нового поколения (также известной как Cortex-A57A53), которая представляет будущее мобильных процессоров, входящих в 64-разрядные ряды. Мы должны прояснить, что в самом ARM нет технологии проектирования 64-битных чипов, он разработал ее, приобретя некоторые права на использование технологии архитектуры процессора MIPS64 и объединив некоторые функции ARM. Другими словами: из трех основных архитектур MIPS, ARM и X86 единственный ARM без 64-битной технологии был 64-битным благодаря приобретению MIPS.

Источник

Русские Блоги

Android arm64-v8a, armeabi-v7a, armeabi, x86 подробное объяснение

Недавно при упаковке с флаттером я столкнулся с ситуацией, когда упаковка не могла быть напечатана. Я долго проверял причину и обнаружил, что это было вызвано отсутствием конфигурации руки. После того, как она была экипирована, она разыгралась. Я воспользовался этой возможностью, чтобы изучить abi с нуля.

перед началом

Прежде чем начать, вам нужно знать lib, libs и т. Д.
1. lib и libs
Ссылки на те, что помещены в lib, включены в библиотеки.
Файлы, помещенные в библиотеки, будут автоматически включены редактором. Так что не ставьте API в библиотеках.
Содержимое библиотеки lib не будет упаковано в APK, содержимое библиотеки li будет упаковано в APK

Введение в архитектуру

Нет картины без правды:
Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a
Существует только один неизвестный телефон с операционной системой Android 4.3, который использует архитектуру v7.
Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Для 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-битной архитектуре в начале этого года.
Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a
Еще в январе этого года (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 для каждого пакета.

Источник

Arm64 v8a что это

Поделитесь в соцсетях:

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

В 2011 году компания ARM Limited анонсировала новое семейство процессоров под названием ARMv8. А в 2013 году компания Apple выпустила первый ARMv8-процессор – однокристальную систему А7, которая применяется в iPhone 5S, iPad Air и iPad mini Retina. Архитектура ARMv8 получила 64-битный набор команд, но это далеко не единственное её преимущество над предшественницей ARMv7. Как устроены и какими бывают 64-битные процессоры ARMv8, читайте в статье.

Об истории архитектуры ARM, специфике деятельности компании ARM Limited и поколениях процессоров ARMv5, ARMv6 и ARMv7 вы можете прочитать в статье «Процессоры ARM: особенности архитектуры, отличия и перспективы». А про популярные модели ARMv7-чипов производства Qualcomm, NVIDIA, Samsung, Apple, MediaTek и др. подробно рассказано в статьях «Процессоры ARM: производители и модели» и «Процессоры ARM: обновление модельного ряда».

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Нововведения ARMv8

Обновленную архитектуру процессоров семейства ARMv8 окрестили именем AArch64. Она получила 64-битный набор инструкций и возможность работать с большим объемом оперативной памяти (4 Гбайт и больше). Само собой, предусмотрена совместимость с 32-битными приложениями (AArch32). Другими важными нововведениями ARMv8 стали:

— 31 регистр общего назначения, каждый длиной 64 бита, тогда как SP и PC не являются регистрами общего назначения. Чем выше разрядность регистров, тем больше числа можно в них хранить. А чем больше количество регистров, тем больше данних в них помещается одновременно. Как результат, за одну инструкцию можно обработать больший объем данних и весь алгоритм выполнится быстрее;
— трансляция виртуальных адресов из 48-битного формата работает с помощью механизмов LPAE, позаимствованных у ARMv7;
— новый набор инструкций с фиксированной длинной. Инструкции имеют размер 32 бита и многие совпадают с командами AArch32, хотя условных инструкций стало меньше;
— увеличено с 16 до 32 количество 128-битных регистров (совместимы с 64-битными регистрами), доступных сопроцессорам SIMD NEON и VFP, а также добавлены новые криптографические инструкции AES и SHA. Набор инструкций SIMD NEON ускоряет работу приложений, отвечающих за обработку медиаданных и сигналов. В свою очередь VFP отвечает за малоэнергозатратные вычисления над числами с плавающей запятой;
— поддержка вычислений над числами с плавающей запятой двойной точности и стандарта IEEE 754, который является общепринятым форматом представления чисел с плавающей запятой, используемый в программных реализациях арифметических действий.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Референсные ядра ARM Limited

Первыми процессорными ядрами ARMv8, разработанными непосредственно компанией ARM Limited, стали Cortex-A53 и A57. Ядро A53 является среднеуровневым решением с производительностью 2,3 DMIPS/МГц, что находится примерно по середине между нынешними Cortex-A7 (1,9 DMIPS/МГц) и A9 (2,5 DMIPS/МГц). Тогда как A57 занимает верхний сегмент, ведь его быстродействие (4,1 DMIPS/МГц) превосходит показатели обеих 32-битных флагманов: Cortex-A15 (3,5 DMIPS/МГц) и А17 (4 DMIPS/МГц).

Помимо лицензирования референсных процессорных ядер компания ARM Limited продает расширенные лицензии, позволяющие чипмейкерам по своему усмотрению модифицировать архитектуру ARM. Такие лицензии есть, к примеру, у Apple, Qualcomm и NVIDIA. Поэтому ничто не мешает производителям процессоров создавать собственные решения на базе ARMv8, существенно отличающиеся от референсных Cortex-A53 и A57.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8aЧто такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Apple A7

Первым и пока единственным 64-битным ARM-процессором, который уже применяется в смартфонах и планшетах, является Apple A7. Построен он на фирменной архитектуре Apple Cyclone, совместимой с ARMv8. Это вторая разработанная внутри компании процессорная архитектура; первой же была Swift (чипы A6 и A6X, семейство ARMv7).

Процессорных ядер у однокристальной системы A7 только два (частота до 1,4 ГГц), но присутствует графический ускоритель PowerVR G6430 с четырьмя кластерами ядер. Быстродействие чипа A7 в процессорозависимых задачах выросло примерно в полтора раза по сравнению с А6, тогда как в различных графических тестах прирост составляет от двух до трех раз.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

А вот теоретическую возможность работать с большим объемом оперативной памяти благодаря 64-битной архитектуре процессора A7 устройства под управлением iOS пока не ощущают. У iPhone 5s, iPad Air и iPad mini Retina всего лишь 1 Гбайт оперативки; и вряд ли в новом поколении мобильных устройств Apple объем ОЗУ вырастит больше чем вдвое.

Qualcomm Snapdragon 410, 610, 615, 808 и 810

Вслед за Apple свои 64-битные ARM-процессоры поспешила анонсировать компания Qualcomm, причем сразу пять моделей. Правда, пока ни одна из них в коммерческих смартфонах или планшетах не применяется. Скорее всего, расцвет эпохи 64-битных Android-устройств состоится в начале 2015 года на выставках CES и MWC.

Однокристальная система Snapdragon 410 (MSM8916) – младшая из анонсированной 64-битной линейки Qualcomm. Она включает в себя четыре ядра Cortex-A53 с частотой от 1,2 ГГц, графический ускоритель Adreno 306 и, что интереснее всего, навигационный модуль с поддержкой спутниковых сетей GPS, ГЛОНАСС и даже китайской Beidou. Применять Snapdragon 410 планируют в недорогих смартфонах на базе Android, Windows Phone и Firefox OS.

Те же четыре ядра Cortex-A53, что у 410-того, содержит чип Snapdragon 610 (MSM8936), вот только графика у него улучшенная Adreno 405. Тогда как Snapdragon 615 (MSM8939) схож с 610-тым графикой, но процессорных ядер Cortex-A53 у него вдвое больше – восемь Cortex-A53.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

В отличие от 410, 610, 615 моделей, выполненных по 28-нм техпроцессу, чипы Snapdragon 808 (MSM8992) и 810 (MSM8994) будут производиться по передовым 20-нм технологическим нормам. Они оба строятся по схеме big.LITTLE: два (модель 808) или четыре (810) мощных ядра Cortex-A57 и четыре энергоэффективных Cortex-A53. Графика представлена Adreno 418 и Adreno 430 соответственно. Кроме того, старший Snapdragon 810 имеет встроенный контроллер оперативной памяти стандарта LPDDR4.

Но главный вопрос: когда именно компания Qualcomm представит собственную процессорную архитектуру на основе ARMv8, как это было со Scorpion и Krait (модифицированные ARMv7)?

MediaTek MT6732, MT6752, MT6795

Не могла долго оставаться в стороне 64-битной гонки и компания MediaTek, всего за несколько лет превратившаяся из мелкого производителя процессоров для китайских клонов iPhone в одного из крупнейших в мире чипмейкеров, пусть и безфабричного. Впрочем, Apple и Qualcomm собственных производственных линий по «штамповке» полупроводников тоже не имеют.

Однокристальные системы MediaTek MT6732 и MT6752 должны составить конкуренцию чипам Snapdragon 610 и 615. У них четыре и восемь процессорных ядер Cortex-A53 (частота 1,5 и 2 ГГц соответственно) и одинаковая графика Mali-T760 (разработка ARM Limited). Старший же чип MT6795 стал ответом Snapdragon 810: архитектура big.LITTLE, по четыре ядра Cortex-A57 и A53 с частотой 2,2 ГГц, а также графический ускоритель PowerVR G6200.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

NVIDIA Tegra K1 (Project Denver)

Компания NVIDIA решила перевести на 64-битную процессорную архитектуру свой уже существующий чип Tegra K1. Графическая составляющая у него и раньше была едва ли не лучшей среди конкурентов – GK20A с 192 ядрами Kepler, производительностью 365 GFLOPS и поддержкой ПК-стандартов графики DirectX 11.2 и OpenGL 4.4 (а не их мобильных аналогов).

Вместо же четырех 32-битных ядер Cortex-A15 (плюс пятое энергоэффективное ядро) обновленная однокристальная система Tegra K1 получит два ARMv8-совместимых ядра фирменной архитектуры NVIDIA Project Denver. Тактовая частота процессора вырастет до 2,5 ГГц, увеличится и объем кеша. Интересный факт: графика Tegra K1 примерно в пятьдесят раз мощнее Tegra 2.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Выводы

За один такт процессоры архитектуры ARMv8 способны обработать значительно больше данных. Это повышает как общую производительность процессора, так и производительность на ватт. Учитывая ограничения технологических норм (максимально допустимую тактовую частоту), переход на ARMv8 – это единственный возможный способ нарастить быстродействие мобильных процессоров, не выходя за разумные рамки энергопотребления и нагрева.

Естественно, пользу от архитектуры ARMv8 получат только те приложения для iOS и Android, которые способны задействовать все ресурсы новых процессоров. Оптимизация программ под новую архитектуру может быть как ручной, так и автоматической, на уровне компилятора.
Первое же Android-устройство с 64-битным ARM-процессором и 4 Гбайт ОЗУ – фаблет Samsung Galaxy Note 4 (чип Exynos 5433: по четыре ядра Cortex-A57 и A53) – представят уже 3 сентября. А вторым, возможно, станет планшетный компьютер HTC серии Google Nexus c процессором Tegra K1 Denver.

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Недавно мы рассказывали вам о том, как узнать DPI дисплея вашего Android устройства, которое необходимо знать для выбора правильного APK файла приложения, которое вы хотите установить на него вручную. Однако, при этом зачастую нужно знать еще и тип процессора: ARM, ARM64 или x86, который используется в вашем смартфоне или планшете.

Как оказалось, многие владельцы Android устройств не имеют никакого представления об этом. Поэтому сегодня речь пойдет о том, как можно получить эти сведения.

Самым простым способом узнать тип процессора на базе которого выполнен ваш смартфон, планшет или другое Android устройство будет установить на него приложение Droid Hardware Info.

Это приложение доступно для скачивания с этой страницы Google Play Маркет совершенно бесплатно и после его запуска вы увидите на экране смартфона следующую информацию (слева — данные о смартфоне Nexus 5, справа — информация о Nexus 6):

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

В самой первой строке с наименованием «CPU architecture» вы увидите одно из значений: ARMv7, AArch64 или x86, а в строке «Insructions Set»: armeabi, arm64 или x86abi.

Соответствие этих значений типу вашего процессора приведено ниже:

ARM: ARMv7 или armeabi

ARM64: AArch64 или arm64

x86: x86 или x86abi

Есть еще один достаточно простой способ узнать тип процессора вашего смартфона, планшета или другого устройства, который знаком пользователям Linux

Для этого вам нужно установить на свое устройство из Google Play Маркет приложение Terminal Emulator, запустить его и выполнить следующую команду:

На экране при этом отобразится информация о процессоре в следующей форме:

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

Как вы уже, наверняка поняли, нам нужна информация из самой первой строки «Processor:»

armeabi, armeabi-v7a, arm64-v8a, x86, x86_64, mips, mips64.

Ну, armeabi – вроде понятно. Эта вроде архитектура на всех (или почти на всех) реальных гаджетах.
x86 – вроде тоже понятно. Это прежде всего для Genymotion и прочих эмуляторов, где Android x86.

Будет ли идеальным решением просто построить либу под все ABI? А если нет возможности протестить везде, а только на x86 и armeabi?

И почему столько armов: armeabi, armeabi-v7a, arm64-v8a? Какой из них актуальнее? Как определить, какой поддерживается моим гаджетом? Могут ли быть несколько сразу?

1 ответ 1

x86 – это прежде всего процессоры Intel Atom, которые установлены в немалое число реальных устройств, а не эмуляторы. Эмулятор, как раз может эмулировать любую архитектуру, независимо от архитектуры процессора, на котором хостится – на то он и эмулятор. Вы можете в этом убедится сами, посмотрев на список образов для эмуляции:

Что такое arm64 v8a. Смотреть фото Что такое arm64 v8a. Смотреть картинку Что такое arm64 v8a. Картинка про Что такое arm64 v8a. Фото Что такое arm64 v8a

В последнее время устройства с процессорами на 64-ех битной архитектуре все чаще появляются в продаже, поэтому их тоже стоит учесть.

Точно проигнорировать можно mips/mips64

Узнать, какая архитектура у вашего устройства, можно по спецификации процессора, который оно использует. Например, Qualcomm Snapdragon 820 – ARM-V8A. Так же в маркете можно найти программы, которые покажут системную информацию.

Несколько архитектур ARM в одном процессоре быть не может, но каждая следующая включает предыдущую, то есть в ARM-V7 включен ARM, в ARM-V8 – ARM-V7. По факту, самая актуальная сейчас ARM-платформа – ARM-V7, на ней построено абсолютное большинство действующих процессоров, но ARM-V8 активно наступает.
Разница в ARM-архитектурах очевидна, каждая следующая – шаг в эволюции, добавляются новые возможности на уровне железного ядра.

Вы можете указать собрать библиотеку под все abi и это будет хорошим решением, если итоговый размер приложения вас устроит – каждая дополнительная платформа – новые файлы, которые имеют размер.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *