LWN.net Logo

On binary drivers and stable interfaces

On binary drivers and stable interfaces

Posted Nov 10, 2005 5:52 UTC (Thu) by drag (subscriber, #31333)
In reply to: On binary drivers and stable interfaces by subhasroy
Parent article: On binary drivers and stable interfaces

Well it depends what you want.

Do you only want new kernel releases every 3 years? Because that's pretty much exactly what would happen.

For instance I like to use Ingor's 'realtime' latency patch. I wouldn't be able to use that if the last 'stable kernel abi' was released around mid-2.4.x. Stuff like that requires modifications to drivers and other related items. I need support for softirqs, changes in DMA access, make everything preemptive, etc etc.

What about power management or other things like that? It seems very obvious that nowadays that you'd want to have a mechanism for almost all kernel drivers, server-related, network-related, desktop-related, laptop-related, so that they would support more advanced power management. But how practical or plausable was that 3 years ago? And even right now there are lots of problems that need to be worked out, do you realy want no improvement in suspend-to-ram, suspend-to-sleep, and other items for the next 3 years? Thats what would happen because any improvements or changes in the code related to power management is going to have to have the support of driver-level code.

And there are other things. Like the more advanced filesystem VFS stuff and generic 802.11x protocol stack. Those things make driver developer's lives much easier and improve performance and stability for everybody, but they wouldn't be avaible to be used in new drivers with a stable ABI. Also not to mention that if you pick a stable ABI you're going to be stuck with the same bad ideas, potentionally obsolete interfaces, and such for the next 3 years.

But we'll see. OpenSolaris people love stable ABI. They like stable kernel interfaces and have no problem using closed source drivers. Once they figure out the legal hurdles of GPL software on CDDL base then the only real difference between 'Linux' and 'Solaris' will be the kernel and some other low-level stuff.

Personally I feel that the only real solution for a 'stable abi' is a Microkernel, or at least a very microkernel-like setup were you run modules in userspace seperate from the kernel itself.

So in the future hopefully it will be easy to select (just picking on debian for right now) Debian/GNU/Solaris or Debian/GNU/Linux or Debian/GNU/Hurd. Then it'll be easy for us to pick 'stable kernel ABI' vs 'rapid developement kernel' vs 'microkernel' and get the 'best tool for the job' irregardless of the actual software we want to run on it. Then the best kernel developement method will win.

I like Linux. It's fast, generally stable, and improves rapidly. It gives me all sorts of neat stuff to play with, but I have no very special attatchment to it. I do have strong attatchments to the Free software I use everyday, however. If something better comes along and is Free software like Linux, Mozilla, or BSD is then I'll use it.

(Although actually, I would like to see a specialized Free Software Single-User OS just for simple desktop and embedded applications. Something along the lines of BeOS or Windows 95 (obviously stable of course). Not every system needs to be able to run a entire Unix enterprise-ready enviroment.)


(Log in to post comments)

On binary drivers and stable interfaces

Posted Nov 10, 2005 6:47 UTC (Thu) by cventers (subscriber, #31465) [Link]

Just addressing your last point about a single-user OS.

Convex predicted many years ago that the market for specialty computer
hardware would diminish as technology moved forward.

I see the same thing with software, and I think it's really evident. Why
have a special wireless-router OS when it can run Linux? Wireless routers
certainly don't need a full "enterprise UNIX" - VFS, etc...

The stock 2.6 kernel already runs on everything from embedded devices
like wireless routers, TiVOs, cell phones to huge supercomputers, and
save for some places it hasn't fully innovated yet, it shines on every
platform. I'd rather have all the interesting work going into one or a
few open source operating systems than many specialized ones. By having
one Linux kernel, for example, you have lots and lots of developers
working on one product. Compare that to (and please don't let this turn
into a flame war) BSD, where you have OpenBSD, NetBSD and FreeBSD all
working towards somewhat different goals and quite obviously *not* moving
at the pace of Linux.

On binary drivers and stable interfaces

Posted Nov 11, 2005 2:03 UTC (Fri) by bk (guest, #25617) [Link]

I agree. The single-user OS idea is valid and a good niche to explore, however there's no reason why the Linux kernel can't be part of it. Linux is a *general purpose* kernel, not a Unix operating system in and of itself.

It's a problem of userspace engineering. Although I'm going to be booed for saying it, Lindows (or whatever they're calling it now) tried to fulfill the ideal of a simple consumer desktop OS and got nothing but skepticism from the majority of people. It was single user (root), simple, largely non-configurable, point-and-click everything and so on. You could argue the *implementation* of the idea was sub-optimal (I would agree), but that says nothing about the merit of the core ideal.

Perhaps Lindows didn't go far enough; it still exposed enough of its Linux underpinnings that people reviewed it as if it were just another Linux distribution. Linux 2.6 has the facilities to completely replace the classic Unix user/group security scheme, if one had a lot of ambition and venture capital another attempt at a mass market single-user OS might be worthwhile.

On binary drivers and stable interfaces

Posted Nov 10, 2005 13:59 UTC (Thu) by wookey (subscriber, #5501) [Link]

That was a generally excellent post (thank you) spoilt by one little thing which I feel compelled to nitpick: There is no such word as 'irregardless'. You mean regardless, or irrespective.

OT: non-standard, and American, but still a word

Posted Nov 11, 2005 18:08 UTC (Fri) by illtyd (guest, #2124) [Link]

irre'gardless, a. and adv.
Chiefly N. Amer.

In non-standard or humorous use: regardless.

[Prob. blend of irrespective and regardless.]

912 in WENTWORTH Amer. Dial. Dict. 1923 Lit. Digest 17 Feb. 76 Is there such a word as irregardless in the English language? 1934 in WEBSTER (labelled Erron. or Humorous, U.S.). 1938 I. KUHN Assigned to Adventure xxx. 310, I made a grand entrance and suffered immediate and complete obliteration, except on the pay-roll, which functioned automatically to present me with a three-figure cheque every week, ‘irregardless’, as Hollywood says. 1939 C. MORLEY Kitty Foyle xxvii. 267 But she can take things in her stride, irregardless what's happened. 1955 Publ. Amer. Dial. Soc. XXIV. 19, I don't think like other people do and irregardless of how much or how little dope would cost me [etc.]. 1970 Current Trends in Linguistics X. 590 She tells the pastor that he should please quit using the word ‘irregardless’ in his sermons as there is no such word. 1971 M. MCSHANE Man who left Well Enough iv. 96 The sun poured down on Purity irregardless of the fact that it received no welcome.

from the OED online
(note that quite a few of the textual references are quotes suggesting it isn't a word, but then I'm not a linguistic prescriptivist)

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