Kompatibilnost hardvera za Linux: Kako Linux podržava hardver? Kompatibilnost uredskih paketa Linuxa s Microsoft Officeom Izvođenje programa iz različitih verzija Unixa.

S vremena na vrijeme kupujete novu opremu i, naravno, želite da radi na Linuxu. Nije da besplatna zajednica ne može ili ne želi podržati uređaje - iskustvo pokazuje da može i to čini. Poanta je u pohlepnim i glupim proizvođačima koji ne žele ne samo napisati drivere za svoj hardver, već čak ni otvoriti specifikacije za svoje uređaje. Tipično, ako hardver ne radi na Linuxu, tada taj proizvođač obično uopće nije vrijedan razmatranja.

Ovaj post govori o Linuxu i instaliranju hardvera u Linux. Instaliranje hardvera na Linux je jednostavno, a ispod su resursi koji će vam pomoći u tome.

Gdje mogu pronaći informacije o kompatibilnosti uređaja i perifernih uređaja s Linuxom?
http://linux-wless.passys.nl/ - proširena baza podataka WiFi kartica za Linux. Ovo je najopsežniji resurs za bežičnu podršku mrežne kartice u Linuxu možete pogledati prema proizvođaču - i ako je podržano, odmah se daje naziv upravljačkog programa.

http://www.sane-project.org/sane-mfgs.html - popis skenera u Linuxu koje podržava SANE podsustav. Popis modela skenera koji rade u Linuxu ovisno o proizvođaču. Gradacije kompatibilnosti: puna podrška, djelomična, osnovna, bez podrške. Također pokazuje koja je pozadina potrebna za rad uređaja.

http://openprinting.org/printer_list.cgi - baza podataka operativnih Linux pisača koje podržava podsustav za ispis CUPS, koji pruža Linux upravljačke programe za pisače u distribucijama Linuxa. Praktično pretraživanje po modelu pisača i proizvođaču. Gradacije kompatibilnosti: radi, gotovo radi, radi u ograničenoj mjeri, balast.

Baze podataka prema kategoriji uređaja
http://www.linuxcompatible.org/compatibility.html - baza podataka svih uređaja kompatibilnih s Linuxom, počevši od zvučne kartice i završava s pisačima i skenerima. Postoje gradacije kompatibilnosti: radi savršeno, radi većim dijelom, neke funkcije rade, balast. Baza podataka je vrlo opsežna i s vremena na vrijeme je ažuriraju kreatori stranice. U svakom slučaju, prekrasan izvor.

http://kmuto.jp/debian/hcl/ - baza podataka uređaja koje podržavaju kerneli 2.6.15 i noviji. Jednostavno kopiramo izlaz lspci -n s konzole i dobivamo informacije o podršci hardvera koji se nalazi na matičnoj ploči.

http://www.linux-laptop.net/ je najopsežniji resurs o pokretanju Linuxa na prijenosnim računalima. Stranica nudi klasifikaciju prema proizvođaču, nakon čega slijede veze prema modelu na određene stranice korisnika koji govore što su i kako učinili da bi dobili funkcionalnost svojih prijenosnih računala. Većina informacija je na engleskom, ali prisutni su i drugi jezici.

http://start.at/modem je izvrstan izvor za podršku takvim neispravnim uređajima kao što su winmodem. Ispada da također možete izvući nešto iz ovog balasta: dostupan je impresivan popis podržanih uređaja.

http://www.phoronix.com/lch/ - korisnička baza podržanih uređaja. Počinje se puniti, možete i vi sudjelovati u tome. Postoje RSS izvori i za određenu vrstu hardvera i za sve njih odjednom.

- Prekrasan izvor o Linux uređajima s poveznicama na HOWTO i "kako postaviti". Na stranici postoji klasifikacija prema vrsti uređaja, zatim postoje poveznice kako ga postaviti i koji problemi mogu nastati. Tu su i poveznice na opće informacije prema ovim uređajima. Vrlo informativno. Postoji feed vijesti za stranicu (nova dokumentacija).

http://cdb.suse.de/?LANG=en_UK - popis uređaja kompatibilnih sa SuSE Linuxom. Ažurirana baza podataka uređaja kompatibilnih sa SuSe Linuxom. Ovi uređaji u pravilu rade i u drugim distribucijama.

http://www.linuxtested.com/ - kompatibilnost i rad uređaja po distribuciji. Stranica sadrži informacije o testiranju uređaja u sljedećim distribucijama: SuSE, Redhat / Fedora, TurboLinux, Debian, Mandrake.

http://www.linux.org/hardware/ - hardver koji radi u Linuxu Popis nije potpun, ali može biti koristan - postoje informacije o egzotičnom hardveru za koji postoji podrška u Linuxu.

http://www.linux-drivers.org/ - veze na mnoge resurse o kompatibilnosti s Linuxom. Veliki broj poveznice na resurse i hardversku podršku u Linuxu.

