Chapter 5. Debugging, Tracing, and Profiling

In this chapter, we will cover the following recipes:

  • Analyzing core dumps
  • Native GDB debugging
  • Cross GDB debugging
  • Using strace for application debugging
  • Using the kernel's performance counters
  • Using static kernel tracing
  • Using dynamic kernel tracing
  • Using dynamic kernel events
  • Exploring Yocto's tracing and profiling tools
  • Tracing and profiling with perf
  • Using SystemTap
  • Using OProfile
  • Using LTTng
  • Using blktrace

Introduction

Debugging an embedded Linux product is a common task not only during development, but also in deployed production systems.

Application debugging in embedded Linux is different from debugging in a traditional embedded device in that we don't have a flat memory model with an operating system and applications ...

Get Embedded Linux Projects Using Yocto Project Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.