Эмуляция arm для android x86

VirtualBox — как альтернатива эмулятору ARM в Android SDK. Установка, настройка, подключение к среде разработки Eclipse и интернету

Наверняка многие из вас имели дело с эмулятором, поставляемым в комплекте Android SDK от компании Google. И, вероятно, очень многих разочаровала крайне медленная работа данного эмулятора, начиная от загрузки и заканчивая медленной работой вашего приложения. Речь идет об эмуляторе системы Android с поддержкой команд ARM-процессоров. Но ведь есть же в SDK образы системы Android для x86 процессоров, скажут многие, и будут правы. Но дело тут в том, что для эмуляции OS Android с поддержкой виртуализации x86-процессоров необходимо приложение HAXM от Intel, которое отказывается устанавливаться на компьютеры с процессорами фирмы AMD. Есть ли выход из данной ситуации для владельцев систем на базе AMD?

Ответ есть! И он заключается в использовании VirtualBox — свободнораспространяемой системы эмуляции с поддержкой виртуализации от фирмы Oracle. И не верьте тем, кто говорит, что настроить интернет на виртуальной машине можно только со специальным образом Андроида с поддержкой Ethernet. Поддержка Ethernet’а есть везде, просто в меню настроек Андроида нет такого пункта.

Что же нам нужно для успешной отладки своих приложений в виртуальной машине VirtualBox и настройки интернета?

Для этого необходимо скачать и установить последнюю версию VirtualBox’а, а так же скачать нужные вам образы ОС Android вот отсюда: http://www.android-x86.org/download

Запускаем VirtualBox и создаем виртуальную машину с такими параметрами:

Выделяем 256 Мб оперативной памяти, 128 Мб для видеоадаптера и создаём виртуальный диск размером 1 Гб (можно большего и меньшего размера под ваши потребности) типа VHD.

В настройках виртуальной машины подключаем скачанный образ системы Android:

Запускаем нашу виртуальную машину и видим:

Выбираем установку ОС «Андроид» на наш виртуальный жесткий диск и жмем Enter.

Далее выбираем первый пункт меню «Create/Modify partitions» и опять жмём Enter.

Теперь нужно создать первичный раздел Linux.

Выбираем пункт New, затем Primary, видим что-то вроде «Size (in MB): 1069,29» и жмём Enter, далее опять нажимаем Ввод на пункте Bootable и затем выбираем пункт Write.

На вопрос записать ли таблицу разделов на жесткий диск, вводим слово «yes».

После жмём на пункт Quit и видим следующее меню:

Выбираем первый пункт меню и далее выбираем пункт меню ext3 и жмём Ввод, далее нас спросят «Do you want to install boot loader GRUB?» — выбираем Yes, нажимаем Ввод. Далее нас спросят, «хотим ли мы, чтобы директория /system была доступна для чтения/записи?» — также выбираем Yes и нажимаем клавишу Ввод.

Если вы сделали все правильно, то вы увидите вот такую картинку с процессом установки ОС «Андроид» на виртуальный диск:

Поздравляю! Вы только что установили ОС «Андроид» для систем на базе x86-процессоров на виртуальный диск вашей виртуальной машины.

Но радоваться пока еще рано.

Теперь вы должны увидеть следующее окно:

Выбирите в этом окне пункт меню Машина, затем пункт Закрыть. нажмите на чекбокс «Выключить» и нажмите кнопку Ok.

После того, как вы выключили виртуальную машину, вы должны убрать из виртуального CD-привода образ с системой Андроид: Изъять диск из привода. Он нам больше не понадобится.

Далее в консоли либо в файл-менеджере типа Far создаем командный файл с расширением .bat, например s.bat, и прописываем в нём следующие команды:

Этим мы устанавливаем доступные для нашей виртуальной системы разрешения экрана, которые нам предпочтительно использовать. Жмём Ввод, и все изменения будут внесены в конфигурационные файлы виртуальной машины. Обратите внимание на имя вашей виртуальной машины, в моём примере это «Android 4.0 RC2».

После этого запускаем нашу виртуальную машину:

На первом пункте меню «Android-x86 4.0-RC2» нажимаем клавишу с латинской буквой «A», появится меню с конфигурационной строкой загрузки ОС в конце которой
будет написано «SRC=/android-4.0-RC2», после букв RC2 ставим пробел и пишем «vga=ask» и жмём Ввод. Потом еще раз Ввод. Появится вот такой экран:

Видим 4 созданные нами ранее видеорежима. Набираем на клавиатуре «361» и давим Ввод:

