วิธีลบการถ่ายโอนข้อมูลข้อขัดข้องของ Windows 7

ความล้มเหลวของ Windows ที่พบบ่อยที่สุดประการหนึ่งคือข้อยกเว้นของระบบ ซึ่งผู้ใช้เห็นในรูปแบบของ "หน้าจอสีน้ำเงินแห่งความตาย" (BSOD) ตามกฎแล้วข้อผิดพลาดร้ายแรงนี้เกิดขึ้นเนื่องจากไดรเวอร์ฮาร์ดแวร์ทำงานผิดปกติ (โดยปกติเมื่อโหลดระบบปฏิบัติการ) หรือเนื่องจากการทำงานของไวรัสและโปรแกรมป้องกันไวรัส

หน้าจอสีน้ำเงินแห่งความตายประกอบด้วยข้อมูลเกี่ยวกับสาเหตุที่ทำให้เกิดข้อยกเว้น (ในรูปแบบของรหัสข้อผิดพลาด STOP ในรูปแบบ 0x0000007b) ที่อยู่หน่วยความจำที่เข้าถึงได้เมื่อมีข้อยกเว้นเกิดขึ้น และข้อมูลที่เป็นประโยชน์อื่น ๆ ข้อมูลดังกล่าวเรียกว่าข้อผิดพลาด STOP ซึ่งเป็นพารามิเตอร์ตัวแปรซึ่งเป็นที่อยู่หน่วยความจำอย่างแม่นยำ บางครั้งอาจมีชื่อของไฟล์ที่ทำให้เกิดข้อยกเว้นด้วย

ข้อมูลทั้งหมดนี้จะไม่แสดงบนหน้าจอเป็นเวลานาน (สูงสุด 100 วินาที) หลังจากนั้นคอมพิวเตอร์จะรีบูต ในช่วงเวลาสั้นๆ นี้ ตามกฎแล้ว ดัมพ์หน่วยความจำจะถูกสร้างขึ้นและเขียนลงในไฟล์ หนึ่งในวิธีการระดับมืออาชีพที่สำคัญในการวินิจฉัยความล้มเหลวคือการวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำ ซึ่งจะกล่าวถึงโดยละเอียดในบทความนี้

การถ่ายโอนข้อมูลคืออะไร

  • dump (อังกฤษ) – กองขยะ; ทิ้ง; รู; สลัม.
  • ดัมพ์ (ดัมพ์หน่วยความจำ) – 1) ดัมพ์ ส่งออกเนื้อหาของ RAM เพื่อพิมพ์หรือหน้าจอ 2) “สแน็ปช็อต” ของ RAM; ข้อมูลที่ได้รับจากการทุ่มตลาด 3) การลบฉุกเฉิน ปิดเครื่อง รีเซ็ต
  • การทุ่มตลาด - การทิ้ง, การทิ้งการถ่ายโอนข้อมูล

การตั้งค่าสำหรับการบันทึกดัมพ์หน่วยความจำจะถูกจัดเก็บไว้ในรีจิสทรีของระบบ Windows

ข้อมูลเกี่ยวกับการถ่ายโอนข้อมูลหน่วยความจำในรีจิสทรีของระบบ:

ในส่วน Windows Registry การถ่ายโอนข้อมูลข้อขัดข้องถูกกำหนดโดยพารามิเตอร์ต่อไปนี้:

– พารามิเตอร์ REG_DWORD รีบูตอัตโนมัติด้วยค่า 0 × 1 (ตัวเลือก รีบูตหน้าต่างเสริมโดยอัตโนมัติ บูตและคืนค่ากล่องโต้ตอบคุณสมบัติของระบบ);

– พารามิเตอร์ REG_DWORD CrashDumpEnabled มีค่า 0 × 0 หากไม่ได้สร้างการถ่ายโอนข้อมูลหน่วยความจำ 0×1 – ดัมพ์หน่วยความจำเสร็จสมบูรณ์ 0×2 – ดัมพ์หน่วยความจำเคอร์เนล; 0x3 – ดัมพ์หน่วยความจำขนาดเล็ก (64KB);

– พารามิเตอร์ REG_EXPAND_SZ DumpFile พร้อมค่าเริ่มต้น %SystemRoot%\MEMORY.DMP (ตำแหน่งที่เก็บไฟล์ดัมพ์)

– พารามิเตอร์ REG_DWORD LogEvent ด้วยค่าเริ่มต้น 0×1 (ตัวเลือก บันทึกเหตุการณ์ในบันทึกระบบของหน้าต่าง Boot และ Recovery)

– พารามิเตอร์ REG_EXPAND_SZ MinidumpDir พร้อมค่าเริ่มต้น %SystemRoot%\Minidump (ตัวเลือกโฟลเดอร์ดัมพ์ขนาดเล็กของหน้าต่าง Boot และ Recovery)

– พารามิเตอร์ REG_DWORD เขียนทับด้วยค่าเริ่มต้น 0 × 1 (ตัวเลือกเขียนทับไฟล์ดัมพ์ที่มีอยู่ของหน้าต่าง Boot and Restore)

– พารามิเตอร์ REG_DWORD SendAlert ด้วยค่าเริ่มต้น 0x1 (ตัวเลือกส่งการแจ้งเตือนผู้ดูแลระบบของหน้าต่าง Boot และ Recovery)

วิธีที่ระบบสร้างไฟล์การถ่ายโอนข้อมูลข้อขัดข้อง

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

หลังจากเกิดความล้มเหลว เคอร์เนลของระบบจะตรวจสอบความสมบูรณ์ของแผนผังไฟล์เพจ ไดรเวอร์ดิสก์ และโครงสร้างการควบคุมไดรเวอร์ดิสก์ หากความสมบูรณ์ของโครงสร้างเหล่านี้ไม่ถูกละเมิด เคอร์เนลของระบบจะเรียกใช้ฟังก์ชัน I/O พิเศษของดิสก์ไดรเวอร์ที่ออกแบบมาเพื่อบันทึกอิมเมจหน่วยความจำหลังจากระบบล้มเหลว ฟังก์ชัน I/O เหล่านี้มีอยู่ในตัวเองและไม่ต้องพึ่งพาบริการเคอร์เนล เนื่องจากโปรแกรมที่รับผิดชอบในการเขียนข้อมูลความผิดพลาดไม่สามารถคาดเดาได้ว่าส่วนใดของเคอร์เนลระบบหรือโปรแกรมควบคุมอุปกรณ์ได้รับความเสียหายเมื่อเกิดความผิดพลาด เคอร์เนลของระบบเขียนข้อมูลจากหน่วยความจำไปยังแผนผังเซกเตอร์ไฟล์เพจ (ไม่จำเป็นต้องใช้ไดรเวอร์ระบบไฟล์)

ขั้นแรก เคอร์เนลของระบบจะตรวจสอบสถานะของแต่ละส่วนประกอบที่เกี่ยวข้องกับกระบวนการดัมพ์ ทำเช่นนี้เพื่อให้เมื่อเขียนโดยตรงไปยังเซกเตอร์ของดิสก์ จะไม่สร้างความเสียหายให้กับข้อมูลที่อยู่นอกไฟล์เพจ ขนาดของไฟล์เพจควรใหญ่กว่าขนาดของหน่วยความจำกายภาพ 1 MB เนื่องจากเมื่อข้อมูลถูกเขียนลงดัมพ์ ส่วนหัวจะถูกสร้างขึ้นซึ่งมีลายเซ็นการถ่ายโอนข้อมูลความผิดพลาดและค่าของตัวแปรเคอร์เนลระบบที่สำคัญหลายตัว ส่วนหัวน้อยกว่า 1MB แต่ระบบปฏิบัติการสามารถเพิ่ม (หรือลด) ขนาดของไฟล์เพจได้อย่างน้อย 1MB

หลังจากที่ระบบบูทแล้ว Session Manager (Windows NT Session Manager ที่อยู่ดิสก์ - \WINDOWS\system32\smss.exe) เตรียมใช้งานไฟล์เพจระบบ โดยใช้ฟังก์ชัน NtCreatePagingFile ของตัวเองเพื่อสร้างแต่ละไฟล์ NtCreatePagingFile กำหนดว่าไฟล์เพจที่กำลังเตรียมใช้งานอยู่หรือไม่ และถ้ามี ว่ามีส่วนหัวของดัมพ์หรือไม่ หากมีส่วนหัว NtCreatePagingFile จะส่งรหัสพิเศษไปยัง Session Manager ตัวจัดการเซสชันแล้วเริ่มกระบวนการ Winlogon (โปรแกรมเข้าสู่ระบบ Windows NT ที่อยู่ดิสก์คือ \WINDOWS\system32\winlogon.exe) ซึ่งได้รับการแจ้งเตือนถึงการมีอยู่ของการถ่ายโอนข้อมูลความล้มเหลว Winlogon รันโปรแกรม SaveDump (โปรแกรมคัดลอกหน่วยความจำ Windows NT ที่อยู่ดิสก์ - \WINDOWS\system32\savedump.exe) ซึ่งจะวิเคราะห์ส่วนหัวของการถ่ายโอนข้อมูลและกำหนดการดำเนินการเพิ่มเติมในสถานการณ์ฉุกเฉิน

หากส่วนหัวบ่งชี้ว่ามีดัมพ์อยู่ SaveDump จะคัดลอกข้อมูลจากไฟล์เพจไปยังไฟล์ดัมพ์ที่ขัดข้อง ชื่อที่ระบุโดยพารามิเตอร์ REG_EXPAND_SZ ของส่วน DumpFile ของ Registry ในขณะที่ SaveDump เขียนแฟ้มการถ่ายโอนข้อมูลใหม่ ระบบปฏิบัติการไม่ได้ใช้ส่วนของแฟ้มเพจที่ประกอบด้วยการถ่ายโอนข้อมูลข้อขัดข้อง ในช่วงเวลานี้ จำนวนหน่วยความจำเสมือนที่มีอยู่ในระบบและแอปพลิเคชันจะลดลงตามขนาดดัมพ์ (และข้อความอาจปรากฏบนหน้าจอเพื่อระบุว่าหน่วยความจำเสมือนเหลือน้อย) จากนั้น SaveDump จะแจ้งให้ผู้จัดการหน่วยความจำทราบว่าดัมพ์ได้บันทึกเสร็จสิ้นแล้ว และจะปล่อยส่วนของไฟล์เพจที่ดัมพ์ถูกจัดเก็บไว้สำหรับการใช้งานทั่วไป

หลังจากบันทึกไฟล์ดัมพ์ โปรแกรม SaveDump จะบันทึกการสร้าง Crash dump ในบันทึกเหตุการณ์ของระบบ เช่น “คอมพิวเตอร์ถูกรีบูตหลังจากเกิดข้อผิดพลาดร้ายแรง: 0x100000d1 (0xc84d90a6, 0x00000010, 0x00000000, 0xc84d90a6) บันทึกสำเนาหน่วยความจำแล้ว: C:\WINDOWS\Minidump\Mini060309-01.dmp"

หากเปิดใช้งานตัวเลือกส่งการแจ้งเตือนของผู้ดูแลระบบ SaveDump จะส่งการแจ้งเตือนไปยังผู้ดูแลระบบ

