PC Press
O nama
O nama
Pretplata
O nama
Postanite saradnik PC-ja
Kontakt sa redakcijom
PC Press
Novi broj
Novi broj   
Pretrazivanje
Arhiva
Arhiva   
PC Online
PC Plus   
Specijalna izdanja
Softver Softver
PC #122 : Maj 2006 Knjiga 50 godina racunarstva u Srbiji

 Naslovna  Sadržaj 
Novica Milić  

Od Yahoo-a do tostera

Nedavna pojava nove verzije 6 operativnog sistema FreeBSD vratila je ovog ozbiljnog Unix igrača na scenu kojom dominira Linux, podsetivši nas istovremeno na čitavu BSD porodicu.

"Demon" kao zaštitni lik sistema

Najpre o tosteru. Dugo se smatralo da pojedini operativni sistemi mogu da rade na svemu, osim na tosteru. To je demantovano pre nekoliko meseci kad je na jednoj Linux izložbi u San Francisku prikazan toster - onaj pravi, sa dva proreza za kriške hleba - koji je pokretao NetBSD. Dobro, za tu je priliku tosteru dodata kartica sa starom matičnom pločom (procesor i kontroler), imao je mali LCD ekran sa četiri reda za tekst, USB tastaturu, Ethernet i serijski port. Šta je radio toster? Pa, pržio kriške hleba, kao i svaki drugi toster, samo što je sve to moglo da se kontroliše sa tastature i preko ekrana. Prikaz ovog "probijanja tehnološke granice", kako je događaj nazvan, može se u detaljima pratiti i na sajtu www.embeddedarm.com/news/netbsd_toaster.htm .

Ali ako ste pomislili da je caka samo u tosteru, on je - gledano iz ugla onih koji su "probijali tehnološku granicu" - manje bitan. Važnije je bilo da je sve to pokazano na izložbi posvećenoj Linux-u. Naime, BSD - NetBDS, OpenBSD i FreeBSD su njegove najpoznatije varijante - nije Linux. BSD je Unix, i mada ovaj Unix može da pokreće mnoge (iako ne sve) programe pisane za Linux u tzv. režimu kompatibilnosti binarnih datoteka (compatibility binaries), on je operativni sistem rađen za sebe i odvojeno od Linux-a. Štaviše, zaljubljenici u ovaj sistem se prema Linux-u odnose otprilike onako kako se Linuksovci odnose prema korisnicima Microsoft Windows-a: gledaju ih s visine. Dabome, i tu postoji sajt koji svedoči o stalnim i vatrenim raspravama na temu BSD vs. Linux (www.linuxgangster.org ), pri čemu sajt čak odobrava i podstiče ovakve svađe, a kao poslednji argument u korist BSD-a navodi se da ima Linuksovaca koji su "promenili veru" i prešli na neki BSD, ali ne i obratno. Taj argument nije, naravno, baš proverljiv u praksi, a nije ni naročito važan. Stvar sa BSD-jem stoji sasvim drukčije.

Priroda sistema

BSD "demoni" obaraju Linux-ovog pingvina: omiljen tapet zakletih pristalica
(kliknite za veću sliku)

Šta je BSD, ili tačnije - pošto i tu ima razlika u njegovim varijantama, pa stoga i privrženika različitih orijentacija - šta bi bio FreeBSD, možda najpoznatija među ovim distribucijama? I u čemu je tu razlika u odnosu na Linux? BSD je skraćenica za Berkeley Software Distribution, a nastao je na bazi starog AT&T Unix-a. Kad je na Berkliju AT&T hteo da zaštiti svoj sistem, akademski programeri su počeli da čiste izvorni kod od onoga što je pripadalo ovoj kompaniji i tako razvili vlastiti Unix. Spor sa kompanijom je, davne 1992/93. godine, trajao dovoljno da parališe razvoj novonastalog operativnog sistema, a nekoliko meseci pravne zbrke bilo je dovoljno da Linus Torvalds izbaci svoj kernel, da se "slobodni programeri" oslone na taj kernel i da Linux preuzme vođstvo u prvim danima trke za besplatni Unix. Ljubitelji BSD-ja rado ističu da je "malo falilo" pa da danas umesto o Linux-u svi govore o BSD-ju. Iako su to slični sistemi, razlike postoje u nekoliko tačaka, a najlakše je prikazati FreeBSD i njegove rođake upravo poređenjem s Linux-om.

