Re: Philosophical Rant [was Re: Writing Drivers in Java]

I though unix had done something similar to this for some of their
‘drivers’. Is this true?

  • jb

-----Original Message-----
[] On Behalf Of Peter Viscarola
Sent: Monday, April 29, 2002 11:03 AM
To: NT Developers Interest List
Subject: [ntdev] Re: Philosophical Rant [was Re: Writing Drivers in

“Art Baker” wrote in message news:xxxxx@ntdev…
> A driver is a piece of the operating system – a privileged extension
> of
> I/O Manager. The correct approach is to make it “perfect” during the
> coding, and testing phases of its life (i.e., before it goes out into
> the world). It’s NOT appropriate to be sending out buggy drivers with
> the hope that, somehow, the operating system’s protection scheme will
> keep your driver from doing too much harm.
This happens to be a topic in which I’m very interested.

In my experience darn few people send their drivers out hoping that the
O/S protection scheme keeps them “from doing too much harm.”

On the other hand, there are tons of semi-competent and grossly
incompetent people writing drivers for Windows these days. In fact,
it’s so freakin’ complicated to write anything more than a trivial
driver that even otherwise good engineers can pretty easily fall into
the semi-competent category.

Many of you have read MY personal philosophical rant (ie. my
Pontification) in The NT Insider a few months back on moving all the
drivers that aren’t required to boot the system out to user mode. I
honestly think that everyone would be better off if all "non essential
drivers " (admittedly a term requiring definition) were moved someplace
where their faults could not easily affect the stability of the overall
operating system.

The other day, right in the middle of playing a Snoop Doggy Dogg CD, the
some audio driver blue screened my system. I was also in mail at the
time. I was not happy. Fortunately, Outlook is pretty
failure-resilient. I only lost my last few minutes worth of work. But
it was still annoying.

I realize it would take some serious work, but I really think it’s
possible to create a windows driver environment that would make it close
to impossible for a driver to crash the system. If the driver failed,
just unload it and restart it. How cool would THAT be?!?

In terms of the performance issue: Performance is largely a specious
argument. There’s more CPU time available on modern processors than
(almost) anybody knows what to do with. Would you, as a user, pay a 10%
CPU utilization penalty for a system that never crashed?? Damn! I know
I would.


You are currently subscribed to ntdev as: To
unsubscribe send a blank email to %%email.unsub%%