Linux Standard Base

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Linux Standard Base

Logo der Linux Standard Base
Basisdaten

Entwickler Linux Foundation
AktuelleVersion 5.0
(3. Juni 2015)
Betriebssystem Linux
Kategorie Binärschnittstelle
deutschsprachig nein
Linux Foundation – LSB
Linux Standard Base soll die Portierbarkeit von Binärdateien gewährleisten.

DieLinux Standard Base(LSB) ist eine Arbeitsgruppe derLinux Foundation,die Ende der 1990er ins Leben gerufen wurde.[1]Die LSB definiertStandardsfürBinärschnittstellen,Programmbibliothekenund andere Betriebssystembestandteile mit dem Ziel, die Kompatibilität zwischen den verschiedenenLinux-Distributionen,z. B. mit Hinblick auf die Lauffähigkeit von Programmen, zu verbessern. Bis heute erfüllt nur ein kleiner Teil der Linux-Distributionen die Anforderungen der LSB. Auch sind die Anforderungen noch nicht umfassend genug, um eine vollständige Betriebssystemplattform zu definieren.[1]

Im Laufe derGeschichte von Linuxhaben sich eine Reihe von verschiedenenLinux-Distributionenentwickelt, die in vielen Details unterschiedliche Ansätze verfolgten wie beispielsweise inkompatible Software-Paket-Formate, abweichendeVerzeichnisstrukturenoder unterschiedliche Versionen der integrierten Softwarepakete. Dadurch sind unabhängige Softwareanbieter (ISVs) gezwungen, ihre Software für jede Distribution spezifisch anzupassen (oder anpassen zu lassen) und separiert anzubieten,- ein enormer Mehraufwand.[2][3]

Ziel der LSB ist, mit Standards und Richtlinien eine einheitliche binärkompatiblePlattformfürSoftwareinstallationenunter Linux zu erzeugen.[1]Sie macht u. a. Vorgaben, welche grundlegenden Programme undProgrammbibliothekenauf einem LSB-konformen System vorhanden sein müssen und legt gemäß demFilesystem Hierarchy StandardeineVerzeichnisstrukturfest. Die Basis der LSB Standards waren die StandardsPOSIXundSingle UNIX Specification,welche erweitert wurden. Inzwischen weicht der LSB-Standard in einigen Aspekten jedoch Linux-spezifisch von denOpen-Group-Unix-Standards ab.

Das Ende der 1990er[1]ins Leben gerufene LSB-Projekt wollte anfänglich die StandardsPOSIXundSingle UNIX Specificationvollständig einhalten und diese nur an einigen Stellen erweitern. Daher hatte dieOpen Groupauch angeboten, eine Zertifizierung für einen US-$ durchzuführen.

POSIX-Inkompatibilität

[Bearbeiten|Quelltext bearbeiten]

Im Jahr 2005 begann die LSB jedoch darauf zu beharren, bestimmte in Linux-Distributionen übliche Abweichungen (Inkompatibilität) nicht zu beseitigen.[4]Seitdem gab es bei dem Prozess zur Erreichung der UNIX-Standardkonformität keine Fortschritte. Das Ziel der vollständigen POSIX- undSUS-Konformität scheint zugunsten der in bestehenden Linux-Systemen üblichen Konventionen aufgegeben worden zu sein. Im Gegenteil,Linus Torvaldshat wiederholt klargemacht, dass er bereit ist, von POSIX zu divergieren, wenn es dafür gute Gründe gibt.[5]

2005 wurde die LSB vonglibc-MaintainerUlrich Drepperals ineffektiv kritisiert[6];konkret monierte er fehlerhafte Testsuiten.[7]Jeff Licquia von der LSB gab zu, dass Tests unvollständig und Code fehlerhaft seien, trotzdem hätten die Tests eine Aussagekraft. Außerdem seien definierte und prüfbare Standards alternativlos für einen freien,interoperablenSoftwaremarkt.[8]

Die erste Version 1.0 der LSB umfasste ältere, schon weiter verbreitete Standards. AnfangJanuar 2004wurde die LSB das erste Mal derInternationalen Organisation für Normung(ISO) vorgelegt. Die darauffolgende Version 2.0 unterstützte mehr Architekturen. Die LSB 3.0 zeichnet sich durch Aktualisierungen der bereits bestehenden Standards aus. Anfang November desselben Jahres wurde dann bekannt, dass die ISO die LSB als internationalen Standard anerkannt hatte. Die anerkannte Version ist die Version 2.0.1. Neuere Versionen der LSB sollen folgen.

Übersichtstabelle

