本课程纵览软件调试的整个“生态系统”,从CPU、操作系统、编译器和调试器四个纵向层次上对Windows和Linux平台上的调试设施和方法展开横向 比较,从调试角度审视Windows,Linux,GCC,Visual Studio,GDB和WinDBG等著名平台和工具,既有深度,又有广度。整个课程理论讲解和实验演示紧密结合,由《软件调试》一书的作者设计所有讲义 并亲自讲授。
课程目录: 章节1:CPU的调试支持 课时1视频序言 课时2视频概览和软件断点 课时3视频硬件断点、陷阱和JTAG 章节2:操作系统的调试支持 课时4视频概览和内核调试 课时5视频Windows内核调试演示 课时6视频Windows用户态调试原理 课时7视频Linux应用程序调试原理——Ptrace 课时8视频Windows操作系统的异常分发过程 课时9视频结构化异常处理(SEH)演示 课时10视频未处理异常:默认过滤器和JIT调试 章节3:编译器的调试支持 课时11视频调试符号 章节4:调试器 课时12视频用户态调试器原理和调试事件 课时13视频WinDBG精要[上]:设置路径 课时14视频WinDBG精要[中]:表达式和硬件断点 课时15视频WinDBG精要[下]:远程调试 章节5:应用程序崩溃和用户态转储 课时16视频信息输出、ETW和WPT 课时17视频转储、轨迹追踪、WER和WDI 章节6:栈调试 课时18视频栈的自动增长、栈帧 课时19视频栈上的缓冲区溢出、溢出攻击 课时20视频基于Cookie的安全检查(GS机制) 课时21视频内核态栈 章节7:堆调试 课时22视频堆概要 课时23视频Win32堆的调试支持 课时24视频页堆 课时25视频CRT堆的调试支持 课时26视频UMDH和应用验证器 章节8:多线程调试 课时27视频线程与进程 课时28视频临界区与调试支持 课时29视频死锁和死循环 课时30视频案例和互锁机制 章节9:内核调试 课时31视频内核调试概要 课时32视频使用KD理解内核 课时33视频双机用户态调试
|