Hi, I'm using 32bit Arch Linux and I'm trying to make a kernel using Intel's IA-32e mode.
Actually, I need to debug my kernel but I can't find any solution for my case...
I tried to use Vmware and VirtualBox for debugging 64bit kernel, but the cpu(Intel Duo T6600) of my old laptop doesn't support Virtualization for this.
Alternatively, I've tried to use qemu for testing my kernel and it was successful to only execute. But the problem is that I cannot debug my kernel.... I made debug symbol tables and I've cross-compiled gdb to support 64bit target, but It didn't any effect. When I make a breakpoint and jump to the instruction, the message "Cannot execute this command while the selected thread is running." is generated.
Code:
(gdb) symbol-file workspace/os/02.Kernel64/Debug/Kernel64.sym
Reading symbols from /home/chaoxifer/workspace/os/02.Kernel64/Debug/Kernel64.sym...done.
(gdb) b Main
Breakpoint 1 at 0x20001f: file ../Source/Main.c, line 28.
(gdb) c
Continuing.
Remote 'g' packet reply is too long: 10000080000000000000000000000000800000c000000000000000000000000080130000000000000000000000000000f8ff6f0000000000f0ff6f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f002000000000008200000008000000100000001000000010000000100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000801f0000
(gdb) stepi
Cannot execute this command while the selected thread is running.
I've found some threads that It is impossible to debug with using gdb + qemu(64bit target) on 32bit host....I cannot understand why...
Is there any solution for handle this??