Sign In
Forgot Password?
Sign In | | Create Account

Best Practices for Debugging Embedded Software

Go URL

Overview

Debugging an embedded program is both like and unlike debugging other kinds of software. Although the same tools are usually available, embedded debugging is less forgiving - a bad pointer dereference can crash the whole machine - and sometimes mystifying - for instance, if your target's "I/O subsystem" is a single LED. In this presentation we will review standard debugging techniques and how they work for embedded debugging particularly, then move on to some more advanced gadgets in the toolbox, and wrap up by exposing some of the tricks that your embedded system will try to play on you

What You Will Learn

  • The "eternal truths" of debugging
  • How programming is like forensic science
  • When to use the host instead of the target
  • When to use printf
  • The proper use of breakpoints and single-stepping
  • The value of display options
  • How programs violate abstraction layers
  • How software systems do sleight of hand

About the Presenter

Presenter Image Stan Shebs

Stan Shebs manages the debugger team in Mentor Graphic's Embedded Software Division. He has been a maintainer of the GNU Debugger GDB since 1994, first at Cygnus Solutions, then at Apple and CodeSourcery. In all of these positions, support has been an essential part of the job, and he has worked with hundreds of embedded developers, at every phase of the development process, from architecture simulator and bringup of first silicon, to squeezing out the maximum performance from a mature system. He continues to be fascinated by how bits of program code can result in real-world actions.

Who Should Attend

  • Working developers who have their programs mostly running, and who want to step up their proficiency at finishing the job

Products Covered

Agenda

 

Technical Requirements

What do I need to watch and hear this web seminar?

Mentor Graphics’ web seminars are delivered using Adobe Connect. You will be able to login to the seminar room 15 minutes prior to the start time on the day of the presentation. You can hear the audio using your computer’s speakers via VoIP (Voice over IP) and background music will play prior to the beginning of the presentation.

Detailed system requirements

Microsoft® Windows

  • Windows XP, Windows Vista, Windows 7, Windows 8
  • Microsoft Internet Explorer 7, 8, 9, 10; Mozilla Firefox; Google Chrome
  • Adobe® Flash® Player 10.3 or later
  • 1.4GHz Intel® Pentium® 4 or faster processor and 512MB of RAM

Mac OS X, 10.5, 10.6, 10.7.4, 10.8

  • Mozilla Firefox; Apple Safari; Google Chrome
  • Adobe Flash Player 10.3
  • 1.83GHz Intel Core™ Duo or faster processor and 512MB of RAM

Linux

  • Ubuntu 10.04, 11.04; Red Hat Enterprise Linux 6; OpenSuSE 11.3
  • Mozilla Firefox
  • Adobe Flash Player 10.3

Mobile

  • Apple supported devices: iPad, iPad2, iPad3; iPhone 4 and 4 S, iPod touch (3rd generation minimum recommended)
  • Apple supported OS versions summary: iOS 4.3.x, 5.x, or 6.x (5.x or higher recommended)
  • Android supported devices: Samsung Galaxy Tab 2 (10.1), Samsung Galaxy Tab (10.1), ASUS Transformer, Samsung Galaxy Tab (7”) , Motorola Xoom, Motorola Xoom 2, Nexus 7
  • Android supported OS versions summary: 2.2 and higher
  • Android AIR Runtime required: 3.2 or higher

Additional requirements

  • Bandwidth: 512Kbps for participants, meeting attendees, and end users of Adobe Connect applications. Connection: DSL/cable (wired connection recommended) for Adobe Connect presenters, administrators, trainers, and event and meeting hosts.

 
Online Chat