7,091 pregleda

Kako je nastao Linux

19

Povijest UNIX-a

Ken_Thompson_Dennis_RitchieOperacijski sustav UNIX razvila su dvojica znanstvenika, Thompson i Ritchie, u firmi Bell Laboratories. Izvori UNIX-a potječu od Thompsonovih eksperimenata sa sustavom datoteka na računalu PDP_7, 1969. godine. Prvi radni sustav izgrađen je 1971. godine za računalo PDP_11/20. Ranije UNIX-ove inačice napisane su u asemblerskom jeziku, a 1973. godine je cijeli UNIX nanovo napisan u jeziku C. Ta je UNIX-ova inačica veća za oko 1/3 od inačice napisane u asemblerskom jeziku, ali je neusporedivo razumljivija i lakša za prepravljanje i za instalaciju na različitim računalima.

Do 1974. godine bilo je u upotrebi oko 150 instalacija UNIX-a. Te godine je instaliran UNIX na 16-bitovnom miniračunalu PDP_11/70 sa 768Kx8 memorijskih lokacija. UNIX-ova je jezgra zauzimala 90Kx8 memorijskih lokacija (pola kôd, pola podaci). Kao masovna memorija korišteni su diskovi kapaciteta 2×200 Mb. Od tada se UNIX sustavi naglo šire.

Na početku 1980. godine bilo je oko 2000 instalacija širom svijeta na različitim računalima, uglavnom PDP_11 i VAX_11/780 da bi u sredini 80-ih godina ta brojka iznosila stotine tisuća UNIX korisnika na širokom spektru računala od 16-bitovnih mikroračunala do superračunala. Postoji oko 70-ak proizvodnih linija UNIX-a i više od stotinu kompanija koje razvijaju različite aplikacije za UNIX. Važna je i činjenica da se UNIX koristi na više od 1500 sveučilišta širom svijeta.

Sredinom 90-ih godina UNIX i dalje ne posustaje. Naprotiv, broj instalacija u svijetu broji na milijune komada i milijarde dolara. U kombinaciji s mrežnim sučeljem TCP/IP, grafičkim sučeljem X Window System te velikom količinom aplikacijskih programa od kojih su mnogi javno dostupni (besplatni), UNIX postaje sinonim za operacijski sustav za koji vrijede svojstva kao što su prenosivost (eng. portability), prilagodljivost (eng. scalability) i suradnja (eng. interoperability).

Prenosivost znači mogućnost instalacije na različite sklopovske platforme (npr. Intel 80X86, Motorola 680X0, SUN Sparc, Digital ALPHA, IBM PowerPC itd.), prilagodljivost npr. znači za korisnika mogućnost rada na malom kućnom računalu skromnijih svojstava navečer te nastavak na snažnoj konfiguraciji sljedećeg dana na poslu. Suradnja je danas ključna za razmjenu informacija među računalima i ljudima. UNIX zajedno s okruženjem X Window Systema te TCP/IP skupom mrežnih servisa omogućuje suradnju s drugim UNIX-ovim i ne UNIX-ovim operacijskim sustavima koji također podržavaju ista grafička i mrežna sučelja. Nakon 6/77 razvoj UNIX-a se dijeli na tri različita pravca. jedan pravac je daljnji razvoj i usavršavanje u “vlastitoj kući” (AT&T Bell Laboratories). Rezultat tih napora je UNIX System V kao norma. Osnovna ljuska u tom sustavu je “Bourne Shell” ili “sh”.

Drugi pravac je razvoj UNIX-a na “University of California at Berkeley (UCB)“. Grupa na UCB je nastavila s razvojem UNIX-a na računalima VAX_11/780 dodavši programsku podršku za virtualnu memoriju. Ta UNIX-ova inačica poznata je kao 3BSD (eng. Berkeley Software Distribution). Sljedeće inačice (V4.0 – 1980, V4.1 – 1981 i V4.2 – 1983) donijele su brojna poboljšanja i modifikacije kao što je kontrola procesa u “prvom planu” (eng. foreground) i u “pozadini” (eng. background), automatsko “podizanje” sustava nakon prekida rada, zaslonski editor (vi) i vrlo prijaznu ljusku za posredovanje između korisnika i sustava poznatiju kao “BSD shell”, “C shell” ili “csh”. Inačica V4.2. je poznatija kao UNIX 4.2BSD.

