LWN.net Logo

You were surprised? Why?

You were surprised? Why?

Posted Jul 9, 2009 16:24 UTC (Thu) by khim (subscriber, #9252)
In reply to: Small problem for Linux ? Sure. Big problem for Linux user? Of course. by nye
Parent article: Google Chrome OS and the community

Well, I was pleasantly surprised the other week when I tried running an old copy of Mosaic.

I run old DOS/Windows programs quite often - and I expect that they'll work on new version of Windows (the fact that Windows Vista x64 dropped support for DOS/Win16 was unpleasant surprise but AFICS it's problem with AMD64 mode, not the result of Microsoft's negligence). For you the fact that old copy of Mosaic can run is pleasant surprise. Nuff said.

The really strange this here is that GNU/Linux core is 99% bullet-proof: linux kernel and glibc go the huge pains to guarantee backward compatibility. But the further you go up in the software stack the flakier ABI stability becomes - by the time you've reached layers where you can do something usefull it's gone almost completely...


(Log in to post comments)

You were surprised? Why?

Posted Jul 9, 2009 16:30 UTC (Thu) by martinfick (subscriber, #4455) [Link]

There are plenty of old dos programs that do not run on windows. Anything that polled a mouse will chew up CPU. Anything that did out of the ordinary graphics will not work, games...

Yeah, but then Linux's task is simpler from the start...

Posted Jul 9, 2009 19:07 UTC (Thu) by khim (subscriber, #9252) [Link]

There are plenty of old dos programs that do not run on windows. Anything that polled a mouse will chew up CPU. Anything that did out of the ordinary graphics will not work, games...

Sure. DOS programs were written as if they own the computer. Which they did. So it's not easy to containerize them without huge overhead. The comparable thing in Linux world are OSS programs - they also like to hog the part of computer (/dev/dsp device). And like MS DOS games these old programs worked poorly with new distributions. And like with Windows the idea that you can just rewrite all programs (Windows old took of with version 3.0 which was the first version with decent support for MS DOS programs) didn't fly. Why the hell linux developers must repeat all Microsoft's mistakes?

Yeah, but then Linux's task is simpler from the start...

Posted Jul 11, 2009 9:55 UTC (Sat) by nix (subscriber, #2304) [Link]

Because they're not "Microsoft"'s mistakes, per se: they're mistakes made
by software developers in general. MS just tripped over them, and now so
are we.

Actually, this one isn't even a mistake: it's an inevitable consequence of
what happens when a stable foundation grows that everything relies on,
when that foundation is then shown to be faulty by design. At least we
*can* rip it out: when biology does the same thing, we get stuck with the
same unfixable faults for hundreds of millions of years...

You were surprised? Why?

Posted Jul 11, 2009 9:46 UTC (Sat) by nix (subscriber, #2304) [Link]

But the further you go up in the software stack the flakier ABI stability becomes - by the time you've reached layers where you can do something usefull it's gone almost completely...
Is it? I see only one or two small ABI breakages a year (much less if you ignore libdb, OpenSSL, ffmpeg, libperl and libpython, which all break ABI at the drop of a hat), and the only specific complaints I've seen on this thread have been people trying to run things that expect new ABIs of old libraries, which isn't going to work until we all have our time machines.

The major high-in-the-stack desktop libraries and the things they use go to great lengths to maintain back-compatibility, and it seems to work. What they do instead is introduce new libraries with better APIs every so often (e.g. gvfs replacing gnome-vfs), and, sure, if you don't have those and you install something that needs them, you'll have to install them. But, again, this has nothing to do with ABI breakages, which pretty much aren't happening.

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