Pavel Machek wrote:> If you can make those drivers in your userspace, its certainly okay...

Agreed. Now, what is userspace?

If I load a Java class into a Java VM, that class is executing in theVM's "userspace", even though both the class and VM execute togetherin the underlying kernel's userspace. If I load an Emacs Lisp libraryinto Emacs, that's ok too in the same way.

I don't want to go over this old argument of where the interfaceboundaries are. That's a very old argument and thoroughly off topicfor this list.

What I want to know is the reasonableness of using Linux drivers,filesystems and network stack, extracted from the Linux kernel, insomething that is not Linux and not necessarily GPL'd, using a veryclear _virtual_ boundary between the Linux parts and the not GPL'd part.

Running User Mode Linux on HP-UX would be an example which I think isclearly acceptable. (Note that User Mode Linux doesn't access devicesdirectly, but perhaps it could with some changes).

I have in mind a virtual machine which is capable of executing devicedrivers written in an appropriate subset of the C language, in whichwrappers for Linux (and BSD) drivers can be written, so the Java andEmacs VM examples above are quite appropriate.

This seems reasonable to me, although it also seems like quite aperversion of Linux to fragment it into GPL'd parts atop a non-GPL'dkernel, which is why I had to (being a pervert :) mention the idea onthis list.