http://hardware4linux.info/ - imenik kompatibilan s linuxom hardver, podijeljen u kategorije: “radi odmah iz kutije”, “radi s izmjenama”, “nepoznato”, “djelomično radi” i “ne radi”. Prilično velika i stalno ažurirana baza podataka uređaja.

http://www.linmodems.org/ - baza podataka podrške za opake uređaje kao što su Win modemi. U njima su sve glavne aktivnosti prebačene na vozača, napisane za već znate koji sustav. Kao rezultat toga, na uređaju gotovo da nema "mozgova", kao što ih nemaju ni proizvođači takvih uređaja. Kroz napore slobodnih programera, mnogi od ovih uređaja mogu se natjerati da rade u Linuxu.

26.02.2007 Aleksej Grinevič, Denis Markovcev, Vladimir Rubanov

Ako se vratite u kasne 90-e i uronite u svijet operativni sustavi tog vremena, teško da bi itko sumnjao u nepodijeljenu vladavinu Unix-kompatibilnih sustava. Sve je na strani Unixa - obitelj ovih operativnih sustava proučava se na sveučilištima, za nju su napravljene stotine tisuća aplikacija, uspješno se koristi u raznim sektorima gospodarstva, napisano je puno knjiga i dokumentacije o tome. Istina, ne možete kupiti Unix, ali možete kupiti IBM AIX, BSD, HP-UX, Sun Solaris itd. U isto vrijeme, potreban je dodatni napor da bi program kreiran, recimo, za AIX, radio pod Solarisom. Pokazalo se da su različiti klonovi Unixa slabo kompatibilni. Slični problemi danas postoje za Linux OS.

Kako bi riješio infrastrukturni problem slabe kompatibilnosti između različitih verzija Unixa, IEEE je 1985. započeo rad na standardu koji bi osigurao prenosivost softver. Godine 1990. objavljen je standard IEEE 1003, također nazvan POSIX, koji je regulirao programska sučelja (API) i popis naredbi za Unix klonove. Međutim, za igrače na tržištu Unixa, ujedinjenje je stvorilo složene političke probleme: svaka odluka, svaki izbor između alternativnih opcija za postizanje dogovora dovodi do činjenice da je rješenje jednog dobavljača prepoznato kao "standardnije" u usporedbi s drugim. Kao rezultat toga, standard je prepun dvosmislenih izjava poput "in u ovom slučaju moguća je jedna od dvije alternativne opcije ponašanja” i bijele mrlje poput “standard ne regulira ponašanje funkcije u ovom slučaju.” Na kraju, fragmentacija postao jedan od glavnih razloga poraza Unix svijeta. Igrači na ovom tržištu natjecali su se ne samo s drugim vrstama operativnih sustava, već i jedni s drugima, uvodeći vlasnička proširenja i vlasnička sučelja, ograničavajući raspon mogućih aplikacija na bilo koji klon.

Linux OS, koji se pojavio u ranim 90-ima, inkorporirao je kod stvoren unutar GNU pokreta i apsorbirao glavne ideje Unixa, zahvaljujući svojoj otvorenosti i neovisnosti, postao je univerzalni kompromis. Njegov kod je implementiran od nule, ne oslanjajući se ni na kakvu implementaciju, već samo na tekst POSIX standarda. Kao rezultat toga pokazalo se da je sustav od samog početka kompatibilan s POSIX-om, a njegova neovisnost omogućila je udruživanje napora različitih igrača na tržištu Unixa u borbi za „povratak“ izgubljenog segmenta PC operativnih sustava. Međutim, problem fragmentacije ostaje relevantan za Linux: prisutnost konkurentskih distribucija izaziva zabrinutost oko vjerojatnog ponavljanja sudbine Unixa.

Na prvi pogled sama opasnost od fragmentacije izgleda prilično iluzorna – zapravo, postoji zajednički kod, većina distribucija radi na temelju iste jezgre, istih biblioteka, što u velikoj mjeri određuje kompatibilnost. Čini se da bi aplikacije trebale ostati funkcionalne i kompatibilne između različitih verzija Linuxa. Ali to nije potvrđeno u praksi. Uz rascjepkanost distribucijskog tržišta Linuxa u pogledu pristupa i dodatne funkcionalnosti, postoje značajne neravnoteže u podršci raznih klonova čak i za uobičajene i standardne aplikacije- koristi se u raznim distribucijama različite verzije kernel i sistemske biblioteke (prvenstveno glibc). To dovodi do činjenice da sastav i ponašanje sučelja sustava, koje sustav daje aplikacijama, razlikuju se od distribucije do distribucije. Kako se ne bi ponovilo tužno iskustvo Unix klonova, 1998. godine, u okviru posebno stvorene organizacije Free Standards Group (sada Linux Foundation), započeo je rad na LSB standardu (Linux Standard Base - „osnovna obitelj Linuxa“ standardi”). Zahvaljujući naporima organizacija X/Open, IEEE i ISO, koje su otvorile POSIX standard i neke od testova za slobodan pristup, postavljeni su temelji za standardizaciju Linuxa.