ประเภทของการทิ้ง

  • ดัมพ์หน่วยความจำเต็มเขียนเนื้อหาทั้งหมดของหน่วยความจำระบบเมื่อเกิดข้อผิดพลาดร้ายแรง สำหรับตัวเลือกนี้ คุณต้องมีไฟล์เพจจิ้งบนโวลุ่มสำหรับบูท ซึ่งมีขนาดเท่ากับจำนวน RAM จริงทั้งหมดบวก 1MB ตามค่าเริ่มต้น การถ่ายโอนข้อมูลหน่วยความจำทั้งหมดจะถูกเขียนไปยังแฟ้ม %SystemRoot%\Memory.dmp เมื่อมีข้อผิดพลาดใหม่เกิดขึ้นและมีการสร้างไฟล์ดัมพ์หน่วยความจำเต็ม (หรือดัมพ์หน่วยความจำเคอร์เนล) ใหม่ ไฟล์ก่อนหน้าจะถูกแทนที่ (เขียนทับ) ตัวเลือกการถ่ายโอนข้อมูลหน่วยความจำแบบเต็มไม่พร้อมใช้งานบนพีซีที่มีระบบปฏิบัติการ 32 บิตและ RAM 2 กิกะไบต์ขึ้นไป

เมื่อมีข้อผิดพลาดใหม่เกิดขึ้นและมีการสร้างไฟล์ดัมพ์หน่วยความจำเต็มใหม่ ไฟล์ก่อนหน้านี้จะถูกแทนที่

  • ดัมพ์หน่วยความจำเคอร์เนลเขียนเฉพาะหน่วยความจำเคอร์เนลทำให้กระบวนการเขียนข้อมูลลงบันทึกเมื่อระบบหยุดกะทันหันดำเนินไปเร็วขึ้น ขึ้นอยู่กับจำนวนหน่วยความจำฟิสิคัลของพีซี ในกรณีนี้ ไฟล์เพจจิ้งต้องใช้ขนาด 50 ถึง 800MB หรือหนึ่งในสามของหน่วยความจำฟิสิคัลของคอมพิวเตอร์บนโวลุ่มสำหรับบูต ตามค่าเริ่มต้น การถ่ายโอนข้อมูลหน่วยความจำเคอร์เนลจะถูกเขียนไปยังไฟล์ %SystemRoot%\Memory.dmp

การถ่ายโอนข้อมูลนี้ไม่รวมหน่วยความจำที่ไม่ได้ปันส่วนหรือหน่วยความจำที่จัดสรรให้กับโปรแกรมโหมดผู้ใช้ ประกอบด้วยเฉพาะหน่วยความจำที่จัดสรรให้กับเคอร์เนลและเลเยอร์ที่ขึ้นกับฮาร์ดแวร์ (HAL) ใน Windows 2000 และเวอร์ชันที่ใหม่กว่าของระบบ เช่นเดียวกับหน่วยความจำที่จัดสรรให้กับไดรเวอร์โหมดเคอร์เนลและโปรแกรมโหมดเคอร์เนลอื่น ๆ ในกรณีส่วนใหญ่ ดัมพ์ดังกล่าวเป็นตัวเลือกที่เหมาะสมที่สุด ใช้พื้นที่น้อยกว่าการถ่ายโอนข้อมูลหน่วยความจำเต็มอย่างมาก ในขณะที่ไม่รวมเฉพาะเซ็กเตอร์หน่วยความจำที่มีแนวโน้มว่าจะไม่เกี่ยวข้องกับข้อผิดพลาด
เมื่อมีข้อผิดพลาดใหม่เกิดขึ้นและมีการสร้างไฟล์ดัมพ์หน่วยความจำเคอร์เนลใหม่ ไฟล์ก่อนหน้านี้จะถูกแทนที่

  • ดัมพ์หน่วยความจำขนาดเล็กบันทึกข้อมูลที่เป็นประโยชน์จำนวนน้อยที่สุดที่จำเป็นในการระบุสาเหตุของปัญหา เมื่อต้องการสร้างการถ่ายโอนข้อมูลหน่วยความจำขนาดเล็ก ขนาดแฟ้มเพจต้องมีอย่างน้อย 2MB บนไดรฟ์ข้อมูลสำหรับบูต

แฟ้มดัมพ์หน่วยความจำขนาดเล็กประกอบด้วยข้อมูลต่อไปนี้:

  • ข้อความแสดงข้อผิดพลาดร้ายแรง พารามิเตอร์ และข้อมูลอื่นๆ
  • รายการไดรเวอร์ที่โหลด;
  • บริบทของตัวประมวลผล (PRCB) ที่เกิดความล้มเหลว
  • ข้อมูลกระบวนการและบริบทเคอร์เนล (EPROCESS) สำหรับกระบวนการที่ทำให้เกิดข้อผิดพลาด
  • ประมวลผลข้อมูลและบริบทเคอร์เนล (ETHREAD) สำหรับเธรดที่ทำให้เกิดข้อผิดพลาด
  • สแต็กการเรียกโหมดเคอร์เนลสำหรับเธรดที่ทำให้เกิดข้อผิดพลาด

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

เมื่อเกิดข้อผิดพลาดถัดไปและมีการสร้างไฟล์ดัมพ์หน่วยความจำขนาดเล็กไฟล์ที่สอง ไฟล์ก่อนหน้าจะถูกบันทึก แต่ละไฟล์เพิ่มเติมจะได้รับชื่อที่ไม่ซ้ำกัน วันที่ถูกเข้ารหัสในชื่อไฟล์ ตัวอย่างเช่น Mini051509-01.dmp เป็นไฟล์ดัมพ์หน่วยความจำไฟล์แรกที่สร้างขึ้นเมื่อวันที่ 15 พฤษภาคม 2552 รายการไฟล์ดัมพ์หน่วยความจำขนาดเล็กทั้งหมดจะถูกจัดเก็บไว้ในโฟลเดอร์ %SystemRoot%\Minidump.

ระบบปฏิบัติการ Windows XP มีความน่าเชื่อถือมากกว่าเวอร์ชันก่อนหน้าอย่างไม่ต้องสงสัย ต้องขอบคุณความพยายามของทั้งนักพัฒนา Microsoft ผู้พัฒนาไดรเวอร์ฮาร์ดแวร์ และผู้พัฒนาซอฟต์แวร์แอพพลิเคชั่น อย่างไรก็ตาม สถานการณ์ฉุกเฉิน - ความล้มเหลวและการล่มของระบบทุกประเภท - เป็นสิ่งที่หลีกเลี่ยงไม่ได้ และการที่ผู้ใช้พีซีมีความรู้และทักษะในการกำจัดสิ่งเหล่านั้นหรือไม่นั้น ขึ้นอยู่กับว่าเขาจะใช้เวลาสองสามนาทีในการแก้ไขปัญหาหรือไม่ (เช่น การอัปเดต/ดีบักไดรเวอร์ หรือติดตั้งแอปพลิเคชันใหม่) โปรแกรมที่ทำให้ระบบขัดข้อง) - หรือใช้เวลาหลายชั่วโมงในการติดตั้ง/กำหนดค่าระบบปฏิบัติการและซอฟต์แวร์แอปพลิเคชันใหม่ (ซึ่งไม่รับประกันว่าจะไม่มีความล้มเหลวและขัดข้องในอนาคต!)

ผู้ดูแลระบบจำนวนมากยังคงละเลยที่จะวิเคราะห์ข้อผิดพลาดการถ่ายโอนข้อมูลของ Windows เนื่องจากเชื่อว่าการทำงานกับสิ่งเหล่านี้นั้นยากเกินไป มันยาก แต่ก็เป็นไปได้: แม้ว่าตัวอย่างเช่นการวิเคราะห์ดัมพ์หนึ่งจากสิบจะประสบความสำเร็จ แต่ความพยายามที่ใช้ในการฝึกฝนเทคนิคที่ง่ายที่สุดในการวิเคราะห์การดัมพ์ที่ผิดพลาดจะไม่ไร้ผล!..

ฉันจะยกตัวอย่างจากแนวทางปฏิบัติ “ดูแลระบบ” ของฉัน

