書評——Windows進階調試

來源:互聯網
上載者:User
書評——Windows進階調試

本文地址:http://www.cnblogs.com/AndersLiu/archive/2009/07/04/book-review-advanced-windows-debugging.html

作者:Anders Liu

調試,是通過嘗試運行程式找到問題根源的過程。這和測試不同,測試是發現問題的過程,但不深究問題產生的位置、原因。調試是開發人員必須具備的能力,即便是在分工很細緻的大企業中——設計、開發、測試往往由不同的工程師完成——調試這項工作卻常常(甚至是必須)由開發人員自己進行。

調試有兩個層面,一種是基本調試,是我們每天都在接觸的。通常,一個完善的整合式開發環境通常都內建有調試器;而如今開發人員的開發習慣,也是寫完一段文法完整的代碼後就順手啟動調試器調試一下。這類調試通常是特定語言的、原始碼層級的、使用者態的,對於上層的邏輯錯誤通常是足夠的;但如果遇到更深層次的問題,僅僅通過基本調試就無能為力了。

另一種是進階調試,這種調試通常使用獨立的調試器(未與開發環境整合),並能脫離原始碼進行調試;甚至可以調試作業系統的底層問題(核心調試)。進階調試並不是開發人員所必需具備的能力(甚至很多開發人員並不熟練掌握進階調試),但掌握進階調試可以大幅提高自身功力,對於開發技術的進階是必不可少的。

《Windows進階調試》(以下簡稱《AWD》)一書正是講解如何在Windows作業系統上進行進階調試的。其實“進階調試”不過是“另一種調試方法”而已,它也有自己的入門、進階、精通等程度。而《AWD》一書,在老劉看來應該是屬於“入門”和“進階”這兩個層級的,特別適合於掌握了一定的開發技術和基本調試技術,想學習進階調試的朋友。

《AWD》分為三部分,第一部分主要介紹進階調試應具備的基本工具,包括調試器和符號檔案等。雖然在第一章中介紹了很多種調試器,但整本書用得最多的還是windbg.exe。

第二部分則從實踐的角度介紹了多種調試情境,如記憶體、資源、處理序間通訊和同步等。這一部分是整本書的核心,細讀下來不僅能掌握進階調試的基本方法,還能對作業系統原理有更加深刻的掌握。

第三部分則是進階調試中的進階主題,這一部分內容對於大多數開發人員來說可能並不是必須的,甚至日常工作根本用不到。但對於對調試技術非常著迷的朋友,或者是系統開發人員,這部分卻是必不可少的。正如Raymond McCollum所說,大多數書籍在涉及到如此進階的主題時,往往“留給讀者練習”或“請參閱其他進階參考書”,而本書則屬於那些“進階參考書”。

前面提到本書屬於“入門”和“進階”的層級,並非看輕此書。進階調試技術本身就是相對複雜的,但本書卻沒有故弄玄虛,而是從多種常見的調試情境入手,介紹如何使用調試器來完成特定的調試任務。這樣新進入調試領域的開發人員就能很快地上手,實際感受到調試的快感和樂趣。而即便是經常使用調試器的熟手,也可以將本書作為參考,快速尋找各種情境中的調試命令。

《AWD》一書的遺憾在於,並沒有非常詳盡地介紹每種調試器,所以讀者朋友不得不“參與其他文章或書籍”來掌握各種調試器的基本操作。當然,如果不是這樣的話,您手中的書可就不是500餘頁這麼簡單了。

(完)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.