Treći pravac je razvoj i prilagodba UNIX-a za različita računala. U toj grupi vlada prilično šarenilo jer se ideje i svojstva UNIX-a pokušavaju nakalemiti (prvenstveno zbog komercijalnih razloga) na računala koja nemaju svu potrebnu sklopovsku opremu. Jedne UNIX-ove inačice iz ove grupe su podskup funkcija i svojstava koje ima originalni UNIX (npr. TNIX), a druge oponašaju osnovne UNIX-ove ideje kao što je to hijerarhijska organizacija datoteka i dr. (npr. CROMIX).

U zadnje se vrijeme među proizvođačima računalne opreme pojavila težnja za normiranjem UNIX-a. Cilj je da korisnik, bez obzira na kojem računalu radio, osjeća da radi u jednakom UNIX-ovu okruženju. Također , javljaju se različite interesne grupe korisnika među kojima su najpoznatije IEEE P1003/usr/group (u SAD i Velikoj Britaniji) te X/open, Ansi, C standard, EurOpen, HrOpen (u Hrvatskoj) i dr. koje nastoje zaštititi interese korisnika.

Mjesta za Stallmana

Činjenica je, što Stallman kaže i sam, da je slobodni softver (v. BSD) postajao i prije prvih dana informatike. Ipak, u vremenu kada se većina UNIX-a pretvarala u vlasnički softver (prijelaz sa 70-ih na 80-te), Stallman je čvrsto odlučio suprotstaviti se tom trendu i dati poticaj slobodnom kôdu, ne samo kao programer, nego i pravno, filozofski te medijski. Svoju programersku karijeru Stallman je počeo radom u Laboratoriju za umjetnu inteligenciju MIT-a tijekom studija na Harvardu. Na MIT-u je u to vrijeme postojala hakerska zajednica u kojoj se programski kod slobodno dijelio (MIT licenca), a koja se počela raspadati u trenutku kada su tvrtke prestale objavljivati izvorni kôd svojih programa.

Niz incidenata koji su rezultirali iz te činjenice, doveo je Stallmana do uvjerenja da korisnik mora imati slobodu mijenjanja izvornog kôda programa koje koristi. Objavom projekta GNU (rekurzivni akronim: GNU’s Not Unix – GNU nije Unix), započeo je rad na slobodnom UNIXoidnom operativnom sustavu, a pridružili su mu se mnogi programeri.

richard_stallman

Godine 1983. otišao je iz MIT-a kako bi utemeljio Zakladu za slobodni softver (Free Software Foundation, FSF). U sklopu iste se danas bavi aktivizmom, a najutjecajniji je promotor slobodnog softvera te ostalih sloboda korisnika. Njegova golema energija vođena vjerom u to što radi pokrenula je mnoge programere i omogućila širenje slobodnog softvera.

Kroz 6 godina Stallman i suradnici napisali su na stotine programa koji su inače dio jednog tipičnog Unixu sličnog operacijskog sustava. Programi proizišli iz tog projekta obično se nazivaju GNU-paketi ili GNU-programi. GNU se konstantno razvija. Službena jezgra sustava (eng. kernel), GNU Hurd, nije dovršena.

Kako GNU sustav do danas nema vlastitu upotrebljivu jezgru, zbog čega se koristi u sprezi s Linuxom, a u novije vrijeme i s drugim jezgrama. Stallman i Zaklada za slobodan softver ne priznaju naziv Linux kao ime cijelog operacijskog sustava, te inzistiraju na nazivu GNU/Linux (ili GNU+Linux) jer smatraju da se tako daje potrebno priznanje GNU projektu. Većina poklonika otvorenog koda se ovome protivi smatrajući da takvo nazivlje ne samo da je nepraktično, nego i zakida ostale važne projekte poput X servera.