Ali što točno i zašto treba standardizirati? Je li stvarno isto otvoreni izvor sama po sebi nije jedinstven i otvoren standard?

Problemi s kompatibilnošću aplikacije

Kako se razlike među distribucijama Linuxa očituju u praksi i koliko je problem ozbiljan? Navedimo primjer. Osnova komercijalne ponude IBM korporacije imaju pet linija softverski proizvodi: DB2, Websphere, Rational, Tivoli i Lotus. Praksa pokazuje da podrška za svih pet linija za jednu distribuciju Linuxa košta milijune dolara godišnje, koji idu programerima i testerima odgovornim za podršku aplikacijama za određenu distribuciju Linuxa. Slijedom toga, podupiru se one distribucije kod kojih dobit od prodaje proizvoda prelazi te milijune; zapravo ovo su samo distribucije SuSE i crveni šešir. Ovo stvara situaciju nedosljednosti - ono što radi na nekim distribucijama ne radi na drugima.

Potpuno drugačija situacija je uočena za Sun Solaris. Prije svega, Sun Microsystems jamči da će program kompiliran za Solaris 2.6 raditi bez ponovnog kompiliranja i pod verzijom 10. Sunovi programeri ulažu velike napore da to postignu; Prilikom svake promjene koda pokreće se skup od više od 2400 aplikacija različite namjene i sastava. Štoviše, ako netko otkrije da aplikacija prestaje raditi zbog nekompatibilnosti između verzija Solarisa, Sun preuzima odgovornost i troškove ispravljanja nedosljednosti. U slučaju Linux OS-a ovaj posao nije dugo održavan, aplikacije i distribucije živjele su svoje zasebne živote. Najtužnija stvar u vezi ovoga je nedostatak univerzalna metoda pisanje programa na takav način da se osigura prenosivost. Napori konzorcija Linux Foundation, koji zastupa interese glavnih igrača na tržištu Linuxa, usmjereni su na rješavanje ovog problema.

Linux struktura

Linux se često naziva samo njegovom jezgrom, ali postoje mnoge stvari koje jezgra ne bi trebala raditi. Rad s dokumentima, slanje pošte, obrada XML-a, crtanje prozora - za sve to postoje posebne biblioteke uključene u gotovo sve distribucije. Ove biblioteke, na ovaj ili onaj način, dovode do poziva kernelu, ali problemi i pogreške mogu nastati ne samo u kernelu, već iu samim bibliotekama.

Postoji mišljenje da ako program prestane raditi pri promjeni distribucije Linuxa (ili njegove verzije), tada ga je vrlo lako ispraviti, imajući izvorne kodove, pa stoga nema problema s kompatibilnošću. Prije rasprave je li to istina ili ne, prvo razmotrimo strukturu Linux OS-a.

Na stranici je predstavljen "generalizirani" model sustava temeljenog na Linuxu

Riža. 1. Model sustava temeljen na Linux OS-u

Svaki specifičan Linux sustav stvoren je za pokretanje jedne ili više aplikacija, ali sam aplikacijski kod nije dovoljan da iz hardvera izvuče potrebnu uslugu korisnicima - većina aplikacija u svom radu koristi pozive funkcijama knjižnice. Standard LSB Core 3.1 definira sljedeće sistemske biblioteke: libc, libcrypt, libdl, libm, libpthread, librt, libutil, libpam, libz, libncurses. Na modernim Linux sustavima, sučelja za ove sistemske biblioteke implementirana su pomoću biblioteka glibc, Linux-PAM, zlib i ncurses, koje zapravo implementiraju više sučelja od onih definiranih u LSB Core.

Na temelju stupnja interakcije s jezgrom Linuxa, funkcije sistemskih biblioteka mogu se klasificirati na sljedeći način:

  • implementacija funkcije je u potpunosti sadržana u biblioteci, a kernel se ne koristi (na primjer, strcpy, tsearch);
  • biblioteka implementira trivijalni "omot" za pozivanje odgovarajućeg sučelja jezgre (na primjer, čitanje, pisanje);
  • Implementacija funkcije sadrži i pozive sučelja sustava jezgre (i moguće nekoliko različitih) i dio koda u samoj biblioteci (na primjer, pthread_create, pthread_cancel).

Sam kernel Linuxa sadrži mnogo izvezenih ulaznih točaka, ali velika većina njih su interna sučelja za korištenje od strane modula i podsustava samog kernela. Vanjsko sučelje sadrži oko 250 funkcija (verzija 2.6). Od njih, na primjer, biblioteka glibc 2.3.5 koristi 137 u svojoj implementaciji.

Konfiguracije

