Slashdot Mirror


Blue Screen of Death for Mac OS X

An anonymous reader writes "Possibly nothing in the OS world has as much of a bad rap as the infamous BSOD (blue screen of death) in Microsoft Windows. On the other hand Apple hides the ugly kernel panics behind a nice looking GUI which only tells you its time to restart your dead system. Interestingly Mac OS X kernel has a secret API which lets you decide what your kernel panics are going to look like! In this Mac OS X Internals article Amit Singh explains how to use this API. Apparently you can upload custom panic images into the kernel and there's even a way to test these images by causing a fake panic. The article also shows the ultimate joke is to upload an actual BSOD image for authentic Windows looking panics right inside of OS X."

1 of 349 comments (clear)

  1. Re:Keep it simple by Jahz · · Score: 5, Interesting
    Keep it simple AND keep it informative. A real BSOD will include information about the stop code and arguments at the time of death. If the system knows which driver caused the crash it will tell you this as well.
    The Mac panic screen not only takes more resources to display but they tell you far less. "Please restart" in 23 different languages is not helpful. The 10.0 and 10.1 version looked much better.

    Obviously you are NOT ready for the Mac. Come see the light, friend.

    Do you really think that Apple have decided error codes and detailed crash reports are not important?? No, of course they have not. There are two reasons Apple does this.

    1) The truth is that the infamous blue page of kernel farts that windows spews out are only to technicians or sysadmins. The home user, and in fact, the power users, can do nothing with it. Nothing, of course, except Google for the stop code and hope Microsoft has a techhelp article on what it means. You can reply to this and say that

    STOP: 0x0000008E (c0000005, bf875fc3, f07bcd48, 00000000)
    KERNEL_MODE_EXCEPTION_NOT_HANDLED

    makes perfect sense to you... but you'd be lying. I know that the relevent part is 8E but 99% of users NEVER NEED TO SEE THIS and will NEVER USE IT.

    Back to Apple. Apple has a little ditty called the "CrashReporter" and it has an OSX front-end to the system's log filed in /var/log/. The logs contain all the nitty gritty about what was in the registers when the sytem exploded, what driver/module caused it, etc readily and easily recorded in the system log. Said information (like STOP: 0x0000000000000000008E) is for a tech or sysadmin, not a standard user.

    2) What do you do with the BSOD info displayed?? A true nooblar would write it all down. That's a waste of time, becuase its also in Windows' system log. Assuming you're going to Google for it, you would presumably reboot the machine, right? So why did we even need to see the error when it happened? The machine is up not, and the logs are visible...??

    Bottom line: Apple's goal is to keep things simple, clean and friendly. What would your parents rather see?

    1. A pleasant semi-transparent overlay that asks them to reboot their machine (in their native language)
    2. A solid blue screen reading "KERNEL_MODE_EXCEPTION_NOT_HANDLED" followed by 30 rows of random-like numbers

    Which one?

    P.S. - Don't even think about saying "what happens if you cant boot." If that is the case, remove the new hardware. Otherwise you are in DEEP trouble... the code doesnt really matter and you'd actually be better off reading the error from /var/log.
    --
    There are 10 types of people in the world. Those who understand binary and those who do not.