Windows高級(jí)調(diào)試

出版時(shí)間:2009  出版社:機(jī)械工業(yè)出版社  作者:Mario Hewardt,Daniel Pravat  頁(yè)數(shù):504  譯者:聶雪軍  
Tag標(biāo)簽:無(wú)  

前言

  軟件的目標(biāo)之一就是簡(jiǎn)化人們的工作。如果能夠?qū)δ硞€(gè)工作流進(jìn)行優(yōu)化或者自動(dòng)化,那么人們?cè)诖鎯?chǔ)數(shù)據(jù)或者處理數(shù)據(jù)時(shí)就能變得更加高效,軟件的出現(xiàn)正是為了實(shí)現(xiàn)這個(gè)目標(biāo)。然而,在帶來(lái)簡(jiǎn)化的同時(shí),一定不能在軟件中引入更多的復(fù)雜性,這就意味著軟件在安裝時(shí)應(yīng)該只需要很少的用戶交互,能夠與其他程序提供的服務(wù)和數(shù)據(jù)無(wú)縫地集成起來(lái),并且對(duì)軟件和硬件環(huán)境的變化有著很好的適應(yīng)性?! ∪欢?,在努力簡(jiǎn)化用戶和管理員操作的同時(shí),軟件也正在變得越來(lái)越復(fù)雜。這種復(fù)雜性可能體現(xiàn)在多個(gè)方面,例如需要處理的數(shù)據(jù)量、相互通信程序的數(shù)量、內(nèi)部并行語(yǔ)義的深度或者從其他軟件中導(dǎo)入函數(shù)的數(shù)量。在軟件外表的簡(jiǎn)單性下隱藏了不同軟件層次之間的許多微妙問(wèn)題,例如同步、相互依賴性以及各種假設(shè)等,這些問(wèn)題通常涉及不同的程序,甚至不同的計(jì)算機(jī)。軟件的故障通常表現(xiàn)為在各個(gè)庫(kù)中發(fā)生的崩潰、毫無(wú)意義的錯(cuò)誤消息或者程序的掛起,要找出發(fā)生故障的組件(還不是要找出故障的原因)都是非常困難的。  閱讀本書(shū)的理由是,當(dāng)你在開(kāi)發(fā)、測(cè)試或者提供技術(shù)支持時(shí),通常會(huì)遇到各種軟件故障,而你往往需要分析這些故障的產(chǎn)生根源,甚至還可能需要修復(fù)這些故障。如果想順利地完成這些工作,那么就需要盡可能快速和高效地找出問(wèn)題的源頭,這意味著首先要知道觀察軟件的哪些方面,從什么地方開(kāi)始觀察以及如何進(jìn)行觀察。換句話說(shuō),你需要知道目前有哪些可用的工具,對(duì)于每種類型的故障使用何種工具最為有效,以及如何利用這些工具來(lái)快速縮小問(wèn)題的查找范圍?! 〈蠖鄶?shù)時(shí)候,在工作中學(xué)習(xí)如何分析和調(diào)試windows程序是惟一選擇。在調(diào)試某個(gè)程序故障時(shí),如果知道通過(guò)某種工具或者某個(gè)特定的調(diào)試命令可以極大地減少工作量,那么你將迅速地使問(wèn)題水落石出,而不會(huì)花了數(shù)小時(shí)甚至數(shù)天的時(shí)間還不能取得任何進(jìn)展。這也是本書(shū)物超所值的原因所在。  本書(shū)不僅來(lái)源于Mario和Daniel多年的調(diào)試實(shí)踐經(jīng)驗(yàn),更來(lái)源于Microsoft客戶支持服務(wù)部門和Window s產(chǎn)品與工具開(kāi)發(fā)團(tuán)隊(duì)的集體智慧。沒(méi)有任何其他參考資料能夠比本書(shū)更權(quán)威地介紹Windows調(diào)試領(lǐng)域的知識(shí),例如Windows堆管理器如何影響緩沖區(qū)溢出的行為,或者在調(diào)試DCOM掛起問(wèn)題時(shí)應(yīng)該使用哪些調(diào)試擴(kuò)展命令等。我在調(diào)試Windows應(yīng)用程序和設(shè)備驅(qū)動(dòng)程序等領(lǐng)域已經(jīng)工作了10余年的時(shí)間,但當(dāng)我閱讀本書(shū)時(shí),還是學(xué)到了許多新的技術(shù)、工具和調(diào)試命令,既包括我從未遇到過(guò)的技術(shù),也包括我曾經(jīng)使用過(guò)的技術(shù)?! ∥覀兊墓ぷ鲀r(jià)值并不在于如何調(diào)試問(wèn)題,而是在于調(diào)試問(wèn)題的速度和準(zhǔn)確度。無(wú)論你在Windows程序調(diào)試領(lǐng)域已經(jīng)工作了數(shù)年的時(shí)間,還是剛川開(kāi)始,Mario和Daniel都為你提供了豐富的知識(shí)。祝你的調(diào)試工作進(jìn)展順利!

