Sử dụng bộ gỡ rối WinDBG để khắc phục lỗi màn hình xanh

Quản trị mạng Bạn đã bao giờ tự hỏi làm cách nào để thu thập được nhiều thông tin thêm từ màn hình xanh chết chóc khi lỗi này xuất hiện và cung cấp cho bạn một thông báo Stop: 0×00000000, trước khi treo cứng. Thông báo lỗi này chỉ cho bạn một lỗi hệ điều hành khá nghiêm trọng có thể bị gây ra bởi một số vấn đề.

Tiện ích WinDBG của Microsoft sẽ trợ giúp bạn gỡ rối và chuẩn đoán vấn đề, sau đó dẫn bạn đến nguyên nhân gốc để có thể khắc phục được lỗi.

Các bước trong một nutshell

  1. Tạo và capture memory dump có liên quan với lỗi màn hình xanh mà bạn đang cố gắng khắc phục.
  2. Cài đặt, cấu hình WinDBG và đường dẫn đến đúng thư mục Symbols.
  3. Sử dụng WinDBG để gỡ rối và phân tích screen dump, sau đó tìm nguyên nhân gốc gây ra vấn đề.

Tạo memory dump

Cần lưu ý rằng, nếu bạn chưa gặp lỗi màn hình xanh, khi đó bạn sẽ không thể capture memory dump.

1. Nhấn WinKey + Pause.
2. Kích Advanced, bên dưới Start Up and Recovery, chọn Settings.
3. Hủy chọn Automatically Restart
4. Kích mũi tên sổ xuống bên dưới Write Debugging Information.
5. Chọn Small Memory Dump (64 KB) và bảo đảm đầu ra là %SystemRoot%\Minidump.
6. Khởi động lại máy tính, thao tác này sẽ làm cho hệ thống bị lỗi và màn hình xanh xuất hiện, sau đó tạo Minidump.

Location của các file Minidump có thể được tìm thấy tại đây:

C:\WINDOWS\Minidump\Mini000000-01.dmp

Để download và cài đặt các công cụ gỡ rối của Windows cho phiên bản Windows hiện hành của bạn, hãy truy cập website các công cụ của Microsoft tại đây.

Thực hiện theo các nhắc nhở, khi cài đặt, lưu ý đến location Symbols nếu bạn chấp nhận các thiết lập mặc định. Chúng tôi sẽ tạo một thư mục và sau đó hướng cài đặt đến thư mục đó vì sử dụng WinDBG cho hai hệ điều hành XP, Vista và muốn chúng được tách biệt cũng như được sắp xếp riêng.

Bạn đọc có thể tham khảo bài viết của Microsoft tại đây để biết cách đọc các file memory dump mà Windows tạo cho các quá trình gỡ rối.

Thiết lập và sử dụng WinDBG

1. Kích Start | All Programs | Debugging Tools for Windows, và mở WinDBG. Chọn File | Symbol file path và thay đổi nó sao cho phù hợp với tình huống của bạn, sau đó copy và paste nó vào hộp thoại, như thể hiện trong hình A, kích OK. Chúng tôi gợi ý:

SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
Hoặc nếu bạn đang sử dụng các Symbol khác:
SRV*c:\Vistasymbols*http://msdl.microsoft.com/download/symbols
SRV*c:\XPsymbols*http://msdl.microsoft.com/download/symbols

Hình A: Đường dẫn Symbol

2. Đóng workspace và lưu thông tin workspace, như thể hiện trong hình B.

Hình B: Workspace

3. Mở WinDBG và chọn File, chọn Open Crash Dump, sau đó điều hướng đến file minidump đã được tạo ở trên, đánh dấu và chọn Open.

Kích vào:

! analyze -v

Như thể hiện trong hình C bên dưới Bugcheck Analysis.

Hình C: ! analyze -v

Mẹo: Nếu quan sát ở phía dưới màn hình, bạn sẽ thấy kd>; lúc này hãy đánh vào hộp bên phải !analyze -v hoặc .lastevent và nhấn phím Enter. Nó sẽ hiển thị cho bạn một bản ghi ngoại lệ và dấu vết ngăn xếp của chức năng nơi sự ngoại lệ xuất hiện.

Bạn cũng có thể sử dụng lệnh .exr, .cxr, and .ecxr để hiển thị các bản ghi ngoại lệ và bản ghi nội dung.

Khi làm việc với các ổ đĩa, bạn có thể sử dụng kd> lm tn, như thể hiện trong hình D, để lấy thêm thông tin.

[Ctrl]+[A] sẽ cho phép bạn copy các thông tin và paste vào Notepad.

Hình D: kd>

Cho ví dụ, quan sát phía dưới của trang những thông tin giống như những gì thể hiện trong hình E.

Hình E: Stack trace

Kết luận

Vấn đề phát sinh lỗi màn hình xanh bị gây ra bởi phần mềm quay số đã được cài đặt từ modem USB. Tuy nhiên hủy bỏ cài đặt phần mềm này sẽ không giải quyết được vấn đề.

Vấn đề ở đây có thể được giải quyết bằng cách sử dụng công cụ WinDBG để gỡ rối và phân tích file memory dump. Cách khắc phục là đặt lại tên cho C:\Windows\System\fldevice.sys thành C:\Windows\System\fldevice.sys.old. Nguyên nhân gây ra lỗi ở đây là Windows vẫn tham chiếu đến file này mặc dù khi phần mềm đã bị hủy bỏ cài đặt.

Thứ Tư, 13/01/2010 09:06
31 👨 15.090
0 Bình luận
Sắp xếp theo
    ❖ Kiến thức cơ bản