Gain insights into using GDB for debugging in Linux. Explore disassembly, memory investigation, and register updates. Learn about pointers, stack, and function parameters in x64 architecture.
Intermediate
43 Lessons
16h
Certificate of Completion
Gain insights into using GDB for debugging in Linux. Explore disassembly, memory investigation, and register updates. Learn about pointers, stack, and function parameters in x64 architecture.
AI-POWERED
AI-POWERED
This course includes
This course includes
Course Overview
GNU Debugger (GDB) is used for debugging C/C++ programs in LINUX/UNIX environments. It is a good tool to investigate what is happening inside a program, and how the contents inside the memory are changed with the execution of the program. The main focus of the course is the disassembly of the program, where we'll use simple operations in C. With the help of GDB, we'll examine the contents of the registers and memory. We'll also learn how they are changed while executing basic operations. We’ll then explore...
What You'll Learn
A familiarity with disassembly in GDB environment of simple C/C++ programs
A good understanding of how to debug programs with a cross-sectional view to the contents of registers, stack and memory
The ability to use GDB as a dump analysis tool
Hands-on experience with C/C++ programs from the disassembly output
What You'll Learn
A familiarity with disassembly in GDB environment of simple C/C++ programs
Show more
Course Content
Introduction to the Course
Memory, Registers, and Simple Arithmetic
Code Optimization
Number Representations
Pointers
Bytes, Words, Double, and Quad Words
2 Lessons
Pointers to Memory
3 Lessons
Logical Instructions and RIP
4 Lessons
Reconstructing a Program with Pointers
3 Lessons
Memory and Stacks
3 Lessons
Frame Pointer and Local Variables
4 Lessons
Function Parameters
2 Lessons
More Instructions
2 Lessons
Function Pointer Parameters
2 Lessons
Summary of Code Disassembly Patterns
1 Lesson
Course Author
Trusted by 1.4 million developers working at companies
Anthony Walker
@_webarchitect_
Evan Dunbar
ML Engineer
Carlos Matias La Borde
Software Developer
Souvik Kundu
Front-end Developer
Vinay Krishnaiah
Software Developer
Eric Downs
Musician/Entrepeneur
Kenan Eyvazov
DevOps Engineer
Souvik Kundu
Front-end Developer
Eric Downs
Musician/Entrepeneur
Anthony Walker
@_webarchitect_
Evan Dunbar
ML Engineer
See how Educative uses AI to make your learning more immersive than ever before.