Pod, ispod konfiguracija Sistemski dio distribucije podrazumijeva se kao kombinacija verzije kernela (uključujući pojedinačne zakrpe), verzija sistemskih biblioteka, njihovih parametara izgradnje i arhitekture na kojoj sve to radi. Na Dan je primjer konfiguracije sklopa dviju hipotetskih distribucija koje su zbirka verzija komponenti i zakrpa. Između verzija komponenti dodaju se nove funkcionalnosti, a uklanjaju zastarjela sučelja i funkcije. Dakle, u ovom dijagramu lako je vidjeti da budući da distribucije 1 i 2 koriste različite verzije GCC, kompatibilnost izvornog koda između njih djelomično je izgubljena - ne može se sve što je prevedeno pomoću gcc 3.4 prevesti pomoću gcc 4.0 bez izmjena.

Riža. 2. Primjer konfiguracije izgradnje distribucije

Distribucije

Po adresi lwn.net/Distribucije/ možete pronaći popis dobro poznatih distribucija Linuxa (u vrijeme pisanja bilo ih je 542) otvorenih za širu javnost. Ovo ne uzima u obzir verzije napravljene za internu upotrebu od strane pojedinačnih entuzijasta, kao i raznih tvrtki, odjela itd. Prema GNU licenci, možete uzeti proizvoljnu distribuciju, modificirati je (barem komponente koje pokriva GNU) i dalje je distribuirati.

Distribucije se mogu klasificirati prema nizu kriterija.

  • Po osnovnim proizvođačima. Na primjer, Red Hat, Slackware, SuSE, Debian, Asianux, Mandriva, Gentoo predstavljaju glavne “grane” Linux industrije. Ove distribucije nisu potomci drugih (iako među njima postoje neke povijesne ovisnosti). Oni se mogu smatrati strateškim pravcima razvoja Linuxa općenito. Većina preostalih distribucija jasno pripada jednoj od spomenutih grana - uglavnom nasljeđujući izvorni kod i aplikacije te dodajući specifične funkcionalnosti.
  • Lokalizacijom. U mnogim zemljama postoji lokalni proizvođač Linuxa (na primjer, u Rusiji svi znaju distribucije ASP Linux i ALT Linux).
  • Primjenom. Distribucije za ugrađenu upotrebu u Mobilni uredaji; distribucije koje rade bez podrške datotečnog sustava; lagane verzije za korištenje na PDA uređajima; prijenosne verzije za pokretanje s ograničenih medija (Linux na disketi, Linux na CD-u, itd.).
  • Po specijalizaciji. Distribucije koje podržavaju određenu hardversku arhitekturu (AlphaLinux s podrškom za Alpha procesorsku arhitekturu, ARM Linux s podrškom za ARM itd.).

Postupak izgradnje Linuxa

Može se činiti da je za postizanje pouzdanosti i kompatibilnosti na razini ponašanja sučelja knjižnice sustava dovoljno da testiranje provedu programeri kernela i biblioteka, ali to nije tako. Već na razini sučelja knjižnica sustava postoji mnogo dimenzija koje gotovo svaki Linux sustav čine jedinstvenim u smislu kvalitete. Ponašanje aplikacijskih sučelja određeno je kombinacijom biblioteka, kernela i hardvera. Zauzvrat, kernel i biblioteke određuju se njihovom verzijom (uključujući službene ili neslužbene zakrpe i izmjene) i, što je vrlo važno, konfiguracijom izgradnje.

Raznolikost različitih komponenti uključenih u Linux i mnoge ovisnosti među njima mogu se ilustrirati postupkom za izgradnju kernela. Projekt Linux From Scratch sadrži niz koraka potrebnih za izgradnju distribucije Linuxa od nule. Pojednostavljeni redoslijed sklapanja za LFS Linux distribuciju verzije 6.0 izgleda ovako:

1. Binutils-2.15.94.0.2.2 - Prolaz 1
2. GCC-3.4.3 - prolaz 1
3. Linux-Libc-Headers-2.6.11.2
4. Glibc-2.3.4

87.Util-linux-2.12q
88. Konfiguracija pokretanja
89. Linux-2.6.11.12 - Kernel

Kernel se sastavlja u posljednjem koraku korištenjem binarnih uslužnih programa sastavljenih prije. Važno je uzeti u obzir verzije komponente navedene u svakom elementu popisa. Zamjena jedne verzije komponente drugom nije uvijek trivijalna - sastavljanje sustava može biti nemoguće zbog nedostatka ili promjene bilo koje funkcije ili može biti komplicirano. Sastavljanje mnogih komponenti zahtijeva dodatne korake, na primjer, upute za sastavljanje flexa za ovu distribuciju sadrže napomenu :

Flex sadrži nekoliko poznatih grešaka. To se može popraviti sljedećom zakrpom:
zakrpa -Np1 -i ../flex-2.5.31-debian_fixes-3.patch

Proces sklapanja uključuje sklapanje alata za kompilaciju, koji također prolaze kroz značajne promjene tijekom vremena. Čak su i osnovne komponente Linuxa često zastarjele. Stoga, verzija kompajlera gcc 4.0.0 nije prikladna za izgradnju kernela 2.6.11 (iako su suvremenici) i zahtijeva upotrebu posebne zakrpe za uklanjanje ove nekompatibilnosti.

Zarobljen ovisnostima