內(nèi)容概要

本書(shū)主要講解Windows高級(jí)調(diào)試思想和工具,并涉及一些高級(jí)調(diào)試主題。本書(shū)內(nèi)容主要包括:工具簡(jiǎn)介、調(diào)試器簡(jiǎn)介、調(diào)試器揭密、符號(hào)文件與源文件的管理、棧內(nèi)存破壞、堆內(nèi)存破壞、安全、進(jìn)程間通信、資源泄漏、同步、編寫(xiě)定制的調(diào)試擴(kuò)展、64位調(diào)試、事后調(diào)試、Windows Vista基礎(chǔ)以及應(yīng)用程序驗(yàn)證器的測(cè)試設(shè)置等?! ”緯?shū)內(nèi)容詳實(shí)、條理清楚。  本書(shū)適合Windows開(kāi)發(fā)人員、Windows測(cè)試人員和Windows技術(shù)支持人員等參考?! ?duì)Windows開(kāi)發(fā)人員來(lái)說(shuō),很少有任務(wù)比調(diào)試程序更具挑戰(zhàn)性和重要性。然而,人們卻往往很難獲得一些關(guān)干調(diào)試技術(shù)的可靠而又實(shí)用的信息?,F(xiàn)在,兩位來(lái)自Microsoft的系統(tǒng)級(jí)開(kāi)發(fā)工程師,帶著他們15年的實(shí)踐經(jīng)驗(yàn),為讀者全面而系統(tǒng)地揭示了Windows調(diào)試技術(shù)?! ario Hewardt和Daniel Pravat介紹了在應(yīng)用程序的整個(gè)生命周期內(nèi)需要使用到的各種調(diào)試技術(shù),并且展示了如何有效地使用Microsoft提供的強(qiáng)大調(diào)試器和第三方解決方案。  為了使你盡快地找到切實(shí)可行的解決方案,本書(shū)內(nèi)容圍繞真實(shí)的調(diào)試場(chǎng)景來(lái)組織,并且通過(guò)代碼示例來(lái)講解和分析專業(yè)開(kāi)發(fā)人員所要面對(duì)的各種調(diào)試問(wèn)題。作者還介紹了一些新興的調(diào)試主題,例如Windows操作系統(tǒng)的核心概念、安全。Windows Vista以及64位調(diào)試等,每個(gè)主題都包含細(xì)致入微的闡述。  讀完本書(shū),你將能夠  掌握當(dāng)今最強(qiáng)大的Windows調(diào)試工具,包括NTSD、CDB、WinDbg、KD以及ADPlus等?! ?duì)沒(méi)有針對(duì)調(diào)試進(jìn)行優(yōu)化的代碼進(jìn)行調(diào)試?! ±斫庹{(diào)試器的”內(nèi)幕”并高效地管理符號(hào)文件和源文件。  調(diào)試與棧和堆相關(guān)的復(fù)雜內(nèi)存破壞問(wèn)題。  解決復(fù)雜的安全問(wèn)題?! ≌{(diào)試跨進(jìn)程問(wèn)題:身份跟蹤,RPC調(diào)試擴(kuò)展,以及通過(guò)Wireshark來(lái)跟蹤IPC。  找出并修復(fù)資源泄漏,例如內(nèi)存泄漏和句柄泄漏?! ≌{(diào)試常見(jiàn)的線程同步問(wèn)題?! W(xué)習(xí)如何編寫(xiě)定制的調(diào)試擴(kuò)展?! ⊥ㄟ^(guò)故障轉(zhuǎn)儲(chǔ)來(lái)執(zhí)行”事后調(diào)試”,并與Windows錯(cuò)誤報(bào)告機(jī)制集成起來(lái)。  通過(guò)DebugDiag和調(diào)試命令A(yù)nalyze來(lái)自動(dòng)化調(diào)試過(guò)程?! o(wú)論你是系統(tǒng)層開(kāi)發(fā)人員,還是應(yīng)用層開(kāi)發(fā)人員,本書(shū)都將使你深入理解Windows中的各種調(diào)試技術(shù)。本書(shū)或許在下一個(gè)項(xiàng)目中就可以幫你節(jié)省數(shù)周的工作時(shí)間。

書(shū)籍目錄

譯者序序言前言作者簡(jiǎn)介第一部分 概述 第1章 調(diào)試工具簡(jiǎn)介  1.1 泄漏診斷工具  1.2 Windows調(diào)試工具集  1.3 UMDH  1.4 Microsoft應(yīng)用程序驗(yàn)證器  1.5 全局標(biāo)志  1.6 進(jìn)程瀏覽器  1.7 Windows-驅(qū)動(dòng)程序開(kāi)發(fā)包  1.8 Wireshark  1.9 DebugDiag  1.10 小結(jié) 第2章 調(diào)試器簡(jiǎn)介   2.1 調(diào)試器的基礎(chǔ)知識(shí)    2.1.1 調(diào)試器類型    2.1.2 調(diào)試器命令    2.1.3 調(diào)試器的配置    2.1.4 通過(guò)內(nèi)核態(tài)調(diào)試器重定向用戶態(tài)調(diào)試器    2.1.5 是否使用KD   2.2 基本的調(diào)試任務(wù)    2.2.1 鍵入調(diào)試命令    2.2.2 解析調(diào)試器的提示信息    2.2.3 配置和使用符號(hào)    2.2.4 使用源文件    2.2.5 分析命令    2.2.6 修改上下文的命令    2.2.7 其他的輔助命令    2.2.8 示例   2.3 遠(yuǎn)程調(diào)試    2.3.1 Remote.exe    2.3.2 調(diào)試服務(wù)器    2.3.3 進(jìn)程服務(wù)器與內(nèi)核服務(wù)器    2.3.4 遠(yuǎn)程調(diào)試中的符號(hào)解析    2.3.5 遠(yuǎn)程調(diào)試中的源代碼解析   2.4 調(diào)試場(chǎng)景    2.4.1 調(diào)試非交互式進(jìn)程(服務(wù)或者COMJ服務(wù)器)    2.4.2 在沒(méi)有內(nèi)核態(tài)調(diào)試器的情況下調(diào)試非交互式進(jìn)程(服務(wù)或者COM服務(wù)器)   2.5 小結(jié) 第3章 調(diào)試器揭密   3.1 用戶態(tài)調(diào)試器的內(nèi)幕    3.1.1 操作系統(tǒng)對(duì)用戶態(tài)調(diào)試器的支持    3.1.2 調(diào)試事件的順序    3.1.3 控制來(lái),自調(diào)試器的異常和事件    3.1.4 內(nèi)核態(tài)調(diào)試器中的調(diào)試事件處理  3.2 控制調(diào)試目標(biāo)    3.2.1 斷點(diǎn)的工作原理    3.2.2 內(nèi)存訪問(wèn)斷點(diǎn)的工作原理    3.2.3 處理器跟蹤    3.2.4 實(shí)時(shí)調(diào)試中的線程狀態(tài)管理    3.2.5 通過(guò)用戶態(tài)調(diào)試器來(lái)掛起線程   3.3 小結(jié) 第4章 符號(hào)文件與源文件的管理   4.1 調(diào)試符號(hào)的管理    4.1.1 公有符號(hào)的生成    4.1.2 在符號(hào)庫(kù)中存儲(chǔ)符號(hào)    4.1.3 在HTTP服務(wù)器上共享公有符號(hào)  4.2 源文件的管理……第二章 調(diào)試第三章 高級(jí)主題

媒體關(guān)注與評(píng)論

  “誰(shuí)說(shuō)你不能學(xué)習(xí)別人的經(jīng)驗(yàn)?本書(shū)就包含了豐富而翔實(shí)的信息,它們非常清晰地闡述了如何通過(guò)一種邏輯的方法來(lái)找出和修復(fù)程序中的問(wèn)題。對(duì)于那些在Microsoft Windows平臺(tái)上開(kāi)發(fā)、測(cè)試和提供技術(shù)支持的人員來(lái)說(shuō),本書(shū)絕對(duì)是一本不可或缺的參考手冊(cè)?!薄  狟ob Wilton,資深工程師就職于Microsoft公司中CPR(Critical Problem Resolution)小組  “我有幸與本書(shū)的作者在超高要求系統(tǒng)(Extremely Demanding System)領(lǐng)域共事了8年多的時(shí)間。本書(shū)包含了非常有價(jià)值的知識(shí),我們?cè)?jīng)感嘆,要是在項(xiàng)目開(kāi)始之前就知道這些知識(shí)該有多好——這位調(diào)試大師或許只有2月29號(hào)才會(huì)告訴你這些知識(shí),因?yàn)樗挥性谶@一天的下午才有空;只有親自去構(gòu)建和調(diào)試那些復(fù)雜的系統(tǒng)項(xiàng)目而不是道聽(tīng)途說(shuō),才能獲得這些寶貴的知識(shí)。在大多數(shù)書(shū)籍中,一些高級(jí)主題總是作為‘留給讀者的練習(xí)’或者‘請(qǐng)參閱其他高級(jí)參考書(shū)’,而這些主題似乎從來(lái)就沒(méi)有出現(xiàn)過(guò)。本書(shū)屬于那些‘其他高級(jí)參考書(shū)’。要買就買兩本吧,因?yàn)槟銓⒔?jīng)常要借一本給其他人。  ——Raymond McCollum,架構(gòu)師就職于Microsoft前沿安全產(chǎn)品(Forefront Security Product)部門  “由Microsoft的Mario和Daniel合著的這本書(shū)是一本非常棒的參考書(shū),面向的讀者包括中級(jí)調(diào)試人員和高級(jí)調(diào)試人員。本書(shū)通過(guò)對(duì)一些示例進(jìn)行深入講解來(lái)闡述如何調(diào)試各種錯(cuò)綜復(fù)雜的問(wèn)題,例如棧破壞和堆破壞等,這使得本書(shū)與目前市面上講解Win32軟件調(diào)試的眾多書(shū)籍相比顯得卓爾不群。本書(shū)的實(shí)用性非常高,包含了豐富的調(diào)試技巧和策略?!?    ——Kinshuman,開(kāi)發(fā)主管就職于Windows核心操作系統(tǒng)部門  “我非常高興地看到在這本書(shū)中包含了大量非常聰明的調(diào)試技巧。它不僅介紹了如何對(duì)付那些難以診斷的問(wèn)題,而且還詳細(xì)解釋了在這些技術(shù)后面隱藏的底層機(jī)制。本書(shū)中介紹的實(shí)用方法對(duì)于人們理解一些關(guān)鍵的Windows領(lǐng)域是非常有幫助的。”  ——Adrian Marinescu,軟件架構(gòu)師就職于Microsoft  “本書(shū)詳細(xì)描述了如何調(diào)試和修復(fù)軟件中的各種問(wèn)題。本書(shū)的內(nèi)容是根據(jù)作者在跟蹤各種軟件問(wèn)題時(shí)所積累的豐富經(jīng)驗(yàn)而提煉出來(lái)的。本書(shū)不僅給出了各種問(wèn)題的代表性示例,而且還介紹了在分析這些問(wèn)題時(shí)所使用的工具,以及這些工具的詳細(xì)使用說(shuō)明。無(wú)論是軟件開(kāi)發(fā)人員還是軟件測(cè)試人員,在理解了這些示例后都將受益匪淺。”  ——Daniel Mihai,軟件設(shè)計(jì)工程師就職于Microsoft開(kāi)發(fā)人員生產(chǎn)率工具(Developer Productivity Tools)部門  “我編寫(xiě)了WinDbg符號(hào)處理器、符號(hào)服務(wù)器以及源文件服務(wù)器。即便如此,我仍然無(wú)法教會(huì)我妻子使用WinDbg。她認(rèn)為這個(gè)工具非常難用,因此并不了解這個(gè)工具的強(qiáng)大之處。我買了這本書(shū)送給她,這樣她就可以知道如何使用WinDbg。本書(shū)中關(guān)于事后調(diào)試(Postmortem Debugging)和內(nèi)存破壞等方面的內(nèi)容,有效地揭示了在程序出錯(cuò)時(shí)的運(yùn)行環(huán)境和操作系統(tǒng)的內(nèi)部狀態(tài)。Mario和Daniel在調(diào)試領(lǐng)域積累了豐富經(jīng)驗(yàn),因?yàn)樗麄兘?jīng)常被要求解決陌生程序中一些莫名其妙的問(wèn)題。這也是具有工業(yè)強(qiáng)度的調(diào)試技術(shù)的真正意義所在。”  ——Pat Styles就職于Microsoft

