Geek Out!

live.pirillo.com

More Information

Stare the Blue Screen of Death in the face and laugh

There are few things worse then plugging away at your computer only to have your application freeze up and your screen suddenly turn blue. This happens to almost every computer user, and if you've seen it, you've automatically been admitted to the Blue Screen Of Death club.

The Blue Screen Of Death, which is commonly referred to as the BSOD, is the most obvious and unnerving way your computer can tell you something has gone very wrong. The technical term for the BSOD is the "stop screen" because the error you've encountered is significant enough to cause every process on your computer to stop.

In simple terms, the BSOD occurs when applications within the operating system aren't behaving correctly. This is usually the result of one of the three following problems: access to an illegal instruction has been encountered, invalid data or code has been accessed, or the privilege level of an operation is invalid. When these things occur, the processor returns an exception to the operating system, which in turn is handled as a Fatal Exception error. That blue screen, which is usually covered with hexadecimal error codes, is what results. In most cases, the exception is nonrecoverable, and you must restart or shut down the system.

But the BSOD is not as terrible as it may seem. Once you learn a little about what causes it and how you can solve it, you won't worry quite so much the next time it suddenly rears its ugly head.



Look & Learn. The error codes that appear along with the Blue Screen Of Death are not random collections of letters and numbers. Those codes mean something, and they will give you very important clues you can use to uncover the problem.

When you look at the BSOD, you will see it is divided into five sections. Three of these main sections are very important to finding a solution. The top section will contain the error code and parameters and should look like several random number groups. Carefully write down these codes exactly how they appear on-screen.

