LWN.net Logo

Linus and folks need to take a different approach here.

Linus and folks need to take a different approach here.

Posted Jul 29, 2009 22:22 UTC (Wed) by drag (subscriber, #31333)
Parent article: A tempest in a tty pot

Not a huge difference. A small difference.

The idea that a kernel can maintain perfect userland ABI/API accross all versions for ever and ever is just _wrong_ thinking. They can't do it. It's impossible and is something that they have consistantly failed at over and over again.

Ideally it should be like that, but it isn't and won't ever be. Sorry. Can't do it. It's impossible. Nobody is that perfect. Soooo.... What should they do differently?

Version Numbering the ABI

Every 4 years or so introduce another new userland-ABI compatibility version. This gives people a chance to clean up /proc, /sys, bad sys call designs, odd tty insanity, break compatibility with old X drivers, clean up file system behavior, etc etc.

Then try to do your best to support the previous ABI. So that the kernel supports 2 versions at most. So that gives you about 8 years of ABI/API compatibility.

Because right now what is happenning is that the Linux kernel isn't supporting 1 ABI version.. it's supporting _hundreds_. Each time a kernel developer introduces a bug or a odd behavior and applications start taking advantage of that then that is a new feature that Linux will have to support for the rest of the time. (which it will fail at eventually)


(Log in to post comments)

Linus and folks need to take a different approach here.

Posted Jul 29, 2009 23:55 UTC (Wed) by nix (subscriber, #2304) [Link]

Consistent ABIs are impossible.

Also, the X Window System doesn't exist.

Linus and folks need to take a different approach here.

Posted Jul 30, 2009 6:44 UTC (Thu) by zlynx (subscriber, #2285) [Link]

The X ABI has been broken hundreds (probably thousands) of times.

I unfondly remember the days of the CU computer lab where some applications would not display properly from the HP to the X terminals but worked from the Sun. I recall it was xv the image viewer that was usually good for breaking this stuff.

I remember some odd problems with that second, higher performing proprietary(I think it was?) X server Red Hat included with the boxed version 5.2.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds