Autor Tema: Nastanak Linuxa (Obavezno procitati)  (Pročitano 2711 puta)

0 Članovi i 1 gost pregledaju ovu temu.

Van mreže Infernal

  • Predškolac
  • *
  • Poruke: 3
  • Pol: Muškarac
    • Pogledaj profil
    • Hack the planet
Nastanak Linuxa (Obavezno procitati)
« poslato: Avgust 15, 2011, 04:52:29 posle podne »


Ovaj thread je obavezno procitati, obavezno za pocetnike, koji ne znaju nista o Linuxu i njegovom nacinu rada....
Veliki deo TUta ja sam pisao, a jedan deo sam nasao na netu....TUt sam napisao na osnvu filma REVOLUTION OS !
Zato bi' svako preporucio da odgleda ovaj doc Film...

###################################################################################################

Nastanak

Za godinu nastanka operativnog sistema Linux uzima se 1991. godina. Do tada, na tržištu operativnih sistema suvereno su vladali UNIX i MSDOS (nastao na CP/M okruženju), i Windows, koji je tek nastupao sa svojim konceptom GUI-ja. UNIX, multiuser, multitasking operativni sistem, namenjen radu na, takozvanim, main frame platformama (main frame označava računare visokih performansi, cene, pa i gabarita). UNIX zahteva profesionalno (ekspertsko) znanje, visoko poznavanje programiranja, te bi se teško mogao svrstati u kategoriju userfriendly operativnih sistema. S druge strane, postojao je, zastupljen na PC platformama, operativni sistem MSDOS (nastao na osnovama CP/M operativnog sistema). MSDOS je bio singleuser, singletask operativni sistem, namenjen pojedinačnim korisnicima i usko vezan za PC hardversku arhitekturu. Uglavnom je pisan, pa prema tome i primenjivan, za 8-bitne i 16-bitne računarske platforme. Dodatkom GUI-ja, nastao je poznati operativni sistem Windows. Glavna osobina DOS-a i Windows-a je bila ta što su se lako učili i prihvatali, nisu zahtevali ekspertsko poznavanje računarske arhitekture, ni programiranja. Zato su od početka široko prihvaćeni. Dakle, možemo konstatovati da je u tom periodu postojao velik jaz između micro i mini računarskih platformi i njima pripadajućih operativnih sistema. I baš tada se pojavljuje operativni sistem Linux, nastao kao diplomski rad finskog studenta Linusa Torvaldsa.



Linus Torvalds

Linux je nasledio jezgro (kernel) od UNIX-a, čime je nasledio i stabilnost u radu. No, Linux nije ciljao na mainframe hardverske platforme, već je nastojao da iskoristi i prednosti GUI i userfriendly koncepta, i da premosti navedeni jaz između mainframe i desktop platformi. Linux je ovako i dobio ime, na osnovu imena Linus i UNIXA... LINUX ...sad koliko ste me razumeli nije bas ni vazno..:D

Otvoreni kod (OPEN SOURCE)

Linux je, dakle, nastao na osnovama diplomskog rada jednog studenta. Ono što je bilo revolucionarno novo je to da je autor objavio celokupni kod za Linux na Internetu (dakle, kod je postao javan). Postavio je na jednoj adresi sve rezultate svog rada, sa porukom da ko god hoće može da unapređuje ono što je on uradio. Na taj način je omogućeno pridruživanje velikog broja programera iz celog sveta ovom projektu. Dakle, ko god je imao pristup Internetu mogao je da, po svom nahođenju, dodaje, testira i implementira module u taj softver. To je zaista bilo nešto revucionalno, novo. Linux je sasvim drugačije nastajao u odnosu na, recimo, Windows operativni sistem. Iza Windowsa stoji kompanija Microsoft sa vlasnikom Bill-om Gates-om, a iz Linux-a ne stoji niko, u smislu vlasništva. Ne postoji niko ko je vlasnik Linux-a. Linus Torvalds ima neka ekskluzivna prava na menjanje samog kernela (kernel je jezgro operativnog sistema).