Fragmentacija na razini knjižnice veliki je problem moderni svijet Linux. Često izdavanje novih verzija Linux knjižnica obično se smatra dobrom stvari i, doista, to je jedini način da se brzo primijene i testiraju nove ideje i učine dostupnim najnovija dostignuća "inženjerstva": ponekad deseci verzija iste knjižnice su u širokoj upotrebi. Istodobno, integralno razlikovno obilježje razvoja pojedinih komponenti OS-a Linux je njegova decentralizirana priroda. Često su nove verzije različitih komponenti koje su objavljene gotovo istovremeno očito nekompatibilne, što znači da je potpuno nemoguće osigurati adekvatno testiranje različitih kombinacija biblioteka na kompatibilnost i jamčiti stabilan rad sustava za sve moguće kombinacije. Kao rezultat toga, sav teret problema pada na korisnika koji odluči instalirati program ili biblioteku za koju očito nije zajamčeno da će raditi u okruženju koje postoji na njegovom računalu, a ova situacija se događa prilično često.

Kategorija problema povezanih s nekompatibilnošću verzija knjižnica naziva se pakao ovisnosti. en.wikipedia.org/wiki/Dependency_hell). Na koje probleme bi korisnik mogao naići kada instalira novu biblioteku na svoju verziju Linuxa? U tom slučaju aplikacije koje su pokretale prethodnu verziju možda više neće ispravno funkcionirati jer su se te aplikacije mogle oslanjati, eksplicitno ili implicitno, na određene pogreške i nuspojave koje su bile prisutne u starijoj verziji. Sasvim je stvarna i suprotna situacija, kada nova verzija samo sadrži novu grešku. Ali pravi problem nastaje kada sustav mora pokrenuti nekoliko različitih aplikacija koje se značajno oslanjaju na različite verzije iste biblioteke; Može se pokazati da je jednostavno nemoguće da te aplikacije rade zajedno. Ponekad je moguće imati više verzija iste biblioteke na sustavu, a to će biti prilično sigurno rješenje, međutim, to se uopće ne preporučuje u slučaju glibc knjižnice.

Glavni evolucijski put za postizanje kompatibilnosti između različitih distribucija Linuxa je standardizacija. Zreo i potpuno podržan standard smanjit će troškove osiguravanja prenosivosti Linux rješenja, što će doprinijeti rastu broja aplikacija za ovu platformu, a time i popularnosti Linuxa općenito. Danas, Linux Standard Base djeluje kao takav "štedni" standard.

