Dancing with the devil

Blue Screen of Death
Alexander SPK Windows
While trying to stabilize a Windows server yesterday, Dave Winer pointed to a symphony of BSODs and wrote:
Windows itself is stable, but the server junk they throw on top of it blue screens, probably because MS engineers don't feel that they have to follow the rules, and they have access to the OS source code. Scripting News
My impression is that it's not access to source code that causes these problems, but rather, dancing with the devil at ring 0. Anybody who writes a device driver has to do that dance. Of course, the increasing kernelization of servers, for performance, does make them more device-driver-like. In Windows Server 2003, for example, the HTTP stack moves into the kernel -- a prospect that is both exciting and scary.

I'm not an expert in these matters, but I know someone who is: Dirk Smith, at Alexander LAN. (He started at NuMega, which was a really good place to learn how to dance with the devil.) Dirk called me the other day -- we hadn't spoken in years -- to remind me that his Server Protection Kit, which I had originally known as a NetWare product, is also availble for Windows. I always thought you really needed to have the NetWare product, because Novell's philosophy was to run all add-on services (NetWare Loadable Modules) at ring 0. But somehow the notion of an abend analyzer for Windows has always seemed optional.

It's odd, isn't it? Nowadays, user-mode applications that explode will offer to send their entrails to someone who can read them. When your whole system explodes, though, the entrails spew to the screen -- and maybe to a memory dump file -- but there's no-one to read them. The IT guys play the tweak-and-reboot game while inconvenienced users wait. I haven't tested Dirk's product, but if it's your job to keep Windows servers running stably, you might want to take a look at it.

Of course, the definition of "server" has gotten pretty fuzzy nowadays. Windows XP Home Edition is a desktop OS in name only. XP Home and Windows Server 2003 share a whole lot of DNA. And increasingly, "desktop" OSs are running "server" applications -- Radio UserLand, Groove. It's reasonable for IT pros to look to third-party providers, like Alexander LAN, for professional-grade abend analysis tools. But it would also make sense, I think, to roll a basic version of that capability right into the OS. That goes for Mac OS X too, I should add. It's another example of a desktop OS in name only. It's mostly stable, but not 100%, and when things go wrong I never have any clue as to why.

Former URL: http://weblog.infoworld.com/udell/2003/02/25.html#a618