Отладка ядра гостевой винды ARM64 под QEMU в WiDbg на хосте
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 16.01.23 22:17
Оценка: 150 (5)
Нашел где-то на просторах интернета образ диска с установленной Win 10.0.17134.0 ARM64, гоняю его под QEMU
Автор: Евгений Музыченко
Дата: 05.01.23
. Для связи с хостом по сети прикрутил драйвер virtio
Автор: Евгений Музыченко
Дата: 11.01.23
, через него же гоняю удаленную отладку пользовательского кода в WinDbg.

Долго пытался настроить отладку ядра через device/serial и chardev/pipe, но QEMU явно заточен под линуксовые pipes — оно вроде и подключается после запуска к каналу, созданному WinDbg, но затем намертво виснет.

Поскольку оказалось, что в ARM64-версии винды нет драйверов E1000, RTL8139 и NE2000, я как-то даже и не пытался поднять отладку через kdnet.dll. А сегодня вдруг подумалось, что даже если MS специально и переделывал kdnet под типовые сетевые адаптеры ARM-планшетов, то там вполне могла остаться и реализация для E1000. Настроил, запустил — а оно возьми и заработай.

Так что, ежели кому вдруг будет надо — ставьте в параметры QEMU "-nic user,model=e1000", задавайте в hostip гостевой системы адрес, на котором слушает WinDbg, и вперед.
Отредактировано 17.01.2023 9:57 Евгений Музыченко . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.