Dok Linux podleže licenci koja štiti intelektualna prava autora programa, tako da se njegovo delo, iako u načelu i uglavnom besplatno za korišćenje, ne može menjati bez njegove dozvole, a najmanje se sme menjati i potom koristiti u komercijalne svrhe, kod BSD licence je sloboda skoro potpuna: možete sa BSD programima - a oni su uvek otvorenog, svima dostupnog koda - raditi šta hoćete; autoru ne dugujete ništa, a ako ste doradili ili značajnije preradili kod, možete tako nastalu tvorevinu i komercijalno koristiti. To je šira upotreba od one na Linux-u, pa se zato BSD mogao koristiti kao besplatna osnova na kojoj se grade specifične upotrebe, i za sistem na kojem se, već toliko godina, vrte Yahoo serveri, ali i kao osnova na kojoj je Apple počeo da gradi operativni sistem za Macintosh; u današnjem "Tigru" je srce sistema poreklom iz BSD tehnologije. Pošto ste BSD mogli menjati shodno potrebi, on je mnogo korišćen za Internet servere - BSD pristalice čak barataju podatkom da se oko 2 miliona servera na Mreži vrti na njihovom sistemu.

Pouzdanost pre svega

"Đavolica" u akciji: stabilni FreeBSD 4.4
(kliknite za veću sliku)

Činjenica da je u pitanju široko otvoren i svima dostupan sistem ne bi bila dovoljan razlog za njegovu ovako široku upotrebu. BSD, u svoje tri glavne varijante - FreeBSD (aktuelna verzija je 6.0 beta), NetBSD (verzija 3.0) i OpenBSD (verzija 3.8) - pre svega važi za jedan od najstrože pisanih operativnih sistema, izuzetno koherentnog i harmonizovanog koda, u kome je stabilnost na prvom mestu. Jedan server koji je pokrenut nekim od ovih BSD-ja - najverovatnije NetBSD varijantom, jer je ona tu najprimerenija - može više godina da radi bez resetovanja ili ponovnog pokretanja sistema, što je dokaz izvanredne sistemske čvrstine.

Tri glavne varijante (od ostalih valja pomenuti FreeSBIE, koji je Live BSD, onaj koji se pokreće samo sa CD-a, bez potrebe da se instalira, kao i MiniBSD na manje od 16 MB, PicoBSDD za flopije te PenBSD za USB memorijske nosače) razlikuju se ne samo po naglašavanju pojedinih potreba ili pristupu licenci - NetBSD je orijentisan na mreže, OpenBSD je spartanski jak i stabilan, pa se specijalizovao za kriptografske operacije na različitim nivoima - već se razlika tiče i načina održavanja i razvoja. BSD pišu uži i ponešto zatvoreni krugovi programera (takva saradnja i omogućuje visok stepen programerske saradnje i koherencije koda), ali svaka zatvorenost ove vrste ima cenu. U jednom času je "frakcija" koja radi FreeBSD - recimo da je on više orijentisan na desktop upotrebe, mada može biti i serverski sistem - poželela da izađe iz konzervativne zatvorenosti, koja je opšta odlika ovog sistema, i pokuša da se uključi u popularnije struje koje nose Linux. To je bio brzoplet potez, pa je verziju 5 FreeBSD-ja pratio glas da je manje stabilna; nije bilo baš tako, ali je glasina bila dovoljna da se publika vrati na verziju 4. Ekipa ključnih programera je shvatila poruku i posle nekog vremena je izbačena tekuća verzija FreeBSD 6.0.

