GDB – GNU Debugger Training

«
»

Course Name
GDB – GNU Debugger Training

Course Overview
This course on GDB – GNU Debugger Training involves lectures and laboratory exercises aimed at providing details of the internals of GNU Debugger. GNU Debugger is the de-facto standard debugger on GNU/Linux and many variants of Unix. In the last 25 years of its existence, it has seen a rapid growth and wide acceptability.

advertisement

Target Audience

  • Anybody who has some experience of either working in debugger or teaching debugger
  • Developers, Testers/QA and Verification Engineers who are working on or keen to know GNU Debugger

Fee, Schedule & Registration
Click Here for GDB – GNU Debugger Training course training schedule, fee and registration information.

GDB – GNU Debugger Training Course Outline

A Sample gdb Session
Getting In and Out of gdb
Invoking gdb
Quitting gdb
Shell Commands
Logging Output
gdb Commands
Command Syntax
Command Completion
Getting Help
Running Programs Under gdb
Compiling for Debugging
Starting your Program
Your Program’s Arguments
Your Program’s Environment
Your Program’s Working Directory
Your Program’s Input and Output
Debugging an Already-running Process
Killing the Child Process
Debugging Multiple Inferiors and Programs
Debugging Programs with Multiple Threads
Debugging Forks
4Setting a Bookmark to Return to Later
Stopping and Continuing
Breakpoints, Watchpoints, and Catchpoints
Continuing and Stepping
Signals
Stopping and Starting Multi-thread Programs
Running programs backward
Recording Inferior’s Execution and Replaying It
Examining the Stack
Stack Frames
Backtraces
Selecting a Frame
Information About a Frame
Examining Source Files
Printing Source Lines
Specifying a Location
Editing Source Files
Searching Source Files
Specifying Source Directories
Source and Machine Code
Examining Data
Expressions
Ambiguous Expressions
Program Variables
Artificial Arrays
Output Formats
Examining Memory
Automatic Display
Print Settings
Value History
Convenience Variables
Registers
Floating Point Hardware
Vector Unit
Operating System Auxiliary Information
Memory Region Attributes
Copy Between Memory and a File
How to Produce a Core File from Your Program
Character Sets
Caching Data of Remote Targets
Search Memory
Debugging Optimized Code
Inline Functions
C Preprocessor Macros
Tracepoints
Commands to Set Tracepoints
Using the Collected Data
Convenience Variables for Tracepoints
Using Trace Files
Debugging Programs That Use Overlays
How Overlays Work
Overlay Commands
Automatic Overlay Debugging
Overlay Sample Program
Using gdb with Different Languages
Switching Between Source Languages
Displaying the Language
Type and Range Checking
Supported Languages
Unsupported Languages
Examining the Symbol Table
Altering Execution
Assignment to Variables
Continuing at a Different Address
Giving your Program a Signal
Returning from a Function
Calling Program Functions
Patching Programs
gdb Files
Commands to Specify Files
Debugging Information in Separate Files
Errors Reading Symbol Files
GDB Data Files
Specifying a Debugging Target
Active Targets
Commands for Managing Targets
Choosing Target Byte Order
Debugging Remote Programs
Connecting to a Remote Target
Sending files to a remote system
Using the gdbserver Program
Running gdbserver
Implementing a Remote Stub
Controlling gdb
Prompt
Command Editing
Command History
Screen Size
Numbers
Configuring the Current ABI
Optional Warnings and Messages
Optional Messages about Internal Happenings
Other Miscellaneous Settings
gdb Text User Interface
TUI Overview
TUI Key Bindings
TUI Single Key Mode
TUI-specific Commands
TUI Configuration Variables
gdb Annotations
What is an Annotation?
The Server Prefix
Annotation for gdb Input
Errors
Invalidation Notices
Running the Program
Displaying Source
Command Line Editing
Introduction to Line Editing
Readline Interaction
Readline Init File
Bindable Readline Commands
Readline vi Mode

advertisement
advertisement
advertisement
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer & SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage, Advanced C Programming, SAN Storage Technologies, SCSI Internals & Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him @ LinkedIn