微吼云上線多路互動直播服務 加速多場景互動直播落地
838
2025-04-01
時間:2017年6月2-4日(周五-周日)(三天兩晚封閉訓練,挑燈論劍)
地點:廬山秀峰景區內松雪樓(住)和中正行營(研習)
形式:實戰演練和討論點評
培訓對象:在Windows或者Linux平臺上從事開發或測試的軟件工程師、項目帶頭人和技術經理
主辦單位:高端調試網站、上海曜印信息科技有限公司
熱身篇:雙劍合璧——WinDBG與GDB之理一分殊(90分鐘)
概要:以GDB和GNU事業的開創者Richard Stallman和NT內核之父David Cutler的傳奇故事開場,這一部分將介紹GDB和WinDBG這兩大調試器的核心特征和關鍵用法,比較其異同。讓聽者在傳奇的故事和精彩的演示中快速掌握這兩把利劍的基本招式。
實戰篇:
概述:這是一個因為軟件故障而導致外接鼠標鍵盤無法工作的詭異問題,它與移動硬盤配套軟件的后臺服務有關,但也與操作系統系統函數的疏漏密不可分
工具和主要技能:WinDBG,轉儲文件分析,反匯編,從棧上觀察參數,無源代碼調試(跟蹤第三方代碼)
編程語言:C/C++,.Net,匯編
知識點:棧,堆的布局,strcpy的實現,rep movs,x86寄存器的約定用法,溢出,異常,CONTEXT和EXCEPTION_RECORD,DeviceIoControl
討論:寬松接口的副作用
概述:Linux下重要后臺服務(Daemon)隨機崩潰,深挖到底,竟然與C語言的規范有關,讓你深刻認識C與C++的一個大不同之處,感受著名的頭文件陷阱
工具和主要技能:GDB,GCC,map,dmesg,調試Linux應用程序,反匯編,插入代碼JIT調試
編程語言:C、匯編
知識點:虛擬內存,分頁機制,頁表,缺頁異常,段錯誤,空指針,AT&T匯編和Intel匯編,調用規約
討論:信任程序員,是耶非耶?
概述:應用程序與驅動程序通信時,驅動程序總是收到錯誤的數據,打印出來觀察,竟然是日志信息送給了驅動…
工具和主要技能:GDB,printk,dmesg
編程語言:C
知識點:虛擬文件系統,Linux驅動程序,sysfs,與應用程序通信,標準文件
討論:句柄的隱患(多維度審視句柄)
概述:向Powerpoint粘貼文件時,它突然掛死,過錯卻不在它,而是與系統機制(DDE)有關,不負責任的第三方服務軟件也是導致問題的關鍵因素
工具和主要技能:WinDBG,內核調試,在內核調試會話中調試應用程序
編程語言:C++,.Net
知識點:剪貼板,DDE,OLE,系統調用,消息機制,Send與Post的區別,廣播消息,Win32K,服務程序,服務循環
討論:(軟件)協作思想的對與錯
概述:Windows7 Platform SDK安裝程序停滯不前,多次重試無果,上調試器發現是因為異常處理不當而陷入死循環
工具和主要技能:WinDBG,使用WinDBG +SOS擴展分析.Net程序的轉儲文件,使用ildasm反匯編.Net程序
編程語言:C#, .Net
知識點:異常,try{}catch,try{}finally,動態語言,Dispose方法,方法表,屬性,托管異常
討論:函數的異常出口
概述:多個線程的首要問題是如何同步?做的不好有可能導致死循環,也有能出現死鎖,本戰役對這兩種情況各舉一例,一個是DUMP,一個是活動目標
工具和主要技能:WinDBG,多線程調試,觀察線程的執行時間
編程語言:C/C++
知識點:線程和進程,管理線程和進程的數據結構,TEB,fs/gs段,volatile關鍵字,死循環,臨界區,!locks, !cs -l,CPU提供的同步設施,LOCK前綴,互鎖系列,intricins,同步方法之比較
討論:無鎖編程
概述:嚴重的雙誤崩潰大多是因為棧枯竭導致的,棧怎么會用完呢?一位書友最先向我反應了這個問題,后來在顯卡驅動中又多次遇到這個問題
工具和主要技能:WinDBG,系統崩潰轉儲分析
編程語言:C/C++
知識點:異常的分類,中斷處理,IDT表,雙誤,顯卡驅動,DPC,內核態棧,操作系統的任務切換機制;CPU的硬件任務切換;內核態棧溢出;任務狀態段TSS,內核態棧溢出; CR2寄存器;CR3寄存器,GPU,顯卡驅動概要
討論:單一內核和多內核
概述:系統級掛死(system hang)大多與驅動程序有關,但這個系統級掛死確實不只是軟件的問題
工具和主要技能:WinDBG,轉儲分析,手動觸發系統崩潰,根據反匯編結果產生C/C++代碼
編程語言:C/C++
知識點:DPC,IRQL,硬件資源分配,!arbiter,設備棧,中斷處理,USB的端口狀態寄存器
討論:延遲等待硬件的方法
概述:使用多種方法調試Win7系統中電源管理服務發生崩潰而導致系統反復重啟的問題,使用內核調試解決復雜的用戶態問題,探討軟件的安全問題
工具和主要技能:WinDBG,內核調試,JIT調試,使用內核調試會話調試用戶態問題
編程語言:C/C++
知識點:棧緩沖區溢出;基于Cookie的溢出檢測;服務崩潰;未處理異常,異常的分發過程,JIT調試的原理,會話0,強制登出(logoff),fail fast,GCC的棧溢出保護
討論:安全開發和調試有關安全的問題
概述:以一個典型的因為字符串類使用不當而導致的堆錯誤為例,深刻理解進程中的多個CRT堆,堆管理器的脆弱之處,字符串類分配內存的方法,靜態鏈接和動態鏈接可能產生的影響,分享使用堆的最佳實踐,思考面向對象設計的基本問題
工具和主要技能:WinDBG,交互式調試,硬件斷點
編程語言:C/C++
知識點:堆,堆管理器,CRT,CRT的多個實例,靜態鏈接CRT和動態鏈接CRT,析構,字符串類,自動內存分配
討論:公開數據成員的得與失
概述:現場定位Windows資源管理器中右鍵菜單異常緩慢的原因,在調試器中觀察“本地程序中的托管來客”
工具和主要技能:WinDBG,交互式調試,調試性能有關的問題?粗體文字?編程語言:C/C++
知識點:混合代碼情況下的未處理異常;棧溢出;浮點計算單元和浮點寄存器;浮點異常的延遲性;上下文擴展模塊的注冊方法
概述:現場調試經過加殼保護的應用軟件,介紹反調試的典型方法和原理,以及化解之道
工具和主要技能:WinDBG,IDA Pro,反匯編,交互式反匯編,Anti-VM和應對
編程語言:匯編語言
知識點:單步標志,硬件斷點寄存器,異常處理器,加殼保護的一般方法,檢查調試器,隱藏調試器,記時法反跟蹤,內存HASH檢測,倒車調用,花指令,虛擬機,檢測在虛擬機中運行的方法,檢測VM之I/O端口,VMWare后門,VPC后門,SIDT方法,STR指令
講師介紹
附錄3:報名與收費
以下所說費用包括:
? 廬山秀峰景區門票
? 研習班期間的旅游意外險
? 包含研習材料的U盤一個
? 研習班期間(6月2日上午至6月4日下午4:30)的住宿、餐飲和茶點 (不包括往返廬山的交通費用和以上費用之外的其它費用)
標準收費:5600元每人
優惠條款:
1)同一單位每5人報名可免一人費用
2)5月20日前報名可以享受8折優惠
3)在校學生或者個人自費參加請聯系課程顧問詢問優惠價格(視報名時間而不同)
報名或垂詢:
1)聯系課程顧問:
a) Cindy Long,電話:13621638537,電子郵件:cindy.long@leshanting.cn
b) Lisa Zhang ,電話:13801874134,電子郵件:lisa.zhang@leshanting.cn
2)公司付款賬號:
收款單位:上海曜印網絡科技有限公司
銀行賬號:1001122409003035262
本文轉載自異步社區。
軟件開發 軟件開發
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。