gitextract_wz0yy6cs/ ├── .cursor/ │ ├── commands/ │ │ ├── gg_catalogue.md │ │ └── gg_commit.md │ └── rules/ │ ├── rule-heading.mdc │ ├── rule-summary.mdc │ └── rule-translate.mdc ├── .github/ │ └── workflows/ │ ├── SETUP_GITHUB_ACTIONS.md │ └── deploy.yml ├── .gitignore ├── .vscode/ │ ├── bookmarks.json │ └── settings.json ├── Makefile ├── README.md ├── book/ │ ├── 10-extras/ │ │ ├── 1-development-of-debugger.md │ │ ├── 2-development-of-logging.md │ │ ├── 3-development-of-metrics.md │ │ ├── 4-development-of-tracing.md │ │ ├── 5-development-of-bisect.md │ │ ├── 6-development-of-ebpf.md │ │ ├── 7-development-of-replay.md │ │ ├── 8-development-of-debug-dsys.md │ │ ├── 9-ai-assisted-debugging.md │ │ └── README.md │ ├── 11-thanks/ │ │ └── README.md │ ├── 12-appendix/ │ │ ├── 1-go-programme-start.md │ │ ├── 2-auto-trace-cloned-threads.md │ │ ├── 3-git-bisect.md │ │ ├── 4-vscode-extension-bisect.md │ │ ├── 80-go-tool-compile.md │ │ ├── 81-go-tool-asm.md │ │ ├── 82-go-tool-link.md │ │ ├── 90-why-buildid-loaded.md │ │ ├── 91-syntax-and-semantic-analysis.md │ │ ├── 92-why-gdb-uses-symtab.md │ │ └── README.md │ ├── 2-preface/ │ │ └── README.md │ ├── 3-terms/ │ │ └── README.md │ ├── 4-basics/ │ │ ├── 1-purposes.md │ │ ├── 2-dependencies.md │ │ ├── 3-countertactics.md │ │ └── README.md │ ├── 5-debugger-skeleton/ │ │ ├── 1-debugger_skeleton.md │ │ ├── 2-debugger_solution.md │ │ ├── 3-debugger_solution_final.md │ │ ├── 4-debugger_demos.md │ │ └── README.md │ ├── 6-develop-inst-debugger/ │ │ ├── 1-process_start.md │ │ ├── 10-clearall-atexit.md │ │ ├── 11-step.md │ │ ├── 12-continue.md │ │ ├── 13-pmem.md │ │ ├── 14-pregs.md │ │ ├── 15-set-mem.md │ │ ├── 16-set-regs.md │ │ ├── 2-process_attach.md │ │ ├── 20-multithread/ │ │ │ ├── 1-trace_old_threads.md │ │ │ ├── 2-trace_new_threads.md │ │ │ ├── 3-suspend_policy.md │ │ │ ├── 4-continue.md │ │ │ ├── 5-breakpoint.md │ │ │ └── README.md │ │ ├── 21-multiprocess/ │ │ │ └── README.md │ │ ├── 3-process_start_attach.md │ │ ├── 4-debug-session.md │ │ ├── 5-disassemble.md │ │ ├── 6-breakpoint.md │ │ ├── 7-breakpoints.md │ │ ├── 8-clear.md │ │ ├── 80-aslr.md │ │ ├── 9-clearall.md │ │ ├── 99-more.md │ │ └── README.md │ ├── 7-headto-sym-debugger/ │ │ ├── 1-how-go-build-works.md │ │ ├── 2-elf.md │ │ ├── 3-syms.md │ │ ├── 4-syms-resolve-reloc.md │ │ ├── 5-loading.md │ │ ├── 6-gopkg-debug/ │ │ │ ├── 1-elf.md │ │ │ ├── 2-gosym.md │ │ │ ├── 3-dwarf.md │ │ │ └── README.md │ │ ├── 7-headto-dwarf/ │ │ │ ├── 1-gopkgs-about-dwarf.md │ │ │ ├── 2-delve-into-internals.md │ │ │ ├── 3-compiler-gen-dwarfdata.md │ │ │ ├── 4-linker-gen-dwarfdata.md │ │ │ ├── 5-headto-dwarf.md │ │ │ └── README.md │ │ └── README.md │ ├── 8-dwarf/ │ │ ├── 1-history.md │ │ ├── 2-overview.md │ │ ├── 3-dwarfdata.md │ │ ├── 4-die/ │ │ │ ├── 1-desc-data-type.md │ │ │ ├── 2-desc-locations.md │ │ │ ├── 3-desc-code.md │ │ │ ├── 4-encoding.md │ │ │ └── README.md │ │ ├── 5-other/ │ │ │ ├── 1-accelerated-access.md │ │ │ ├── 2-lineno-table.md │ │ │ ├── 3-callframe-info.md │ │ │ ├── 4-macro-info.md │ │ │ ├── 5-varlen-data.md │ │ │ ├── 6-shrink-data.md │ │ │ ├── 7-elf-sections.md │ │ │ └── README.md │ │ ├── 6-practices.md │ │ ├── 7-summary.md │ │ └── README.md │ ├── 9-develop-sym-debugger/ │ │ ├── 1-架构设计/ │ │ │ ├── 1-现代调试器架构.md │ │ │ ├── 2-前端UI层设计.md │ │ │ ├── 3-Service层设计.md │ │ │ ├── 4-后端符号层设计.md │ │ │ ├── 5-后端目标层设计.md │ │ │ ├── 6-日志系统设计.md │ │ │ └── README.md │ │ ├── 2-核心调试逻辑/ │ │ │ ├── 00-cmds.md │ │ │ ├── 01-debug-session.md │ │ │ ├── 100-debug_goroutines.md │ │ │ ├── 100-how_listfunctions_work.md │ │ │ ├── 100-multi-threads.md │ │ │ ├── 11-tinydbg_attach.md │ │ │ ├── 12-tinydbg_attach_waitfor.md │ │ │ ├── 13-tinydbg_exec.md │ │ │ ├── 14-tinydbg_debug.md │ │ │ ├── 15-tinydbg_core1.md │ │ │ ├── 15-tinydbg_core2.md │ │ │ ├── 16-tinydbg_connect.md │ │ │ ├── 17-tinydbg_trace.md │ │ │ ├── 19-how_evalexpr_works.md │ │ │ ├── 20-how_locspec_works.md │ │ │ ├── 21-debug_disassemble.md │ │ │ ├── 22-debug_breakpoint_part1.md │ │ │ ├── 23-debug_breakpoint_part2.md │ │ │ ├── 24-debug_breakpoint_part3.md │ │ │ ├── 25-debug_breakpoint_part4.md │ │ │ ├── 26-debug_trace.md │ │ │ ├── 27-debug_watch.md │ │ │ ├── 28-debug_continue.md │ │ │ ├── 29-debug_next.md │ │ │ ├── 30-debug_step.md │ │ │ ├── 31-debug_pmem.md │ │ │ ├── 32-debug_regs.md │ │ │ ├── 33-debug_funcs.md │ │ │ ├── 34-debug_vars.md │ │ │ ├── 35-debug_bt.md │ │ │ └── README.md │ │ ├── 3-高级功能扩展/ │ │ │ ├── 100-howto_integrate_starlark.md │ │ │ ├── 101-howto_tracing_via_ebpf.md │ │ │ ├── 102-howto_syntax_highlight.md │ │ │ ├── 103-howto_paging_output.md │ │ │ ├── 104-howto_read_separate_dwarfdata.md │ │ │ ├── 105-howto_guess_substitutepath.md │ │ │ ├── 106-howto_redirect_target_io.md │ │ │ ├── 107-howto_customize_tinydbg.md │ │ │ ├── 108-howto_accept_multiclient.md │ │ │ ├── 109-howto_transcript_debugging.md │ │ │ ├── 110-howto_debug_deterministically.md │ │ │ ├── 111-howto-integrate-with-rr.md │ │ │ └── README.md │ │ └── README.md │ ├── README.md │ ├── SUMMARY.md │ └── book.json ├── changelog.md ├── contributing.md ├── contributing.zh_CN.md └── deploy.sh