編輯推薦

  《Windows高級(jí)調(diào)試》主要講解Windows高級(jí)調(diào)試思想和工具,并涉及一些高級(jí)調(diào)試主題?! 晌粊?lái)自Microsoft的系統(tǒng)級(jí)開(kāi)發(fā)工程師,帶著他們15年的實(shí)踐經(jīng)驗(yàn),為讀者全面而系統(tǒng)地揭示了Windows調(diào)試技術(shù)。

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    Windows高級(jí)調(diào)試 PDF格式下載


用戶評(píng)論 (總計(jì)26條)

 
 

  •   windows開(kāi)發(fā)人員必備書(shū),調(diào)試比編程更難,也更重要
  •   Windows 高級(jí)調(diào)試
  •   這本書(shū),真的很好,windows調(diào)試 不可少的一本書(shū),你可以學(xué)到的真的很多,軟件調(diào)試 很頭疼,但是提高的也很快。
    服務(wù)質(zhì)量特別好,便宜 而且有發(fā)票。發(fā)貨速度很好。
    對(duì)我這種網(wǎng)銀不喜歡用的人,貨到付款最適合了
  •   windows下,調(diào)試必備的工具書(shū),聽(tīng)人推薦過(guò),還沒(méi)看,應(yīng)該不差!!
  •   適用于需要dump分析以及高級(jí)調(diào)試的開(kāi)發(fā)人員。
  •   介紹軟件調(diào)試的書(shū)比較少,這本還不錯(cuò),稍嫌不足的是有些部分講的太少,例如RPC的調(diào)試,wiresharK的使用示范。
  •   適合高級(jí)調(diào)試。對(duì)于原理解釋的也比較清楚。
  •   會(huì)調(diào)試的程序員才能除掉程序中影藏的bug,
  •   vc調(diào)試書(shū)中的倚天劍
  •   書(shū)已收到,印刷不錯(cuò)!講解的比較到位,棧和堆那兩章值得深入研究,最好親自操作下,前面第一部分機(jī)理性比較強(qiáng)!后面高級(jí)部分真的是很高級(jí)的東西,windows這東西,要研究的多了去了!總體來(lái)說(shuō),感覺(jué)很不錯(cuò)!
  •   做運(yùn)維,最害怕的就是遇到web或應(yīng)用服務(wù)器不知什么原因的CPU高,MEM高;導(dǎo)致系統(tǒng)的可用性低。通過(guò)這本書(shū)介紹的如何分析memory dump文件,基本上每次都找到了根本原因。

    贊一個(gè)!
  •   這本書(shū)比較難。學(xué)習(xí)中
  •   這本書(shū)寫(xiě)得非常好,讀后收益不淺。
  •   還沒(méi)看完,好多地方看不懂
  •   該書(shū)很好,很實(shí)用.給予了我很多啟發(fā).
  •   很詳細(xì),也很實(shí)用,例子很好!
  •   從當(dāng)當(dāng)買專業(yè)書(shū)很多年了,值
  •   還在看這個(gè)書(shū),最好找一個(gè)原文的版本對(duì)照著看。
  •   寫(xiě)的很好,但是匯編一定要過(guò)關(guān),又買了一本匯編的再看
  •   這是一部深入探索和理解Windows調(diào)試技術(shù)的書(shū)。需要有一定的Windows操作系統(tǒng)基礎(chǔ)和一定軟件開(kāi)發(fā)經(jīng)驗(yàn),沒(méi)有三兩三,別想過(guò)梁山。
  •   就是介紹的測(cè)試工具都是比較舊的。
  •   內(nèi)容比較很懂,不適合初學(xué)者
  •   專業(yè),受益匪淺
  •   這個(gè)是給同學(xué)帶的,到貨很快
  •   書(shū)籍感覺(jué)一般,不像上面的網(wǎng)友吹噓的那么好,譯者翻譯的不是很技術(shù),很多錯(cuò)誤,建議大家最好是買英文原版或者影印版本,不容易被誤導(dǎo)!
  •   微軟的東西看著真悶
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7