Windows Troubleshooting 系統工具與資源

Windows Troubleshooting  工具與資源

這篇文章主要介紹 Windows troubleshooting 時的一些工具與資源,

在進行軟體測試的過程中,我們都會有這樣的經驗:

  • Application 異常終止
  • 資源耗用越來越多
  • 應用程式越跑越慢,不知道為什麼
  • 安裝失敗
  • 應用程式很忙,沒有反應,不知道在忙什麼?
  • 電腦整體系統資源很忙,不確定有什麼比較有效率的方式收集相關資訊?
  • Crash & Blue screen

 

推薦工具書

首先,先推薦幾本 Windows troubleshooting 的工具書,也是 Windows internals 的聖經

這幾本書建議閱讀的順序如下:

 

1. Windows Sysinternals Administrator’s Reference

這本書主要根據 Sysinternals 的工具及,將每一個工具的使用方法,

以及相關 Windows的知識做介紹 ,

透過每一個不同的工具,來了解 Windows 內部運作

http://technet.microsoft.com/en-us/sysinternals

 

2. Advanced Windows Debugging

這本書舉了許多實際的個案讓讀者可以熟悉 Memory leak.. Hang 等狀況的處理,

並且相關的除錯工具,也提供個案 EXE,供上機實做了解

 

3. Windows internals part 1/part 2

這兩本書主要說的是 Windows Internals 架構,分為上下兩冊

如果對於 windows 內部運作有興趣進一步了解,可以參考這兩本書。

 

4. Inside Windows debugging

這本書的 debugging  主要指的是 Memory Dump 的 Kernel mode debug

也舉了相關 Crash dump 的例子,用 Windbg 的方式導引讀者,如何解析 crash 的狀況

 

 

WinInteralBooks

Troubleshooting 的臨場狀況

與客戶進行 Troubleshooting  有一定程度的困難與挑戰,

這些挑戰包含非技術上的挑戰,舉幾個筆者遇過情境

  • 語言的問題
  • 問題無法重現
  • 客戶電腦無法直接存取的權限
  • 作業程序上的問題

 

realtime Traffic cases

 

 

Case study 

如果英文閱讀還可以的話,

建議可以到 Mark (Windows internals  與 SysInternals 的作者) 的 blog,

這個 blog 有許多個案討論,說明如何用 process monitor 解決許多 Windows 的問題

http://technet.microsoft.com/en-us/sysinternals/bb963890.aspx

 

除了 SysInternals之外

除了 SysInternals工具集之外,還有沒有其他的選擇呢?

 

http://technet.microsoft.com/en-us/sysinternals

 

筆者,推薦另外一個工具集 Nirsoft Launcher, 類似 SysInternals

http://launcher.nirsoft.net/

 

 

 

關於 Blue Screen

電腦當機強迫重新開機時,常見的藍色畫面

針對這印的藍色畫面,一般的分析方式不外乎是用 Windbg 做 kernel debug

有沒有比較簡單的方式分析呢?

這邊推薦一個工具 BlueScreenView

http://www.nirsoft.net/utils/blue_screen_view.html

這個工具直接執行之後,它自動會讀取最近的 crash dump,並且做初步的分析

 

 

應用程式沒有反應怎麼辦?

這也是另一個常見的現象,應用程式完全沒有反應,通常有幾種原因造成:

  •  無窮迴圈
  • 資源等待,暫時無法讀取到所需要的資源
  • 系統資源耗盡,例如記憶體不足,耗用過多的 CPU等

 

這邊介紹另外一個好用的分析工具,”What is Hang”

這個工具執行之後,選取要分析的 process

就會針對 Hang 的原因 “自動” 做初步的分析

 

http://www.nirsoft.net/utils/what_is_hang.html

 

 

 

應用程式異常終止

這類的情況通常因為應用程式沒有針對例外狀況做妥善的處理,例如:

  • 10 /  0 (divide by 0)
  • 讀取不存在的檔案
  • 輸入值超過 buffer

這類的錯誤訊息,通常會看到下列畫面

 

這邊推薦一個工具,可以針對這樣的錯誤做自動的分析

“WinCrashReport”

Download WinCrashReport 32-bit

Download WinCrashReport 64-bit

Download AppCrashView

 

 

 

Windows 系統穩定性分析

另外,介紹一個 Windows 內建的工具 “Windows Reliability Monitor”

這個工具可以針對過去歷史以來,發生過的 system/Application crash 分析

 

Realibility Monitor

 

 

系統資源耗用狀況

另外介紹一個也是 Windows 內建的工具 Resource Monitor,

這個工具可以針對目前所有執行的 process 耗用的資源分析

  • CPU
  • Memory
  • Network
  • Disk
在知道整體的系統狀況之後,可以在個別分析,是哪個 process ,那個 process 當下更進一步的資訊做分析。
這個工具筆者也很推薦使用,因為在沒有其他工具的情況下,
這個工具至少可以提供你一個初步的分析結果。
rm_overview_1[1]

Leave a Reply

Your email address will not be published. Required fields are marked *