|
via Udemy |
Go to Course: https://www.udemy.com/course/debugging-linux-kernel-in-deep-part-2/
User space processes can be debugged using gdb. With gdb you can single-step, stop, resume, put break-points, inspect memory and variables, look through call stack informationWhat if we can use gdb on running Linux Kernel.Problem:How can a gdb debug running kernel as it is just a user space process.Solution:Client/Server ArchitectureUser space programs can be debugged remotely using the combination of gdbserver on the target machine and gdb on the host machine/development machine.The Linux kernel has a GDB Server implementation called KGDB. It communicates with a GDB client over network or serial port connectionIn this course we will learn:How to setup KGDBVarious ways of getting the target into development machineSetting BreakpointsPrinting and Setting VariablesUsing a single serial port for both kgdb and console messagesGetting the kernel messages in gdb windowDebugging Linux Kernel Modules (In-Tree, out of tree)Use of GDB Scripts present in the Linux Kernel