Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows 10

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView

Windows Blue Screen of Death มาเยี่ยมพวกเราตลอดเวลา บางครั้งคุณก็คาดหวัง ในส่วนอื่นๆ ภาพหน้าจอสีน้ำเงินปรากฏขึ้นอย่างไม่คาดคิด ไม่ว่าจะด้วยวิธีใด เป็นเรื่องที่น่าหงุดหงิด โดยเฉพาะอย่างยิ่งหากคุณไม่สามารถวินิจฉัยปัญหาได้อย่างรวดเร็ว

โชคดีที่หน้าจอสีน้ำเงินแสดงรหัสข้อผิดพลาดให้คุณเสมอ แต่คุณจะเข้าใจได้อย่างไรว่านั่นหมายถึงอะไร? คุณใช้โปรแกรมที่มีประโยชน์เช่น Windows Debugger (WinDbg) หรือ NirSoft BlueScreenView . นี่คือคำแนะนำที่มีประโยชน์ในการแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงิน!

ข้อผิดพลาดจอฟ้าคืออะไร

เมื่อ Windows มีข้อผิดพลาดร้ายแรง ระบบล่ม ความผิดพลาดมักจะทำให้คุณหน้าจอสีน้ำเงิน หน้าจอสีน้ำเงิน (รู้จักกันในชื่อว่า Blue Screen of Death หรือ BSoD) จะแสดงข้อมูลทั้งหมดที่มีรายละเอียดการชน ภายในข้อมูลคือสาเหตุ ที่ไหน และอย่างไรที่เกิดความผิดพลาด

อะไรทำให้เกิดข้อผิดพลาดหน้าจอสีฟ้า

ข้อผิดพลาดหน้าจอสีน้ำเงินอาจมีสาเหตุหลายประการ ได้แก่:

  • ฮาร์ดแวร์ผิดพลาด
  • ซอฟต์แวร์ผิดพลาด
  • ล้าสมัยหรือไดรเวอร์เข้ารหัสไม่ดี
  • ความร้อนสูงเกินไป
  • โอเวอร์คล็อก

นั่นเป็นเพียงห้าสาเหตุที่เป็นไปได้ ภายในนั้นมีข้อผิดพลาดเฉพาะมากมาย นั่นคือจุดที่หน้าจอสีน้ำเงินของรหัสข้อผิดพลาดความตายเข้ามา

รหัสข้อผิดพลาดการตายหน้าจอสีน้ำเงินแสดงข้อผิดพลาดเฉพาะในการแก้ไขปัญหา คุณสามารถจดจ่อกับความพยายามของคุณมากกว่าที่จะคาดเดาว่าอะไรผิดพลาดและเพราะเหตุใด ตัวอย่างเช่น รหัส 0x80240034 WU_E_DOWNLOAD_FAILED หมายความว่า Windows Update ของคุณไม่สามารถดาวน์โหลด แน่นอนว่าไม่น่าจะทำให้เกิด BSoD แต่คุณเห็นว่าโค้ดมีข้อความแสดงข้อผิดพลาดเฉพาะอย่างไร

คุณจะแก้ไขข้อผิดพลาดจอฟ้าได้อย่างไร

การแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินขึ้นอยู่กับประเภทของข้อผิดพลาด บางครั้ง การค้นหาทางอินเทอร์เน็ตคร่าวๆ ก็เพียงพอที่จะเปิดเผยว่าระบบของคุณมีปัญหาอะไร ในบางครั้ง ซอฟต์แวร์พิเศษสำหรับการดีบักระบบคือสิ่งที่คุณต้องการ ต่อไปนี้คือวิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg หรือ NirSoft BlueScreenView

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินด้วย WinDbg

WinDbg เป็นเครื่องมืออันทรงพลังที่คุณสามารถใช้เพื่อค้นหาสาเหตุของข้อผิดพลาดหน้าจอสีน้ำเงินของคุณ

กำลังติดตั้ง Windows 10 SDK

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView

