For the kernel debugging, the connection to the ARM9 processor takes place via the standard JTAG interface. Also implemented via the same interface is a remote console, which enables loading and unloading of kernel modules as well as control of the Linux system in the running state. New modules are recognized by the debugger and necessary symbol information will load automatically.
Troubleshooting within the application takes place via an Ethernet interface and a modified gdb -server in the target. The application Executable and Linking Format (ELF) files are thereby located on the Windows host computer. Via the Common Internet File System (CIFS), the Linux target accesses a Windows host directory, which therewith becomes part of the Linux target file system during development. This ensures data consistency between host and target.
Typical Linux applications access libraries only with their first use. In this case, the debugger loads the required additional symbol information. Furthermore, the breakpoints - already set from previous debug sessions in these libraries - will be activated.
With the help of the 'ARM9 Linux Support' complementary tools and the Universal Debug Engine, target Linux applications can be tested on normal Windows PCs. The add-on for ARM9 derivatives is available immediately. Corresponding solutions for Freescale's PowerArchitecture(TM) and Intel's XScale architecture are in preparation.