The reason 9x is so unstable is because it strives to be bug compatible with older dos applications. It lets them do all kinds of things that make life difficult for an operating system - write directly to hardware, memory, etc. etc. Even worse, it allows 3rd-party code to run inside the kernel.

There are many advantages to this - time-critical drivers work better, new hardware can be supported without compiling anything, and without Microsoft even getting involved. However, should said third-party code go pear shaped, it can overwrite the kernel. It's quite difficult to do meaningful error recovery when your program is no longer in memory, and the thing that caused it wasn't written by you, or wasn't even written at all at the time the kernel was written. It does, however try its best - 'I'm broken. Don't know what happened (I wasn't running at the time), but I called this and bang! The duff code came from this VXD file. Sorry.'

And yes, the blue screen is pretty technical, but if you don't understand it, you probably won't understand the solution either.

Windows XP's solution to a blue screen occurring is to identify the driver that caused it, and ask you if you want to look for an upgrade, or back out an recent changes to it. So I'll have no more 'unhelpful error message' complaints...