iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 1
1
Software Development

深入淺出 Debugger系列 第 1

Day1 - Overview

基本上不會連續寫 30 天,甚至不會每天寫,但 ...... 由於工作的關係,我的職位就是 debugger engineer ,主題又是 deubgger 到底是怎麼做的?不需要太擔心沒辦法完成,而 debugger 指的是 gdb, lldb 等工具,實作內容是基於以下這兩個專案

以下是每天預期內容,簡單分了三類:INFO, LAB, STUDY SOURCE,分別代表讀書心得分享、實做、原始碼心得分享,實際執行的時候,不可能完全按照規劃來寫,這些東西太雜了,難易度說不太準

LAB 的部分會是以 python 下去撰寫,目的是要讓 python-ptrace 更接近 gdb 的功能,python-ptrace 底下已經有一個 gdb.py,實作了一些常用功能,而我會嘗試將他擴充

  • Day 2: [INFO] GDB 基礎操作
  • Day 3: [INFO] GDB 進階操作
  • Day 4: [INFO] PTRACE
  • Day 5: [LAB] PTRACE: inject code
  • Day 6: [INFO] GDB Overview
  • Day 7: [INFO] DWARF
  • Day 8: [LAB] DWARF: parse
  • Day 9: [STUDY SOURCE] python-ptrace overview
  • Day 10: [STUDY SOURCE] python-ptrace breakpoint
  • Day 11: [STUDY SOURCE] python-ptrace backtrace
  • Day 12: [STUDY SOURCE] python-ptrace memory/register access
  • Day 13: [LAB] GDB: build program space
  • Day 14: [LAB] GDB: build program space
  • Day 15: [LAB] GDB: enhance breakpoint feature (via file line)
  • Day 16: [LAB] GDB: enhance breakpoint feature (via file line)
  • Day 17: [INFO] thesis research Kernel-Assisted Debugging of Linux Applications
  • Day 18: [INFO] thesis research Kernel-Assisted Debugging of Linux Applications
  • Day 18: [INFO] UTRACE
  • Day 19: [LAB] UTRACE
  • Day 20: [INFO] GDBServer GDB stub
  • Day 21: [LAB] GDB stub
  • Day 22: [LAB] initial remote protocol
  • Day 23: [LAB] implement remote protocol
  • Day 24: [LAB] implement remote protocol
  • Day 25: [LAB] initial reverse debugging
  • Day 26: [LAB] implement reverse debugging
  • Day 27: [LAB] implement reverse debugging
  • Day 28: [INFO] "Trace Module" in Windows
  • Day 29: [LAB] "Trace Module" in Window
  • Day 30: [INFO] SUMMARY

下一篇
Day 2 - [INFO] GDB 基礎操作
系列文
深入淺出 Debugger3

尚未有邦友留言

立即登入留言