The EXPLORER.EXE process is a user-space process and as such, it cannot crash Windows. On an XP box with Fast User Switching enabled, each user has their own EXPLORER.EXE process.

It can be replaced by SHELL=LITESTEP.EXE (for example). Very few people do, because the available shell replacements are all a bit sucky. Explorer may suck (and how!) but it is at least reasonably stable and feature-complete. I'm not sure about your assertion that there are fewer shell extensions for Explorer than there were for WPS, when every damn application seems to extend Explorer in its own way (not that I mind TortoiseSVN's intervention, for example).

While you're completely correct that the graphics driver on Windows runs in ring 0 for performance reasons, the interface to it (i.e. GDI, DirectX or OpenGL) is user-space; crashes result from buggy drivers, not user-space code. I do think there's some kind of daffy kernel-mode thing that means only a single instance of, say, the OGL ICD can be running at once.

So my nit stands.

Also, I'd like to take the opportunity to excoriate Creative Labs for producing a sound driver for their Audigy 2 card that can BSOD windows when I plug my headphones in (thus switching output from the 5.1 system to the front headphone jack socket). Well done, chaps!

It's little discussions like this that remind me what a giant pain in the arse Windows is.