[编程语言] 软件调试纵横谈28节

本课程纵览软件调试的整个“生态系统”,从CPU、操作系统、编译器和调试器四个纵向层次上对Windows和Linux平台上的调试设施和方法展开横向比较,从调试角度审视Windows,Linux,GCC,Visual Studio,GDB和WinDBG等著名平台和工具,既有深度,又有广度。整个课程理论讲解和实验演示紧密结合

      第一部分:CPU的调试支持   序言   概览和软件断点   硬件断点、陷阱和   第二部分:操作系统的调试支持   概览和内核调试   内核调试演示   用户态调试原理   应用程序调试原理——   操作系统的异常分发过程   结构化异常处理(SEH)演示   未处理异常:默认过滤器和JIT调试   第三部分:编译器的调试支持   调试符号   第四部分:调试器   用户态调试器原理和调试事件   精要[上]:设置路径   精要[中]:表达式和硬件断点   精要[下]:远程调试   第五部分:应用程序崩溃和用户态转储   信息输出、ETW和   转储、轨迹追踪、WER和   第六部分:栈调试   栈的自动增长、栈帧   栈上的缓冲区溢出、溢出攻击   基于Cookie的安全检查(GS机制   内核态栈   第七部分:堆调试   堆概要   堆的调试支持   页堆   堆的调试支持   和应用验证器   第八部分:多线程调试   线程与进程   临界区与调试支持   死锁和死循环   案例和互锁机制   第九部分:内核调试   内核调试概要   使用KD理解内核   双机用户态调试   第十部分:高级调试技巧   调试事件、调试会话中的服务和总结  

© 版权声明
THE END
如果这篇文章对你有帮助,欢迎分享给更多需要的人。你的支持,是我们创作的动力。
点赞105 分享
💬评论 抢沙发

请登录后发表评论

    暂无评论内容