สำนักวิทยบริการและเทคโนโลยีสารสนเทศ (สวส.)

Office of Academic Resources and Information Technology

ไขรหัสโค้ดลับ BLUE SCREEN

Blue_Screen-Error-0x0000007B

 

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

     ขออธิบายความหมายของ Blue Screen หน่อยละกันครับ Blue Screen เป็นการแสดงอาการผิดปกติของระบบ Windows ซึ่งสาเหตุนั่นมีมากมายหลายสาเหตุไม่ว่าจะเป็น Software และ Hardware หรืออาจจะเกิดได้พร้อมๆ กันทั้งสองอย่างเลยครับ ทำให้ต้อง Restart เครื่องเพียงอย่างเดียว ซึ่งในบางครั้งหลังจากที่เรา Restart แล้วสามารถใช้ได้ต่อไป แต่มันก็ไม่ได้แปลว่าปัญหาจะหมดไปนะครับหากวันดีคืนดีมันอาจจะกำเริบอาการเดิมหรืออาการใหม่ขึ้นมาอีก ผมเลยนำโค้ดของ Blue Screen ต่างๆ มาอธิบายพร้อมคำแนะนำการแก้ไขเบื้องต้น

1.(stop code 0X000000BE) Attempted Write To Readonly Memory 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดจากการลง driver หรือ โปรแกรม หรือ service ที่ผิดพลาด เช่น ไฟล์บางไฟล์เสีย ไดร์เวอร์คนละรุ่นกัน ทางแก้ไขให้ uninstall โปรแกรมตัวที่ลงก่อนที่จะเกิดปัญหานี้ ถ้าเป็นไดร์เวอร์ก็ให้ทำการ roll back ไดร์เวอร์ตัวเก่ามาใช้ หรือ หาไดร์เวอร์ที่ล่าสุดมาลง (กรณีที่มีใหม่กว่า) ถ้าเป็นพวก service ต่างๆที่เราเปิดก่อนเกิดปัญหาก็ให้ทำการปิด หรือ disable ซะ 


2.(stop code 0X000000C2) Bad Pool Caller 
สาเหตุและแนวทางแก้ไข:
 
ตัวนี้จะคล้ายกับตัวข้างบน แต่เน้นที่พวก hardware คือเกิดจากอัฟเกรดเครื่องพวก Hardware ต่าง เช่น ram ,harddisk การ์ดต่างๆ ไม่ compatible กับ XP ทางแก้ไขก็ให้เอาอุปกรณ์ที่อัฟเกรดออก ถ้าจำเป็นต้องใช้ก็ให้ลงไดร์เวอร์ หรือ อัฟเดท firmware ของอุปกรณ์นั้นใหม่ และคำเตือนสำหรับการจะอัฟเดท ให้ปิด anti-virus ด้วยนะครับ เดียวมันจะยุ่งเพราะพวกโปรแกรม anti-virus มันจะมองว่าเป็นไวรัส 


3.(stop code 0X0000002E) Data Bus Error 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดจากการส่งข้อมูลที่เรียกว่า BUS ของฮาร์ดแวร์เสียหาย ซึ่งได้แก่ ระบบแรม ,cache L2 ของซีพียู , เมมโมรีของการ์ดจอ, ฮาร์ดดิสก์ทำงานหนักถึงขั้น error (ร้อนเกินไป) และเมนบอร์ดเสีย 


4.(stop code 0X000000D1)Driver IRQL Not Less Or Equal 
สาเหตุและแนวทางแก้ไข: 

อาการไดร์เวอร์กับ IRQ(Interrupt Request ) ไม่ตรงกัน การแก้ไขก็เหมือนกับ error ข้อที่ 1 


5. (stop code 0X0000009F)Driver Power State Failure 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดจาก ระบบการจัดการด้านพลังงานกับไดรเวอร์ หรือ service ขัดแย้งกัน เมื่อคุณให้คอมทำงานแบบ"hibernate" แนวทางแก้ไข ถ้าวินโดวส์แจ้ง error ไดร์เวอร์หรือ service ตัวไหนก็ให้ uninstall ตัวนั้น หรือจะใช้วิธี Rollback driver หรือ ปิดระบบจัดการพลังงานของวินโดวส์ซะ 

6.(stop code 0X000000CE) Driver Unloaded Without Cancelling Pending Operations 
สาเหตุและแนวทางแก้ไข: 

อาการไดร์เวอร์ปิดตัวเองทั้งๆ ทีวินโดวส์ยังไม่ได้สั่ง การแก้ไขให้ทำเหมือนข้อ 1 


7.(stop code 0X000000F2)Hardware Interrupt Storm 
สาเหตุและแนวทางแก้ไข: 
อาการที่เกิดจากอุปกรณ์ฮาร์ดแวร์ เช่น USB หรือ SCSI controller จัดตำแหน่งกับ IRQ ผิดพลาด สาเหตุจากไดร์เวอร์หรือ firmware การแก้ไขเหมือนกับข้อ 1 