Linux je, u suštini, besplatan. Pojedini autori smatraju da se Linux osim sa tehničkog i marketinškog aspekta, može tretirati i kao sociološki fenomen. Teško da postoji sličan primer nekog proizvoda, koji je za relativno kratko vreme prevalio put od jednog studentskog projekta do praktično operativnog sistema broj dva u svetu. Stabilnost u radu (koja je nasleđena od UNIX kernela), koncept otvorenog koda, brzina menjanja koda i ispravljanja grešaka, činjenica da hakeri širom sveta još nisu odredili Linux kao cilj svojih napada, mali broj do sada registrovanih virusa za Linux i popularnost Linuxa sa aspekta primene na serverskim platformama, samo su deo razloga kojima Linux duguje svoju popularnost. Zadnjih godina uložen je (i ulaže se) veliki napor u smislu da je Linux postao pristupačan svim profilima korisnika od kućnih pa do veoma zahtevnih sistema kao što su razne naučno istraživačke laboratorije ili veliki računski centri. U odnosu na Microsoft operativne sisteme doneo je pre svega stabilnost jezgra, višekorisnički rad i visok stepen zaštite podataka. U odnosu na UNIX-u doneo je grafičko okruženje i user frandly interfejs, što UNIX nije imao. Linux se upravo pozicionirao u gep između UNIX-a i MS-DOS-a. Uzeo je sve ono najbolje i od jednog i od drugog operativnog sitema. Pomenimo, kratko, da je logo operativnog sistema Linux, pingvin.



Mnogostrukost primene

Zadnjih godina Linux je prihvaćen od velikih broja računarskih kompanija kao što su IBM, Sun, Dell i druge koje su dugo vremena razvijale i promovisale svoje operativne sisteme, a danas nude sisteme (misli se na računare) sa podrškom za Linux. To dosta govori u prilog činjenici da Linux nije neozbiljna nego veoma ozbiljna stvar. Prednosti Linuxa dolaze do izražaja kod serverskih primena. Sve je veći broj servera na internetu koji rade pod Linux-om. Podaci kažu da, trenutno, više od 60% WEB servera radi pod Linux-om (Apache server), sa tendencijom rasta, a da manje od 20% WEB servera radi pod WIN2000Server operativnim sistemom (sa tendencijom pada). Kao ilustraciju navešćemo samo činjenicu da serveri dva najpoznatija pretraživača na internetu, Google i Yahoo, rade pod Linux-om. Dalje, poslednjih godina Linux nalazi mesto u takozvanim embedded sistemima (real time operativni sistemima). To su sistemi gde su resursi jako mali i praktično nepostoje ni disk ni kontroler nego se iz mikrokontrolera izvršava neki kod. Embedded znači uronjavanje, i sam termin označava činjenicu da se sve funkcije operativnog sistema praktično uronjavaju u jedan čip (najčešće, mikrokontroler). Poslednjih godina Linux nalazi svoju primenu u mobilnim telefonima i kućnim aparatima kao što su mikrotalasna peć, frižideri, risiveri... Dakle, Linux postaje sve rasprostranjeniji operativni sistem.



Distributeri Linux-a

Danas mnogi postavljaju pitanje: šta označava sama reč (termin) Linux ? Po nekim autorima to je samo oznaka za kernel (jezgro) operativnog sistema. Po drugim autorima, to je oznaka za celu distribuciju operativnog sistema. Linux distribucija podrazumeva samo jezgro (kernel) plus sav ostali softver koji uz to dolazi: utility, literatura, itd. Prilikom kupovine Linux-a opredeljujete se za kupovinu određene distribucije (prema tome postoje i distributeri Linuxa). Dakle distributer Linuxa je firma koja je preuzela jezgro (kernel) i dodala razne stvari tipa grafičkog interfejsa, programa za rad sa datotekama i slično. Važno je zapamtiti da je kernel uvek isti i da distributeri nisu vlasnici Linuxa, nego prodavci. Vi ne kupujete od njih jezgro Linux-a, to jest Linux u užem smislu reči; vi kupujete distribuciju. Kod linux-a se ne naplaćuje njegov kod: naplaćuje se instalacija, obuka, štampane stvari, literatura, ... Recimo, poznati distributer Red Hat poslovanje zasniva na prodaji prateće dokumentacije i tehničkoj podršci.

Otvoreni kod i razvoj softvera

