Gain insights into debugging C/C++ programs on Linux ARM64, delve into program disassembly, probe memory/register changes using GDB, and discover techniques for core dump analysis and assembly-level debugging.
Intermediate
44 Lessons
12h
Certificate of Completion
Gain insights into debugging C/C++ programs on Linux ARM64, delve into program disassembly, probe memory/register changes using GDB, and discover techniques for core dump analysis and assembly-level debugging.
AI-POWERED
AI-POWERED
This course includes
This course includes
Course Overview
The 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. You’ll use the Linux ARM64 which is a popular RISC architecture. You’ll use simple operations in C/C++ such as assignment, increment, addition, multiplication. With the help of the GDB, you will probe into...Show More
What You'll Learn
Familiarity with disassembly in the GDB environment of simple C/C++ programs
An understanding of how to debug programs with a cross-sectional view to the contents of registers, stack, and memory
Ability to use GDB as a dump analysis tool
Hands-on experience to reconstruct simple C/C++ programs from the disassembly output
A deeper understanding of the basic assembly language programming skills
What You'll Learn
Familiarity with disassembly in the 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, Half Words, Words, and Double Words
2 Lessons
Pointers to Memory
3 Lessons
Logical Instructions and PC
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
Conclusion
2 Lessons
ARM64 Linux Debugging, Disassembling, Reversing Exam
Assessment
Course Author
Trusted by 1.4 million developers working at companies
Anthony Walker
@_webarchitect_
Emma Bostian 🐞
@EmmaBostian
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
Anthony Walker
@_webarchitect_
Emma Bostian 🐞
@EmmaBostian
See how Educative uses AI to make your learning more immersive than ever before.