8.(stop code 0X0000007B)Inaccessible Boot Device 
สาเหตุและแนวทางแก้ไข: 


อาการนี้จะมักเจอตอนบูตวินโดวส์ จะมีข้อความบอกว่าไม่สามารถอ่านข้อมูลของไฟล์ระบบหรือ boot partitions ได้ ให้ตรวจฮาร์ดดิสก์ว่าปกติหรือไม่ สายแพหรือสายไฟที่เข้าฮาร์ดดิสก์หลุดหรือไม่ ถ้าปกติดีก็ให้ตรวจไฟล์ boot.ini อาจจะเสีย หรือไม่ก็มีการทำงานแบบmulti OS ให้ตรวจดูว่าที่ไฟล์นี้อาจเขียน config ของ OS ขัดแย้งกัน 

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


9. (stop code 0X0000007A) Kernel Data Inpage Error 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดมีปัญหากับระบบ virtual memory คือวินโดวส์ไม่สามารถอ่านหรือเขียนข้อมูลที่ swapfile ได้ สาเหตุอาจเกิดจากฮาร์ดดิสก์เกิด bad sector, เครื่องติดไวรัส, ระบบ SCSI ผิดพลาด, RAM เสีย หรือ เมนบอร์ดเสีย 


10. (stop code 0X00000077) Kernel Stack Inpage Error 
สาเหตุและแนวทางแก้ไข: 

อาการและสาเหตุเดียวกับข้อ 9 

11.(stop code 0X0000001E) Kmode Exception Not Handled 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดการทำงานที่ผิดพลาดของไดร์เวอร์ หรือ service กับ หน่วยความจำ และ IRQ ถ้ามีรายชื่อของไฟล์หรือ service แสดงออกมากับ error นี้ให้ทำการ uninstall โปรแกรมหรือทำการ roll back ไดร์เวอร์ตัวนั้น 

ถ้ามีการแจ้งว่า error ที่ไฟล์ win32k สาเหตุเกิดจาก การ control software ของบริษัทอื่นๆ (Third-party) ที่ไม่ใช้ของวินโดวส์ ซึ่งมักจะเกิดกับพวก Networking และ Wireless เป็นส่วนใหญ่ 

Error นี้อาจจะเกิดสาเหตุอีกอย่าง นั้นคือการ run โปรแกรมต่างๆ แต่หน่วยความจำไม่เพียงพอ 


12.(stop code 0X00000079)Mismatched Hal 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดการทำงานผิดพลาดของ Hardware Abstraction Layer (HAL) มาทำความเข้าใจกับเจ้า HAL ก่อน HAL มีหน้าที่เป็นตัวจัดระบบติดต่อระหว่างฮาร์ดแวร์กับซอฟท์แวร์ว่าแอปพลิเคชั่นตัวไหนวิ่งกับอุปกรณ์ตัวไหนให้ถูกต้อง ยกตัวอย่าง คุณมีซอฟท์แวร์ที่ออกแบบไว้ใช้กับ Dual CPU มาใช้กับเมนบอร์ดที่เป็น Single CPU วินโดว์ก็จะไม่ทำงาน วิธีแก้คือ reinstall วินโดวส์ใหม่ 

สาเหตุอีกประการการคือไฟล์ที่ชื่อ NToskrnl.exe หรือ Hal.dll หมดอายุหรือถูกแก้ไข ให้เอา Backup ไฟล์ หรือเอา original ไฟล์ที่คิดว่าไม่เสียหรือเวอร์ชั่นล่าสุดก๊อปปี้ทับไฟล์ที่เสีย 

13.(stop code 0X0000003F)No More System PTEs 
สาเหตุและแนวทางแก้ไข: 

อาการนี้เกิดจากระบบ Page Table Entries (PTEs) ทำงานโดย Virtual Memory Manager (VMM) ผิดพลาด ทำให้วินโดวส์ทำงานโดยไม่มี PTEs ซึ่งเป็นสิ่งจำเป็นสำหรับวินโดวส์ อาการนี้มักจะเกิดกับการที่คุณทำงานแบบ multi monitors 

ถ้าคุณเกิดปัญหานี้บ่อยครั้ง คุณสามารถปรับแต่ง PTEs ได้ใหม่ ดังนี้ 
1. ให้เปิด Registry ขึ้นมาแก้ไข โดยไปที่ Start > Run แล้วพิมพ์คำสั่ง Regedit 
2. ไปตามคีย์นี้ HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory Management 
3. ให้ดูที่หน้าต่างขวามือ ดับคลิกที่ PagedPoolSize ให้ใส่ค่าเป็น 0 ที่ Value data และคลิก OK 
4. ดับเบิลคลิกที่ SystemPages ถ้าคุณใช้ระบบจอแบบ Multi Monitor ให้ใส่ค่า 36000 ที่ Value data หรือใส่ค่า 40000 ถ้าเครื่องคุณมี RAM 
128 MB และค่า 110000 ในกรณีที่เครื่องมี RAM เกินกว่า 128 MB แล้วคลิก OK 
รีสตาร์ทเครื่อง 