Prvobitno korišćeni termin glasio je free source, u smislu da je pristup kodu Linux-ovog jezgra bio slobodan. Kako free na engleskom znači besplatan, a u potrošačkim društvima se besplatni proizvodi nisu na ceni, odlučeno je da se prvobitni termin promeni u open source: otvoreni kod. Glavna karakteristika open source-a je ravnopravnost pristupa, koja proizilazi iz puke činjenice da je kod Linux-ovog jezgra javno dostupan preko interneta. Koncept otvorenog koda pokrenuo je jedno potpuno novo, do tada nepoznato, razmišljanje na polju razvoja softvera. Smatralo se, naime, da ni jedan projekat, pa ni Linux, neće uspeti u tako haotičnom i dinamičnom okruženju kao što je Internet. Postoje klasični modeli razvoja softverskih paketa (pa i operativnih sistema) koji govore da treba da se prvo krene od zahteva korisnika, pa preko projektovanja, kodiranja, verifikovanja u praksi, i na kraju modela stižemo do prodaje. Razvoj koji prati ovakav model je spor, inertan i rezultuje u praksi sa 60% neuspeha. Prosto, sistem je inertan, u smislu da prolazi puno vremena dok dođe do verifikacije koda u praksi: do tada se može dogoditi da se zahtev kupca drastično promenio, ili da je ono što je on tražio ranije, sada potpuno anahrono i nepotrebno. Uzmimo za primer kompaniju Microsoft: u proseku prolaze dve do tri godine od jedne do druge verzije operativnog sistema, posle koje sledi hrpa zakrpa i ispravki. Poenta je da se vreme za otklanjanje bagova meri godinama.

Linux-ov model razvoja

Koncept otvorenog koda glasi: “Razvijaj u što manjim koracima, često izdaj nove verzije, a redovno prikupljaj reakcije korisnika”. Od jedne do druge verzije nepostoje neke epohalne izmene. Čim korisnik prijavi određeni problem, mora se odmah reagovati u smislu otklanjanja tog problema. Ova filozofija garantuje brz odziv i brži razvoj softvera. Ovu filozofiju je Linux koristio u proteklom periodu i sigurno je i to doprinelo popularnosti Linux-a. Rezultat je da se nove verzije Linux-a pojavljuju, maltene, svakih nekoliko dana. Svaka od ovih, novih, verzija sadrži neku novinu, tipa nekog novog drajvera (za neki novi uređaj), ili ispravljanja ranijeg propusta. Propusta (grešaka – bagova) će uvek biti: jednostavno, ne postoji idealan program ni idealan programer. Greške u programiranju su neminovne. Ali, vreme od samog korisničkog zahteva do kompletne realizacije se može svesti na najmanje moguće. Ovo je poenta open source razvoja.

Cena

Naredna značajna novina, i pometnja, koju je Linux doneo na tržištu softvera je cena: jezgro Linux-a je besplatno. Ne postoji kompanija koja bi figurisala kao vlasnik: Linux je, praktično, vlasništvo svih ljudi koji su učestvovali u njegovom razvoju. Trend odnosa cena hardvera i softvera je takav da se neprestano povećava udeo cene softvera. U periodu od 1991 godine pa do 1995 godine, može se uzeti da je udeo cene softvera iznosio 10% od cene ukupnog sistema (čitaj hardvera). Smatra se da je u periodu 1997-1998 taj odnos, praktično, izjednačen i da su, čak, ulaganja u softver prevazišla ulaganja u hardver. Kod primene Linuxa može se uzeti da je udeo cene softvera samo 10%. Postavlja se pitanje od čega živi Linux zajednica i distributeri Linuxa (koji je njihov motiv poslovanja), ako je sam taj kod besplatan, i udeo softvera u ceni sistema tako nizak? Odgovor smo već pomenuli u prethodnom izlaganju: zarađuje se na indirektnim proizvodima ili uslugama, instalaciji sistema, tehničkoj podršci, dokumentaciji, literaturi i slično. Kompanija Red Hat, jedan od najpoznatijih distributera Linux-a, najveći deo zarade ostvaruje pružanjem stručne podrške za Linux. Dakle, prodaje se sve ono što nije kernel, a sastavni je deo distribucije. Recimo, ako neka kompanija odluči da uvede Linux u svoje poslovanje, neće morati da plati sam operativni sistem: najveći deo troškova predstavljaće obuka osoblja i, buduća, tehnička podrška.

Uvod u strukturu Linux-a

Linux je operativni sistem koga izvorno karakteriše komandni interfejs. Linux u početku nije imao GUI (Grafical User Interface). Komunikacija korisnika sa jezgrom operativnog sistema se odvijala preko komandne linije. Taj deo operativnog sistema, koji interpretira komande, je, takozvani, komandni procesor (kod operativnog sistema MSDOS). Kod Linux-a se taj interpreter naziva shell. Postoje tri standardna shell-a i to su C-shell, Korn-shell i, najrašireniji i najčešće upotrebljavani, Bourne shell koji se naziva: bash. Kada se ulogujete kao korisnik na sistemu pod Linux-om, default-ni shell je upravo bash. To je skraćenica od Bourne Again Shall. Postoje i tri vrste promta. Ako se prjavite kao root (sistem administrator) promt koji ćete dobiti je #. Ostala dva oblika promta su % ili $. To zavisi od izabranog shell-a. Zapamtimo da je glavna funkcija shell-a zaštita jezgra (kernela) od neovlašćenog pristupa korisnika. Korisnik nikada ne komunicira direktno sa jezgrom: korisnik komunicira sa shell-om.

