Vote Up
Vote Down

Linux Kernel Devs do not mind the lack of any Stable Driver ABI in the Linux Kernel: they even find the situation excellent. Probably they never attended any decent Computer Science course, or they would have learned that strong coupling was a major problem. Freetards also do not mind due to the HelsinkiSyndrome™ .

Ordinary (and intelligent) users have however learned to fear this Linux Trademark, after getting aquainted with LinuxFriendlyHardware™, BiannualUpdateDeathMarch™, and ConfigureMakeMakeInstall™. This Linux trademark is the mandatory exception to every rule: Sometimes, Linux will teach you computer science!

#1 Posted by administrator on Dec 7, 2009 6:21 PM

I never understood the tight coupling of drivers in the kernel. Was that something Linus made a call on back in the day? Was it a simpler route than creating a separate driver architecture? Or is it some legacy thing from Unix?

#2 Posted by Fustigator on Dec 7, 2009 6:30 PM

I don’t think it’s a Unix Legacy. Solaris has a stable Kernel ABI. Same thing for OS X. FreeBSD maintains the Kernel ABI stable within any given major branch.

#3 Posted by Declination on Dec 7, 2009 7:09 PM

My understanding is that Linus is of the opinion that because Linux grows organically rather than being designed properly, a stable kernel abi represents an unacceptable risk to being locked into a poorly designed interface. This is an actual problem, because so much of the kernel is not fully tested/integrated or is poor written and in staging or whatever it is called.

#4 Posted by Fustigator on Dec 8, 2009 2:33 AM

Would it be possible to rename the TM?
I think that StableKernelDriverABINonsense™ would be better

#5 Posted by JoeMonco on Dec 8, 2009 7:36 AM

“... [A] stable kernel abi represents an unacceptable risk to being locked into a poorly designed interface. This is an actual problem, because so much of the kernel is not fully tested/integrated or is poor written and in staging or whatever it is called.”

Being locked into a poorly designed interface or not, having a driver model is better than just sweet nothing. The ripple effect that the Linux kernel inflicts upon third-party drivers and kernel modules is simply unacceptable and needlessly drives up the costs of providing any reasonable support for the operating system.

Consider this example:

The VMWare Server series is a virtualization software suite currently available for the Windows Server family and Linux operating systems. In order to properly facilitate the hypervisor features of VMWare Server on Linux, the installation script must either copy a set of pre-compiled kernel modules to a proper location or compile them from their respective source code. One machine I have uses Ubuntu Server 8.10 (yes, I know) as the host operating system and despite various attempts I have yet found a way to properly compile the vsock module without “make” exiting with an error. Actually, this isn’t all that bad considering the fact VMWare Server is still able to deliver most of its functions without the component in question.

The above links show the more unfortunate situations that many other VMWare Server users have to face. Needless to say, there is simply no way for VMWare to support every version of the Linux kernel in every distribution that has ever existed. What’s more – from the announcement of VMWare Server 1.0 through to the release of VMWare Server 2.0.2 (over a period of approximately three years), the linux kernel has advanced by at least 10 minor versions, not to mention a whole slew of trivial versions that these minor versions encompass. Now, tell me – how are third-party vendors like VMWare supposed to catch up with such rapid changes inside the kernel and provide QA for their products even if they are willing to release their source code?

“I think that StableKernelDriverABINonsense™ would be better”


#6 Posted by lenny on Dec 16, 2009 1:41 PM

Microkernels are evil, guys. If they were to implement a stable driver ABI, or even an API, that would also be evil because it would be like a microkernel. Maybe.

#7 Posted by Millicent22Miles on Jul 6, 2010 9:13 AM

Some time before, I needed to buy a car for my organization but I did not have enough money and couldn’t purchase anything. Thank goodness my comrade adviced to take the from banks. Thus, I acted so and was satisfied with my student loan.

#8 Posted by jairjy on Nov 22, 2010 2:22 AM

Just for the record, I like to post these two links.

One, the main response for one kernel dev for why Linux must not should have a stable API:

Second, a simple but great post that describes the problem:

Great site! Thanks.

#9 Posted by hairyfeet on Sep 19, 2012 12:38 AM

Notice how the kernel dev only has a dogmatic and religious argument? he even calls all those that don't hand their driver code over to him (thus making the success or failure of a product dependent on some guy they have No control over who may or may not even care about their product) a "leech" and makes it clear he buys into the "all eyes" nonsense which even a tiny bit of logic would prove insane, like your average code monkey is qualified to write low level system drivers for hardware he doesn't even own.

You must be signed in to leave comments.