[Bearbeiten|Quelltext bearbeiten]
Version Datum Wesentliche Neuerungen
1.0 1. Juli 2001[1]
2.0 15. September 2004
  • Neues Application Binary Interface (ABI) für C++ mit Unterstützung für 32- und 64-Bit-Hardware-Architekturen
  • Unterstützung für IBM PowerPC 64, S390 und S390X sowie AMD 64-Bit-Prozessoren[9]
3.0 19. September 2005
  • Aktualisierung der Application Binary Interface (ABI) für C++
  • Aufnahme der Echtzeit-Bibliothek librt[10]
3.1 31. Oktober 2005
  • Unterstützung fürGTK+2.0
  • Unterstützung fürQt3.3 und optional auch Qt 4
  • Unterstützung für portable Desktop-Anwendungen
  • Modularer Aufbau[11]
3.2 28. Januar 2008
  • Unterstützung fürPerlundPython
  • Zusätzliche Druckschnittstellen
  • Unterstützung für portable Druckertreiber
  • Ersatz der optionalen Module durch Trial-Use-Module, wodurch nun u. a. das ALSA-Soundsystem über Libasound unterstützt wird
  • Primärer Fokus auf Qt 4; Qt 3 wird nicht mehr unterstützt[12]
4.0 11. November 2008
  • Aufnahme der StandardbibliothekCairo1.0.2
  • Spezifikation für Shellskripte
  • Separates Software Development Kit (SDK)
  • Verschlüsselungsunterstützung für Mozillas Network Security Services (NSS) und Netscape Portable Runtime (NSPR)[13]
4.1 3. März 2011
5.0 3. Juni 2015
  • gleichzeitige Veröffentlichung mit demFHS3.0[15]
  • Entfernung von Qt3
  • Modularisierung in LSB Core, LSB Desktop, LSB Languages, LSB Imaging und LSB Trial Use
  1. abcdeEric Brown:LSB 4.0 certifications aim to heal Linux fragmentation.linuxfordevices.com, 8. Dezember 2010, archiviert vomOriginalam24. Dezember 2013;abgerufen am 16. November 2011(englisch): „The LSB spec outlines interoperability between applications and the Linux operating system, ‘allowing application developers to target multiple versions of Linux with just one software package,’ says the LF. Launched in the late '90s, the LSB working group released its first major LSB 1.1 specification in 2001. […] “
  2. Eskild Hustvedt:Playing well with distros.Linux Game Publishing,24. November 2009, archiviert vomOriginalam21. September 2011;abgerufen am 15. Januar 2012(englisch).
  3. Miguel de Icaza:Linux and Independent Software Vendors.primates.ximian.com, 4. November 2003, archiviert vomOriginalam15. Juli 2012;abgerufen am 7. April 2012(englisch): „[…] staffing requirements for maintaining and testing […] software for a dozen of distributions and release versions quickly becomes a big burden […] “
  4. Conflicts between ISO/IEC 9945 (POSIX) and the Linux Standard Base(englisch) – Bericht derOpenGroup,vom 20. August 2005
  5. Linus Torvalds:Re: RFD: x32 ABI system call numbers.31. August 2011,abgerufen am 6. September 2011(englisch): „POSIX has been wrong before. Sometimes the solution really is to say ‘sorry, you wrote that 20 years ago, and things have changed’. “
  6. Tim Schürmann:Linux Standard Base 3.0 Software nach Standardmaß.In:Linux-Magazin 2006/01.linux-magazin.de, 1. Januar 2006,S. 10,abgerufen am 12. Februar 2012.
  7. Ulrich Drepper:Do you still think the LSB has some value?udrepper.livejournal.com, 17. September 2005,abgerufen am 12. Februar 2012(englisch): „There are still people out there who think that the LSB has any value. This just means they buy into the advertisement of the people who have monetary benefits from the existence of the „specification “, they don't do any research, and they generally don't understand ABI issues. “
  8. Jeff Licquia:Yes, the LSB Has Value.27. September 2005,abgerufen am 12. Februar 2012(englisch).
  9. Linux Standard Base 2.0 veröffentlicht
  10. Linux Standard Base 3.0 veröffentlicht
  11. LSB 3.1 mit besserer Desktop-Unterstützung
  12. Linux Standard Base 3.2 mit ALSA-Unterstützung
  13. Erste Beta der Linux Standard Base 4.0
  14. Linux Foundation: Linux Standard Base 4.1 ohne Java– Artikel beiGolem.de,vom 11. März 2011
  15. Lang erwartete Updates für Linux-Standards erschienen– Artikel beiGolem.de,vom 4. Juni 2015