Dissecting a BSOD
Although Stop errors can be caused by both hardware or software malfunctions, the most typical cause is a hardware malfunction. Each Stop error is accompanied by a specific error description and an eight-digit hexadecimal number error code. It may not be immediately apparent when you see a BSOD (mostly due to the shock factor that hits you when a BSOD occurs), but you can use the description and code to identify the type of error that is occurring. You just need to be able to identify the key parts of the message so you'll have a direction and focus for your troubleshooting expedition. The trick is in finding the relevant information on the BSOD.
Let's suppose that you encounter the BSOD shown in Figure A.
|This Stop error indicates that requested data was not in memory.|
At the top of the Windows XP BSOD, you'll find the error description, which will be in all uppercase letters with multiple words tied together with underscore characters. In the following BSOD excerpt, the text KMODE_EXCEPTION_NOT_HANDLED is the error description:A problem has been detected and Windows has been shut down to prevent damage to your computer.
Immediately following the error description, you'll find some general troubleshooting steps. In some cases, following these steps will lead you to a solution. (Keep in mind that this same information appears in just about every BSOD.)If this is the first time you've seen this error screen
restart your computer. If this screen appears again, follow
Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware or software manufacturer for any Windows updates you might need.
If problems continue, disable or remove any newly installed hardware or software. Disable BIOS memory options such as caching or shadowing If you need to use Safe Mode to remove or disable components, restart your computer, press F8 to select Advanced Startup Options, and then select Safe Mode.
After the general troubleshooting information, you'll find the Technical Information section, which contains the eight-digit hexadecimal number error code. The code is usually accompanied by four error-dependent values enclosed in parentheses. (These values typically aren't necessary information, but you may want to take note of them.) If a file was directly associated with the problem that caused the BSOD, it will also be listed here. In this case, you can see that the file ati3diag.dll is tied to the problem:Technical information: *** STOP: 0x00000050 (0x8872A990, 0x00000001, 0x804F35D7, 0x00000000)
*** ati3diag.dll - Address ED80AC55 base at ED88F000, Date Stamp 3dcb24d0
Following the Technical Information section, you'll see another generic section. This one alerts you to the fact that Windows XP has dumped the contents of system memory to a file on the hard disk:Beginning dump of physical memory Physical memory dump complete. Contact your system administrator or technical support group for further assistance.
With these details, you can visit Microsoft's online Help and Support page and search the Knowledge Base for more detailed troubleshooting and solution information.
Common BSODs in Windows XP
Now that you have a good idea of how to dissect a BSOD and pull out the relevant pieces of information from all the gibberish on the screen, let's look at some of the more common BSODs in Windows XP. There are lots of possible Stop errors. For each BSOD shown here there is a link to an article on the Microsoft Knowledge Base that covers that particular Stop error. (Since more than one article might address a Stop error, you may want to search the Knowledge Base if you discover that you need more information.)
There are more screenshots further down the page. Click on the Error code (example IRQL_NOT_LESS_OR_EQUAL) to go to that screenshot!
This Stop error, which can be caused by either software or hardware, indicates that a kernel-mode process or driver attempted to access a memory location it did not have permission to access or a memory location that exists at a kernel interrupt request level (IRQL) that was too high. A kernel-mode process can access other only processes that have an IRQL that's equal to or lower than its own.
Troubleshooting a Stop 0x0000000A error in Windows XP
This Stop error indicates that indicates that the Windows XP kernel detected an illegal or unknown processor instruction. The problems that cause this Stop error can be either software or hardware related and result from invalid memory and access violations, which are intercepted by Windows' default error handler if error-handling routines are not present in the code itself.
Possible Resolutions to STOP 0x0A, 0x01E, and 0x50 Errors
This Stop error indicates that requested data was not in memory. The system generates an exception error when using a reference to an invalid system memory address. Defective memory (including main memory, L2 RAM cache, video RAM) or incompatible software (including remote control and antivirus software) might cause this Stop error.
Possible Resolutions to STOP 0x0A, 0x01E, and 0x50 Errors
This Stop error indicates that Windows XP has lost access to the system partition or boot volume during the startup process. Installing incorrect device drivers when installing or upgrading storage adapter hardware typically causes this Stop error. This error could also indicate a possible virus infection.
Troubleshooting Stop 0x0000007B or "0x4,0,0,0" Error
This Stop error indicates a hardware problem resulting from mismatched memory, defective memory, a malfunctioning CPU, or a fan failure that's causing overheating.
General causes of "STOP 0x0000007F" errors
This Stop error indicates that a driver is in an inconsistent or invalid power state. This Stop error typically occurs during events that involve power state transitions, such as shutting down, or moving in or out of standby or hibernate mode.
Troubleshooting a Stop 0x9F Error in Windows XP
This Stop error indicates that the system attempted to access pageable memory using a kernel process IRQL that was too high. The most typical cause is a bad device driver (one that uses improper addresses). It can also be caused by faulty or mismatched RAM or a damaged pagefile.
Error Message with RAM Problems or Damaged Virtual Memory Manager
This Stop error indicates that a device driver problem is causing the system to pause indefinitely. Typically, this problem is caused by a display driver waiting for the video hardware to enter an idle state. This might indicate a hardware problem with the video adapter or a faulty video driver.
Error message: STOP 0x000000EA THREAD_STUCK_IN_DEVICE_DRIVER
This Stop error indicates that a problem occurred within Ntfs.sys, the driver file that allows the system to read and write to drives formatted with the NTFS file system. (A similar Stop message, 0x00000023, exists for the file allocation table [FAT16 or FAT32)] file systems.)
Troubleshooting Stop 0x24 or NTFS_FILE_SYSTEM Error Messages
This Stop error indicates that a necessary registry hive file could not be loaded. The file may be corrupt or missing. The registry file may have been corrupted due to hard disk corruption or some other hardware problem. A driver may have corrupted the registry data while loading into memory or the memory where the registry is loading may have a parity error.
How to Troubleshoot a Stop 0xC0000218 Error Message
This Stop message indicates driver, system file, or disk corruption problems (such as a damaged paging file). Faulty memory hardware can also cause this Stop message to appear.
"STOP: C0000221 unknown hard error" or "STOP: C0000221 STATUS_IMAGE_CHECKSUM_MISMATCH" error message occurs