班級規模及環境--熱線:4008699035 手機:15921673576( 微信同號) |
每期人數限3到5人。 |
上課時間和地點 |
上課地點:【上海】:同濟大學(滬西)/新城金郡商務樓(11號線白銀路站) 【深圳分部】:電影大廈(地鐵一號線大劇院站)/深圳大學成教院 【北京分部】:北京中山學院/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領館區1號(中和大道) 【沈陽分部】:沈陽理工大學/六宅臻品 【鄭州分部】:鄭州大學/錦華大廈 【石家莊分部】:河北科技大學/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:協同大廈
最近開課時間(周末班/連續班/晚班):2020年3月16日 |
實驗設備 |
☆資深工程師授課
☆注重質量
☆邊講邊練
☆合格學員免費推薦工作
★實驗設備請點擊這兒查看★ |
質量保障 |
1、培訓過程中,如有部分內容理解不透或消化不好,可免費在以后培訓班中重聽;
2、培訓結束后,授課老師留給學員聯系方式,保障培訓效果,免費提供課后技術支持。
3、培訓合格學員可享受免費推薦就業機會。 |
課程大綱 |
|
軟件調試原理與實踐培訓
?
軟件調試原理與實踐培訓
培訓對象:軟件開發工程師
學員基礎:具有一定編碼經驗
培訓目標:
????
CPU?的調試支持
????
操作系統的調試支持
????
編譯器的調試支持
????
調試器
????
應用程序崩潰和用戶態轉儲
????
棧調試
????
堆調試
????
內核調試
????
系統崩潰和轉儲
????
驗證器
????
多線程調試
????
可調試性
培訓大綱:
一.CPU?的調試支持
調試設施的簡要歷史,支撐軟件調試核心功能硬件基礎:斷點指令、調試寄存器、陷阱標志
二.操作系統的調試支持
為什么要支持調試,比較Linux?和Windows?這兩個操作系統支持用戶態調試和內核態調試的基本設施,包括用戶態調試模型,異常分發和管理,調試信息輸出,錯誤記錄,錯誤報告機制等內容。
試驗1:通過內核調試理解操作系統內核
三.編譯器的調試支持
本部分將以Visual?Studio?和GCC?這兩大著名編譯器為例,比較介紹:調試符號的產生過程、存儲格式和使用方法,編譯期檢查、運行期檢查等內容。
四.調試器
比較介紹WinDBG?和GDB?調試器的:特點、實現模型,重要調試功能的實現方法,使用它們執行典型調試任務的方法,比較介紹常用的調試命令。
五.應用程序崩潰和用戶態轉儲
介紹應用程序崩潰的完整過程和調試方法,轉儲的基本知識,如何使用ADPLUS?自動產生用戶態轉儲,用戶態轉儲的常用命令和技巧。
試驗2:JIT?調試
六.棧調試
????
棧有關的基本概念,棧的自動增長機制,棧上的緩沖區溢出,檢測緩沖區溢出的方法。
七.堆調試
????
內存管理的多層次架構,比較Windows?和Linux?系統的堆管理器,導致堆問題的典型原因以及調試方法。
八.內核調試
內核調試模型,深入解析Windows?操作系統的內核調試引擎(KD):工作原理,關鍵,操作,調試協議),KD?的變體等;
比較介紹Linux?下的內核調試設施
九.系統崩潰和轉儲
????
系統崩潰概覽,
????
Windows?藍屏崩潰(BSOD)的過程,Linux?的Panic?過程(包括產生call
????
stack和尋找函數符號的方法),
????
系統轉儲,分析系統轉儲的方法
????
試驗3:分析系統轉儲
十.驗證器
驗證器(verifier)的目標,Windows?操作系統的驅動驗證器:工作原理,關鍵實現,用途,思考借鑒和推廣方法
十一.多線程調試
????
控制線程的常用命令,關鍵區,volatile?關鍵字,死鎖案例解析,CPU?的同步支持(lock?前綴,特別指令),互鎖操作
十二.可調試性
被調試程序的可調試性對于提高調試效率有著重要意義,如何在軟件工程實踐中提
高軟件的可調試性:包括可觀察性、可辨別性、可追溯性、自動報告錯誤等。
|