Debugging, Disassembly & Reversing in Linux for x64 Architecture

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.
4.6
43 Lessons
16h
Join 2.8 million developers at
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 the use of pointers, stack, and function parameters, and analyze how different registers update their values. With the help of disassembly output, we’ll learn how a simple C program can be reconstructed. The disassembly output is important for debugging and core dump analysis. We’ll use assembly language for x64 architecture. By the end of this course, you should be able to debug the programs and memory contents at assembly level when a program executes or probe into the problem when a program crashes.
GNU Debugger (GDB) is used for debugging C/C++ programs in LINUX/UNIX environments. It is a good tool to investigate what is hap...Show More

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
A familiarity with disassembly in GDB environment of simple C/C++ programs

Show more

Learning Roadmap

Your Personalized Roadmap is ready!
Your roadmap is tailored to your weekly
schedule - adjust it anytime.
Your roadmap is tailored to your weekly schedule - adjust it anytime.
You can customize your roadmap further or retake assessment from here
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Author NameDebugging, Disassembly & Reversingin Linux for x64Architecture

Course Author:

Developed by MAANG Engineers
Every Educative lesson is designed by a team of ex-MAANG software engineers and PhD computer science educators, and developed in consultation with developers and data scientists working at Meta, Google, and more. Our mission is to get you hands-on with the necessary skills to stay ahead in a constantly changing industry. No video, no fluff. Just interactive, project-based learning with personalized feedback that adapts to your goals and experience.

Trusted by 2.8 million developers working at companies

Fuel Your Tech Career with Smarter Learning

Built for 10x Developers
Get job-ready by lessons designed by industry professionals
Roadmaps Built Just for You
One-size-fits-all courses are a thing of the past
Keeping you state-of-the-art
Future proof yourself with our catalog
Meet PAL - Your AI Coach
Get Personalized feedback from your personalized learning agent
Built to Simulate the MAANG Experience
AI Mock Interviews & Quizzes with targeted guidance

Free Resources

FOR TEAMS

Interested in this course for your business or team?

Unlock this course (and 1,000+ more) for your entire org with DevPath