Далее настраиваете ваш Андроид как вам удобно. Не забывайте в меню виртуальной машины выбрать пункт «Машина» и пункт «Выключить интеграцию мыши». После этого вы можете кликнуть левой кнопкой мыши на окне с Андроидом и управлять им с помощью мышки. Выход из этого режима (по умолчанию) клавиша правый Ctrl.

Читайте также:  Как удалить гугл аккаунт с андроида леново

Если Андроид впал в спячку и не реагирует на мышку, то пробудить его можно клавишей «контекстное меню» (нарисовано меню со стрелкой курсора), которая должна располагаться рядом с клавишей «Windows» (с изображением флага).

А теперь самое время подключить нашу среду разработки к виртуальной машине!

В меню окна нашей виртуальной машины жмем «Машина», «Настроить. », «Сеть», «Проброс портов», давим на иконку «+» и создаем новое правило для проброса портов:

IP адрес хоста 127.0.0.1, а IP гостя в моём случае 10.0.2.15. Узнать IP гостя можно следующим образом: в окне с Андроидом жмём комбинацию «Alt+F1» (выход из консоли «Alt+F7»). Попадаем в консоль, где вводим команду netcfg и давим Ввод:

Теперь после проделанных ранее манипуляций, пишем в консоли Windows «adb connect 127.0.0.1:5556» и вуаля!

А теперь самое вкусное!

Смотрим в настройках вашей сети DNS адреса провайдера,

Нажимаем в окне Андроида «Alt+F1» и вводим (в моем случае это DNS адрес 80.243.64.67):

(Вы должны ввести DNS адрес своего провайдера интернета).

Источник

Эмуляция arm для android x86

Описание:
Порт qemu-system-arm под Android.

Описание (переведённая на русский выдержка из документации):

Для платы ARM Integrator/CP эмулируются следующие устройства:
— Процессор ARM926E, ARM1026E, ARM946E, ARM1136 или Cortex-A8
— Два UART PL011
— Сетевая карта SMC 91c111
— LCD-контроллер PL110
— PL050 KMI с PS/2-клавиатурой и мышью
— Интерфейс MMC PL181 и карта памяти

Для платы ARM Versatile эмулируются следующие устройства:
— Процессор ARM926E, ARM1136 или Cortex-A8
— Векторный контроллер прерываний PL190
— Четыре UART PL011
— Сетевая карта SMC 91c111
— LCD-контроллер PL110
— PL050 KMI с PS/2-клавиатурой и мышью
— Шина PCI. Обратите внимание, что она обеспечивает доступ лишь к пространству памяти, но не IO. Это означает, что некоторые устройства (например, ne2k_pci NIC) непригодны для использования, а другие (например, rtl8139 NIC) могут использоваться только в том случае, если гостевые драйверы используют управляемые регистры памяти.
— PCI OHCI USB-контроллер
— Адаптер LSI53C895A PCI SCSI с поддержкой жёстких и компакт-дисков
— Интерфейс MMC PL181 и карта памяти

Поддерживается несколько вариантов ARM RealView, включая EB, PB-A8 и PBX-A9. Из-за особенностей взаимодействия с загрузчиком, на этих платах будут работать только определенные конфигурации ядра Linux.

Ядра для платы PB-A8 должны иметь включенными параметры CONFIG_REALVIEW_HIGH_PHYS_OFFSET и быть рассчитаны 512 МБ ОЗУ. Ядра для платы PBX-A9 должны иметь включенным параметр CONFIG_SPARSEMEM и отключенным параметр CONFIG_REALVIEW_HIGH_PHYS_OFFSET, а также быть рассчитаны на 1024 МБ ОЗУ.

Эмулируются следующие устройства:
— Процессор ARM926E, ARM1136, ARM11MPCore, Cortex-A8 или Cortex-A9 MPCore
— Контроллер прерываний ARM AMBA
— Четыре UART PL011
— Сетевая карта SMC 91c111 или SMSC LAN9118
— LCD-контроллер PL110
— PL050 KMI с PS/2-клавиатурой и мышью
— Шина PCI
— PCI OHCI USB-контроллер
— Адаптер LSI53C895A PCI SCSI с поддержкой жёстких и компакт-дисков
— Интерфейс MMC PL181 и карта памяти