Grafički interfejs

Linux je, izvorno, operativni sistem sa karakter orijentisanim (character based) interfejsom. To je, dugo vremena, bio glavni razlog što je najveći broj kućnih korisnika, da tako kažemo, zazirao, odnosno, izbegavao da počne sa radom pod Linux-om. Već smo napomenuli da je poslednjih godina uložen odgovarajući rad ka prevazilaženju ovih problema: Linux je, danas, mnogo jednostavniji za korišćenje i prihvatljiviji za široki krug korisnika (kućni korisnici ili desktop platforme). Dva, danas, najraširenija grafička interfejsa su GNOME i KDE. Ono što je veoma važno razumeti je da kod Linux-a, njegov GUI nije deo koji je vezan za kernel i za operativni sistem. Kod Windows-a je GUI ugrađen u sam kod operativnog sistema i ne možete nikako da ga izbacite, dodate, modifikujete: jednostavno, on je deo koda samog operativnog sistema. Takođe, važno je razumeti još jednu novinu kod Linux-a: razdvojeni su izrada grafike i prikaz grafike. Objasnimo ovo na jednom primeru: recimo da imate mrežu računara pod Linux-om. U toj mreži server (odnosno, odgovarajuće aplikacije) generiše grafički prikaz, a sam način prikaza se razlikuje od radne stanice do radne stanice, zavisno od tipa grafičkog interfejsa koji postoji na odgovarajućoj radnoj stanici.



Klijent i server

Jedna od novih, i korisnih, stvari kod Linux-a je ta što ne postoje posebne verzije Linux-a za server, i posebne za radnu stanicu. Kao što znate, kod drugih operativnih sistema to nije tako. Recimo, u slučaju operativnog sistema Windows2000 postoje, i posebno se kupuju, verzija za server i verzija za radnu stanicu. To znači u praksi, da ako imate mrežu računara koja se sastoji od jednog servera i 10 radnih stanica, treba da kupite jednu verziju operativnog sistema za server, jednu verziju za radnu stanicu i još 10 licenci za preostale radne stanice. Kod Linux-a postoji samo jedna instalaciona verzija: ona je, istovremeno, i radna stanica (klijent) i server. Računar pod Linux-om može da bude bilo server, bilo radna stanica (klijent), a može da bude i jedno i drugo istovremeno. To se jednostavno razrešava izborom servisa i aplikacija koje se (ne)pokreću na računaru. Sa jedne strane slike imamo operativni sistem WinNT, a sa druge Linux. Hardverska platforma je ista u oba slučaja i prikazana je u dnu slike. Uočite da je u slučaju operativnog sistema Windows sa GUI-em kao delom operativnog sistema, koji se, kao takav, ne može menjati. Linux, sa druge strane, ima razdvojeno jezgro (kernel) od GUI interfejsa. U slučaju Linux-a izborom aplikacija prilikom instalacije samog operativnog sistema, ili kasnije, tokom rada, birate da li će operativni sistem raditi kao server ili kao radna stanica. Zapamtimo: kod Linux-a se GUI interfejs tretira kao jedna aplikacija koju operativni sistem poziva po potrebi.

Prava razlika Linux-Windows

Pravu razliku između Linux-a i Windows-a možemo videti kada razmatramo serversku problematiku. Poznato je da Windows operativni sistemi zahtevaju odgovarajući, relativno jak hardver: recimo, Win2000 primenjen na Pentium II konfiguraciji sa 64MB memorije, recimo, će raditi sa slabim performansama (ako će uopšte raditi). Windows serveri su vrlo zahtevni što se tiče hardvera, u smislu da će na slabijem (neodgovarajućem) hardveru raditi sa slabijim performansama ili uopšte neće raditi. Linux serveri su nezavisni od hardverske platforme. Na primer: Linux će u komandnom režimu raditi i na 486 platformi. Sigurno da je i Linux sa GUI interfejsom nešto zahtevniji u pogledu hardverske platforme, ali još uvek mnogo manje nego odgovarajući Windows operativni sistemi. Druga velika razlika među njima je cena.