Отладка Android-эмулятора goldifish ядра под Mac OS Mojave - PullRequest
0 голосов
/ 23 февраля 2019

Мне нужно отладить золотую рыбку ядра Android под MacOS Mojave.

Итак, я клонировал android-goldfish-3.18 и android-aosp-9.0.0_r22.

Я создал aosp под macos, покаЯдро под Debian.

Очевидно, что я собрал ядро ​​с символами отладки и другими флагами, адаптированными к отладке.

Тест 1: Запуск ядра внутри эмулятора AOSP.

эмулятор запуска:

emulator -selinux permissive -kernel ../../goldfish/arch/x86_64/boot/bzImage -show-kernel -verbose -qemu -monitor unix:/tmp/qemuSocket,server,nowait -s -append nokaslr

запуск GDB (версия 8.2.1 установлена ​​с brew):

gdb  vmlinux

GDB с точками останова, которые никогда не выполняются

Тест 2:Запуск ядра в эмуляторе SDK с устройством Android-9.

Запустите эмулятор:

emulator -selinux permissive -avd test7 -kernel ../../goldfish_paolo/arch/x86_64/boot/bzImage  -show-kernel -verbose -qemu -monitor unix:/tmp/qemuSocket,server,nowait -s -append nokaslr

Запустите GDB (версия 8.2.1 установлена ​​с Brew):

gdb vmlinux

gdb вставил точку останова => не может вставить аппаратную точку останова

С test2 эмулятор выдает здесь ошибку:

Operating system: Mac OS X
                  10.14.2 18C54
CPU: amd64
     family 6 model 158 stepping 10
     12 CPUs

Crash reason:  EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
Crash address: 0x0
Process uptime: 41 seconds

Thread 6 (crashed)
 0  qemu-system-x86_64 + 0x10f0542
    rax = 0x0000000000000000   rdx = 0x0000000000000000
    rcx = 0x0000700008c920ac   rbx = 0x0000000107564ea0
    rsi = 0x0000000105c93fa0   rdi = 0x0000000000000030
    rbp = 0x0000700008c8e040   rsp = 0x0000700008c8e020
     r8 = 0x0000700008c8d888    r9 = 0x0000700008c8db00
    r10 = 0x0000700008c920ac   r11 = 0x0000000000000206
    r12 = 0x0000000105c97857   r13 = 0x0000000000000000
    r14 = 0x0000700008c8e070   r15 = 0x0000700008c8e070
    rip = 0x000000010564e542
    Found by: given as instruction pointer in context

Кто-нибудь сталкивался с некоторыми из этих проблем?

Может кто-нибудь мне помочь?

...