Stallman također smatra prikraćivanje korisničkih sloboda neetičnim i zbog toga odbija koristiti bilo kakav vlasnički softver čak i ako on nema upotrebljivu alternativu (izradu alternativnih programa GNU projekt stavlja na listu prioriteta). Zbog svojih strogih stavova Stallman danas gubi podršku među mnogim korisnicima Linuxa, koji ga doživljavaju kao povijesno bitnu, ali zastarjelu figuru slobodnog softvera. Ovom trendu vjerojatno pridonosi i sve veća popularnosti Linuxa među bivšim ili trenutnim korisnicima neslobodnih operacijskih sustava koji prioritet pridodaju funkcionalnosti nad korisničkim slobodama, a i sve veći odmak od ideala pokreta slobodnog softvera u stavu vođa pokreta otvorenog koda, od kojih je najistaknutiji Linus Torvalds.

A onda dolazi Linus

linustorvaldsNeovisno o ovom revolucionarnom GNU projektu, finski znanstvenik Linus Benedict Torvalds pokrenuo je još jedan. Kao studentu, MS DOS mu nije imao veću uporabu osim da odigra Prince of Persia jer je kao primaran operacijski sustav koristio Minix, low-cost Unixiodan sustav na kojemu radi licence nije mogao mijenjati izvorni kôd ili njegove dijelove prilagoditi svojim potrebama. Sukladno situaciji, Linus je napravio isto što bi napravio i svaki normalan student geek, odlučio je napraviti vlastiti operacijski sustav za svoje potrebe. Započeo je s pisanjem terminal emulatora kojeg je koristio za spajanje na veće UNIX sisteme na svome fakultetu. Kroz akademsku godinu terminal je napredovao te uskoro Linus više nije imao terminal emulator već kernel, punokrvni UNIXoidni sustav u vlastitim rukama. Prvu verziju je 1991. godine pustio na internet uz poznatu izjavu:

“Pozdrav svim korisnicima minixa. Radim na (besplatnom) operacijskom sustavu (samo hobi, neće biti nešto veliko i profesionalno kao gnu) za 386(486) AT klonove. Sustav se od  travnja polako krčka i polako ulazi u završnu fazu.  Volio bih vaše mišljenje o tome što volite/ne volite u minixu, budući da mu je moj OS donekle sličan (isti fizički raspored datoteka (zbog praktičnosti) između ostalog) Trenutno sam prenio bash(1.08) i gcc (1,40) i izgleda da stvari rade.To znači da ću kroz nekoliko mjeseci uspjeti dobiti nešto iskoristivo i volio bih znati što bi ljudi najviše htjeli. Svi prijedlozi su dobrodošli, ali ne mogu obećati da ću ih i uključiti. :-)  Da, na njemu nema minix koda i koristi višenitni datotečni sustav. NIJE portabilan (koristi 386 prebacivač zadataka) i vjerojatno nikada neće podržavati ništa osim AT hard diskova, budući da imam samo takav :-(.“

U ranim danima Linux je služio kao eksperimentalni sustav koji su koristili studenti, hakeri, programeri i općenito ljudi jako orijentirani na rad s računalima. Nije bilo šire komercijalne upotrebe. To se promijenilo s nastankom Apache Web Servera, koji je zajedno s linuxom pružio pouzdano i besplatno rješenje za pogonjenje velikog broja web stranica. Tako je Linux u par godina istisnuo mnoge druge sustave slične Unixu te u velikoj mjeri i Windows NT sa serverskog tržišta

Brzinsko premotavanje prema naprijed

Danas je Linux punokrvan sustav koji podržava Alpha, ARM, Sparc, x86, X86_64, PPC i ostale arhitekture te dominira na tržištu servera, superračunala i embed uređaja. Linux pogoni uređaje veličine ručnog sata i ogromne data centre. Današnji komercijalan interes za Linux je poprilično jak. Kompanije poput Novella ili pak divovi poput IBM-a pokazuju popriličan interes za Linux te doprinose njegovom razvoju. Pojavljuje se sve više tvrtki koje nude svoja rješenja za mobilne uređaje, potrošačku elektroniku, desktop računala i servere bazirane na Linuxu ili pak samu korisničku podršku za Linux sustave. Linux je Unixoidan sustav, od Unixa posuđuje mnoge ideje i implementira Unix-API, no nije direktan potomak iz njegova izvorna koda kao BSD.

Jedno od najzanimljivijih svojstava Linuxa je što nije komercijalan produkt već je kolaborativan projekt razvijan preko Interneta. Iako Linus ostaje autor Linuxa i održavatelj kernela, razvoj se održava preko manje grupe developera širom svijeta. Svatko može pridonositi razvoju Linuxa jer Linux je slobodan i otvorena kôda. Točnije Linux je objavljen pod GPL V2 licencom.

novell_suse11_desktop

Osnova sustava baziranog na Linuxu je kernel, GCC (GNU C Compiler), C library, toolchain I shell. Današnje moderne distribucije nude i X Window System uključujući i punokrvne desktop managere kao KDE ili pak GNOME uz mnoštvo GNU aplikacija te je korisnicima dostupno na tisuće, što slobodnih što komercijalnih, aplikacija za naknadnu instalaciju.

Linux različitim ljudima predstavlja različite stvari. Nekima posao i novac, nekima pak sustav za geekove a nekima pak predstavlja ljubav.

Autor: Velimir B.

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)
Kako je nastao Linux, 5.0 out of 5 based on 2 ratings