บนเครือข่ายท้องถิ่นโดยไม่มีเหตุผลที่ชัดเจน ("ฮาร์ดแวร์อยู่ในลำดับ รับประกันว่าไม่มีไวรัส ผู้ใช้มี "มือปกติ") เวิร์กสเตชันหลายตัวที่มี Windows XP SP1/SP2 "ออนบอร์ด" หยุดทำงาน ไม่สามารถบู๊ตคอมพิวเตอร์ในโหมดปกติได้ - ต้องไปที่ "คำทักทาย" และต้องใช้เวลาในการรีบูทตลอดไป ในเวลาเดียวกัน พีซีก็บูตเข้าสู่เซฟโหมด

การศึกษาการถ่ายโอนข้อมูลหน่วยความจำทำให้สามารถระบุสาเหตุของความผิดปกติได้: ผู้ร้ายกลายเป็น Kaspersky Anti-Virus ซึ่งเป็นฐานข้อมูลต่อต้านไวรัสใหม่ที่แม่นยำยิ่งขึ้น (แม่นยำยิ่งขึ้นคือโมดูลฐานข้อมูลสองโมดูล - base372c.avc, base032c.avc) .

...มีอีกกรณีหนึ่ง บนพีซีที่ใช้ Windows XP SP3 การรีบูตเกิดขึ้นเมื่อพยายามเปิดไฟล์วิดีโอในรูปแบบ .avi และ .mpeg การศึกษาการถ่ายโอนข้อมูลหน่วยความจำทำให้เราสามารถระบุสาเหตุของปัญหา - ไฟล์ nv4_disp.dll ของไดรเวอร์การ์ดแสดงผล NVIDIA GeForce 6600 หลังจากอัปเดตไดรเวอร์แล้ว ปัญหาก็หมดไป โดยทั่วไป ไดรเวอร์ nv4_disp.dll เป็นหนึ่งในไดรเวอร์ที่ไม่เสถียรที่สุด ซึ่งมักทำให้เกิดอาการ BSOD

ในทั้งสองกรณีนี้ การศึกษาดัมพ์หน่วยความจำขัดข้องทำให้สามารถลดเวลาในการวินิจฉัยและขจัดความผิดปกติให้เหลือน้อยที่สุด (หลายนาที!)

การวิเคราะห์ดัมพ์หน่วยความจำ

มีโปรแกรมมากมายสำหรับวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำที่เสียหายเช่น DumpChk, Kanalyze, WinDbg

มาดูการวิเคราะห์ดัมพ์หน่วยความจำที่เสียหายโดยใช้โปรแกรม WinDbg (ส่วนหนึ่งของเครื่องมือแก้ไขจุดบกพร่องสำหรับ Windows)

การติดตั้งเครื่องมือแก้ไขจุดบกพร่อง

  • เยี่ยมชมเว็บไซต์ของ Microsoft Corporation http://www.microsoft.com/whdc/devtools/debugging/default.mspx;
  • ดาวน์โหลดเครื่องมือแก้ไขข้อบกพร่องสำหรับ Windows เช่น สำหรับ Windows รุ่น 32 บิต ซึ่งสามารถทำได้ในหน้าดาวน์โหลดเครื่องมือแก้ไขข้อบกพร่องสำหรับ Windows
  • หลังจากดาวน์โหลดให้รันไฟล์การติดตั้ง
  • ในหน้าต่างเครื่องมือดีบักสำหรับตัวช่วยสร้างการตั้งค่า Windows คลิกถัดไป
  • ในหน้าต่างที่มีข้อตกลงใบอนุญาต เลือก ฉันยอมรับ -> สวิตช์ถัดไป
  • ในหน้าต่างถัดไป เลือกประเภทการติดตั้ง (โดยค่าเริ่มต้น เครื่องมือแก้ไขจุดบกพร่องจะถูกติดตั้งในโฟลเดอร์ \Program Files\Debugging Tools สำหรับ Windows) -> ถัดไป -> ติดตั้ง -> เสร็จสิ้น;
  • ในการตีความไฟล์ดัมพ์หน่วยความจำ คุณต้องดาวน์โหลดแพ็คเกจสัญลักษณ์สำหรับ Windows เวอร์ชันของคุณ - ไปที่หน้าดาวน์โหลดแพ็คเกจสัญลักษณ์ Windows
  • เลือกเวอร์ชัน Windows ของคุณดาวน์โหลดและเรียกใช้ไฟล์การติดตั้ง Symbol Package
  • ในหน้าต่างที่มีข้อตกลงใบอนุญาตให้คลิกใช่
  • ในหน้าต่างถัดไป เลือกโฟลเดอร์การติดตั้ง (ค่าเริ่มต้นคือ \WINDOWS\Symbols) -> ตกลง -> ใช่;
  • ในหน้าต่าง Microsoft Windows Symbols พร้อมข้อความ "การติดตั้งเสร็จสมบูรณ์" คลิกตกลง

การใช้ WinDbg เพื่อวิเคราะห์ Crash Dumps

  • เรียกใช้ WinDbg (ติดตั้งในโฟลเดอร์ \Program Files\Debugging Tools สำหรับ Windows เป็นค่าเริ่มต้น)
  • เลือกเมนู ไฟล์ -> เส้นทางไฟล์สัญลักษณ์…;
  • ในหน้าต่าง Symbol Search Path คลิกปุ่ม เรียกดู...
  • ในหน้าต่างเรียกดูโฟลเดอร์ ระบุตำแหน่งของโฟลเดอร์สัญลักษณ์ (โดยค่าเริ่มต้น – \WINDOWS\Symbols) -> ตกลง -> ตกลง;
  • เลือกเมนู ไฟล์ -> เปิด Crash Dump... (หรือกด Ctrl + D);
  • ในหน้าต่าง Open Crash Dump ระบุตำแหน่งของไฟล์ Crash Dump (*.dmp) -> เปิด;
  • ในหน้าต่างพื้นที่ทำงานที่มีคำถาม “บันทึกข้อมูลสำหรับพื้นที่ทำงาน?” ให้ทำเครื่องหมายที่ช่องไม่ต้องถามอีก -> ไม่มี
  • หน้าต่าง Command Dump จะเปิดขึ้นในหน้าต่าง WinDbg<путь_и_имя_файла_дампа>ด้วยการวิเคราะห์ดัมพ์
  • ทบทวนการวิเคราะห์ดัมพ์หน่วยความจำ
  • ในส่วน "การวิเคราะห์ Bugcheck" จะมีการระบุสาเหตุที่เป็นไปได้ของความผิดพลาด เช่น "อาจเกิดจาก: smwdm.sys (smwdm+454d5)";
  • หากต้องการดูข้อมูลโดยละเอียด คลิกลิงก์ “!analyze -v” ในบรรทัด “Use !analyze -v เพื่อรับข้อมูลการดีบักโดยละเอียด”
  • ปิด WinDbg;
  • ใช้ข้อมูลที่ได้รับเพื่อกำจัดสาเหตุของปัญหา

ตัวอย่างเช่น ในภาพหน้าจอต่อไปนี้ สาเหตุของการทำงานผิดพลาดคือไฟล์ nv4_disp.dll ของไดรเวอร์การ์ดแสดงผล

สวัสดีเพื่อนๆ วันนี้เราจะมาพูดถึงหัวข้อที่น่าสนใจซึ่งจะช่วยคุณได้ในอนาคตเมื่อหน้าจอสีน้ำเงินแห่งความตาย (BSoD) ปรากฏขึ้น

เช่นเดียวกับฉัน ผู้ใช้คนอื่นๆ หลายคนต้องสังเกตลักษณะของหน้าจอที่มีพื้นหลังสีน้ำเงินซึ่งมีข้อความเขียนไว้ (สีขาวบนพื้นสีน้ำเงิน) ปรากฏการณ์นี้บ่งบอกถึงปัญหาร้ายแรง ทั้งในซอฟต์แวร์ เช่น ความขัดแย้งของไดรเวอร์ และความผิดปกติทางกายภาพของส่วนประกอบคอมพิวเตอร์บางส่วน

ฉันเพิ่งพบปัญหาหน้าจอสีน้ำเงินใน Windows 10 อีกครั้ง แต่ฉันรีบกำจัดมันออกไปและจะแจ้งให้คุณทราบเร็วๆ นี้

คุณต้องการ? จากนั้นไปตามลิงค์

ดังนั้นผู้ใช้ส่วนใหญ่ไม่ทราบว่าสามารถวิเคราะห์ BSoD เพื่อทำความเข้าใจปัญหาข้อผิดพลาดร้ายแรงได้ในภายหลัง ในกรณีเช่นนี้ Windows จะสร้างไฟล์พิเศษบนดิสก์และเราจะวิเคราะห์ไฟล์เหล่านั้น

ดัมพ์หน่วยความจำมีสามประเภท:

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

การถ่ายโอนข้อมูลหลัก– บันทึกข้อมูลโหมดเคอร์เนล

ดัมพ์หน่วยความจำขนาดเล็ก– บันทึกข้อมูลข้อผิดพลาดจำนวนเล็กน้อยและส่วนประกอบที่โหลดซึ่งปรากฏในขณะที่ระบบทำงานผิดปกติเกิดขึ้น เราจะใช้การถ่ายโอนข้อมูลประเภทนี้เนื่องจากจะให้ข้อมูลเพียงพอเกี่ยวกับ BSoD

ตำแหน่งของทั้งดัมพ์ขนาดเล็กและเต็มจะแตกต่างกัน ตัวอย่างเช่น ดัมพ์ขนาดเล็กอยู่ในเส้นทางต่อไปนี้: %systemroot%\minidump

ดัมพ์แบบเต็มอยู่ที่นี่: %systemroot%

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

การวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำโดยใช้ Microsoft Kernel Debuggers

สำหรับระบบเวอร์ชันต่างๆ คุณจะต้องดาวน์โหลดยูทิลิตี้ประเภทอื่น ตัวอย่างเช่น สำหรับระบบปฏิบัติการ 64 บิต จำเป็นต้องมีโปรแกรม 64 บิต สำหรับระบบปฏิบัติการ 32 บิต จำเป็นต้องมีเวอร์ชัน 32 บิต

ไม่เพียงเท่านั้น คุณต้องดาวน์โหลดและติดตั้งแพ็คเกจสัญลักษณ์การดีบักที่จำเป็นสำหรับโปรแกรม มันเรียกว่าสัญลักษณ์การดีบัก แต่ละเวอร์ชันของแพ็คเกจนี้จะถูกดาวน์โหลดภายใต้ระบบปฏิบัติการเฉพาะ ขั้นแรกให้ค้นหาว่าคุณมีระบบใด จากนั้นจึงดาวน์โหลด เพื่อที่คุณจะได้ไม่ต้องมองหาสัญลักษณ์เหล่านี้ทุกที่ นี่คือลิงค์ดาวน์โหลด การติดตั้งควรทำในพาธนี้: %systemroot%\สัญลักษณ์

ตอนนี้คุณสามารถเปิดตัวดีบักเกอร์ของเราได้ โดยหน้าต่างจะมีลักษณะดังนี้:

ก่อนที่จะวิเคราะห์การทิ้ง เราจะกำหนดค่าบางอย่างในยูทิลิตี้ ขั้นแรก เราต้องบอกโปรแกรมว่าเราติดตั้งสัญลักษณ์การดีบักไว้ที่ไหน ในการดำเนินการนี้คลิกที่ปุ่ม "ไฟล์" และเลือกรายการ "เส้นทางไฟล์สัญลักษณ์" จากนั้นระบุเส้นทางไปยังสัญลักษณ์


โปรแกรมนี้ช่วยให้คุณสามารถแยกสัญลักษณ์ออกจากเว็บได้โดยตรง ดังนั้นคุณไม่จำเป็นต้องดาวน์โหลดสัญลักษณ์เหล่านั้นด้วยซ้ำ (ขออภัยสำหรับผู้ที่ดาวน์โหลดมาแล้ว) พวกเขาจะนำมาจากเซิร์ฟเวอร์ของ Microsoft ดังนั้นทุกอย่างจึงปลอดภัย ดังนั้นคุณต้องเปิด "ไฟล์" อีกครั้ง จากนั้น "เส้นทางไฟล์สัญลักษณ์" แล้วป้อนคำสั่งต่อไปนี้:

SRV*%systemroot%\สัญลักษณ์*http://msdl.microsoft.com/download/สัญลักษณ์


ดังนั้นเราจึงชี้ให้โปรแกรมทราบว่าควรนำสัญลักษณ์ออกจากเครือข่าย เมื่อเราทำสิ่งนี้เสร็จแล้ว คลิก "ไฟล์" และเลือก "บันทึกพื้นที่ทำงาน" จากนั้นคลิกตกลง

แค่นั้นแหละ. เราได้กำหนดค่าโปรแกรมอย่างถูกต้องแล้ว ตอนนี้เราเริ่มวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำ ในโปรแกรมให้กดปุ่ม "ไฟล์", แล้ว "เปิดการถ่ายโอนข้อมูลผิดพลาด"และเลือกไฟล์ที่ต้องการ

Kernel Debuggers จะเริ่มวิเคราะห์ไฟล์แล้วส่งออกผลลัพธ์เกี่ยวกับสาเหตุของข้อผิดพลาด


ในหน้าต่างที่ปรากฏขึ้น คุณสามารถป้อนคำสั่งได้ ถ้าเราเข้าไป !วิเคราะห์ –vจากนั้นเราจะได้รับข้อมูลเพิ่มเติม

นั่นคือทั้งหมดที่มีโปรแกรมนี้ หากต้องการหยุดดีบักเกอร์ ให้เลือก "ดีบั๊ก" และรายการ "หยุดดีบั๊ก"

การวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำโดยใช้ BlueScreenView

โปรแกรม BlueScreenView ยังเหมาะสำหรับการวิเคราะห์ข้อผิดพลาดและ BSoD ต่างๆ ด้วยอินเทอร์เฟซที่เรียบง่ายดังนั้นจึงไม่มีปัญหาในการเรียนรู้

ดาวน์โหลดโปรแกรมจากลิงค์ด้านบนและติดตั้ง หลังจากเปิดตัวยูทิลิตี้แล้ว คุณจะต้องกำหนดค่ามัน ไปที่พารามิเตอร์: "การตั้งค่า" - "การตั้งค่าขั้นสูง" หน้าต่างเล็ก ๆ จะเปิดขึ้นพร้อมรายการสองสามรายการ ในย่อหน้าแรก คุณต้องระบุตำแหน่งของการดัมพ์หน่วยความจำ โดยปกติจะอยู่ในเส้นทาง C:\WINDOWS\Minidump จากนั้นเพียงคลิกปุ่ม "ค่าเริ่มต้น"


คุณเห็นอะไรในโปรแกรม? เรามีรายการเมนู ส่วนหนึ่งของหน้าต่างที่มีชื่อของไฟล์ดัมพ์ และส่วนที่สองของหน้าต่าง - เนื้อหาในดัมพ์หน่วยความจำ


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

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

บนอินเทอร์เน็ตคุณสามารถค้นหาทุกสิ่งเกี่ยวกับรหัสข้อผิดพลาดและไดรเวอร์ที่อาจถูกตำหนิสำหรับ BSoD โดยคลิก "ไฟล์" จากนั้น “ค้นหารหัสข้อผิดพลาด + ไดรเวอร์ใน Google”.


คุณสามารถแสดงเฉพาะไดรเวอร์ที่มีอยู่ในขณะที่เกิดข้อผิดพลาดเท่านั้น ในการดำเนินการนี้คลิก "การตั้งค่า" - "โหมดหน้าต่างด้านล่าง" - "พบเฉพาะไดรเวอร์ใน Crash Stack" หรือกดปุ่ม F7

หากต้องการแสดงภาพหน้าจอ BSoD ให้กด F8

หากต้องการแสดงไดรเวอร์และไฟล์ทั้งหมด ให้กด F6

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

อย่าลืมถามคำถามในความคิดเห็น

หรือที่เรียกกันว่า BSOD สามารถทำลายอายุการใช้งานของทั้งคอมพิวเตอร์และเซิร์ฟเวอร์ได้อย่างมากและมันก็กลายเป็นเครื่องเสมือนด้วย วันนี้ฉันจะบอกคุณถึงวิธีวิเคราะห์หน้าจอสีน้ำเงินของหน่วยความจำดัมพ์ใน Windows เนื่องจากการวินิจฉัยที่ถูกต้องและการหาสาเหตุที่ทำให้ระบบของคุณไม่ทำงาน 99 เปอร์เซ็นต์ของวิธีแก้ปัญหาโดยเฉพาะอย่างยิ่งวิศวกรระบบจำเป็นต้องสามารถ ทำเช่นนี้และใช้เวลาสั้นที่สุด ดังนั้นธุรกิจจะสูญเสียเงินจำนวนมากเนื่องจากการหยุดให้บริการได้อย่างไร?

การถอดรหัส BSOD

ก่อนอื่นเรามาดูความหมายของคำย่อนี้ BSOD จาก English Blue Screen of Death หรือโหมดข้อผิดพลาด STOP

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

วิธีกำหนดค่าการสร้างดัมพ์หน่วยความจำ

ตามค่าเริ่มต้น เมื่อมีหน้าจอสีน้ำเงิน Windows จะสร้างไฟล์ Crash dump memory.dmp ตอนนี้ฉันจะแสดงให้เห็นว่ามันถูกกำหนดค่าอย่างไรและเก็บไว้ที่ไหน ฉันจะแสดงโดยใช้ Windows Server 2008 R2 เป็นตัวอย่าง เนื่องจากฉันเพิ่งมี งานศึกษาปัญหาหน้าจอสีน้ำเงินในเครื่องเสมือน หากต้องการทราบว่ามีการกำหนดค่าหน้าต่างหน่วยความจำดัมพ์ไว้ที่ใด ให้เปิด Start และคลิกขวาที่ไอคอน Computer และเลือก Properties

วิธีวิเคราะห์หน่วยความจำดัมพ์หน้าจอสีน้ำเงินใน Windows - คุณสมบัติคอมพิวเตอร์

วิธีวิเคราะห์หน่วยความจำดัมพ์หน้าจอสีน้ำเงินในการตั้งค่าระบบ Windows

ไปที่แท็บขั้นสูง - การบูตและการกู้คืน คลิกปุ่มการตั้งค่า

วิธีวิเคราะห์หน่วยความจำดัมพ์หน้าจอสีน้ำเงินใน Windows - การบูตและการกู้คืน

ไฟล์ memory.dmp เก็บไว้ที่ไหน?

และเราเห็นว่าก่อนอื่นมีช่องทำเครื่องหมายเพื่อทำการรีบูตอัตโนมัติเพื่อบันทึกข้อมูลการดีบัก มีการเลือกการถ่ายโอนข้อมูลหน่วยความจำเคอร์เนล และด้านล่างมีตำแหน่งที่บันทึกการถ่ายโอนข้อมูลหน่วยความจำ %SystemRoot%\MEMORY.DMP

ไปที่โฟลเดอร์ c:\windows\ แล้วค้นหาไฟล์ MEMORY.DMP ซึ่งมีรหัสมรณะหน้าจอสีน้ำเงิน

วิธีวิเคราะห์หน่วยความจำดัมพ์หน้าจอสีน้ำเงินใน Windows-memory.dmp

วิธีการตั้งค่ามินิดัมพ์

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

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

ตอนนี้เราได้ทราบแล้วว่าจะหาไฟล์ดัมพ์หน่วยความจำได้ที่ไหน เราต้องเรียนรู้วิธีตีความและทำความเข้าใจสาเหตุที่ทำให้เกิดหน้าจอสีน้ำเงินแห่งความตาย Microsoft Kernel Debugger จะช่วยเราแก้ไขปัญหานี้ คุณสามารถดาวน์โหลด Microsoft Kernel Debugger ได้จากเว็บไซต์อย่างเป็นทางการ สิ่งสำคัญคือการเลือกเวอร์ชันระบบปฏิบัติการที่ต้องการ หากมีใครทำลายมัน คุณสามารถดาวน์โหลดได้จากดิสก์ Yandex โดยใช้ลิงก์โดยตรง มันยังเป็นส่วนหนึ่งของ ADK

ดาวน์โหลด Microsoft Kernel Debugger ด้วยเหตุนี้คุณจะมีไฟล์ขนาดเล็กที่จะช่วยให้คุณสามารถดาวน์โหลดทุกสิ่งที่คุณต้องการจากอินเทอร์เน็ต มาเปิดตัวกันเลย

เราจะไม่เข้าร่วมในโครงการปรับปรุงคุณภาพ

คลิกยอมรับและยอมรับใบอนุญาต

วิธีติดตั้ง Microsoft Kernel Debugger - ยอมรับใบอนุญาต

การติดตั้ง Microsoft Kernel Debugger จะเริ่มต้นขึ้น

วิธีการติดตั้ง Microsoft Kernel Debugger - การติดตั้ง MKD

เราเห็นว่าติดตั้ง Microsoft Kernel Debugger สำเร็จแล้ว

หลังจากนั้นเราจะเห็นว่าโฟลเดอร์ Debugging Tools สำหรับ Windows ปรากฏขึ้นเมื่อเริ่มต้นระบบสำหรับทั้งระบบ 32 และ 64 บิต

นอกจากแพ็คเกจ Debugging Tools สำหรับ Windows แล้ว คุณจะต้องมีชุดสัญลักษณ์การดีบัก - สัญลักษณ์การดีบัก ชุดสัญลักษณ์การดีบักมีเฉพาะสำหรับแต่ละระบบปฏิบัติการที่บันทึก BSoD ดังนั้นคุณจะต้องดาวน์โหลดชุดสัญลักษณ์สำหรับแต่ละระบบปฏิบัติการที่คุณต้องวิเคราะห์การทำงาน Windows XP 32 บิตจะต้องใช้ชุดอักขระ Windows XP 32 บิต ส่วนระบบปฏิบัติการ 64 บิตจะต้องใช้ชุดอักขระ Windows XP 64 บิต สำหรับระบบปฏิบัติการอื่นๆ ในตระกูล Windows ชุดอักขระจะถูกเลือกตามหลักการเดียวกัน คุณสามารถดาวน์โหลดสัญลักษณ์การดีบักได้จากที่นี่ แนะนำให้ติดตั้งที่ %systemroot%\สัญลักษณ์แม้ว่าฉันต้องการติดตั้งมันในโฟลเดอร์แยกกันและหลีกเลี่ยงไม่ให้โฟลเดอร์ Windows เกะกะ

การวิเคราะห์หน้าจอสีน้ำเงินในเครื่องมือดีบัก

หลังจากติดตั้ง Debugging Symbols สำหรับระบบที่มีหน้าจอสีน้ำเงินตายแล้ว ให้เปิด Debugging Tools

วิธีการติดตั้ง Microsoft Kernel Debugger - Run

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

คลิกปุ่มเรียกดู...

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

สวัสดีเพื่อนๆ วันนี้เราจะมาพูดถึงหัวข้อที่น่าสนใจซึ่งจะช่วยคุณได้ในอนาคตเมื่อหน้าจอสีน้ำเงินแห่งความตาย (BSoD) ปรากฏขึ้น

เช่นเดียวกับฉัน ผู้ใช้คนอื่นๆ หลายคนต้องสังเกตลักษณะของหน้าจอที่มีพื้นหลังสีน้ำเงินซึ่งมีข้อความเขียนไว้ (สีขาวบนพื้นสีน้ำเงิน) ปรากฏการณ์นี้บ่งบอกถึงปัญหาร้ายแรง ทั้งในซอฟต์แวร์ เช่น ความขัดแย้งของไดรเวอร์ และความผิดปกติทางกายภาพของส่วนประกอบคอมพิวเตอร์บางส่วน

ฉันเพิ่งพบหน้าจอสีน้ำเงินใน Windows 10 อีกครั้ง แต่ฉันรีบกำจัดมันออกไปและจะแจ้งให้คุณทราบเร็วๆ นี้

คุณต้องการชมภาพยนตร์ออนไลน์คุณภาพดีหรือไม่? จากนั้นไปตามลิงค์

ดังนั้นผู้ใช้ส่วนใหญ่ไม่ทราบว่าสามารถวิเคราะห์ BSoD เพื่อทำความเข้าใจปัญหาข้อผิดพลาดร้ายแรงได้ในภายหลัง ในกรณีเช่นนี้ Windows จะสร้างไฟล์พิเศษบนดิสก์ - ดัมพ์หน่วยความจำ และเราจะวิเคราะห์ไฟล์เหล่านั้น

ดัมพ์หน่วยความจำมีสามประเภท:

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

Kernel dump – บันทึกข้อมูลเกี่ยวกับโหมดเคอร์เนล

ดัมพ์หน่วยความจำขนาดเล็ก – บันทึกข้อมูลจำนวนเล็กน้อยเกี่ยวกับข้อผิดพลาดและส่วนประกอบที่โหลดซึ่งปรากฏในขณะที่ระบบทำงานผิดปกติ เราจะใช้การถ่ายโอนข้อมูลประเภทนี้เนื่องจากจะให้ข้อมูลเพียงพอเกี่ยวกับ BSoD

ตำแหน่งของทั้งดัมพ์ขนาดเล็กและเต็มจะแตกต่างกัน ตัวอย่างเช่น ดัมพ์ขนาดเล็กอยู่ในพาธต่อไปนี้: %systemroot%minidump

ดัมพ์แบบเต็มอยู่ที่นี่: %systemroot%

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

การวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำโดยใช้ Microsoft Kernel Debuggers

สำหรับระบบเวอร์ชันต่างๆ คุณจะต้องดาวน์โหลดยูทิลิตี้ประเภทอื่น ตัวอย่างเช่น สำหรับระบบปฏิบัติการ 64 บิต จำเป็นต้องมีโปรแกรม 64 บิต สำหรับระบบปฏิบัติการ 32 บิต จำเป็นต้องมีเวอร์ชัน 32 บิต

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

ตอนนี้คุณสามารถเปิดตัวดีบักเกอร์ของเราได้ โดยหน้าต่างจะมีลักษณะดังนี้:

ก่อนที่จะวิเคราะห์การทิ้ง เราจะกำหนดค่าบางอย่างในยูทิลิตี้ ขั้นแรก เราต้องบอกโปรแกรมว่าเราติดตั้งสัญลักษณ์การดีบักไว้ที่ไหน ในการดำเนินการนี้คลิกที่ปุ่ม "ไฟล์" และเลือกรายการ "เส้นทางไฟล์สัญลักษณ์" จากนั้นระบุเส้นทางไปยังสัญลักษณ์

โปรแกรมนี้ช่วยให้คุณสามารถแยกสัญลักษณ์ออกจากเว็บได้โดยตรง ดังนั้นคุณไม่จำเป็นต้องดาวน์โหลดสัญลักษณ์เหล่านั้นด้วยซ้ำ (ขออภัยสำหรับผู้ที่ดาวน์โหลดมาแล้ว) พวกเขาจะนำมาจากเซิร์ฟเวอร์ของ Microsoft ดังนั้นทุกอย่างจึงปลอดภัย ดังนั้นคุณต้องเปิด "ไฟล์" อีกครั้ง จากนั้น "เส้นทางไฟล์สัญลักษณ์" แล้วป้อนคำสั่งต่อไปนี้:

SRV*%systemroot%สัญลักษณ์*http://msdl.microsoft.com/download/สัญลักษณ์

ดังนั้นเราจึงชี้ให้โปรแกรมทราบว่าควรนำสัญลักษณ์ออกจากเครือข่าย เมื่อเราทำสิ่งนี้เสร็จแล้ว คลิก "ไฟล์" และเลือก "บันทึกพื้นที่ทำงาน" จากนั้นคลิกตกลง

แค่นั้นแหละ. เราได้กำหนดค่าโปรแกรมอย่างถูกต้องแล้ว ตอนนี้เราเริ่มวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำ ในโปรแกรมให้คลิกปุ่ม "ไฟล์" จากนั้น "เปิด Crash Dump" และเลือกไฟล์ที่ต้องการ

Kernel Debuggers จะเริ่มวิเคราะห์ไฟล์แล้วส่งออกผลลัพธ์เกี่ยวกับสาเหตุของข้อผิดพลาด

ในหน้าต่างที่ปรากฏขึ้น คุณสามารถป้อนคำสั่งได้ ถ้าเราเข้า!analyze –v เราก็จะได้ข้อมูลเพิ่มเติม

นั่นคือทั้งหมดที่มีโปรแกรมนี้ หากต้องการหยุดดีบักเกอร์ ให้เลือก "ดีบั๊ก" และรายการ "หยุดดีบั๊ก"

การวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำโดยใช้ BlueScreenView

โปรแกรม BlueScreenView ยังเหมาะสำหรับการวิเคราะห์ข้อผิดพลาดและ BSoD ต่างๆ ด้วยอินเทอร์เฟซที่เรียบง่ายดังนั้นจึงไม่มีปัญหาในการเรียนรู้

ดาวน์โหลดโปรแกรมจากลิงค์ด้านบนและติดตั้ง หลังจากเปิดตัวยูทิลิตี้แล้ว คุณจะต้องกำหนดค่ามัน ไปที่พารามิเตอร์: "การตั้งค่า" - "การตั้งค่าขั้นสูง" หน้าต่างเล็ก ๆ จะเปิดขึ้นพร้อมรายการสองสามรายการ ในย่อหน้าแรก คุณต้องระบุตำแหน่งของการดัมพ์หน่วยความจำ โดยปกติจะอยู่ในเส้นทาง C:WINDOWSMinidump จากนั้นเพียงคลิกปุ่ม "ค่าเริ่มต้น"

คุณเห็นอะไรในโปรแกรม? เรามีรายการเมนู ส่วนหนึ่งของหน้าต่างที่มีชื่อของไฟล์ดัมพ์ และส่วนที่สองของหน้าต่าง - เนื้อหาในดัมพ์หน่วยความจำ

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

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

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

คุณสามารถแสดงเฉพาะไดรเวอร์ที่มีอยู่ในขณะที่เกิดข้อผิดพลาดเท่านั้น ในการดำเนินการนี้คลิก "การตั้งค่า" - "โหมดหน้าต่างด้านล่าง" - "พบเฉพาะไดรเวอร์ใน Crash Stack" หรือกดปุ่ม F7

หากต้องการแสดงภาพหน้าจอ BSoD ให้กด F8

หากต้องการแสดงไดรเวอร์และไฟล์ทั้งหมด ให้กด F6

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

อย่าลืมถามคำถามในความคิดเห็น

http://computerinfo.ru/analiz-dampa-pamyati/http://computerinfo.ru/wp-content/uploads/2016/08/analiz-dampa-pamyati.jpghttp://computerinfo.ru/wp-content/ uploads/2016/08/analiz-dampa-pamyati-150×150.jpg2016-08-18T13:45:42+00:00EvilSin225BlueScreenView ปัญหา, Microsoft Kernel Debuggers, การวิเคราะห์ดัมพ์, การวิเคราะห์ดัมพ์หน่วยความจำ, การวิเคราะห์ดัมพ์หน่วยความจำ windows 10, ดัมพ์หน่วยความจำ การวิเคราะห์ windows 7, การวิเคราะห์ความผิดพลาด, สาเหตุของ BSoD สวัสดีเพื่อน ๆ วันนี้เราจะดูหัวข้อที่น่าสนใจที่จะช่วยคุณในอนาคตเมื่อหน้าจอสีน้ำเงินแห่งความตาย (BSoD) ปรากฏขึ้น เช่นเดียวกับฉัน ผู้ใช้คนอื่นๆ หลายคนต้องสังเกตลักษณะของหน้าจอที่มีพื้นหลังสีน้ำเงินซึ่งมีข้อความเขียนไว้ (สีขาวบนพื้นสีน้ำเงิน) ปรากฏการณ์นี้บ่งบอกถึงปัญหาร้ายแรง เช่น ในซอฟต์แวร์ เช่น ... EvilSin225 Andrey Terekhov [ป้องกันอีเมล]เทคโนโลยีคอมพิวเตอร์

การถ่ายโอนข้อมูลผิดพลาด

เมื่อตรวจพบข้อผิดพลาดร้ายแรง ระบบ Windows ทั้งหมด ให้สร้างไฟล์แครชดัมพ์ (สแนปชอต) ของเนื้อหาของ RAM และบันทึกลงในฮาร์ดไดรฟ์ ดัมพ์หน่วยความจำมีสามประเภท:

ดัมพ์หน่วยความจำเต็ม – บันทึกเนื้อหาทั้งหมดของ RAM ขนาดภาพเท่ากับขนาด RAM + 1 MB (ส่วนหัว) ไม่ค่อยได้ใช้ เนื่องจากในระบบที่มีหน่วยความจำจำนวนมาก ขนาดดัมพ์จะใหญ่เกินไป

การถ่ายโอนข้อมูลหน่วยความจำเคอร์เนล - บันทึกข้อมูล RAM ที่เกี่ยวข้องกับโหมดเคอร์เนลเท่านั้น ข้อมูลโหมดผู้ใช้ไม่ได้รับการบันทึกเนื่องจากไม่มีข้อมูลเกี่ยวกับสาเหตุของความล้มเหลวของระบบ ขนาดของไฟล์ดัมพ์ขึ้นอยู่กับขนาดของ RAM และแตกต่างกันไปตั้งแต่ 50 MB (สำหรับระบบที่มี RAM 128 MB) ถึง 800 MB (สำหรับระบบที่มี RAM 8 GB)

ดัมพ์หน่วยความจำขนาดเล็ก (มินิดัมพ์) - มีข้อมูลจำนวนค่อนข้างน้อย: รหัสข้อผิดพลาดพร้อมพารามิเตอร์ รายการไดรเวอร์ที่โหลดลงใน RAM ในขณะที่ระบบขัดข้อง ฯลฯ แต่ข้อมูลนี้เพียงพอที่จะระบุไดรเวอร์ที่ผิดพลาดได้ . ข้อดีอีกประการหนึ่งของการถ่ายโอนข้อมูลประเภทนี้คือขนาดไฟล์เล็ก

การตั้งค่าระบบ

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

หลังจากเสร็จสิ้นการปรับแต่งทั้งหมดแล้ว หลังจากแต่ละ BSoD ไฟล์ที่มีนามสกุล .dmp จะถูกบันทึกไว้ในโฟลเดอร์ C:WINDOWSMinidump ฉันแนะนำให้คุณอ่านเนื้อหา "วิธีสร้างโฟลเดอร์" คุณยังสามารถเลือกช่องทำเครื่องหมาย "แทนที่ไฟล์ดัมพ์ที่มีอยู่" ได้ ในกรณีนี้ ดัมพ์ข้อขัดข้องใหม่แต่ละรายการจะถูกเขียนทับอันเก่า ฉันไม่แนะนำให้เปิดใช้งานตัวเลือกนี้

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

ดังนั้น หลังจากที่หน้าจอสีน้ำเงินแห่งความตายปรากฏขึ้น ระบบจะบันทึกดัมพ์หน่วยความจำขัดข้องใหม่ เพื่อวิเคราะห์ดัมพ์ ฉันแนะนำให้ใช้โปรแกรม BlueScreenView สามารถดาวน์โหลดได้ฟรีที่นี่ โปรแกรมนี้ค่อนข้างสะดวกและมีอินเทอร์เฟซที่ใช้งานง่าย หลังจากติดตั้งแล้ว สิ่งแรกที่คุณต้องทำคือระบุตำแหน่งสำหรับจัดเก็บหน่วยความจำดัมพ์บนระบบ ในการดำเนินการนี้ไปที่รายการเมนู "ตัวเลือก" และเลือก "ตัวเลือกขั้นสูง" เลือกปุ่มตัวเลือก “โหลดจากโฟลเดอร์ Mini Dump ต่อไปนี้” และระบุโฟลเดอร์ที่จัดเก็บดัมพ์ หากไฟล์ถูกจัดเก็บไว้ในโฟลเดอร์ C:WINDOWSMinidump คุณสามารถคลิกปุ่ม “Default” ได้ คลิกตกลงและไปที่อินเทอร์เฟซของโปรแกรม

โปรแกรมประกอบด้วยสามช่วงตึกหลัก:

ในบล็อกรายการการถ่ายโอนข้อมูลหน่วยความจำ (ทำเครื่องหมายด้วยหมายเลข 2 ในรูป) ให้เลือกดัมพ์ที่เราสนใจและดูรายการไดรเวอร์ที่โหลดลงใน RAM (ทำเครื่องหมายด้วยหมายเลข 3 ในรูป) ไดรเวอร์ที่อยู่ในสแต็กหน่วยความจำจะเป็นสีชมพู พวกเขาเป็นสาเหตุของ BSoD จากนั้นไปที่เมนูหลักของไดรเวอร์ พิจารณาว่าอุปกรณ์หรือโปรแกรมใดเป็นของอุปกรณ์ ก่อนอื่นให้ใส่ใจกับไฟล์ที่ไม่ใช่ระบบเนื่องจากไฟล์ระบบจะถูกโหลดใน RAM ไม่ว่าในกรณีใด สังเกตได้ง่ายว่าไดรเวอร์ที่ผิดพลาดในภาพคือ myfault.sys ฉันจะบอกว่าโปรแกรมนี้เปิดตัวโดยเฉพาะเพื่อทำให้เกิดข้อผิดพลาด Stop หลังจากระบุไดรเวอร์ที่ผิดพลาดแล้ว คุณจะต้องอัปเดตหรือลบไดรเวอร์ออกจากระบบ

เพื่อให้โปรแกรมแสดงรายการไดรเวอร์ที่อยู่ในสแต็กหน่วยความจำเมื่อมี BSoD เกิดขึ้นคุณต้องไปที่รายการเมนู "ตัวเลือก" คลิกที่เมนู "LowerPaneMode" และเลือก "OnlyDriversFoundInStack" (หรือกด F7 ปุ่ม) และหากต้องการแสดงภาพหน้าจอของข้อผิดพลาด ให้เลือก “BlueScreeninXPStyle” (F8) หากต้องการกลับไปยังรายการไดรเวอร์ทั้งหมด คุณต้องเลือก "AllDrivers" (F6)

ฉันจะขอบคุณถ้าคุณใช้ปุ่ม:

การวิเคราะห์การถ่ายโอนข้อมูลความผิดพลาดของ Windows

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

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

การถ่ายโอนข้อมูลความผิดพลาดสามารถวิเคราะห์ได้โดยใช้ยูทิลิตี้ BlueScreenView หรือดีบักเกอร์ระบบ WinDbg (เครื่องมือดีบักสำหรับ windows)

การวิเคราะห์ดัมพ์ความผิดพลาดโดยใช้ยูทิลิตี้ BlueScreenView

เครื่องมือที่ง่ายที่สุดในการวิเคราะห์ Crash dump คือยูทิลิตี้ BlueScreenView จาก NirSoft

ดาวน์โหลดโปรแกรมจากเว็บไซต์ของผู้พัฒนา

BlueScreenView สแกนโฟลเดอร์ minidump และแสดงข้อมูลเกี่ยวกับข้อบกพร่องที่พบ

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

รายการไดรเวอร์ที่โหลดบนระบบจะแสดงที่ด้านล่างของหน้าต่าง โมดูลที่ถูกเข้าถึงในขณะที่เกิดความล้มเหลวจะถูกเน้นด้วยสี ควรให้ความสนใจเป็นพิเศษ เนื่องจากอาจเป็นสาเหตุของความล้มเหลว

การคลิกสองครั้งจะแสดงข้อมูลเพิ่มเติม

การวิเคราะห์การถ่ายโอนข้อมูลข้อขัดข้องโดยใช้โปรแกรมดีบักเกอร์ WinDbg

เมื่อใช้ WinDbg คุณสามารถดึงข้อมูลโดยละเอียดเพิ่มเติมจาก Crash dump รวมถึงบันทึกของ Call Stack

การติดตั้งเครื่องมือแก้ไขจุดบกพร่องสำหรับ windows (WinDbg)

Microsoft เผยแพร่ WinDbg เป็นส่วนหนึ่งของ SDK เท่านั้น คุณสามารถดาวน์โหลดตัวติดตั้งบนเว็บได้จากหน้าดาวน์โหลด Dev Center

ไม่จำเป็นต้องติดตั้ง SDK เพื่อวิเคราะห์ข้อขัดข้องดัมพ์ คุณสามารถดาวน์โหลด Debugging Tools สำหรับ windows (WinDbg) เป็นแพ็คเกจแยกต่างหากได้ที่นี่หรือที่นี่

ดาวน์โหลดและติดตั้ง WinDbg สำหรับ Windows เวอร์ชันของคุณ เวอร์ชันสำหรับ Windows 7 ยังใช้งานได้ใน Windows XP และ Windows Vista

Windows 10 ต้องใช้ WinDbg เวอร์ชัน 10.0.10586.567 ดาวน์โหลด Windows 10 Standalone SDK ตัวติดตั้งบนเว็บจะดาวน์โหลด ระหว่างการติดตั้ง ให้ปิดการใช้งานส่วนประกอบทั้งหมดยกเว้นดีบักเกอร์

หลังการติดตั้งเราจะปรับทางลัดเพื่อเปิด WinDbg ในคุณสมบัติทางลัด ให้เลือกช่องเพื่อเรียกใช้ในฐานะผู้ดูแลระบบ นอกจากนี้ ในฐานะโฟลเดอร์การทำงาน ให้ตั้งค่า: %SystemRoot%Minidump

การตั้งค่าสัญลักษณ์การดีบัก

สัญลักษณ์การดีบักประกอบด้วยชื่อเชิงสัญลักษณ์ของฟังก์ชันจากซอร์สโค้ด พวกเขาจำเป็นต้องถอดรหัสและตีความการถ่ายโอนข้อมูลข้อขัดข้อง

เมื่อคุณเริ่ม WinDbg เป็นครั้งแรก คุณจะต้องระบุเส้นทางไปยังสัญลักษณ์การดีบัก โดยเปิดเมนูไฟล์ เส้นทางไฟล์สัญลักษณ์ หรือใช้ชุดค่าผสม Ctrl+S

บรรทัดถัดไปเปิดใช้งานการโหลดสัญลักษณ์การดีบักจากเครือข่าย การตั้งค่าเส้นทางในเครื่องสำหรับการบันทึกไฟล์และที่อยู่สำหรับการดาวน์โหลดจากอินเทอร์เน็ต:

srv*C:windowsสัญลักษณ์*http://msdl.microsoft.com/download/สัญลักษณ์

หากระบบของคุณไม่ได้เชื่อมต่อกับอินเทอร์เน็ต สามารถดาวน์โหลดแพ็คเกจการติดตั้งสัญลักษณ์ล่วงหน้าได้จากหน้าดาวน์โหลด Windows Symbol Packs ของ Microsoft Development Center

การวิเคราะห์การถ่ายโอนข้อมูลความผิดพลาด

เปิดตัว WinDbg

ในเมนู ให้เลือกไฟล์ เปิด Crash Dump หรือกด Ctrl+D

ระบุเส้นทางไปยังดัมพ์ %SystemRoot%MEMORY.DMP หรือ %SystemRoot%Minidumpfile.dmp

หากต้องการรับข้อมูลโดยละเอียด ให้รันคำสั่ง:

โปรแกรมดีบักเกอร์จะแจ้งให้คุณดำเนินการ เพียงวางเมาส์ไว้เหนือลิงก์แล้วคลิก

เป็นผลให้เราได้รับผลลัพธ์ดังต่อไปนี้:

**************************************** ********** ******************* * * * การวิเคราะห์ข้อผิดพลาด * * * ************* ********** ****************************** **************** ประเภทข้อผิดพลาด: KMODE_EXCEPTION_NOT_HANDLED (1e) ความคิดเห็นเกี่ยวกับข้อผิดพลาด: นี่เป็นการตรวจสอบข้อบกพร่องที่พบบ่อยมาก โดยปกติแล้วที่อยู่ข้อยกเว้นจะระบุไดรเวอร์/ฟังก์ชันที่ทำให้เกิดปัญหา โปรดสังเกตที่อยู่นี้ตลอดจนวันที่ลิงก์ของไดรเวอร์/รูปภาพที่มีที่อยู่นี้เสมอ อาร์กิวเมนต์: อาร์กิวเมนต์ข้อผิดพลาด: Arg1: 0000000000000000 รหัสข้อยกเว้นที่ไม่ได้จัดการ Arg2: 0000000000000000 ที่อยู่ที่มีข้อยกเว้นเกิดขึ้นที่ Arg3: 0000000000000000 พารามิเตอร์ 0 ของข้อยกเว้น Arg4: 0000000000000000 พารามิเตอร์ 1 ของข้อยกเว้น รายละเอียดการดีบัก: —— ———— ข้อยกเว้น_รหัส: (Win32) 0 (0) — . FAULTING_IP: +3332313336383065 00000000`00000000 ?? - EXCEPTION_PARAMETER1: 0000000000000000 EXCEPTION_PARAMETER2: 0000000000000000 ERROR_CODE: (NTSTATUS) 0 - STATUS_WAIT_0 BUGCHECK_STR: 0x1E_0 ลูกค้า_CRASH_COUNT: 1 DEFAULT_BUCKET_ID: IVER_FAULT กระบวนการที่ทำให้เกิด ข้อผิดพลาด: PROCESS_NAME: VirtualBox.exe CURRENT_IRQL: 2 EXCEPTION_RECORD: fffff80000ba24d8 - (.exr 0xfffff80000ba24d8) ExceptionAddress: fffff800034d8a70 ( nt !DbgBreakPoint) ExceptionCode: 80000003 (ข้อยกเว้นคำสั่งตัวแบ่ง) ExceptionFlags: 00000000 NumberParameters: 1 พารามิเตอร์: 0000000000000000 TRAP_FRAME: fffff80000ba2580 — (.trap 0xfffff80000ba2580) หมายเหตุ: กรอบดักไม่มีการลงทะเบียนทั้งหมด . ค่าลงทะเบียนบางค่าอาจเป็นศูนย์หรือไม่ถูกต้อง rax=0000000000142940 rbx=0000000000000000 rcx=fffffa80055be690 rdx=0000000000009018 rsi=000000000000000 rdi=0000000000000000 34d8a71 rsp=ffffff80000ba2718 rbp=ffffff88006fa0000 r8=0000000000002274 r9=11d0851b22c6ac61 r10=ffffff80003464000 r11=ffffff80000ba27e0 r12=00000000 00000000 r13=0000000000000000 r14=0000000000000000 r15= 0000000000000000 iopl=0 nv up ei pl nz ac po nc nt!DbgBreakPoint+0x1: fffff800`034d8a71 c3 ret การรีเซ็ตขอบเขตเริ่มต้น LAST_CONTROL_TRANSFER: จาก fffff800034d85fe ถึง fffff800034e0c10 STACK_TEXT: การเรียกสแต็ก ov: fffff800`00ba15b8 800`034d85fe: fffffa80`03c05530 00000000`ffffffff fffff800`00ba1d30 fffff800`0350c830: nt!KeBugCheck fffff800`00ba15c0 fffff800`0350c4fd: fffff800`036ea71c fffff800`03627c30 fffff800`03464000 fffff800`00ba 24d8: nt!KiKernelCalloutExceptionHandler+0xe fffff800`00ba15f0 fffff800`0350b2d5: fffff800`0362b028 fffff800`00ba1668 fffff800 ` 00ba24d8 fffff800`03464000: nt!RtlpExecuteHandlerForException+0xd fffff800`00ba1620 fffff800`0351c361: fffff800`00ba24d8 fffff800`00ba1d30 fffff800`00000000 00000 00`00142940: ไม่! RtlDispatchException+0x415 fffff800`00ba1d00 fffff800`034e02c2: fffff800`00ba24d8 fffffa80`07149010 fffff800`00ba2580 00000000`00000000: nt!KiDispatchException+0x135 f ffff 800`00ba23a0 fffff800`034de0f4: 00000000`00000016 00000000`00000001 00000000`00000001 00000000`00000000: nt ! KiExceptionDispatch+0xc2 fffff800`00ba2580 fffff800`034d8a71: fffff880`05861446 00000000`df029940 fffff880`02f45bec 00000000`deee7000: nt!KiBreakpointTrap+0xf4 fff ff800`00ba2718 fffff880`05861446: 00000000`df029940 fffff880`02f45bec 00000000`deee7000 fffff880`01229f06: nt! DbgBreakPoint+0x1 fffff800`00ba2720 00000000`df029940: fffff880`02f45bec 00000000`deee7000 fffff880`01229f06 fffffa80`05635af8: cmudaxp+0x25446 fffff800 ` 00ba2728 fffff880`02f45bec: 00000000`deee7000 fffff880`01229f06 fffffa80`05635af8 00000000`00000000: 0xdf029940 fffff800 `00ba2730 00000000`deee7000: fffff880`01229f06 fffffa80`05635af8 00000000`00000000 00000000`00000003: VBoxDrv+0x6bec fffff800`00ba2738 fffff880 `01229f0 6: fffffa80`05635af8 00000000`00000000 00000000`00000003 fffff880`05865913: 0xdeee7000 fffff800`00ba2740 00000000`00000000 : 00000000` 00000001 00000000`00000006 00000000`00000001 fffff800`00ba2800: CLASSPNP!ClasspServiceIdleRequest+0x26 STACK_COMMAND: kb FOLLOWUP_IP: cmudaxp+25446 fffff880`05 861446 ? - SYMBOL_STACK_INDEX: 8 SYMBOL_NAME: cmudaxp+25446 FOLLOWUP_NAME: ไดรเวอร์ MachineOwner ซึ่งมีข้อผิดพลาดเกิดขึ้น: MODULE_NAME: cmudaxp IMAGE_NAME: cmudaxp.sys DEBUG_FLR_IMAGE_TIMESTAMP: 47906a45 FAILURE_BUCKET_ID: X64_0x1E_0 _cmudaxp+254 46 BUCKET_ID: X64_0x1E_0_cmudaxp+25446 ติดตามผล: เจ้าของเครื่องจักร ———

รับข้อมูลเกี่ยวกับไดรเวอร์ที่มีปัญหา

หากพบไดรเวอร์ที่มีข้อผิดพลาด ชื่อไดรเวอร์จะแสดงในช่อง MODULE_NAME และ IMAGE_NAME

หากต้องการรับเส้นทางของไฟล์และข้อมูลอื่น ๆ ให้คลิกลิงก์ไปยังโมดูล:

ชื่อโมดูลเริ่มต้นสิ้นสุด fffff880`0583c000 fffff880`059ef000 cmudaxp T (ไม่มีสัญลักษณ์) ไฟล์ภาพสัญลักษณ์ที่โหลด: cmudaxp.sys เส้นทางรูปภาพ: SystemRootsystem32driverscmudaxp.sys ชื่อรูปภาพ: cmudaxp.sys การประทับเวลา: วันศุกร์ที่ 18 มกราคม 13:58:45 2008 (47906A45) CheckSum: 0013077F ขนาดรูปภาพ: 001B3000 การแปล: 0000.04b0 0000.04e4 0409.04b0 0409.04e4

หากไม่ได้ระบุเส้นทางแบบเต็มไปยังไดรเวอร์ โฟลเดอร์เริ่มต้นคือ %SystemRoot%system32drivers

เราค้นหาไฟล์ที่ระบุและศึกษาคุณสมบัติของมัน

เราอัปเดตไดรเวอร์ที่มีปัญหา

สาเหตุของข้อผิดพลาดร้ายแรงของฮาร์ดแวร์

แหล่งที่มาของข้อผิดพลาดร้ายแรงมักเกิดจากความผิดปกติในระบบย่อยของดิสก์หรือระบบย่อยหน่วยความจำ

การวินิจฉัยความล้มเหลวของดิสก์

ในกรณีที่ระบบย่อยของดิสก์เกิดข้อผิดพลาด ดัมพ์อาจไม่สามารถบันทึกได้

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

เราตรวจสอบพารามิเตอร์ S.M.A.R.T ของฮาร์ดไดรฟ์ คุณสามารถรับได้โดยใช้โปรแกรม SpeedFan

เราให้ความสนใจเป็นพิเศษกับพารามิเตอร์ต่อไปนี้: "การนับเซกเตอร์ที่รอดำเนินการในปัจจุบัน" และ "การนับเซกเตอร์ที่ไม่สามารถแก้ไขได้";

ค่าพารามิเตอร์ที่ไม่ใช่ศูนย์: “จำนวนข้อผิดพลาด UltraDMA CRC” บ่งชี้ปัญหากับสายเคเบิล SATA

เรียนรู้เพิ่มเติมเกี่ยวกับตัวเลือก S.M.A.R.T. อ่านในบทความ Wikipedia

การวินิจฉัยความผิดปกติของหน่วยความจำ

ปัญหาหน่วยความจำมักจะทำให้เกิดความผิดพลาดหลายประการ รวมถึงหน้าจอสีน้ำเงินต่างๆ การค้าง โปรแกรมล่ม รีจิสทรีเสียหาย ระบบไฟล์ และข้อมูลเสียหาย

คุณสามารถระบุปัญหาหน่วยความจำได้โดยใช้ยูทิลิตี้ Memtest86+

เริ่มตั้งแต่ Windows Vista ระบบจะมีการทดสอบหน่วยความจำของตัวเอง หากต้องการเปิดใช้งานให้คลิก "Start" พิมพ์ "memory" ในแถบค้นหาเลือก "Windows Memory Diagnostic Tool"

ปัญหาหน่วยความจำสามารถแก้ไขได้ในบางกรณีด้วยการอัพเดต BIOS

การกำหนดค่าตัวเลือกการบันทึกการถ่ายโอนข้อมูลข้อขัดข้อง

หากต้องการเปลี่ยนการตั้งค่าสำหรับการบันทึก Crash dump ให้คลิกปุ่ม "Start" คลิกขวาที่ "Computer" และเลือก "Properties" ในเมนูบริบท ในหน้าต่าง "ระบบ" ทางด้านซ้ายเลือก "การตั้งค่าระบบขั้นสูง" ในกลุ่ม "การบูตและการกู้คืน" ให้คลิกปุ่ม "ตัวเลือก"

อ่านเพิ่มเติมเกี่ยวกับการดัมพ์หน่วยความจำที่นี่

หน้าจอสีน้ำเงินแห่งความตาย - จะทำอย่างไรและจะระบุข้อผิดพลาดได้อย่างไร

เมื่อมีข้อผิดพลาดร้ายแรงเกิดขึ้น Windows OS จะแจ้งให้ผู้ใช้ทราบเกี่ยวกับเหตุการณ์ดังกล่าวด้วยเสียงและข้อความต่างๆ ต้องขอบคุณพวกเขาที่ทำให้คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับข้อผิดพลาดและแก้ไขได้โดยเฉพาะ อย่างไรก็ตาม ในกรณีส่วนใหญ่ เจ้าของพีซีจะจำไม่ได้หรือเพียงแต่ไม่รู้ว่าหมายถึงอะไร ในทางกลับกัน ระบบจะบันทึกสแนปชอตฉุกเฉินของข้อผิดพลาด หรือที่รู้จักกันดีในชื่อดัมพ์ และจัดเก็บไว้ในฮาร์ดไดรฟ์ มันมีข้อมูลทั้งหมดเกี่ยวกับรายละเอียด

ประเภทการถ่ายโอนข้อมูล

ดัมพ์มีสามประเภท:

เพื่อให้ระบบบันทึกดัมพ์ขนาดเล็ก จำเป็นต้องตั้งค่าพารามิเตอร์บางอย่าง

สำหรับระบบปฏิบัติการ Windows 7 และ Windows XP

คลิก "เริ่ม" คลิกขวาที่ "คอมพิวเตอร์" และเลือก "คุณสมบัติ"

ไปที่ส่วน "การตั้งค่าระบบขั้นสูง"

หน้าต่างคุณสมบัติของระบบจะปรากฏขึ้น ในแท็บ "ขั้นสูง" ในส่วน "การบูตและการกู้คืน" คลิก "ตัวเลือก"

เลือก "การถ่ายโอนข้อมูลหน่วยความจำขนาดเล็ก" และคลิก "ตกลง" เพื่อบันทึกการเปลี่ยนแปลง

การวิเคราะห์การถ่ายโอนข้อมูลขนาดเล็กโดยใช้มุมมองหน้าจอสีน้ำเงิน

โปรแกรม Blue Screen View ได้รับการดาวน์โหลดเป็นไฟล์เก็บถาวรที่นี่ และไม่จำเป็นต้องติดตั้ง เพื่อใช้ในการระบุสาเหตุของความล้มเหลวของระบบ เราดำเนินการตามขั้นตอนต่อไปนี้

เราเปิดตัวแอปพลิเคชันในไฟล์เก็บถาวรที่เหมือนกับชื่อของโปรแกรม

หน้าต่างซอฟต์แวร์จะเปิดขึ้น อินเทอร์เฟซนั้นเรียบง่าย แต่เป็นภาษาอังกฤษ ก่อนอื่นเราระบุสถานที่สำหรับบันทึกการถ่ายโอนข้อมูลขนาดเล็ก คลิก "ตัวเลือก" และเลือก "ตัวเลือกขั้นสูง"

วางเครื่องหมายถูกไว้ถัดจากส่วนแรก “โหลดจากโฟลเดอร์ Mini Dump ต่อไปนี้” และระบุโฟลเดอร์ที่มีสแนปชอตข้อผิดพลาดอยู่ หากมีการตั้งค่าการถ่ายโอนข้อมูลขนาดเล็กในการตั้งค่าระบบ โปรแกรมจะระบุเส้นทางไปยังสแน็ปช็อต C:WINDOWSMinidump คลิก "ตกลง" เพื่อไปที่อินเทอร์เฟซของโปรแกรม

บล็อกหมายเลข 1 คือรายการการดัมพ์ที่ระบบสร้างขึ้น ใต้หมายเลข 2 มีรูปภาพและรายชื่อไดรเวอร์

ไดรเวอร์ที่ทำให้ระบบขัดข้องจะแสดงเป็นสีชมพูในรายการ

หากคุณไม่มีรายการไดรเวอร์ให้คลิก "ตัวเลือก" ไปที่ "LowerPaneMode" และเลือก "OnlyDriversFoundInStack"

เมื่อพิจารณาแล้วว่าไดรเวอร์ตัวใดล้มเหลว เราจะแก้ไขปัญหา

วิธีใช้การถ่ายโอนข้อมูลหน่วยความจำเพื่อระบุไดรเวอร์ที่ทำให้เกิด BSOD

สาเหตุของข้อผิดพลาดร้ายแรงของ Windows ที่มาพร้อมกับหน้าจอสีน้ำเงิน (BSOD) มักเกิดจากไดรเวอร์ - เพิ่งติดตั้งหรือเสียหาย เมื่อพิจารณาแล้วว่าไดรเวอร์ใดที่ทำให้เกิดข้อผิดพลาด คุณสามารถเริ่มแก้ไขปัญหาได้: อัปเดตไดรเวอร์ ย้อนกลับเป็นเวอร์ชันก่อนหน้า ติดตั้งใหม่หรือลบแอปพลิเคชันที่ติดตั้งไดรเวอร์ ฯลฯ ชื่อไดรเวอร์จะไม่แสดงเป็นสีน้ำเงินเสมอไป หน้าจอ. อย่างไรก็ตาม มีวิธีง่ายๆ ที่ช่วยให้คุณระบุไดรเวอร์ที่มีปัญหาได้ภายในไม่กี่นาทีโดยใช้การถ่ายโอนข้อมูลหน่วยความจำ

ขั้นตอนที่ 1 - เปิดใช้งานการบันทึกการถ่ายโอนข้อมูลหน่วยความจำ

ขั้นแรกคุณต้องตรวจสอบให้แน่ใจว่าได้เปิดใช้งานการบันทึกดัมพ์แล้ว ในการดำเนินการนี้ ให้เปิดคุณสมบัติของระบบโดยกดคีย์ผสม Win+Pause [ใน Vista คลิกลิงก์การตั้งค่าระบบขั้นสูง] ไปที่แท็บขั้นสูง และสุดท้ายคลิกปุ่มเริ่มต้นและการกู้คืน

การดัมพ์หน่วยความจำขนาดเล็กควรจะเพียงพอสำหรับวัตถุประสงค์ของเรา

ให้ความสนใจกับเส้นทางไปยังโฟลเดอร์ที่จะถูกบันทึกไว้หากเกิดข้อผิดพลาดร้ายแรง

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

ขั้นตอนที่ 2 - ดาวน์โหลดและติดตั้งเครื่องมือวินิจฉัย

มันไม่น่ากลัวอย่างที่คิด :)

ขั้นตอนที่ 3 - การวิเคราะห์การถ่ายโอนข้อมูลหน่วยความจำ

ตอนนี้ทุกอย่างลงมาเพื่อดำเนินการคำสั่งเดียว เปิดพรอมต์คำสั่งแล้วไปที่โฟลเดอร์ที่คุณแตกไฟล์ kdfe.cmd เรียกใช้ไฟล์โดยระบุเส้นทางไปยังไฟล์ดัมพ์หน่วยความจำเป็นพารามิเตอร์ (ในตัวอย่างด้านล่างไฟล์เรียกว่า Mini1110307-01.dmp)

kdfe.cmd "% systemroot% MinidumpMini1110307-01.dmp"

อีกสักครู่คุณจะเห็นผลลัพธ์

พบไดรเวอร์ที่ทำให้เกิดข้อผิดพลาดแล้ว!

แหล่งข้อมูลเพิ่มเติม

เมื่อตรวจพบข้อผิดพลาดร้ายแรง ระบบ Windows ทั้งหมด ให้สร้างไฟล์แครชดัมพ์ (สแนปชอต) ของเนื้อหาของ RAM และบันทึกลงในฮาร์ดไดรฟ์ ดัมพ์หน่วยความจำมีสามประเภท:

ดัมพ์หน่วยความจำเต็ม – บันทึกเนื้อหาทั้งหมดของ RAM ขนาดภาพเท่ากับขนาด RAM + 1 MB (ส่วนหัว) ไม่ค่อยได้ใช้ เนื่องจากในระบบที่มีหน่วยความจำจำนวนมาก ขนาดดัมพ์จะใหญ่เกินไป

การถ่ายโอนข้อมูลหน่วยความจำเคอร์เนล - บันทึกข้อมูล RAM ที่เกี่ยวข้องกับโหมดเคอร์เนลเท่านั้น ข้อมูลโหมดผู้ใช้ไม่ได้รับการบันทึกเนื่องจากไม่มีข้อมูลเกี่ยวกับสาเหตุของความล้มเหลวของระบบ ขนาดของไฟล์ดัมพ์ขึ้นอยู่กับขนาดของ RAM และแตกต่างกันไปตั้งแต่ 50 MB (สำหรับระบบที่มี RAM 128 MB) ถึง 800 MB (สำหรับระบบที่มี RAM 8 GB)

ดัมพ์หน่วยความจำขนาดเล็ก (มินิดัมพ์) - มีข้อมูลจำนวนค่อนข้างน้อย: รหัสข้อผิดพลาดพร้อมพารามิเตอร์ รายการไดรเวอร์ที่โหลดลงใน RAM ในขณะที่ระบบขัดข้อง ฯลฯ แต่ข้อมูลนี้เพียงพอที่จะระบุไดรเวอร์ที่ผิดพลาดได้ . ข้อดีอีกประการหนึ่งของการถ่ายโอนข้อมูลประเภทนี้คือขนาดไฟล์เล็ก

การตั้งค่าระบบ

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

สำหรับวินโดวส์เอ็กซ์พี สำหรับวินโดวส์ 7
  1. คอมพิวเตอร์ของฉัน คุณสมบัติ
  2. ไปที่แท็บ นอกจากนี้;
  3. พารามิเตอร์
  4. ในสนาม การเขียนข้อมูลการดีบักเลือก ดัมพ์หน่วยความจำขนาดเล็ก (64 KB).
  1. คลิกขวาที่ไอคอน คอมพิวเตอร์จากเมนูบริบทให้เลือก คุณสมบัติ(หรือคีย์ผสม Win+Pause);
  2. ในเมนูด้านซ้ายให้คลิกที่รายการ การตั้งค่าระบบขั้นสูง;
  3. ไปที่แท็บ นอกจากนี้;
  4. ในช่องดาวน์โหลดและการกู้คืน ให้คลิกปุ่ม พารามิเตอร์
  5. ในสนาม การเขียนข้อมูลการดีบักเลือก ดัมพ์หน่วยความจำขนาดเล็ก (128 KB).

หลังจากเสร็จสิ้นการปรับแต่งทั้งหมดแล้ว หลังจากแต่ละ BSoD ไฟล์ที่มีนามสกุล .dmp จะถูกบันทึกไว้ในโฟลเดอร์ C:\WINDOWS\Minidump ฉันแนะนำให้คุณอ่านเนื้อหา "วิธีสร้างโฟลเดอร์" คุณยังสามารถทำเครื่องหมายในช่อง “ แทนที่ไฟล์ดัมพ์ที่มีอยู่- ในกรณีนี้ ดัมพ์ข้อขัดข้องใหม่แต่ละรายการจะถูกเขียนทับอันเก่า ฉันไม่แนะนำให้เปิดใช้งานตัวเลือกนี้

การวิเคราะห์ Crash Dump โดยใช้โปรแกรม BLUESCREENVIEW

ดังนั้น หลังจากที่หน้าจอสีน้ำเงินแห่งความตายปรากฏขึ้น ระบบจะบันทึกดัมพ์หน่วยความจำขัดข้องใหม่ เพื่อวิเคราะห์ดัมพ์ ฉันแนะนำให้ใช้โปรแกรม BlueScreenView สามารถดาวน์โหลดได้ฟรีที่นี่ โปรแกรมนี้ค่อนข้างสะดวกและมีอินเทอร์เฟซที่ใช้งานง่าย หลังจากติดตั้งแล้ว สิ่งแรกที่คุณต้องทำคือระบุตำแหน่งสำหรับจัดเก็บหน่วยความจำดัมพ์บนระบบ โดยไปที่รายการเมนู “ ตัวเลือก” และเลือก “ ขั้นสูงตัวเลือก- เลือกปุ่มตัวเลือก “ โหลดจากที่กำลังติดตามมินิดัมพ์โฟลเดอร์” และระบุโฟลเดอร์ที่เก็บดัมพ์ หากไฟล์ถูกจัดเก็บไว้ในโฟลเดอร์ C:\WINDOWS\Minidump คุณสามารถคลิกปุ่ม “ ค่าเริ่มต้น- คลิกตกลงและไปที่อินเทอร์เฟซของโปรแกรม

โปรแกรมประกอบด้วยสามช่วงตึกหลัก:

  1. บล็อกเมนูหลักและแผงควบคุม
  2. บล็อกรายการดัมพ์ที่ขัดข้อง
  3. ขึ้นอยู่กับพารามิเตอร์ที่เลือก อาจมี:
  • รายการไดรเวอร์ทั้งหมดใน RAM ก่อนที่หน้าจอสีน้ำเงินจะปรากฏขึ้น (โดยค่าเริ่มต้น)
  • รายการไดรเวอร์ที่อยู่ใน RAM stack
  • ภาพหน้าจอ BSoD;
  • และค่าอื่นๆที่เราจะไม่ใช้

ในบล็อกรายการการถ่ายโอนข้อมูลหน่วยความจำ (ทำเครื่องหมายด้วยหมายเลข 2 ในรูป) ให้เลือกดัมพ์ที่เราสนใจและดูรายการไดรเวอร์ที่โหลดลงใน RAM (ทำเครื่องหมายด้วยหมายเลข 3 ในรูป) ไดรเวอร์ที่อยู่ในสแต็กหน่วยความจำจะเป็นสีชมพู พวกเขาเป็นสาเหตุของ BSoD จากนั้นไปที่เมนูหลักของไดรเวอร์ พิจารณาว่าอุปกรณ์หรือโปรแกรมใดเป็นของอุปกรณ์ ก่อนอื่นให้ใส่ใจกับไฟล์ที่ไม่ใช่ระบบเนื่องจากไฟล์ระบบจะถูกโหลดใน RAM ไม่ว่าในกรณีใด สังเกตได้ง่ายว่าไดรเวอร์ที่ผิดพลาดในภาพคือ myfault.sys ฉันจะบอกว่าโปรแกรมนี้เปิดตัวโดยเฉพาะเพื่อทำให้เกิดข้อผิดพลาด Stop หลังจากระบุไดรเวอร์ที่ผิดพลาดแล้ว คุณจะต้องอัปเดตหรือลบไดรเวอร์ออกจากระบบ

เพื่อให้โปรแกรมแสดงรายการไดรเวอร์ที่อยู่ในสแต็กหน่วยความจำเมื่อมี BSoD เกิดขึ้นคุณต้องไปที่รายการเมนู “ ตัวเลือก“คลิกที่เมนู” ต่ำกว่าบานหน้าต่างโหมด” และเลือก “ เท่านั้นไดรเวอร์พบในสแต็ค” (หรือกดปุ่ม F7) และหากต้องการแสดงภาพหน้าจอของข้อผิดพลาด ให้เลือก “ สีฟ้าหน้าจอในประสบการณ์สไตล์” (F8) หากต้องการกลับไปยังรายการไดรเวอร์ทั้งหมด คุณต้องเลือก “ ทั้งหมดไดรเวอร์” (F6)