本書以實現高效調試為核心,系統全面地探討了各種基于調試器的軟件調試技術。全書共30章,劃分為6篇內容。第一篇概述了軟件調試的歷史和現狀。第二篇以英特爾架構(ia)c++pu為例,詳細介紹了計算機硬件核心提供的調試支持,包括異常、斷點指令、單步執行標志、分支監視、jtag和mce等。第三篇則以windows操作系統為例,深入分析了計算機軟件核心中的調試設施,如內核調試引擎、用戶態調試子系統、異常處理、驗證器、錯誤報告、事件追蹤、故障轉儲和硬件錯誤處理等。第四篇聚焦于visual c/c++編譯器,探討了主要軟件生產工具的調試支持,重點討論了編譯期檢查、運行期檢查及調試符號。第五篇討論了軟件的可調試性,探討了在軟件架構設計和開發過程中如何融入調試支持,以提升軟件的可調試性。基于前五篇的基礎,第六篇首先介紹了調試器的發展歷史、典型功能和實現方法,然后全面介紹了windbg調試器,包括其模塊結構、工作模型、使用方法及主要調試功能的實現細節。
【下載地址】
本書是過去50年軟件調試技術發展成就的全面展示,同時也是作者在軟件設計和系統開發領域奮斗十余年的經驗總結。書中理論與實踐緊密結合,選取了大量具有代表性和普遍意義的技術細節進行討論,是學習軟件調試技術的寶貴資料。本書適合希望深入理解軟件并能自由駕馭軟件的每個人閱讀,特別是從事軟件開發、測試、支持的技術人員和相關研究人員。…