14.(stop code 0X00000024) NTFS File System 
สาเหตุและแนวทางแก้ไข: 

อาการนี้สาเหตุเกิดจากการรายงานผิดพลาดของ Ntfs.sys คือไดร์เวอร์ของ NTFS อ่านและเขียนข้อมูลผิดพลาด สาเหตูนี้รวมถึง การทำงานผิดพลาดของ controller ของ IDE หรือ SCSI เนื่องจากการทำงานของโปรแกรมสแกนไวรัส หรือ พื้นที่ของฮาร์ดดิสก์เสีย คุณๆสามารถทราบรายละเอียดของerror นี้ได้โดยให้เปิดดูที่ Event Viewer วิธีเปิดก็ให้ไปที่ start > run แล้วพิมพ์คำสั่ง eventvwr.msc เพื่อเปิดดู Log file ของการ error โดยให้ดูการ error ของ SCSI หรือ FASTFAT ในหมวด System หรือ Autochk ในหมวด Application 

15.(stop code 0X00000050)Page Fault In Nonpaged Area 
สาเหตุและแนวทางแก้ไข: 

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


16.(stop code 0Xc0000221)Status Image Checksum Mismatch 
สาเหตุและแนวทางแก้ไข: 

อาการนี้สาเหตุมาจาก swapfile เสียหายรวมถึงไดร์เวอร์ด้วย การแก้ไขก็เหมือนข้อ 15 


17.(stop code 0X000000EA) Thread Stuck In Device Driver 
สาเหตุและแนวทางแก้ไข: 

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

1.ให้ดูที่ power supply ของคุณว่าจ่ายกำลังไฟเพียงพอกับความต้องการของคอมคุณหรือไม่ ให้ดูว่าในเครื่องคุณมีอุปกรณ์มากไปไม่เหมาะกับ power supply ของคุณ ก็ให้เปลื่ยนตัวใหม่ให้กำลังมากขึ้น ปัญหานี้ผมเคยมีประสพการณ์แล้ว 2 ครั้ง คือ 
2. ให้คุณดูที่การ์ดจอว่าได้ใช้ไดร์เวอร์ตัวล่าสุด ถ้าแน่ใจว่าใช้ตัวล่าสุดแล้วยังมีอาการ ก็ให้ทำการ Rollback ไดร์เวอร์ตัวก่อนที่จะเกิดปัญหา 
3. ตรวจดูการ์ดจอและเมนบอร์ดว่าเสียหรือไม่เช่น มีรอยไหม้, ลายวงจรขาด มีชิ้นสวนบางชิ้นหลุดจากตำแหน่งเดิม เป็นต้น 
4. ดูที่ bios ว่าส่วนของ VGA slot เลือกโหมด 4x,8x ถูกตามสเปกของการ์ดหรือไม่ 
5. เช็คดูที่ผู้ผลิตเมนบอร์ดว่ามีไดร์เวอร์ตัวใหม่หรือไม่ ถ้ามีให้โหลดลงใหม่ซะ 
6. ถ้าคุณมีการ์ดแลนหรือเมนบอร์ดของคุณมี on board อยู่ให้ disable ฟังก์ชั่น "PXE Resume/Remote Wake Up" โดยไปปิดที่ BIOS 

18. (stop code 0X0000007F) unexpected Kernel Mode Trap 
สาเหตุและแนวทางแก้ไข: 

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

19. (stop code 0X000000ED)Unmountable Boot Volume 
สาเหตุและแนวทางแก้ไข: 

อาการที่วินโดวส์หาฮาร์ดดิสก์ไม่เจอ (ไม่ใช่ตัวบูตระบบ) ในกรณีที่คุณมีฮาร์ดดิสก์หลายตัว หนึ่งในนั้นคุณอาจใช้สายแพของฮาร์ดดิสก์ผิด เช่น ฮาร์ดดิสก์เป็นแบบ 33MB/secound ซึ่งต้องใช้สายแพ 40 pin แต่คุณเอาแบบ 80 pin ไปต่อแทน
ที่มา http://www.thaiengineering.com/new-technology-a-it/793-%E0%B9%84%E0%B8%82%E0%B8%A3%E0%B8%AB%E0%B8%B1%E0%B8%AA%E0%B9%82%E0%B8%84%E0%B9%89%E0%B8%94%E0%B8%A5%E0%B8%B1%E0%B8%9A-Blue-Screen.html