Next, go to the Microsoft Knowledge Base at the Microsoft Web site (http://www.microsoft.com, click Support, and then click Searchable Knowledge Base). The Knowledge Base contains many articles that explain specific Stop messages and resolutions to these problems. Search the Knowledge Base for the first hexadecimal number exactly as it appeared on your screen. The Knowledge Base will likely be able to return some information that can help you figure out what caused the problem and help you solve it.

The middle section of the BSOD should contain a list of all the drivers (programs that allow a hardware peripheral to communicate with the computer) that were running when the crash occurred. Many BSODs are caused by driver problems, so keep documentation of when you installed your drivers and what those drivers are for. This can go a long way toward helping you solve the problem. If you aren't sure and you are still having trouble, you may want to try uninstalling the most recent driver that you installed.

Finally, the bottom section of the BSOD will contain a dump of the memory modules that were on the memory stack at the time of the crash. These can be very important clues to solving your problem as well.



Understanding Stop 0xA. One of the most common BSOD errors is STOP 0x0000000A. This message, also known as Stop 0xA, indicates that a kernel (the main part of an operating system that handles the most basic but most important tasks, such as managing the computer's resources, starting programs, and keeping time; the kernel remains in memory after the operating system loads) mode process attempted to access a portion of memory in an IRQ (interrupt request line) that was too high.

IRQs are communications routes within a computer that are reserved for carrying interrupt signals which tell the CPU (central processing unit) to halt its current task and await further instructions. Different computer components, such as modems, keyboards, mice, sound cards, and other devices, each have a special IRQ set aside for them to use. These IRQs are prioritized according to the importance of each device, so the most important interrupt requests are handled first. A low IRQ number means an important device will be able to override other devices. A kernel mode process can only access other processes that have an IRQ lesser than or equal to its own.

The most common cause of this error is a corrupt pointer (a variable used by a program to refer to a block of memory) that references an incorrect location in memory. If the variable has a bad value in it, a STOP 0x0000000A message will occur.

Hardware or software problems can cause the Stop 0xA message. The easiest way to diagnose the problem, therefore, is to recall whether or not you've recently added any new hardware or drivers. If so, go back and remove the hardware and driver. If that doesn't solve the problem, try updating all of your drivers if possible.

If you'd rather determine the exact cause of the Stop 0xA rather than remove anything from your system, you'll have to examine the message more thoroughly. You can determine which process or driver tried to access memory it shouldn't have by looking at the parameters displayed on the BSOD. As an example, Microsoft uses the following Stop message:

STOP 0x0000000A(0xWWWWWWWW, 0xXXXXXXXX, 0xYYYYYYYY, 0xZZZZZZZZ)

IRQL_NOT_LESS_OR_EQUAL

** Address 0xZZZZZZZZ has base at <address>- <driver>



The four parameters inside the parentheses have the following meaning:

0xWWWWWWWW: Memory address that was referenced improperly

0xXXXXXXXX: IRQ that was required to access the memory

0xYYYYYYYY: Type of access: 0=Read, 1=Write

0xZZZZZZZZ: Address of the instruction that attempted to reference the memory at 0xWWWWWWWW



If the last parameter falls within the address range of one of the drivers loaded on your system, you will know which device driver was running when the memory access occurred. This driver is often identified in the third line of the STOP screen: **Address 0xZZZZZZZZ has base at <address>- <driver name>. If <driver name> is a specific driver, search in the Microsoft Knowledge Base on the keyword 0x0000000A and the driver name for suggestions for solving this problem.



Other Common Errors. In all, there are 15 processor errors that can cause a BSOD. You can identify which one you have by looking at the code that immediately follows the words Fatal Exception. According to Microsoft, some of the most common errors include general protection faults, divide faults, and page faults.

General Protection Fault (13 OD). This occurs when anything happens that is not covered by any of the other processor exceptions. The exception indicates that the program has been corrupted in memory.

Divide Fault (00). You'll see this if a program tried to divide a value by zero or if the results of the operation do not fit in the destination operand. For example, the program was expecting a positive number and got a negative number instead.

Page Fault (14 OE). This occurs when you are running low on memory. A page fault allows the operating system to recover small code segments from temporary storage on your hard drive that were put there when memory resources started getting low. This error usually occurs whenever an application goes looking for a piece of itself in RAM (random-access memory) and cannot find it. The operating system will attempt to retrieve the missing page of code from your hard drive. If it is unsuccessful in doing so, you get the BSOD.

0x0000001E KMODE_EXCEPTION _NOT_HANDLED. This is a common error that can be caused by outdated drivers and hardware problems. Usually, the second parameter will point to the driver or function that caused the problem. Always note this address as well as the link date of the driver that contains this address.

0x00000051 REGISTRY_ERROR. In this case, something has gone wrong with the Registry (a database that contains informa tion about user preferences and system con figuration in Windows 95, Windows 98, and Windows NT. It could indicate the Registry received an input/output error while attempting to read one of its files as a result of a hardware problem or file system corruption.

0x00000077 KERNEL_STACK_ INPAGE_ERROR. A bad memory block in a paging file or a disk controller error causes this error message. If the error is a result of a paging error, AUTOCHK will attempt to find the bad block the next time you boot up your system.

0x0000007B INACCESSIBLE_BOOT_ DEVICE. Here, your system is unable to access the boot device. Often, this indicates a disk controller configuration problem or an error in accessing the hard drive. It also may indicate that a virus has infected the boot sector.

0xC000009C and 0xC000016A. Both of these codes indicate a bad memory block on the hard drive.

0xC0000185. This code indicates that two devices are attempting to use the same IRQ, that there has been improper termination of a SCSI (Small Computer System Interface) device, or that there is bad SCSI cabling.

0x0000007F UNEXPECTED_ KERNEL_MODE_TRAP. This message may indicate a RAM problem, a BIOS (Basic Input/Output System) problem, or corrupted file system drivers. Make sure your RAM modules are of the same speed and type.

0x00000080 NMI_HARDWARE_FAILURE. When you see this message, a hardware error has occurred. Using nonparity memory in a parity-based system, mixing parity and nonparity memory, or bad RAM modules can cause this problem.

0x0000000A IRQL_NOT_ LESS_OR_EQUAL. A bad driver usually causes this error. Contact the manufacturer of the device that is causing the problem or visit its Web site for an updated or correct driver.



Don't Be Afraid. No matter what causes it, the Blue Screen Of Death is scary. However, don't let it shake you up too much because yo ucan solve most BSOD problems. If you can't figure out the problem with Microsoft's Knowledge Base, give Microsoft's technical support a call. After all, they've had plenty of experience in this area.





Views: 18

Comment

You need to be a member of Geeks to add comments!

Join Geeks

Comment by Eric Heavilin on December 18, 2009 at 3:37am
Well, every computer is different. Whatever works for you is good.

Eric
blog.bluepop13.com
Comment by Eric Heavilin on December 17, 2009 at 2:18pm
I have owned a Windows based PC a few years ago and had nothing but trouble. Then a good friend of mine explained that I should try Linux and see what I could do. I did. No BSOD. None. If you take a bit of time to learn the Linux operating system for what it truly has to offer and accept the fact that it's much different than windows, get used to it and hopefully it does what you need it to, you really are, for the most part, trouble free. It's not a perfect os by any means but I'm extremely satisfied with it and completely depended on Windows before I had even learned of Linux.

If Windows works out better for you then I'm glad you use it and I'm sorry for any trouble you have. It's just a shame people still have these issues (including viruses, yes, seriously) because Linux is just that great. Until you have used it (even in a dual boot, on a daily basis I say) for at least 6 months you really can't say much about the experience unless you just couldn't get it going to begin with.

Eric
blog.bluepop13.com
Comment by LADYTECH on December 17, 2009 at 7:28am
(Dmitri) Hey, BTW tell my girl SOL I send mucho love!
Comment by LADYTECH on December 17, 2009 at 7:27am
Do you own a Windows based PC? Or is yours just that perfect, that you've never encountered a BSOD?
I must say I disagree with you EH. When was the last time you used a Windows PC? Back in the day? Back in the day when? Still today people experience BSOD's (yeah, unfortunately). Let it be a driver, DLL's, corrupt anythings, updates gone wrong or Kernel issues... And No! It's not just silly people who get/still have these issues!!!

Dmitri I've been a tech since 1989!! And I for one appreciate your blog post. I have printed it and saved it for future use.
Comment by Eric Heavilin on December 17, 2009 at 2:52am
Dmitri,

You're perfectly right. The more one know the better of they are. I feel that you should decide if it's actually worth caring about and the blue screen of death is not up there in my list only because of the fact that computers really should have improved since back in the day. There is nothing wrong with knowing how to fix the blue screen of death. I just think it's silly people still have these issues.

Eric
blog.bluepop13.com
Comment by Dmitri on December 16, 2009 at 3:52pm
Eric,

No matter who you are. There's nothing wrong with getting educated on something. You never know when or if it might help you or someone you know someday.
Comment by Eric Heavilin on December 16, 2009 at 11:34am
If I were still using Windows I would definitely care about the blue screen of death. My concern is that computers still do this these days with all the advanced technology we have.

Linux is a very good operating system if you take the time to see what it could do for you. If it doesn't benefit you then you should definitely choose something more to your liking.

Bottom line: does Windows 7 do the blue screen of death anyone? If so, c'mon Microsoft, seriously!

Eric
blog.bluepop13.com
Comment by LADYTECH on December 16, 2009 at 11:18am
Who cares about the blue screen of death? YOU ASK? We Window users do.
Yes, there problems, nothing is ever perfect in the world of technology. But I'm willing to go the ride!

As far as Mac and Linux? Well, they're nothing compared to Windows. Linux to me isn't even a true OS and OSX unlike Windows that you can run ANY software on it, to me is still limited and controlled.
Comment by Eric Heavilin on December 16, 2009 at 10:47am
Dmitri,

Yeah, ok, so you can fix the blue screen of death by learning about all of this. But seriously, computers still have the blue screen of death these days? Quit fussing around and find out (quick) some alternative applications you can use to get the same work done using Linux or Mac. Who cares about the blue screen of death?

If you absolutely have to use Windows, however, I guess upgrading to the newest version would make the most sense to me. Because if Windows 7 still has this problem, Microsoft needs to do something about this.

Eric
blog.bluepop13.com
Comment by LADYTECH on December 16, 2009 at 8:48am
TLTR!! but I will print this!!!!
Excellent post!!!!


© 2012   Created by Chris Pirillo.

Badges  |  Report an Issue  |  Terms of Service