A presentation by Greg Law (Founder/ CEO of Undo) and Dewang Li (Solutions Architect at Synopsys) at the ACCU conference 2021. The talk takes a look at how some of the seemingly-magical modern Linux C++ tools actually work so that you can get the most from them.
C++ is a language and ecosystem that is unashamedly close to the metal, and to be an expert practitioner an understanding of compiler and OS fundamentals is essential, and this includes debugging and profiling tools. The last decade has seen a ‘cambrian explosion’ in tooling: Valgrind, perf, Address Sanitizer, rr, LiveRecorder, Coverity and cppcheck have either arrived or become mainstream and even good old GDB has come a long way. Greg gives an overview of how these amazing/magical tools are implemented often exploiting a combination of compiler, OS and CPU features. Contains details on ptrace, DWARF debug info, how static analyzers work, record and replay systems - so that you can select the right tool for the job and then get the most out of it.