ไปที่หน้าดาวน์โหลด Windows 10 SDK Windows 10 SDK มีเครื่องมือมากมาย รวมถึง Windows Performance Toolkit, Debugging Tool สำหรับ Windows, .NET Framework Software Development Kit และเครื่องมือการพัฒนาอื่นๆ ทำตามขั้นตอนเหล่านี้เลย

  1. กดปุ่ม ดาวน์โหลดตัวติดตั้ง ปุ่ม. เมื่อดาวน์โหลดแล้ว ให้เรียกใช้โปรแกรมติดตั้ง
  2. เมื่อตัวติดตั้ง Windows 10 SDK เปิดขึ้น ให้เลือกตัวเลือกแรกเพื่อ ติดตั้ง ชุดพัฒนาซอฟต์แวร์ Windows ไปยังคอมพิวเตอร์ของคุณ เส้นทางการติดตั้งเริ่มต้นนั้นใช้ได้
  3. เลือก ถัดไป เพื่อดำเนินการต่อและยอมรับใบอนุญาต ในหน้าถัดไป ให้ยกเลิกการเลือกช่องทั้งหมด แถบ เครื่องมือแก้ไขข้อบกพร่องสำหรับ Windows .
  4. จากนั้นกด ติดตั้ง .

การเปิดและกำหนดค่า WinDbg

เปิดเมนู Start แล้วไปที่ Windows Kits> WinDbg ใช้ดีบักเกอร์สำหรับสถาปัตยกรรมระบบของคุณ ไม่ว่าจะเป็นรุ่น 32 หรือ 64 บิต ฉันมีระบบ 64 บิต ดังนั้นจะเลือก WinDbg X64

ตอนนี้ คุณต้องค้นหาการถ่ายโอนข้อมูลหน่วยความจำ BSoD ของคุณ การถ่ายโอนข้อมูลประกอบด้วยข้อมูลเกี่ยวกับการขัดข้อง เช่น "สาเหตุ" และ "ตำแหน่ง"

การดัมพ์หน่วยความจำ BSoD มีสองประเภทหลัก: การถ่ายโอนข้อมูลแบบเต็มและ minidump โดยปกติ minidump จะเล็กกว่าแต่มีข้อมูลมากกว่าดัมพ์แบบเต็ม (ฉันรู้ว่าทำให้เข้าใจผิด)

  1. คุณจะพบบันทึก minidump ในไดเร็กทอรีรากของคุณ โดยทั่วไปแล้วจะเป็น C:\Windows\Minidump . ในโฟลเดอร์ คุณจะพบบันทึก minidump จริง
  2. หรือพบการถ่ายโอนข้อมูลแบบเต็มที่ C:\Windows\memory.dmp

สำหรับบทช่วยสอนนี้ เราจะวิเคราะห์ minidump (เพราะนั่นคือสิ่งที่ผมมีอยู่)

หมายเหตุ: ไม่มีการถ่ายโอนข้อมูลเลย? ดูวิธีเปิดการดัมพ์ของ Windows หลังแครช

โอเค กลับไปที่ WinDbg ขั้นแรก คุณต้องตั้งค่าแหล่งสัญลักษณ์ สัญลักษณ์เป็นตัวระบุโดยพื้นฐานสำหรับภาษาการเขียนโปรแกรมที่เกี่ยวข้องกับข้อมูลเฉพาะ ช่วยให้วิเคราะห์ข้อมูลที่พบในบันทึก (หรือโค้ด) ได้ง่ายขึ้น

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView

ไปที่ ไฟล์> เส้นทางไฟล์สัญลักษณ์ จากนั้นคัดลอกและวางสิ่งต่อไปนี้:

SRV*c:\websymbols*https://msdl.microsoft.com/download/symbols

จากนั้นกด ตกลง .

วิเคราะห์การถ่ายโอนข้อมูลการขัดข้องของคุณใน WinDbg