FreeBSD - a to još više važi za njegovu sabraću - nije baš lako postaviti. Početna instalacija je, doduše, jednostavna - dovoljno je da znate osnovne parametre svog hardvera, pre svega onog koji se tiče memorije i grafikčke kartice. Ali, da bi FreeBSD zablistao u punom sjaju, ima puno postinstalacijskog posla. Običaj je da se na BSD instalira prvo sam sistem i ono što je njemu potrebno, kako bi se proverilo da li su svi hardverski resursi mašine vidljivi i dostupni. Tek tada se polako dodaju programski paketi i dopunske aplikacije. Na početku vas čeka samo konzola; za postavljanje i doterivanje grafičkog desktop-a potreban je dodatan trud. Nijedan BSD, pa ni FreeBSD koji je namenjen "široj" publici, ne krije da je reč o sistemu koji pre svega treba da obavlja krupne mrežne ili serverske poslove, tj. gde grafički interfejs nije najvažnija stavka - sam sistem je, po polaznoj pretpostavci, već u rukama profesionalca.

Kućna alatka ili...

Široka lepeza instalacionih osnova
(kliknite za veću sliku)

Ko hoće da uloži trud i volju, može od FreeBSD-ja napraviti šta god želi. Kao i kod Linux-a, mogu se postaviti neki od velikih desktop menadžera (npr. KDE ili Gnome) pa, uz binarnu kompatibilnost koju BSD poseduje kako bi sebi obezbedio širu programsku bazu, dodati najrazličitije Linux aplikacije, poput Firefox-a ili multimedijalnog Xine-a. Po gruboj (i jedinoj mogućoj) proceni, oko 90% Linux programa bez problema radi i na FreeBSD-ju. I sistem i aplikacije mogu se instalirati na razne načine, sa CD-a ili DVD-a, preko Interneta ili lokalne mreže, sa drugog hard diska ili sa particija koje same mogu biti sa drugačijim fajl sistemima. Računa se da ima blizu 8000 aplikacija koje su već prekompajlirane za BSD, što nije malo za ovakav, ipak samosvojan operativni sistem.

FreeBSD je hardverski veoma prilagodljiv. Ne samo da može da se postavi na različite procesorske arhitekture (uz x86 porodicu tu su još DEC Alpha, UltraSPARC itd.), već se može - autori čak to i preporučuju - instalirati na starijem hardveru, kako bi se neka "drevna" 486-ica serverski (ili na drugi način) iskoristila. Pošto BSD filozofija ne juri da dostigne najnoviji hardver, već na prvom mestu vodi računa o stabilnosti rada mašine, BSD porodica nije za radoznalce ili za početnike - ona je za veće poslove ili, preciznije, za upotrebe koje se nazivaju "kritičnim", kada ima stvarnog razloga da se, usled specifičnosti zadatka, dopiše ili doradi kod, a da to nikome ne ugrožava autorska ili patentna prava (kod nas se ova poslednja izjednačavaju sa tzv. intelektualnim pravima, a to su ipak različite stvari). Sumnjam da ćete posegnuti za FreeBSD-jem "tek tako", jer postavljanje takvog sistema "na noge" podrazumeva dobro poznavanje njegovih principa.

Za BSD sistem bi se moglo reći (pre nego za Linux) da je očuvao prvobitnu zamisao Unix-a: sistem za istraživače koji su, u hodu, spremni da napišu desetinu ili stotinu redova koda kako bi obavili neki posao za koji im postojeća programska baza nije bila dovoljna. Ljubitelji BSD-ja su među poslednjim "čistim" juniksovcima na svetu, pa je njihovo čedo otuda stvar same profesije, jedno od najbolje napravljenih, razvijenih i sačuvanih. Čist kod, strogost u njegovom planiranju i pisanju, planiranje na duge staze, potpuna usklađenost svih ključnih elemenata, visok profesionalizam, konzervativan pristup sigurnosti i stabilnosti i, ne zaboravimo, jedna od najbolje sačinjenih dokumentacija za čitav sistem - to su osnove na kojima je BSD izgradio reputaciju stabilnosti i upotrebljivosti. Može se, naravno, na njemu peći i hleb, ali to je samo reklamni trik. Svaki BSD je za one najozbiljnije.