Siirry sisältöön

Linux Standard Base

Wikipediasta
Tämä on arkistoitu versio sivusta sellaisena, kuin se oli 4. elokuuta 2009 kello 21.59 käyttäjän 62.165.184.109 (keskustelu) muokkauksen jälkeen. Sivu saattaa erota merkittävästi tuoreimmasta versiosta.
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)

Linux Standard Base eli LSB on Linux käyttöjärjestelmälle kehitetty standardi ja sertifikointi järjestelmän ohjelmistoista ja asetuksista. LSB varmistaa että Linux käyttöjärjestelmä ei pirstaloidu eri käyttöjärjestelmiksi mitä tapahtui Unix käyttöjärjestelmälle. Unix pirstaloitui aikojen saatossa useaksi eri kaupalliseksi käyttöjärjestelmäksi jotka olivat keskenään yhteensopimattomia ja LSB pyrkii pitämään ohjelmistokehityksen myös yksinkertaisena.

Käyttöjärjestelmän suosion määrää sen päällä toimivien ohjelmistojen saatavuus sekä toiminnot. Yksittäiset ohjelmoijat sekä suljetun lähdekoodin ohjelmistoja kehittävät yritykset joutuvat ongelmiin Linux käyttöjärjestelmän useiden jakelupakettien kanssa. Eri jakelupaketit sisällyttävät eri versioita kirjastoista ja tallentavat eri hakemistoihin asetustiedostot. Tämä on aikoinaan pakottanut ohjelmistokehittäjän kohdistamaan ohjelmiston jakamisen sekä myymisen vain valituille jakelupaketeille ja on asettanut eri jakelupakettien käyttäjät eri arvoiseen asemaan kun ohjelmistokehityksen tavoitteet on jouduttu rajamaan tiettyihin jakelupaketteihin kehitys- sekä ylläpito-kustannuksien pitämiseksi alhaisena.

LSB-standardi poistaa nämä rajoitukset ja varmistaa että Linux käyttöjärjestelmä eri pirstaloidu useaksi eri käyttöjärjestelmäksi vaan säilyttää käytettävyyden sen eri jakelupakettien kesken sekä ohjelmistojen helpon asennuksen ja jakamisen. Ohjelmistot on LSB-standardin myötä mahdollista paketoida vain kerran ja jakaa se kaikille eri jakelupaketeille sopivana jotka ovat yhteensopivia LSB-standardin kanssa tai sertifikoitu sille.

LSB määrittelee

  • Yleiset ohjelmistojen paketointi- sekä asennus säännöt.
  • Yleiset ohjelmistokirjastot ja niiden valinnat
  • Järjestelmän asetustiedostot
  • Tiedostojen sijainnit
  • Järjestelmän komennot
  • Ohjelmistojen ABI (Application Binary Interface) rajapinnat järjestelmälle (sekä sovellus- että järjestelmätasoille)

Standardit

LSB-standardi on suunniteltu lähtökohdiltaan olemassa olevilta standardeilta. Se määrittelee sovelluksien binäärirajapinnat ajoympäristölle.

Pääasialliset standardit joita LSB sisältää ovat:

  • Single Unix Specification (SUS)
  • Standard C++ ABI
  • System V ABI

Muita hyödynnettäviä standardeja ovat:

  • PAM
  • X11
  • Työpöytäympäristöjen standardit jotka löytyvät FreeDesktop.org osoitteesta

Toteutukset

LSB määrittelee rakenteet rajapintojen saatavuudelle yksittäisille kirjastoille ja yksilöi tiedostorakenteet jokaiselle rajapinnalle. Nämä komponentit sisältävät jaetut kirjastot ohjelmoijille (mukaanlukien C++), tiedostojärjestelmän rakenteen (määritellen mistä löytyy mitkäkin tiedostot), julkisten rajapintojen toimintatavat, ohjelmistojen paketoinnin tiedot, ohjelmiston toiminta esi- ja jälkiasennuksessa ja niin edelleen.

Yhteensopivuus

LSB-standardi takaa taaksepäinyhteensopivuuden lähdekoodi- sekä binääritasolla alkaen LSB 3.0 versiosta. Toisin sanoen ohjelmisto joka on tehty LSB X.Y (X.Y >=3.0) versiolle toimii Linux käyttöjärjestelmän jakelupaketissa joka on sertifikoitu tai yhteensopiva vastaavan LSB version tai uudemman kanssa. Tämä tarkoittaa että ohjelmisto joka on tehty LSB 3.0 versiolle, toimii myös LSB 3.1, 3.2, 3.3 sekä 4.0 version kanssa yhteensopivan tai sertifikoidun jakelupaketin kanssa.

Taatakseen yhteensopivuuden taaksepäin, LSB standardin kehityspolitiikan mukaisesti rajapintoja ei poisteta standardista, vaan ainostaan lisätään. Kuitenkin LSB standardista poistetaan rajapintoja tietyn säännön mukaisesti tarvittaessa. Kun rajapinta on ollut viimeisissä kolmessa suuressa versiossa (LSB X.Y missä suuri versio on X muutos) tai n. kuuden vuoden välein. Aikaisemmissa LSB standardin versioissa 1.x ja 2.x taattiin binääriyhteensopivuus vain suurien versioiden aikana. Vasta 3.x version myötä taataan yhteensopivuus myös niiden välillä.

Viitteet

LSB-standardin esittelysivusto