Cross Debugging on Linux : A History, Current State of the Art and Coming Improvements
summary
Chronicles the shift from board‑by‑board, serial debugging to a layered remote debug stack that actually exists: a multi‑transport debug server that connects over serial, SSH and network, supports 20+ board types and survives a 400+ testbed, uses hardware single‑step support where available and falls back to software trapping otherwise, integrates with Zephyr and Linux device trees, and shows measurable speed/stability improvements in current cross‑debug workflows.
AI-written summary · about
chapters (22)
- 0:00Intro
- 0:53Tech Topics of this presentation
- 3:46System mode
- 5:56Software Breakpoints
- 6:54Hardware breakpoints
- 8:23Emulating Singlestep
- 8:50Multithread debugging (user+system) nightmare
- 10:13Everything began in ... 2005
- 11:11Abandonned to switch to
- 12:51Achieved result
- 14:10Caveats
- 14:59A remote debug session (x86-64)
- 16:44Another Debug Session (x86-64 - ARM64)
- 18:48Debugging a big process on RP14
- 20:37Alternatives to GDB/gdbserver
- 23:49Debug on Zephyr
- 27:20You thought you knew valgrind, did you ?
- 28:05Valgrind profiling
- 28:45When should I use Valgrind ?
- 29:38LTTng alternatives
- 30:51LTTng in a nutshell
- 31:16LTTng: Trace Compass
related talks
16mA Unified Debug Server for Deeply Embedded Systems and GDB/LLDB
38mDebugging Embedded Linux
46mTools and Techniques to Debug an Embedded Linux System
11mHeterogeneous Multicore Debugging of RISC-V Cores in Complex Chips
43mTools and Techniques to Debug an Embedded Linux System
27mLook inside your SoC with Open SoC Debug
37mDebugging & Tracing and More Between Linux and RTOS on Heterogeneous ARM SoC
11mDemo: Heterogeneous Multicore Debugging of RISC-V Cores in Complex Chips