LSB je glavni standard koji definira zahtjeve kompatibilnosti za Linux sustave. Osnovne informacije o ovoj normi već su objavljene, na primjer, u radu, koji je, međutim, pokriven stara verzija standard i uloga sučelja jezgre bila je donekle preuveličana. U stvarnosti, LSB standard ne specificira sučelja kernela, već definira sučelja aplikacija više razine implementirana od strane različitih biblioteka. LSB ne pokušava biti zamjena za postojeće standarde, već se nadovezuje na sve glavne standarde koji su već uspostavljeni u Linuxu. Hvata verzije i podskupove standarda komponenti kako bi se osigurala dosljednost i nadopunjuje opise onih sučelja koja su de facto prisutna u većini distribucija Linuxa, ali nisu uključena ni u jedan postojeći standard. Glavni dio LSB standarda sastoji se od zahtjeva za sistemska sučelja koja moraju podržavati sve distribucije Linuxa (neka vrsta " zajednički nazivnik» svi Linux sustavi). U ovom dijelu LSB se snažno poziva na standard POSIX.

Glavna razlika s LSB-om je u tome što programeri aplikacija mogu ciljati na jednu platformu, recimo LSB 3.1, a to će biti dovoljno za rad na svim LSB 3.1 kompatibilnim distribucijama. Isto vrijedi i za pružatelje distribucije: kada se postigne usklađenost s LSB 3.1, distribucija automatski podržava sve aplikacije kompatibilne s njom. Na primjer, IBM, kao dio inicijative Chiphopper, nudi hardverska rješenja koja pokreću samo LSB-kompatibilne distribucije. Uglavnom zahvaljujući aktivnostima velikih igrača, glavni pružatelji usluga distribucije već su postigli LSB certifikat ili su najavili svoje namjere da postanu certificirani ( www.linux-foundation.org/en/LSB_Distribution_Status).

Trenutno je glavna slabost LSB standarda nedostatak testova. Postoje slučajevi kada sučelje opisano u standardu radi drugačije, a sustav ipak uspješno prolazi certifikaciju. To se objašnjava činjenicom da je test za ovo sučelje jednostavno ne, ili je preslab za potpuno testiranje funkcionalnosti sučelja. Vrlo je prikladno citirati Iana Murdocha, kreatora Debiana i danas direktora tehnologije u Linux Foundationu: “Poznato je da je standard sučelja dobar onoliko koliko je dobar test pokrivenosti koji provjerava usklađenost s tim standardom.”

Open Group je otvorio neke od svojih POSIX testova za uključivanje u paket LSB certifikacijskih testova. LSB set uključuje besplatne testove standardnog GNU C++ Runtime Library Test Suite, a testovi za libgtk i libxml su prilagođeni. Zaklada Linux razmatra otkup kako bi otvorila i uključila razne plaćene pakete testova u LSB.

Na rješavanju ovog problema rade i kod nas. Tako je na temelju Instituta za sistemsko programiranje Ruske akademije znanosti stvoren Centar za verifikaciju OS Linux, gdje se razvija otvoreni testni paket OLVER, koji se planira uključiti u službene LSB testove. Sklopljen je ugovor o suradnji između Centra i Linux Foundationa u okviru kojeg se nastavlja rad na poboljšanju pokrivenosti LSB testom te je u tijeku razvoj nove infrastrukture za razvoj ovog standarda.

Zaključak

Kako bi se spriječila fragmentacija koja se već dogodila s operativnim sustavom Unix, potrebne su mjere za osiguranje kompatibilnosti distribucije - barem unutar nekog podskupa funkcionalnosti. Prenosivost aplikacija unutar ovog podskupa omogućit će objedinjavanje Linuxa kao jedinstvene platforme i značajno smanjenje troškova razvoja i podrške aplikacijama, što bi se trebalo pozitivno odraziti na njihov broj i popularnost Linux rješenja općenito.

Danas je glavna inicijativa za prenosivost otvoreni LSB standard, usvojen od strane vodećih proizvođača distribucija (Red Hat, SuSe, Mandriva) i aplikacija (MySQL, RealPlayer, SAP MaxDB). Iza ovog standarda stoji moćni konzorcij Linux Foundation i njegovi aktivni članovi kao što su IBM, Intel, HP i Oracle, što nam omogućuje da se nadamo njegovom uspješnom razvoju i širokoj implementaciji u stvaran život. Stoga je u obliku LSB standarda postavljen pouzdan temelj za jednu, nefragmentiranu Linux platformu, osiguravajući prenosivost aplikacija temeljenih na oba izvorni kod, i to u binarnom obliku.

Međutim, čak i vrlo dobri standardi ostaju samo dobre želje, sve dok ne postoje prikladni i pouzdani načini provjere usklađenosti s njima. Zato je poboljšanje kvalitete pokrivenosti LSB testom jedan od najvažnijih prioriteta suradnje Centra za verifikaciju Linux OS-a i Linux Foundationa.

  • otkrivanje netočnosti i pogrešaka u tekstu LSB-a i povezanih standarda i izvješćivanje o njima izvornim programerima za promjene u budućim verzijama;
  • razvoj formalnih specifikacija u jeziku SeC (specifikacijsko proširenje jezika C), koje će odražavati zahtjeve standarda LSB Core 3.1 za funkcije 1530 Linux sučelja;
  • razvoj otvorenih testnih paketa za funkcionalno testiranje različitih Linux sustava na usklađenost sa zahtjevima standarda LSB Core 3.1 (provjerava se ponašanje aplikacijskih programskih sučelja Linux sustava).
  • Paket testova temelji se na automatskom generiranju testova iz specifikacija formalnih zahtjeva i odgovarajućih testnih slučajeva korištenjem UniTESK tehnologije.

    Do kraja 2006. godine završena je glavna faza projekta; svi rezultati projekta objavljuju se na stranicama Centra. Sada je projekt u fazi podrške i proširenja raspona ciljanih platformi (kombinacija hardverske arhitekture sa specifičnom distribucijom).

    * Flex sadrži nekoliko poznatih grešaka. Mogu se popraviti sljedećom zakrpom...


    Problemi s kompatibilnošću sustava Linux


    S vremena na vrijeme kupujete novu opremu i, naravno, želite da radi na Linuxu. Nije da besplatna zajednica ne može ili ne želi podržati uređaje - iskustvo pokazuje da može i to čini. Poanta je u pohlepnim i glupim proizvođačima koji ne žele ne samo napisati drivere za svoj hardver, već čak ni otvoriti specifikacije za svoje uređaje. Tipično, ako hardver ne radi na Linuxu, tada taj proizvođač obično uopće nije vrijedan razmatranja.

    Ovaj post govori o Linuxu i instaliranju hardvera u Linux. Instaliranje hardvera na Linux je jednostavno, a ispod su resursi koji će vam pomoći u tome.


    Gdje mogu pronaći informacije o kompatibilnosti uređaja i perifernih uređaja s Linuxom?
    http://linux-wless.passys.nl/ - proširena baza WiFi kartica za Linux.Ovo je najcjelovitiji resurs o podršci za bežične mrežne kartice u Linuxu, možete pogledati prema proizvođaču - i ako je podržano, odmah se daje naziv upravljačkog programa.

    http://www.sane-project.org/sane-mfgs.html - popis skenera u Linuxu koje podržava podsustav SANE.Popis modela skenera koji rade u Linuxu ovisno o proizvođaču. Gradacije kompatibilnosti: puna podrška, djelomična, osnovna, bez podrške. Također pokazuje koja je pozadina potrebna za rad uređaja.

    http://openprinting.org/printer_list.cgi - baza podataka pisača koji rade u Linuxu podržana od strane podsustava za ispis CUPS, koja pruža upravljačke programe za pisače u LinuxuLinux distribucije.Praktično pretraživanje po modelu pisača i proizvođaču. Gradacije kompatibilnosti: radi, gotovo radi, radi u ograničenoj mjeri, balast.

    Baze podataka prema kategoriji uređaja
    http://www.linuxcompatible.org/compatibility.html - baza podataka svih uređaja kompatibilnih s Linuxom, od zvučnih kartica do pisača i skenera. Postoje gradacije kompatibilnosti: radi savršeno, radi većim dijelom, neke funkcije rade, balast. Baza podataka je vrlo opsežna i s vremena na vrijeme je ažuriraju kreatori stranice. U svakom slučaju, prekrasan izvor.

    http://kmuto.jp/debian/hcl/ - baza uređaja koju podržavaju kerneli 2.6.15 i noviji. Jednostavno kopiramo izlaz lspci -n s konzole i dobivamo informacije o podršci hardvera koji se nalazi na matičnoj ploči.

    http://www.linux-laptop.net/ - Najopsežniji izvor o pokretanju Linuxa na prijenosnim računalima. Stranica nudi klasifikaciju prema proizvođaču, nakon čega slijede veze prema modelu na određene stranice korisnika koji govore što su i kako učinili da bi dobili funkcionalnost svojih prijenosnih računala. Većina informacija je na engleskom, ali prisutni su i drugi jezici.

    http://start.at/modem - veliki resurs za podršku takvim neispravnim uređajima kao što su winmodemi. Ispada da također možete izvući nešto iz ovog balasta: dostupan je impresivan popis podržanih uređaja.

    http://www.phoronix.com/lch/ - korisnička baza podržanih uređaja. Počinje se puniti, možete i vi sudjelovati u tome. Postoje RSS izvori i za određenu vrstu hardvera i za sve njih odjednom.

    - Prekrasan izvor o Linux uređajima s poveznicama na HOWTO i "kako postaviti". Na stranici se nalazi klasifikacija prema vrsti uređaja, a zatim poveznice za postavljanje i problemi koji se mogu pojaviti. Tu su i poveznice na opće informacije o ovim uređajima. Vrlo informativno. Postoji feed vijesti za stranicu (nova dokumentacija).

    http://cdb.suse.de/?LANG=en_UK - popis uređaja kompatibilnih sa SuSE Linuxom. Ažurirana baza podataka uređaja kompatibilnih sa SuSe Linuxom. Ovi uređaji u pravilu rade i u drugim distribucijama.

    http://www.linuxtested.com/ - kompatibilnost i rad uređaja u svim distribucijama. Stranica sadrži informacije o testiranju uređaja u sljedećim distribucijama: SuSE, Redhat / Fedora, TurboLinux, Debian, Mandrake.

    http://www.linux.org/hardware/ - hardver koji radi na Linuxu. Popis nije potpun, ali može biti koristan - postoje informacije o egzotičnom hardveru za koji postoji podrška u Linuxu.

    http://www.linux-drivers.org/ - Veze na mnoge resurse o kompatibilnosti s Linuxom. Velik broj poveznica na resurse i hardversku podršku u Linuxu.

    http://hardware4linux.info/ - imenik hardvera kompatibilnog s linuxom, podijeljen u kategorije: “radi odmah iz kutije”, “radi s izmjenama”, “nepoznato”, “djelomično radi” i “ne radi”. Prilično velika i stalno ažurirana baza podataka uređaja.

    http://www.linmodems.org/ - baza podataka o podršci za tako opake uređaje kao što su Win modemi. U njima su sve glavne aktivnosti prebačene na vozača, napisane za već znate koji sustav. Kao rezultat toga, na uređaju gotovo da nema "mozgova", kao što ih nemaju ni proizvođači takvih uređaja. Kroz napore slobodnih programera, mnogi od ovih uređaja mogu se natjerati da rade u Linuxu.

    Linux koristi standardnu ​​shemu particije diska i može dijeliti tvrdi disk s drugim sustavima, uklj. s DOS-om.

    Postoji bootloader koji vam omogućuje selektivno učitavanje potrebnog OS-a s diska.

    Podrška za datotečne sustave drugih operativnih sustava.

    Iz Linuxa možete raditi na uobičajeni način s particijama tvrdog diska i disketama koje sadrže datotečne sustave drugih operativnih sustava, uklj. Datotečni sustavi DOS, Windows 95, Minix, Xenix, Coherent, System V. Datotečni sustavi DoubleSpace, HPFS-2 (OS/2) i Amiga dostupni su u načinu rada samo za čitanje.

    Datotečni sustavi DoubleSpace/Stacked, itd. postati čitljivi i pisati u Linuxu kada radi DOS emulator.

    Sustav datoteka Linux OS podržava sve standardne CD ROM formate.

    Linux može biti i klijent i poslužitelj za NFS mrežni sustav datoteka. Linux podržava NCP i SMB protokole i može služiti kao datotečni poslužitelj ili pristupiti NetWare i Windows za radne grupe, Windows NT datotečnim poslužiteljima.

    Instaliranje Linuxa na DOS particiju.

    Linux podržava datotečni sustav UMSDOS, što omogućuje instalaciju Linuxa izravno u DOS datotečni sustav bez preuređivanja particija tvrdog diska.

    Mini-Linux distribucijski komplet s 4 diskete izgrađen je na temelju UMSDOS-a, koji je instaliran u DOS datotečni sustav.

    Rad s disketama u DOS formatu.

    Iz Linuxa možete čitati i pisati DOS diskete. To se radi i konvencionalnim Linux alatima (tada se disketa montira kao dio datotečnog sustava) i posebnim naredbama za servisiranje DOS disketa. Diskete su također dostupne u DOS emulatoru.

    Izvođenje DOS aplikacijskih programa.

    Linux pokreće dosemu, DOS emulator. Ovaj vam program omogućuje pokretanje DOS sustava na Linuxu, koji normalno pokreće DOS aplikacijske programe. Možete pokretati mnoge DOS programe, ali ne sve. Na primjer, DOS emulator vam omogućuje rad

    • baze podataka:
      • Konzultant +,
      • Puls cijena
      • Veletrgovci u Rusiji,
      • i tako dalje.;
    • programski sustavi računovodstveni poslovi.

    DOS aplikacije koje rade na Linuxu mogu koristiti ili DOS particijski datotečni sustav ili datotečni sustav Linux sustav, uklj. NFS mrežni datotečni sustav.

    DOS aplikacija radi paralelno s drugim procesima. Možete pokrenuti više DOS aplikacija u isto vrijeme.

    Rad s MS Windows aplikacijama.

    Sustav WINE je u razvoju, koji omogućuje pokretanje MS Windows aplikacijskih programa na X Windowsima. U ovom slučaju, MS Windows se ne koristi i njegova prisutnost nije potrebna. Trenutno vam WINE omogućuje pokretanje ograničenog broja MS Windows aplikacija. Popularni programi kao što su Word, PageMaker, CorelDraw još ne rade sa sustavom WINE. Projekt WINE je u aktivnom razvoju, a ove i druge aplikacije uskoro će biti dostupne za korištenje na X Windowsima.

    DOS emulator može pokretati MS Windows 3.0 u stvarnom načinu rada i srodne aplikacije. MS Windows 3.1 i Windows for Workgroups pokreću se na emulatoru verzije 0.63, iako bi za ove svrhe dosemu za sada trebalo smatrati alfa verzijom. DOS emulator se brzo razvija.

    Willows Software, Inc. razvio komercijalni sustav TWIN XPDK. Ovaj sustav sadrži komponentu koja je funkcionalno slična WINE-u, koja pokreće aplikacije na X Windowsima Microsoft Office Aplikacije, Word, Excel i Project. Općenito, TWIN XPDK je skup alata za MS programere Windows aplikacije(uključujući za Win95), što razvojnom programeru omogućuje jednostavan prijenos aplikacija između brojnih platformi, uključujući Unix, OS/2, Mac.

    Caldera, Inc. , čiji su početni kapital bila ulaganja Noorda Family Trust, Inc. (Ray Noorda je bivši CEO Novell-a), prodaje Caldera Network Desktop sustav temeljen na Linuxu. Caldera je kupila licencu od SunSoft, Inc. za Wabi, komercijalni sustav koji je funkcionalno sličan besplatnom sustavu WINE. Po cijeni od 200 dolara ili manje, Wabi će biti dostupan kao dio CD-a Caldera Solutions.

    Izvođenje programa iz različitih verzija Unixa.

    Korištenjem iBCS2 emulatora, Linux sustav vam omogućuje pokretanje programa za preuzimanje sa SCO Unix, Xenix V/386, SVR3 generic, Wyse V/386, SVR4 (Unixware, USL, Dell), BSD/OS, FreeBSD sustava. Na primjer, SCO Unix aplikacije kao što su CorelDraw, WordPerfect, Oracle rade na Linuxu.

    Programi iz Linuxa lako se prenose u Linux (i obrnuto) na izvornoj razini. Unix sustavi System V i BSD.

    Linux podržava standarde otvorenog sustava, uklj. POSIX. Svjetski lider u standardizaciji informacijske tehnologije i nositelj robne marke UNIX, X/Open, dodijelio je OS Linux certifikat standarda POSIX.1 FIPS151-2. To znači službeno priznanje činjenice da se gotovo sve Unix aplikacije mogu lako prenijeti na Linux. Certifikacija u vezi s POSIX.2, POSIX.4 i POSIX.7 je na pomolu. Lasermoon, koji proizvodi distribuciju Linux-FT, ima X/Open članstvo.