> The random device is a fairly useful thing to have (I use it for
> input values to "crashme" ;-) but there lots of people who don't
> use it for anything. For those people, it would be useful to have a
> CONFIG_RANDOM option, so that they can save a bit of space, and avoid
> the small overhead associated with all the add_XXX_randomness() calls.
True, but how do people (end users) know if they use it for something or not?
How do distribution makers know whether their customers are going to use it?
In general I see a problem with Linux that application software developers
face: how can you be sure if the end user's copy of Linux contains a
configurable feature? An application program writer will have to choose the
smallest common demominator => there goes /dev/random.
Now, in the case of /dev/random this is perhaps not a big problem, the
application (or libc) writer can work around the problem by checking first if
/dev/random can be opened, and revert to other means if not. But if the Linux
kernel is made too configurable, we're headed for trouble. For example, if a
developers asks if Linux supports System V IPC:
- "Weeelll, yes and no. It depends..."
- "It depends on what?"
- "It depends on whether the user or the user's distribution vendor has
configured the kernel with SYSV IPC enabled."
- "Forget it. I am not gonna use it."
Configuration options like these are good, if you want to use Linux for
special applications on small machines, for example. But I think they should
be enabled by default, and perhaps marked "recommended". Or maybe we need a
list of standard features that should be enabled in distributed kernels.
Otherwise we'll might end up with a less solid base for developers to build
upon.
Johan Myreen