ลากและวางไฟล์ดัมพ์ของคุณลงใน WinDbg หรือกด Ctrl + D เพื่อเปิดไฟล์เบราว์เซอร์ จากนั้นค้นหาไฟล์ดัมพ์ของคุณ เมื่อโหลดไฟล์ดัมพ์ คุณจะพบหน้าจอการวิเคราะห์เริ่มต้น จะมีลักษณะเช่นนี้:

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView

มีสองสิ่งที่ต้องนำเข้าจากหน้าจอนี้:ตรวจสอบจุดบกพร่อง และน่าจะเกิดจาก ฟิลด์ มีความชัดเจนมากขึ้น:

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView
  • ตรวจสอบจุดบกพร่อง 1A คือรหัสข้อผิดพลาด
  • อาจเกิดจาก :memory_คอร์รัปชั่น ( ONE_BIT ) ช่วยให้คุณเข้าใจปัญหาได้ทันที

ในกรณีนี้ คุณรู้ว่าข้อผิดพลาดของหน่วยความจำคือสาเหตุที่เป็นไปได้ของ BSoD ของคุณ

คุณสามารถทำการวิเคราะห์ได้อีกขั้นหนึ่งโดยใช้คำสั่ง WinDbg ในกรณีนี้ !analyze -v คำสั่ง (เน้นเป็นสีน้ำเงินในภาพด้านบน) จะแสดงข้อมูลโดยละเอียดเกี่ยวกับ BSoD ของคุณ มีลิงก์คำสั่งอยู่ใต้ส่วนหัวของ Bugcheck Analysis อย่างไรก็ตาม ลิงก์นี้บางครั้งหายไป หากไม่มีลิงก์ ให้ป้อนคำสั่งในช่องที่ด้านล่างของหน้าต่าง WinDbg

คำสั่งดำเนินการวิเคราะห์อัตโนมัติจำนวนมาก WinDbg แสดงผลลัพธ์ภายใต้หัวข้อการวิเคราะห์ BugCheck ใหม่ ปริมาณข้อมูลที่ WinDbg ทิ้งไปนั้นรู้สึกท่วมท้นเล็กน้อย แต่ในกรณีนี้ คุณกำลังมองหาข้อมูลสำคัญเพียงไม่กี่ส่วนเพื่อใช้ประเมิน BSoD ของคุณเป็นกลุ่ม

พารามิเตอร์ที่อยู่ใต้ส่วนหัวของการวิเคราะห์ BugCheck ใหม่นั้นให้ข้อมูลที่เป็นประโยชน์อีกชุดหนึ่ง ตัวอย่างเช่น ในตัวอย่างด้านล่าง คุณสามารถดูข้อผิดพลาดที่ได้รับการยืนยันเป็น Memory_Management (1a) . นอกจากนี้ อาร์กิวเมนต์ (อาร์กิวเมนต์เป็นพารามิเตอร์ที่ให้ข้อมูลเป็นหลัก) ขยายข้อมูลออกไป

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView

Arg1 ระบุว่า "ตรวจพบ PTE ที่เสียหาย" โดยอธิบายว่า "พารามิเตอร์ 2 มีที่อยู่ของ PTE"

ตอนนี้ ฉันรู้แล้วว่า PTE ย่อมาจาก Page Table Entry ดังนั้นข้อผิดพลาดนี้น่าจะเกี่ยวข้องกับหน่วยความจำเสมือนของฉัน และฉันสามารถเริ่มการแก้ไข BSoD ที่นั่นได้ อย่างไรก็ตาม มีข้อผิดพลาดมากมายที่ฉันไม่รู้มาก่อน

ในกรณีเหล่านี้ การค้นหาทางอินเทอร์เน็ตคือเพื่อนของคุณ การค้นหารหัสข้อผิดพลาดเริ่มต้นและข้อมูลอาร์กิวเมนต์เพิ่มเติมจะส่งคืนผลลัพธ์ของผู้ใช้รายอื่นที่ประสบปัญหาเดียวกัน ในหลายกรณี ข้อผิดพลาดของระบบที่คุณมีไม่ใช่เรื่องใหม่และไม่ลึกลับ BSoD เดียวกันจะส่งผลกระทบต่อคนอื่น—คุณไม่ได้อยู่คนเดียว

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินด้วย BlueScreenView