Povezani članci:

Dokumentarac i video vodi...
SOK organizira Malu školu...
Prelazak na GNU/Linux i n...
Code for Croatia
Pozivamo vas da ove nedje...

19 Responses

  1. Početnik sam u Linuxu i ovo mi je super sjelo. Lijepo je to sve napisano i puno informacija.

  2. Shicy kaže:

    Kristijane, na portalu i našem wikiju postoji more izvanrednih članaka, pa ih pročitaj lijepo, i hrabro zakorači u Linux svijet.
    U početku će ti biti teško, nećeš shvaćati neke pojmove ili se nećeš moći priviknuti na novi način funkcioniranja…ali to su sve oni prvi problemi i konfuzije koje smo svi imali ;)
    Ovakvim vrhunskim člancima će sve sjest na svoje mjesto.

  3. Cooleech kaže:

    Luth, svaka čast! Članak je fantastičan i vrlo informativan!

  4. max360se kaže:

    Odlican clanak!

  5. lutherus kaže:

    Nakon još 3 do 4 članka koji su malo dublji idemo na kernel hacking.

  6. MirzaD kaže:

    Pratim ovaj protal vec 4 godine, i prije redizajna bio je pravo opao, clancu su bili uglavnom skracene prevedene novosti sa linkovima na punu stvar.

    Zadnjih nekoliko clanaka je super, velki napredak, svaka cast :D

  7. Stefan kaže:

    Vrlo dobro!

  8. tommy5 kaže:

    Svaka čast :)

  9. 4ndY kaže:

    Jako dobro napisano iako se već preklapamo s istom tematikom:

    http://wiki.open.hr/wiki/Uvod_u_Linux

    • lutherus kaže:

      Hvala. Znam, prvotna namjera je bila ljude uopće upoznati sa povijesnim razvojem i objasniti da zapravo nisu linuksi već da je Linux i on je samo jedan.

  10. hrc kaže:

    sve super, samo što kompanije poput ‘novell’ više nema.

  11. b4sh kaže:

    Clanak je prva liga! Svaka cast :)

    Pozdrav

    • lutherus kaže:

      Hvala. Nadam se da ćeš nastaviti pratiti. Dalje idemo sve dublje u Linux. Od osnova funkcioniranja, kernel hackinga, shell skriptinga, security hacks,….

  12. xylik kaže:

    Odličan članak, jedva čekam nastavak.

  13. Mirza kaže:

    Odlican clanak, lijepo se podsjetiti kako je sve pocelo :)

Ostavi komentar

© 2014 Linux Za Sve. | Impressum | Sadržaj je licenciran pod CC-SA-3.0 ako nije drugačije naznačeno.
Proudly designed by Theme Junkie.