Для КПК на базе XScale («Spitz», «Akita», «Borzoi» и «Terrier») эмулируются следующие устройства:
— Intel PXA270 SoC (ядро ARM V5TE)
— Флэш-память NAND
— Жесткий диск IBM/Hitachi DSCM в PXA PCMCIA-слоте — кроме «Akita»
— Интегрированный OHCI USB-контроллер
— Интегрированный LCD-контроллер
— Встроенные часы реального времени
— Cенсорный экран TI ADS7846 на шине SSP
— Аналого-цифровой преобразователь Maxim MAX1111 на шине I2C
— Контроллер клавиатуры, подключенный к GPIO, и светодиоды
— Карта памяти, подключенная к интерфейсу PXA MMC/SD
— Три встроенных UART
— Декодер WM8750 на шине I2C или I2S

Для КПК Palm Tungsten E (кодовое название «Cheetah») эмулируются следующие устройства:
— Texas Instruments OMAP310 SoC (ядро ARM 925T)
— ROM и RAM-память (образ прошивки может быть загружен с помощью -option-rom)
— Интегрированный LCD-контроллер
— Встроенные часы реального времени
— Сенсорный экран TI TSC2102i / аналого-цифровой преобразователь / декодер, подключенные через интерфейс MicroWire или I2S
— Матричная клавиатура, подключенная к GPIO
— Карта памяти, подключенная к интерфейсу OMAP MMC/SD
— Три встроенных UART

Читайте также:  Как соединить айфон с андроидом через блютуз

Для планшетов Nokia N800 и N810 (также известны как RX-34 и RX-44/48) эмулируются следующие устройства:
— Texas Instruments OMAP2420 SoC (ядро ARM 1136)
— ОЗУ и энергонезависимая флэш-память OneNAND
— Дисплей, подключенный к удаленному кадровому буферу EPSON, видеоконтроллер OMAP и контроллер LS041y3 MIPI DBI-C
— Сенсорные экраны TI TSC2301 (в N800) или TI TSC2005 (в N810), управляемые шиной SPI
— QWERTY-клавиатура, управляемая платой National Semiconductor LM8323 на шине I2C
— Карта памяти, подключенная к интерфейсу OMAP MMC/SD
— Три встроенных OMAP UART и консоль отладки STI
— Приемопередатчик Bluetooth(R) и HCI, подключенные к UART
— USB-контроллер Mentor Graphics «Inventra», встроенный в чип TI TUSB6010 — поддерживается только режим USB-хоста
— Датчик температуры TI TMP105, управляемый шиной I2C
— Плата управления питанием TI TWL92230C с часами реального времени на шине I2C
— Многоцелевые чипы Nokia RETU и TAHVO с часами реального времени, подключенные через CBUS

Для Luminary Micro Stellaris LM3S811EVB эмулируются следующие устройства:
— Ядро процессора Cortex-M3.
— 64 КБ флэш-памяти и 8 КБ SRAM.
— Таймеры, UART, ADC и шина I2C.
— OSRAM Pictiva 96×16 OLED с контроллером SSD0303 на шине I2C.

Для Luminary Micro Stellaris LM3S6965EVB эмулируются следующие устройства:
— Ядро процессора Cortex-M3.
— 256 КБ флэш-памяти и 64 КБ SRAM.
— Таймеры, UART, ADC, интерфейсы I2C и SSI.
— OSRAM Pictiva 96×16 OLED с контроллером SSD0323, подключенным через SSI.

Для интернет-радио Freecom MusicPal эмулируются следующие устройства:
— Ядро Marvell MV88W8618 ARM
— 32 МБ RAM, 256 КБ SRAM, 8 МБ флэш-памяти
— До двух 16550 UART
— Сетевая карта MV88W8xx8
— Звуковая плата MV88W8618, декодер WM8750 и микшер
— Дисплей 128×64 с регулировкой яркости
— Две кнопки, два колесика навигации с функциями кнопок

Модели Siemens SX1 v1 и v2 (по умолчанию). Эмулируются следующие устройства:
— Texas Instruments OMAP310 SoC (Ядро ARM 925T)
— ROM и RAM-память (образ прошивки может быть загружен с помощью -pflash), V1 (16 и 8 МБ), V2 (32 МБ)
— Интегрированный LCD-контроллер
— Встроенные часы реального времени
— Карта памяти, подключенная к интерфейсу OMAP MMC/SD
— Три встроенных UART

Тестовый образ Linux 2.6 доступен на сайте QEMU. Более подробную информацию можно найти в архиве списка рассылки QEMU.

Следующие параметры относятся к эмуляции ARM:

