Пишем отладчик для Linux: полный цикл статей
Part 1: Setup
https://blog.tartanllama.xyz/writing-a-linux-debugger-setup/
Part 2: Breakpoints
https://blog.tartanllama.xyz/writing-a-linux-debugger-breakpoints/
Part 3: Registers and memory
https://blog.tartanllama.xyz/writing-a-linux-debugger-registers/
Part 4: Elves and dwarves
https://blog.tartanllama.xyz/writing-a-linux-debugger-elf-dwarf/
Part 5: Source and signals
https://blog.tartanllama.xyz/writing-a-linux-debugger-source-signal/
Part 6: Source-level stepping
https://blog.tartanllama.xyz/writing-a-linux-debugger-dwarf-step/
Part 7: Source-level breakpoints
https://blog.tartanllama.xyz/writing-a-linux-debugger-source-break/
Part 8: Stack unwinding
https://blog.tartanllama.xyz/writing-a-linux-debugger-unwinding/
Part 9: Handling variables
https://blog.tartanllama.xyz/writing-a-linux-debugger-variables/
Part 10: Advanced topics
https://blog.tartanllama.xyz/writing-a-linux-debugger-advanced-topics/
👉 @Bookflow