เครื่องมือวิเคราะห์ WinDbg เป็นชุดเครื่องมือที่ทรงพลัง คุณสามารถใช้สำหรับการถ่ายโอนข้อมูลและการวิเคราะห์ไฟล์ทุกรูปแบบ อย่างไรก็ตาม ผู้อ่านจำนวนมากไม่ต้องการเครื่องมือวิเคราะห์ที่ WinDbg นำเสนออย่างเต็มรูปแบบ ถ้านั่นฟังดูเหมือนคุณ BlueScreenView ของ Nirsoft คือสิ่งที่คุณต้องการอย่างแท้จริง

มันวิเคราะห์ไฟล์ดัมพ์และมินิดัมพ์เดียวกันกับ WinDbg แต่ปรับปรุงข้อมูล คุณสามารถนำข้อมูลที่ปรับปรุงแล้วไปค้นหาทางอินเทอร์เน็ตและเริ่มกระบวนการ BSoD ได้จากที่นั่น

วิธีการทำงาน:

ไปที่หน้า BlueScreenView และดาวน์โหลดโปรแกรม เมื่อดาวน์โหลดแล้ว ให้ติดตั้ง BlueScreenView เปิดโปรแกรมหลังการติดตั้ง

นี่คือที่ที่สะดวก BlueScreenView มันจะโหลด minidumps ใด ๆ ที่พบในโฟลเดอร์ MiniDump โดยอัตโนมัติ จากนั้นคุณสามารถจัดเรียงการถ่ายโอนข้อมูลตาม Crash Time เพื่อค้นหา BSoD ล่าสุด ในภาพด้านล่าง คุณจะเห็นไฟล์ดัมพ์เวอร์ชัน BlueScreenView ที่วิเคราะห์ในส่วน WinDbg

วิธีแก้ไขข้อผิดพลาดหน้าจอสีน้ำเงินโดยใช้ WinDbg และ BlueScreenView

ความแตกต่างที่สำคัญคือรูปแบบและความสะดวกในการค้นหาข้อมูล BSoD ในการเปรียบเทียบ สตริงตรวจสอบข้อบกพร่อง รหัสตรวจสอบข้อบกพร่อง และพารามิเตอร์เหมือนกัน BlueScreenView ยังระบุไดรเวอร์ ntoskrnl.exe เป็นรูทของ BSoD

เช่นเดียวกับ WinDbg คุณสามารถทำการค้นหาทางอินเทอร์เน็ตด้วยข้อมูล BSoD ของคุณได้

WinDbg กับ BlueScreenView

หน้าจอสีน้ำเงินของเครื่องมือวิเคราะห์ความตายตัวใดตัวหนึ่งดีกว่าตัวอื่นหรือไม่? ขึ้นอยู่กับสิ่งที่คุณต้องการบรรลุ

BlueScreenView ใช้งานได้ง่ายกว่า WinDbg อย่างไม่ต้องสงสัย หากคุณต้องการข้อมูลที่กระชับและรวดเร็วเกี่ยวกับ BSoD ของคุณ BlueScreenView เป็นเครื่องมือที่ดีกว่า คนส่วนใหญ่เข้ากันได้ดีกับ BlueScreenView โดยเฉพาะอย่างยิ่งเมื่อไม่ต้องการการกำหนดค่าใดๆ และให้ข้อมูลที่ต้องการในทันที และในลักษณะที่ย่อยได้ด้วยเช่นกัน

สำหรับความช่วยเหลือเพิ่มเติม โปรดดูเคล็ดลับทั่วไปในการแก้ไขหน้าจอสีน้ำเงินใน Windows