-semihosting
Включить эмуляцию системных вызовов посредством semihosting.
В случае с ARM это реализация интерфейса «Angel».
Обратите внимание, что гостевой ОС предоставляется прямой доступ к файловой системе основной машины.

Скачать:
Версия 4.1.0
версия: 3.0.1
limbo-android-arm-kvm-release-3.0.1-beta-arm.apk ( 13.23 МБ )

версия: 3.0.0
limbo-androidarmv7-arm-kvm-release.3.0.0.apk ( 8.36 МБ )

версия: 2.11.0
limbo-androidarmv7-arm-release.2.11.0.apk ( 9.61 МБ )
limbo-androidarmv8-arm-release.2.11.0.apk ( 9.46 МБ )

версия: 2.10.0
limbo-androidarm-arm-release.2.10.0.apk ( 8.91 МБ )
limbo-androidx86-arm-release.2.10.0.apk ( 9.4 МБ )

Источник

Эмуляция arm для android x86

Описание:
Порт qemu-system-arm под Android.

Описание (переведённая на русский выдержка из документации):

Для платы ARM Integrator/CP эмулируются следующие устройства:
— Процессор ARM926E, ARM1026E, ARM946E, ARM1136 или Cortex-A8
— Два UART PL011
— Сетевая карта SMC 91c111
— LCD-контроллер PL110
— PL050 KMI с PS/2-клавиатурой и мышью
— Интерфейс MMC PL181 и карта памяти

Для платы ARM Versatile эмулируются следующие устройства:
— Процессор ARM926E, ARM1136 или Cortex-A8
— Векторный контроллер прерываний PL190
— Четыре UART PL011
— Сетевая карта SMC 91c111
— LCD-контроллер PL110
— PL050 KMI с PS/2-клавиатурой и мышью
— Шина PCI. Обратите внимание, что она обеспечивает доступ лишь к пространству памяти, но не IO. Это означает, что некоторые устройства (например, ne2k_pci NIC) непригодны для использования, а другие (например, rtl8139 NIC) могут использоваться только в том случае, если гостевые драйверы используют управляемые регистры памяти.
— PCI OHCI USB-контроллер
— Адаптер LSI53C895A PCI SCSI с поддержкой жёстких и компакт-дисков
— Интерфейс MMC PL181 и карта памяти

Поддерживается несколько вариантов ARM RealView, включая EB, PB-A8 и PBX-A9. Из-за особенностей взаимодействия с загрузчиком, на этих платах будут работать только определенные конфигурации ядра Linux.

Ядра для платы PB-A8 должны иметь включенными параметры CONFIG_REALVIEW_HIGH_PHYS_OFFSET и быть рассчитаны 512 МБ ОЗУ. Ядра для платы PBX-A9 должны иметь включенным параметр CONFIG_SPARSEMEM и отключенным параметр CONFIG_REALVIEW_HIGH_PHYS_OFFSET, а также быть рассчитаны на 1024 МБ ОЗУ.

Читайте также:  Android studio viewpager2 пример

Эмулируются следующие устройства:
— Процессор ARM926E, ARM1136, ARM11MPCore, Cortex-A8 или Cortex-A9 MPCore
— Контроллер прерываний ARM AMBA
— Четыре UART PL011
— Сетевая карта SMC 91c111 или SMSC LAN9118
— LCD-контроллер PL110
— PL050 KMI с PS/2-клавиатурой и мышью
— Шина PCI
— PCI OHCI USB-контроллер
— Адаптер LSI53C895A PCI SCSI с поддержкой жёстких и компакт-дисков
— Интерфейс MMC PL181 и карта памяти

Для КПК на базе XScale («Spitz», «Akita», «Borzoi» и «Terrier») эмулируются следующие устройства:
— Intel PXA270 SoC (ядро ARM V5TE)
— Флэш-память NAND
— Жесткий диск IBM/Hitachi DSCM в PXA PCMCIA-слоте — кроме «Akita»
— Интегрированный OHCI USB-контроллер
— Интегрированный LCD-контроллер
— Встроенные часы реального времени
— Cенсорный экран TI ADS7846 на шине SSP
— Аналого-цифровой преобразователь Maxim MAX1111 на шине I2C
— Контроллер клавиатуры, подключенный к GPIO, и светодиоды
— Карта памяти, подключенная к интерфейсу PXA MMC/SD
— Три встроенных UART
— Декодер WM8750 на шине I2C или I2S

