Re: Driver Model 2 Proposal - Linux Kernel Performance v Usability

Alan Cox
2003-09-04T22:08:28Z

On Iau, 2003-09-04 at 22:51, James Clark wrote:
> I have not proposed a driver model that is compatible with the Windows DDK.
> This is pure invention from the usual school of 'Windows v Linux, Linux is
> better because we made it'. The Linux driver model could be much better and
> hence the OS could escape the niche box it currently is in. Please ask Joe
> User how he feels about rebuilding his whole OS to add IP6 support to an
> existing stable system etc.

Joe User got IPV6 from his vendor as a standard component, and if he
didn't the large number of app patches his old distro need outweigh the
kernel.

However for drivers its the same - its a _source_ level interface.

For example

spin_lock(&lock)

compiles to different things for uniprocessor/SMP kernels and the
difference is worth real speed. So your binary interface roughly
speaking depends on

- core options selected
- compiler (gcc2 v gcc3)
- SMP v UP
- Highmem v non highmem
- CPU target type
- 4G/4G split in 2.6 case

and a few more, while your source interface is pretty stable.

So what does that mean for someone adding a module

1. It needs compiling
2. If you want trivial end user ease then you need to wrap the
compilation up as part of the stuff the user never sees.