Re: PROPOSAL: /proc/dev

James Mastros (root@jennifer-unix.dyn.ml.org)
Wed, 31 Dec 1997 23:36:52 -0500 (EST)


On Wed, 31 Dec 1997, H. Peter Anvin wrote:

> > Why not? If you could give us some good reasons why not then we probably
> > will drop it. But several times, I have heard this come up, and never a
> > good reason why it shouldn't be done. The two reasons that I have heard are:
> > 1) Memory usage -- so if you can't spare the memory, don't use it!
> > 2) Lack of user configurablity (IE different permissions, different names)
> > -- so we have callbacks through a userspace daemon. Or we let people
> > write really simple kernelspace modules. (Basicly a big select and a
> > function call or three with constant arguments for each case.)
>
> These are the arguments the proponents shoot down constantly, but they
> never address any of the REAL (IMO) problems (although the kernel
> space usage is likely to be prohibitive if done anything remotely like
> correctly.) YOU REALLY DON'T WANT CALLBACKS -- if you do, then your
> device performance and reliability is going straight into the toilet.

To quote myself:
> Or we let people
> write really simple kernelspace modules. (Basicly a big select and a
> function call or three with constant arguments for each case.)

And I note that you are only sucking cycles when you are create a device
file (ie when you load a device driver or add a divice to your system).

> At some point I'll probably get my act together and write an FAQ on
> this. I'm sick and tired of rehashing the same argument every four
> months for about four years now...
>
> -hpa

Kernel modules let us have code with most of the benifits of kernelspace
code (speed, through a lack of context switches), and some of the benifits of
userspace (you can change it without rebooting). But then again, it can
still deference pointers to god-knows-where.

-=- James Mastros

-- 
Information as a base of power is coming to an end.  In the way the world
works tomorrow, the power to *do* *something* *with* *information* is what
will matter. 

-=- James Mastros, rephrasing Nugget (David McNett, distributed.net Big Man)