Для КПК Palm Tungsten E (кодовое название «Cheetah») эмулируются следующие устройства:
— Texas Instruments OMAP310 SoC (ядро ARM 925T)
— ROM и RAM-память (образ прошивки может быть загружен с помощью -option-rom)
— Интегрированный LCD-контроллер
— Встроенные часы реального времени
— Сенсорный экран TI TSC2102i / аналого-цифровой преобразователь / декодер, подключенные через интерфейс MicroWire или I2S
— Матричная клавиатура, подключенная к GPIO
— Карта памяти, подключенная к интерфейсу OMAP MMC/SD
— Три встроенных UART

Для планшетов Nokia N800 и N810 (также известны как RX-34 и RX-44/48) эмулируются следующие устройства:
— Texas Instruments OMAP2420 SoC (ядро ARM 1136)
— ОЗУ и энергонезависимая флэш-память OneNAND
— Дисплей, подключенный к удаленному кадровому буферу EPSON, видеоконтроллер OMAP и контроллер LS041y3 MIPI DBI-C
— Сенсорные экраны TI TSC2301 (в N800) или TI TSC2005 (в N810), управляемые шиной SPI
— QWERTY-клавиатура, управляемая платой National Semiconductor LM8323 на шине I2C
— Карта памяти, подключенная к интерфейсу OMAP MMC/SD
— Три встроенных OMAP UART и консоль отладки STI
— Приемопередатчик Bluetooth(R) и HCI, подключенные к UART
— USB-контроллер Mentor Graphics «Inventra», встроенный в чип TI TUSB6010 — поддерживается только режим USB-хоста
— Датчик температуры TI TMP105, управляемый шиной I2C
— Плата управления питанием TI TWL92230C с часами реального времени на шине I2C
— Многоцелевые чипы Nokia RETU и TAHVO с часами реального времени, подключенные через CBUS

Для Luminary Micro Stellaris LM3S811EVB эмулируются следующие устройства:
— Ядро процессора Cortex-M3.
— 64 КБ флэш-памяти и 8 КБ SRAM.
— Таймеры, UART, ADC и шина I2C.
— OSRAM Pictiva 96×16 OLED с контроллером SSD0303 на шине I2C.

Для Luminary Micro Stellaris LM3S6965EVB эмулируются следующие устройства:
— Ядро процессора Cortex-M3.
— 256 КБ флэш-памяти и 64 КБ SRAM.
— Таймеры, UART, ADC, интерфейсы I2C и SSI.
— OSRAM Pictiva 96×16 OLED с контроллером SSD0323, подключенным через SSI.

Для интернет-радио Freecom MusicPal эмулируются следующие устройства:
— Ядро Marvell MV88W8618 ARM
— 32 МБ RAM, 256 КБ SRAM, 8 МБ флэш-памяти
— До двух 16550 UART
— Сетевая карта MV88W8xx8
— Звуковая плата MV88W8618, декодер WM8750 и микшер
— Дисплей 128×64 с регулировкой яркости
— Две кнопки, два колесика навигации с функциями кнопок

Модели Siemens SX1 v1 и v2 (по умолчанию). Эмулируются следующие устройства:
— Texas Instruments OMAP310 SoC (Ядро ARM 925T)
— ROM и RAM-память (образ прошивки может быть загружен с помощью -pflash), V1 (16 и 8 МБ), V2 (32 МБ)
— Интегрированный LCD-контроллер
— Встроенные часы реального времени
— Карта памяти, подключенная к интерфейсу OMAP MMC/SD
— Три встроенных UART

Тестовый образ Linux 2.6 доступен на сайте QEMU. Более подробную информацию можно найти в архиве списка рассылки QEMU.

Следующие параметры относятся к эмуляции ARM:

-semihosting
Включить эмуляцию системных вызовов посредством semihosting.
В случае с ARM это реализация интерфейса «Angel».
Обратите внимание, что гостевой ОС предоставляется прямой доступ к файловой системе основной машины.

Скачать:
Версия 4.1.0
версия: 3.0.1
limbo-android-arm-kvm-release-3.0.1-beta-arm.apk ( 13.23 МБ )

версия: 3.0.0
limbo-androidarmv7-arm-kvm-release.3.0.0.apk ( 8.36 МБ )

версия: 2.11.0
limbo-androidarmv7-arm-release.2.11.0.apk ( 9.61 МБ )
limbo-androidarmv8-arm-release.2.11.0.apk ( 9.46 МБ )

версия: 2.10.0
limbo-androidarm-arm-release.2.10.0.apk ( 8.91 МБ )
limbo-androidx86-arm-release.2.10.0.apk ( 9.4 МБ )

Источник

Оцените статью