Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Is there downwards compatibility in GNU software including the linux kernel? Example: can Gnome from Slackware 9.2 run on Slackware 10.2 (only an example)?
Downwards compatibility is a well-defined concept. Besides I gave an example. If a new processor is launched, it can be specified as downwards compatible with older processors in its family. This means that software running on older CPUs will run in the new one. In software we have the same concept: new O.S, and suppose all software running on the old O.S. runs on the new. There you have downwards compatibility. There is upwards compatibility too.
Some-one once said that the philosophy of Unix on backwards compatibility is "people standing in the way of progress get run over"! If new versions of things are free, why stick with the old ones?
If new versions of things are free, why stick with the old ones?
I had to find older version of flashplugin recently. The last version of it just doesn't allow me to watch YouTube. Mate is one more good example of why we sometime wish to have an older version. So there are some...
Quote:
Originally Posted by stf92
So, is Unix like Linux in this respect?
UNIX?... Which one? UNIX after v7 is not an operating system but a type of one.
Is there downwards compatibility in GNU software including the linux kernel? Example: can Gnome from Slackware 9.2 run on Slackware 10.2 (only an example)?
Here's the way i see it. Yes it should run but the gnome desktop environment is not just one package, it's a combination of many packages. Some are libraries ect. If the new version of Slackware (in this example) upgrades other packages like gimp which may affect gtk+, which may affect glib. Sometimes it may leak into the package set of the example program (gnome), which can cause issues/incompatibility.
Let me put it this way, you don't even need a Linux kernel to run gnome, why should it affect it.
Mine is a purely naive question, honestly made. I have programs released for MS-DOS 5.00, so I'm speaking of the 80's. You can now run almost all of them. The exception is given by those who make direct I/O and other niceties. From the moment Windows was the true O.S (no longer DOS) there was no way to put the processor into real mode and, hence, direct I/O causes exceptions.
I made it too long. I mean that up to Windows NT there was true downwards compatibility. I only mentioned the kernel to speak about the whole O.S.
I'm very interested in this aspect. So, is Unix like Linux in this respect?
I was using Unix in the loose sense of "an operating system complying with the POSIX standard", a definition that includes Linux. If you take a command-line program, you can normally run it on Linux, Solaris, OS-X, Syllable, Haiku, etc. Graphical software is another thing, of course.
"The Linux System," and "The GNU Software System," consist of hundreds of components. So, "backward compatibility" really means that the components that this-or-that app needs are available ... or newer components that are backward compatible.
Libraries usually "grandfather in" older calls, and so generally does the kernel. But some calls are essentially retired, and sometimes the architecture of the underlying system (e.g. the process/thread model) does change substantially and is not quite compatible.
One nice feature of the Linux system (vs. Windows) is that you can easily install more than one version of the same components, e.g. a library, on the system at the same time. Your apps can be as generic or as specific as they care to be about what they want. You can run a very old version side-by-side with a much newer one without conflict.
Kernel system-calls are almost never an issue since, almost invariably, they're made for you by libraries.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.