Android x86 armeabi v7a
Android OS на x86
В этой теме обсуждаются вопросы общие для всех Андроидов на платформе x86, конкретно проект портирования Android-х86, а также его братья, не имеющие отдельных тем обсуждения на нашем форуме.
Android в виртуальную машину | Сайт и Форум проекта Android-х86 | Android от Intel
Вопросы, касающиеся только проектов Phoenix OS , Remix OS x86 и Bliss-x86 , обсуждаются в своих темах.
За работоспособность ваших устройств ответственность несёте исключительно Вы. Задавая вопрос, постарайтесь указать следующую информацию .
- Hardware List — список совместимого оборудования
- Графическое ускорение нормально работает на видеоадаптерах от AMD и Intel (кроме GMA 500, GMA 600, GMA 3600, GMA 3650, т.к. они основаны на PowerVR).
Графика nVidia поддерживается начиная с Android-x86 4.4-R3; новое поколение начинает поддерживаться после выхода следующего. - Ситуация с поддержкой планшетов, Критическое замечание о звуке.
- Чипы, которые реализуют одновременно и WiFi, и Bluetooth работают хуже, чем отдельные.
- Если Вы не нашли в шапке или в листе совместимости версию для вашего компьютера/ноутбука (модификации железа), то следует попробовать разные версии и опытным путём подобрать оптимальную.
- Загрузочную флешку или диск необходимо записать с помощью Rufus, UNetbootin, LiLi, или WinImage. UltraISO использовать не рекомендуется потому, что созданные им флешки мало где грузятся.
Раздел под Android рекомендуется форматировать в ext3 или ext4 (для версии 5.0 Lollipop и новее) чтобы иметь >4ГБ места под свои нужды и избежать проблем с SuperSU и другим софтом. Форматирование раздела лучше произвести до установки Android сторонним ПО (Acronis, GParted, др.): родной установщик не всегда справляется с этой задачей.
title Android-x86 5.1-rc1
kernel /android-5.1-rc1/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 SRC=/android-5.1-rc1
initrd /android-5.1-rc1/initrd.img
title Android-x86 5.1-rc1 (Debug mode)
kernel /android-5.1-rc1/kernel root=/dev/ram0 androidboot.hardware=android_x86 DEBUG=2 SRC=/android-5.1-rc1
initrd /android-5.1-rc1/initrd.img
title Android-x86 5.1-rc1 (Debug nomodeset)
kernel /android-5.1-rc1/kernel nomodeset root=/dev/ram0 androidboot.hardware=android_x86 DEBUG=2 SRC=/android-5.1-rc1
initrd /android-5.1-rc1/initrd.img
title Windows
rootnoverify (hd0,1)
chainloader +1
Тут default указывает номер пункта, котоый будет выбран автоматически после истечения timeout секунд. root и rootnoverify указывают с какого диска, и с какого его раздела загружать выбраную операционную систему. Как и в случае с default, нумерация начинается с нуля. Параметры загрузки прописываются в конец строки, которая начинается со слова kernel. Такими параметрами можно повлиять на многие аспекты работы Андроида с железом. К примеру настроить работу с внешним монитором.
GRUB 2 — следующая версия GRUB. Разработчики писали GRUB 2 «с нуля», чтобы добиться переносимости и модульности.
Используется в образах Android-x86 для компьютеров с новым UEFI-BIOS.
Может хранить свои настроки в файле grub.cfg либо menu.lst. Обычно этот файл лежит на отдельном системном разделе EFI (ESP). Типичное содержимое:
set timeout=60
set gfxmode=1024×768
terminal_output gfxterm
Источник
Русские Блоги
Понимание arm64-v8a, armeabi-v7a, armeabi, x86 в Android
При разработке android вы часто сталкиваетесь с проблемой, в каком каталоге находится библиотека. Сегодня я кратко проанализирую различия между процессорами различных архитектур. Пока читатель может понять смысл этих каталогов, в него не нужно углубляться.
Сначала поговорим о разнице между 32-битным процессором и 64-битным процессором
64-битные и 32-битные относятся к процессоруОбщий регистрШирина данных.
Первоначально дизайн операционной системы отличается,64-битная операционная системаПервоначально был разработан для удовлетворения механического проектирования и анализа,3D анимация、Редактирование видеоИ создание, иНаучные вычисленияиВысокопроизводительные вычисленияКлиентам, которым требуется много памяти и производительность с плавающей запятой в приложениях и других областях, основное внимание уделяется запуску некоторых специальных отраслевых приложений, и32-битная операционная системаОн предназначен для обычных пользователей, и основное внимание уделяется ежедневному использованию прикладного программного обеспечения.
Так называемый64-битный процессор«Цифры», это число относится к GPR ЦП (регистры общего назначенияОбщий регистрШирина данных составляет 64 бита. Он может обрабатывать 64 бита данных одновременно (32 бита — 32 бита). Регистры используются ЦП для временного хранения данных и адресов и являются частью ЦП.
Программное обеспечение отличается
64-битная операционная системаОсновным соображением является запуск специального отраслевого прикладного программного обеспечения, и в этом программном обеспечении используются 64-разрядные вычисления, поэтому оно может работать только64-битная операционная системаДалее. 32-разрядное прикладное программное обеспечение — это, в основном, некоторое ежедневное программное обеспечение, такое как QQ, MSN и т. Д., Но 32-разрядное прикладное программное обеспечение также совместимо с 64-разрядной операционной системой, но это также связано с соображениями перехода.
Разный контроль над памятью
32-битная операционная системаФактическая идентифицируемая память составляет 3,5 ГБ, и 64-разрядная операционная система может фактически поддерживать 128 ГБ памяти, что также является основным отличием 64-разрядной и 32-разрядной системы по внешнему виду и фактическому значению.
1. Являются ли lib и libs одинаковыми?
Ссылка на то, что помещается в lib, и на то, что помещается в lib, включена.
Файлы, размещенные в библиотеках, автоматически включаются Eclipse. Так что не ставьте API в библиотеки.
Содержимое lib не будет упаковано в APK, а содержимое libs будет упаковано в APK
Что такое призрак библиотеки .so? Скомпилированная NDK библиотека динамических ссылок.
Некоторые важные алгоритмы шифрования или основные протоколы обычно пишутся на языке c, а затем вызываются в java. Это позволяет избежать просмотра исходного кода приложения после декомпиляции.
3. Как хранить библиотеку .so?
Правильная позиция для размещения файла .so — это два предложения:
• Чтобы уменьшить размер apk, сохраняются только две папки armeabi и armeabi-v7a, а количество .so в этих двух папках одинаковое.
• Для стороннего .so, который предоставляет только версию armeabi, скопируйте его в папку armeabi-v7a, как она есть
НО, при работе с файлами .so существует простое, но неизвестное важное правило.
Вы должны предоставить .so файлы, оптимизированные для каждого ABI, насколько это возможно, но поддерживаются либо все, либо ни один из них: вам не следует смешивать их. Вы должны предоставить соответствующий файл .so для каждого каталога ABI.
В-четвертых, какова роль armeabi под libs?
Хранит библиотеку .so, которая в основном совместима с различными устройствами. Также можно сказать, что она специально совместима с архитектурой процессора различных телефонов Android.
Давайте поговорим о процессоре Android
Тип процессора устройства Android (обычно называемый «ABI»)
Ранние системы Android почти только поддерживали архитектуру процессора ARMv5. Знаете ли вы, сколько типов она поддерживает сейчас? 7 видов!
В настоящее время система Android поддерживает следующие семь различных архитектур ЦП: ARMv5, ARMv7 (с 2010 года), x86 (с 2011 года), MIPS (с 2012 года), ARMv8, MIPS64 и x86_64 (с 2014 года), каждый связан с соответствующим ABI.
Двоичный интерфейс приложения определяет, как двоичные файлы (особенно файлы .so) выполняются на соответствующей системной платформе, от используемого набора инструкций, выравнивания памяти до доступного Библиотека системных функций. В системе Android каждая архитектура процессора соответствует ABI: armeabi, armeabi-v7a, x86, mips, arm64-v8a, mips64, x86_64.
Как показано ниже:
Анализ каждой версии выглядит следующим образом:
• mips / mips64: редко используется в мобильных телефонах и может игнорироваться
• x86 / x86_64: телефоны на базе x86 будут включать в себя инструмент динамического транскодирования набора команд под названием Houdini, предоставляемый Intel для обеспечения совместимости с arm .so, и для x86 ниже 1% Доля рынка, два x86, связанных с. Также можно игнорировать
• armeabi: ARM v5 Это довольно старая версия, в которой отсутствует аппаратная поддержка для вычислений с плавающей запятой и существуют узкие места в производительности, когда требуется большое количество вычислений.
• armeabi-v7a: текущая основная версия ARM v7
• arm64-v8a: поддержка 64-бит
Так называемая архитектура 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-разрядный процессор ARM и 64-разрядный процессор компьютера — это две несовместимые концепции: он не является 64-разрядным изначально совместимым с 32-разрядными программами, а через 64-разрядный процессор. Интегрированная 32-битная архитектура для запуска 32-битных программ. Проще говоря, вместо запуска 32-битных программ в 64-битной форме, он запускает 32-битные программы в 32-битной форме.
Новые 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-разрядная программа, И при этом это не может быть установлено.
Android L с самого начала поддерживал только 32-битные и 64-битные виртуальные машины ART.С 64-битными процессорами 64-битное программное обеспечение работает оправданно Но проблема возникла снова: ни один поставщик программного обеспечения не хотел разрабатывать 64-битные программы.
ARMv8 — хороший набор команд, поддерживающий как будущие 64-битные программы, так и обратную совместимость с существующими 32-битными программами. Благодаря поддержке ARMv8 будущие 64-разрядные мобильные операционные системы, такие как Android L 64bit, могут легко и эффективно поддерживать существующие 32-разрядные приложения, и вам не придется беспокоиться о проблемах совместимости.
В ноябре 2011 года ARM выпустила некоторые технические подробности о ARMv8, 64-разрядной архитектуре процессора нового поколения (также известной как Cortex-A57A53), которая представляет будущее мобильных процессоров, входящих в 64-разрядные ряды. Мы должны прояснить, что в самом ARM нет технологии проектирования 64-битных чипов, он разработал ее, приобретя некоторые права на использование технологии архитектуры процессора MIPS64 и объединив некоторые функции ARM. Другими словами: из трех основных архитектур MIPS, ARM и X86 единственный ARM без 64-битной технологии был 64-битным благодаря приобретению MIPS.
Источник