Generally speaking there are two ways to do kernel debugging in Angstrom:
1. Using KGDB as a remote GDB agent.
2. Using a hardware JTAG to control the processor.
I will focus on KGDB. Here’s how KGDB debugging works:
KGDB debugging will require a BeagleBoard as client and a PC as host. On BeagleBoard it will run KGDB; on PC it will run GDB. GDB on PC will debug BeagleBoard using KGDB through COM port.
In order to do it, we need the following tools:
1. KGDB that runs on BeagleBoard (ARMv7).
2. GDB that runs on PC (x86 or x86-64) but can debug ARM architecture.
In the following posts I will step by step demonstrate how to use KGDB.