<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:dc="http://purl.org/dc/elements/1.1/"
         xmlns:syn="http://purl.org/rss/1.0/modules/syndication/"
         xmlns="http://purl.org/rss/1.0/">




    



<channel rdf:about="http://www.ns-linux.org/Uputstva/teorija/RSS">
  <title>Teorija</title>
  <link>http://www.ns-linux.org</link>
  
  <description>
    
       Sve što možete naučiti a nema veze sa stvarnim radom (mreže, rad diskova, itd.)
       
  </description>
  
  
  
            <syn:updatePeriod>daily</syn:updatePeriod>
            <syn:updateFrequency>1</syn:updateFrequency>
            <syn:updateBase>2007-06-12T19:16:19Z</syn:updateBase>
        
  
  <image rdf:resource="http://www.ns-linux.org/logo.jpg"/>

  <items>
    <rdf:Seq>
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/tcp-ip"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/internet"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/osi-model"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/linux-boot-proces"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/binarni-brojevi"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/izvorni-kod-ili-binarni-kod"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/fragmentacija-diskova"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/arp-protokol-preveden-u-realni-zivot"/>
        
        
            <rdf:li rdf:resource="http://www.ns-linux.org/Uputstva/Teorija/kako-je-sve-pocelo"/>
        
    </rdf:Seq>
  </items>

</channel>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/tcp-ip">
    <title>TCP/IP</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/tcp-ip</link>
    <description>Familija TCP/IP protokola</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;Familija TCP/IP protokola  razvija se od 1973 godine.  1978 godine prestavljena je verzija IPv4. Ova verzija koristi se i danas i standard je skoro svugde u svetu. Od 1982 godine tadašnji &lt;a href="http://en.wikipedia.org/wiki/ARPANET"&gt;ARPANET&lt;/a&gt; (&lt;i&gt;Advanced Research Projects Agency Network&lt;/i&gt;)  prebacio se  na IP protokol. Danas je IP protokol standardni protokol za Internet. Većina firmi je svoje mreže prebacila takođe na TCP/IP, da bi mogli da koriste sve servise kao i da bi lakse ostvarivali komunikaciju sa Internetom.&lt;/p&gt;
&lt;p&gt;Prednosti TCP/IP su:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;TCP/IP se ne oslanja niti na jednu firmu niti je od bilo koje zavistan&lt;/li&gt;&lt;li&gt;TCP/IP moguće je na jednostavan načini implmentirati kako na obične tako i na super računare&lt;/li&gt;&lt;li&gt;TCP/IP je koristi i u LAN (Local Area Network) i u WAN (Wide Area Network) mrežama&lt;/li&gt;&lt;li&gt;TCP/IP oslobađa aplikacije od zavisnosti sistema za transport&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;p&gt;OSI referentni model se koristi da bi podelio mrežne protokole za komunikaciju na sedam slojeva (nivoa).  A to su:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;Layer 1&lt;/b&gt; - Fizički sloj (eng. &lt;b&gt;physical layer&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 2&lt;/b&gt; - Sloj za transfer podataka (eng. &lt;b&gt;data link layer&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 3&lt;/b&gt; - Mrežni sloj (eng. &lt;b&gt;network layer&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 4&lt;/b&gt; - Transportni sloj (eng. &lt;b&gt;transport layer&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 5&lt;/b&gt; - Sloj sesije (eng. &lt;b&gt;session layer&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 6&lt;/b&gt; - Prezentacioni sloj (eng. &lt;b&gt;presentation layer&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 7&lt;/b&gt; -  Aplikacioni sloj (eng. &lt;b&gt;application layer&lt;/b&gt;). &lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Pošto je TCP/IP protokol stariji od OSI modela on nema tako preciznu podelu nego koristi samo četiri sloja (nivoa):&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Layer 1 &lt;/b&gt;-  Mrežni interfejs (eng. &lt;b&gt;Network Interface&lt;/b&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 2&lt;/b&gt; -  Internet sloj (eng. &lt;b&gt;Internet&lt;/b&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 3&lt;/b&gt; -  Transportni sloj (eng. &lt;b&gt;Transport&lt;/b&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Layer 4&lt;/b&gt; -  Aplikacioni sloj (eng. &lt;b&gt;Application&lt;/b&gt;)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>milobit</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2008-04-15T20:54:32Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/internet">
    <title>Internet</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/internet</link>
    <description>Šta je u stvari Internet?</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;Internet nije mreža, nego ogroman skup različitih mreža, koje koriste različite protokole i koje pružaju osnovne servise za upotrebu. Internet je jedan neobičan sistem, koji niko nije planirao i koji niko ne kontroliše.  Danas Internet predstvalja najveći i najbrži izvor informacija koji je svima dostupan.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;br /&gt;</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>milobit</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2007-11-10T10:22:31Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/osi-model">
    <title>OSI Model</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/osi-model</link>
    <description>Open Systems Interconnection Reference Model je apstraktni opis dizajna protokola komunikacijskih i računarskih mreža, predstavljen u obliku sedam slojeva.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;1977. godine ISO organizacija (International Organization for Standardization) počela je da se bavim rarzvojem arhitekture za komunikaciju (OSI) koja je kasnije postala internacionalni standard. Open System Interconnection (OSI) referentni model objavljen je 1983. godine. (Day i Zimmermann 1983.) Da bi 1985. godine bio prerađen. (Day 1995.) Inicijativa OSI modela imala je za zadatak da omogući komunikaciju i interoperaciju između različitih kompijuterskih arhitektura različitih proizvođača. OSI danas obuhvata na stotine standarda.  Najpoznatiji detalj OSI-a je sedam slojeva referentni model.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div align="center"&gt;&lt;img class="image-inline" src="slike/osi-model-7-layers.png" alt="osi-model-7-layers.png" /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Zadaci komunikacije su podeljeni u sedam slojeva koji se oslanjaju jedan na drugi. Svaki sloj definiše funkciju ili set funkcija koji se izvršavaju kada se podatak prenosi između aplikacija preko mreže. Bez obzira na to da li je protokol IP, Novell NetWare ili AppleTalk, pod uslovom da se oslanja na OSI model, primenjuju se manje više ista pravila na svakom od sedam slojeva.&lt;br /&gt;Svaki sloj je protokol za komunikaciju između povezanih uređaja. Sa stanovišta mrežnih operacija, ključna stvar za razumevanje je da svaki sloj na svakom uređaju komunicira sa istim  slojem na drugoj strani, upravljajući time  pojedinačnim aspektom mrežne konekcije. Sa stanovišta međuoperativnosti, ključna stvar je da se isti interfejs nalazi između svakog sloja. Predstava sa apstraktinm slojevima koristi se zbog smanjenja prikaza svega onoga što bi moglo  da uplaši svojom kompleksnošću. &lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 7&lt;/b&gt; -  Aplikacioni sloj (eng. &lt;b&gt;application layer&lt;/b&gt;)  je najbliži korisniku i on omogućava mrežni servis korisničkim aplikacijama. Za razliku od ostalih slojeva aplikacioni sloj ne omogućava pristup niti jednom sloju nego omogućava servis van njega. Primeri za sedmi sloj su SMTP (Simple Mail Transfer Protocol) protokol za E-Mail, HTTP (Hypertext Transfer Protocol) za web pretraživače i servere, Telnet za sesiju na udaljenom terminalu itd.&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 6&lt;/b&gt; - Prezentacioni sloj (eng. &lt;b&gt;presentation layer&lt;/b&gt;) za razliku od predhodnih slojeva koji se bave transportom bitova, ovaj sloj se bavi sintaksom i semantikom informacija koje se prenose kao i kompresijom i kodiranjem. Da bi sistemi sa različitim stukturama podataka mogli međusobno da komuniciraju, te stukture podataka moraju da budu definisane na jednom abstraktnom nivou zajedno sa stadndardnim sistemom kodiranja.  Prezentacioni sloj upravlja tim apstraktnim strukturama i omogućava definisanje istih pre razmene strukture podataka na višim nivoima. Primer za ovaj sloj su recimo različiti standardi kao sto je ASCI ili EBCDIC koji se koriste na različitim sistemima a njihova međusobna komunikacija se odvija besprekorno.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 5&lt;/b&gt; - Sloj sesije (eng. &lt;b&gt;session layer&lt;/b&gt;) bavi se uspostavljanjem veze između dva korisnika kao i sinhronizacijom njihove veze. Primer protokola za peti sloj su X-Window sistem i Apple Talk Session Protocol (ASP).&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 4&lt;/b&gt; - Transportni sloj (eng. &lt;b&gt;transport layer&lt;/b&gt;) vodi računa o paketima koji putuju između dva računara. Primeri za četvrti sloj su TCP (Transmission Control Protocol) i UDP (User Datagram Protokol).
Ako se neki paket "zagubi" na putu, TCP će tražiti da se ponovo
pošalje, pa je stoga pogodan za razmenu podataka za koje je integritet
podatka bitniji od brzine prenosa. Sa druge strane UDP nema kontrolu
kao TCP, pa je zgodan za multimedijalne
aplikacije, gde je bitna brzina komunikacije.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 3&lt;/b&gt; - Mrežni sloj (eng. &lt;b&gt;network layer&lt;/b&gt;) je kompleksni sloj koji omogućava konekciju i selektivnu putanju između dva računara koji su geografski locirani u različitim mrežama. Mrežni sloj je koncipiran na logičkom adresiranju. Primeri za ovaj sloj su IP (Internet Protocol) i IPX (Internetwork Packet Excange).&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 2&lt;/b&gt; - Sloj za trafer podataka (eng. &lt;b&gt;data link layer&lt;/b&gt;) ima glavni zadatak da nizove bitova upakuje i pripremi za slanje, kako bi mrežni sloj mogao da ih pošalje bez problema. Ovo se postiže na taj način što pošiljalac  pakuje podatke u takozvane fremove podataka (Data Frames) i njih sekvencionalno šalje. Ako su podaci pouzdano stigli, primalac šalje takozvanu potvrdu da je sve stiglo ok (Acknowledgment Frame). Jedan od problema na ovom sloju (a i na ostalim višim slojevima) je kada pošiljalac brže šalje frameove nego što primalac može da ih primi. Ovo se rešava ubacivanjem takozvanih "saobračajnih" propisa koji služe između ostalog da na vreme jave koliki je kapacitet Buffer-a primaoca. Za ovakve slučajeve se koriste specijalni mehanizmi flus kontrole i mehanizmi za kontrolu i ispravljanje grešaka. Primeri za drugi sloj su Ethernet, Token Ring, ISDN, PPP, i Frame Relay.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Layer 1&lt;/b&gt; - Fizički sloj (eng. &lt;b&gt;physical layer&lt;/b&gt;)  se  odnosi na  prenošenje  niza bitova preko jednog komunikacionog kanala.  Kod dizajna bitno je da se obrati pažnja da 1-bit koji se šalje sa jedne strane stigne na drugu stranu isto kao 1-bit a ne kao 0-bit. Tipična pitanja koja se ovde postavljaju su: Koliko  volti je potreno za logičko 1 a koliko za 0? Koliko nanosekundi treba da traje jedan bit? Da li transport treba da bude startovan u usto vreme u oba pravca? Kako dolazi do početnog prenosa i kako se on briše kada su obe strane završile prenošenje? Koliko pinova ima mrežna utičnica, i za čega se oni koriste?&lt;br /&gt;Prvi sloj znači definiše električnu, mehaničku, proceduralnu i funkcionalnu specifikaciju za aktiviranje, uspostavljanje i deaktiviranje fizičkog linka između krajnjih sistema. Na ovom sloju su definisani naponski
nivoi, broj pinova na konektorima (odnosno parica u kablovima) ili
debljina koaksijalnog kabela kao i ostali atributi koji su definisani specifikacijom.&lt;/p&gt;
</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>milobit</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2007-11-10T10:01:47Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/linux-boot-proces">
    <title>Linux boot proces</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/linux-boot-proces</link>
    <description>Možda izgleda jednostavno, ali u pozadini se odvija mnogo stvari!</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;Ovde ću pokušati da objasnim šta se dešava od trenutnka kada pritisnete dugme za paljenje na vašem računaru do trenutnka kada se pokrene prvi program. &lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Ograničiću se na x86 arhitekturu, ali mnogi delovi podizanja sistema su identični za mnoge druge arhitekture. &lt;br /&gt;&lt;/p&gt;
&lt;h2&gt;Paljenje računara&lt;/h2&gt;
U trenutku kada upalite računar prve instrukcije koje se izvršavaju predstavljaju BIOS (Basic Input/Output System) koji se nalazi na adresi 0xFFFF0. BIOS se sastoji iz dva dela. Prvi deo, POST (power-on self test) ima zadatak da proveri sav hardware. Drugi deo BIOS-a (izvorni servisi - runtime services) treba da napravi spisak svih lokalnih uređaja i uradi njihovu inicijalizaciju. Nakon što obavi svoj deo posle, POST se briše iz memorije, a servisi ostaju da bi pružili usluge operativnom sistemu.&lt;br /&gt;&lt;br /&gt;Da bi boot-ovao operativni sistem, BIOS traži uređaje koji su aktivni i bootabilni (kako otkriva bootabilne uređaje biće objašnjeno u sledećoj sekciji). U te uređaje spadaju diskete, CD-ROM, HDD, uređaj na mreži, Flash disk...&lt;br /&gt;&lt;br /&gt;Uobičajeno je da se Linux boot-uje sa HDD-a, gde MBR (Master Boot Record) sadrži primarni boot loader. MBR je oblast od 512 bajtova koji se fizički nalazi u prvom sektoru diska. Nakon što je MBR učitan u RAM, BIOS mu prepušta kontrolu.&lt;br /&gt;&lt;br /&gt;
&lt;h2&gt;Boot loader - faza jedan&lt;/h2&gt;
Primarni boot loader iz MBR-a veličine 512 bajta sadrži i kod i tabelu particija. Prvih 446 bajtova predstavlja primarni boot loader koji sadrži izvorni kod i tekst poruka o greškama. Sledeća 64 bajta su tablela particija koja sadrži podatke o svakoj od 4 primarne particije (po 16 bajta za svaku). MBR završava sa 2 bajta koja predstavljaju magičnu vrednost 0xAA55. Po ovoj vrednosti BIOS zna da li je uređaj bootabilan, ali takođe predstavlja validaciju MBR-a.&lt;br /&gt;&lt;br /&gt;&lt;img class="image-inline" src="MBR.gif" alt="MBR" /&gt;&lt;img class="image-inline" src="slike/MBR.gif" alt="MBR" /&gt;&lt;br /&gt;&lt;br /&gt;Posao primarnog boot loadera je da pronađe sekundarni boot loader. Ovo se radi tako što primarni boot loader pretražuje tabelu particija tražeći aktivnu particiju. Kada je pronađe, proveri da li su sve ostale particije neaktivne i kopira boot zapis aktivne particije u RAM i izvršava ga.&lt;br /&gt;&lt;br /&gt;
&lt;h2&gt;Boot loader - faza dva&lt;/h2&gt;
Sekundarni boot loader ima zadatak da učita kernel u memoriju i opciono da učita RAM disk. &lt;br /&gt;&lt;br /&gt;Primarni i sekundarni boot loader zajedno se zovu Linux Loader (LILO) ili GRand Unified Bootloader (GRUB). Pošto LILO ima neke mane koje su popravljene u GRUB-u, ovde ćemo razmatrati GRUB. &lt;br /&gt;&lt;br /&gt;
&lt;p&gt;Dobra stvar u vezi GRUB-a je to što je on svestan filesystem-a. Umesto da pamti sirove podatke o sektorima na disku (kao što to LILO radi) GRUB može da učita kernel sa ext2, ext3 ili nekog drugog filesystema. Ovo je urađeno tako što je ubačen još jedan sloj u boot loader. Primarni bootloader iz MBR-a učitava ovaj dodatni (stage 1.5) koji je svestan filesystema na kom se nalazi kernel koji treba učitati. Na primer ovaj fajl može da se zove &lt;i&gt;reiserfs_stage1_5&lt;/i&gt; (za učitavanje iz Reiser filesystema). Sve fajlove koje GRUB koristi za fazu 1.5 možete videti u &lt;i&gt;/boot/grub. &lt;/i&gt;Kada je ovaj među - boot loader učitan, boot loader iz faze 2 može da se učita.&lt;/p&gt;
&lt;p&gt;U ovom trenutku, GRUB prikazuje listu dostupnih kernela (čita iz &lt;i&gt;/boot/grub/grub.conf&lt;/i&gt;) i birate koji od njih hoćete da učitate. Možete čak proslediti neke parametre kernelu ovom trenutku. Sada se učitava kernel i initrd u RAM memoriju i izvršava se kernel.&lt;/p&gt;
&lt;h2&gt;Kernel&lt;/h2&gt;
Sada kad je slika kernela u memoriji i kernel ima kontrolu (sekundarni boot loader mu je prepustio), on počinje da se izvršava. Slika kernela nije izvršna, nego je kompresovana. Ovo je obično bzImage, prethodno kompresovana pomoću zlib-a. Na početku slike kernela postoji mali deo koda koji minimalno istražuje hardware, zatim raspakuje kernel i smešta ga memoriju sa višim adresama. &lt;br /&gt;&lt;br /&gt;Kada bzImage počne sa izvršavanjem, izvršavanje počinje od rutine start u fajlu &lt;i&gt;./arch/i386/boot/head.S&lt;/i&gt;. Ovde se vrši minimalna inspekcija hardware-a i poziva se startup_32 rutina iz fajla &lt;i&gt;./arch/i386/boot/compressed/head.S&lt;/i&gt;. U ovom delu koda se između ostalog inicijalizuje stack i čisti se BSS (Block Started by Symbol). Zatim se kernel dekompresuje pozivom &lt;i&gt;decompress_kernel &lt;/i&gt;rutine koja je pisana u C-u (iz fajla &lt;i&gt;./arch/i386/boot/compressed/misc.c&lt;/i&gt;). Sad kada je kernel raspakovan, prepušta mu se izvršavanje. Ovo se radi još jednom &lt;i&gt;startup_32&lt;/i&gt; funkcijom, ali ovog puta iz fajla &lt;i&gt;./arch/i386/kernel/head.S&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;U ovoj funkciji (koja se još zove swapper ili process 0 - jedini proces u Linuxu koji ne nastaje fork-ovanjem) se inicijalizuju tabele za stranice i uključuje se korišćenje stranica za memoriju. Detektuje se tip CPU-a, kao i FPU-a (floating point unit) i čuva za kasniju upotrebu. Zatim se poziva &lt;i&gt;start_kernel&lt;/i&gt; funkcija iz fajla &lt;i&gt;./init/main.c&lt;/i&gt; koja izvršava deo kernela koji nije vezan za arhitekturu na kojoj se izvršava. Ovo je praktično &lt;i&gt;main&lt;/i&gt; funkcija Linux kernela. &lt;br /&gt;&lt;br /&gt;U izvršavanju funcije &lt;i&gt;start_kernel&lt;/i&gt; se poziva mnogo funkcija za inicijalizaciju mnogih stvari (prekida, još memorijskih podešavanja, učitava se inicijalni RAM disk) i na kraju se poziva &lt;i&gt;kernel_thread&lt;/i&gt; (iz &lt;i&gt;./arch/i386/kernel/process.c&lt;/i&gt;) koji dalje pokreće &lt;i&gt;init&lt;/i&gt; funkciju koja predstavlja prvi proces u korisničkom prostoru. Konačno, nakon poziva funkcije cpu_idle, sheduler može da preuzme preiodičnu kontrolu i koristeći mehanizam prekida omogućava multitasking. &lt;br /&gt;&lt;br /&gt;Za vreme bootovanja (piše gore tačno gde), u RAM je učitan inicijalni RAM-disk (initrd). Initrd služi kao privremeni root filesystem u RAM-u i zbog njega kernel može da se boot-uje bez montiranja fizičkih uređaja. Pošto moduli neophodni za komunikaciju za periferijama mogu biti deo initrd-a, sam kernel može biti izuzetno mali, a da i dalje podržava mnogo uređaja. Nakon što je kernel boot-ovan, root filesystem se rotira (pomoću &lt;i&gt;pivot_root&lt;/i&gt;, &lt;i&gt;man 8 pivot_root&lt;/i&gt;), initd je odmontira, a pravi root filesystem se montira. &lt;br /&gt;&lt;br /&gt;
&lt;h2&gt;Init&lt;/h2&gt;
Nakon što je kernel boot-ovan i inicijalizovan, on poziva prvu aplikaciju u korisničkom prostoru. To je prvi program koji se poziva a da je kompajliran sa standardnom C bibliotekom. Do ovog trenutka ni jedna standardna C aplikacija nije izvršena. &lt;br /&gt;&lt;br /&gt;Uglavnom je prva aplikacija koja se izvršava &lt;i&gt;/sbin/init&lt;/i&gt; i šta će ona uraditi zavisi od podešavanja u fajlu &lt;i&gt;/etc/inittab&lt;/i&gt;. Ovo se razlikuje za svaku distribuciju, i ako vas zanima šta vaša distribuija radi na dalje, pročitajte init skripte. &lt;br /&gt;&lt;br /&gt;</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>delboy</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2008-04-15T20:48:47Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/binarni-brojevi">
    <title>Binarni brojevi</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/binarni-brojevi</link>
    <description>Postoje samo dva, a tolika komplikacija...</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;Svi već znamo da računari rade sa nulama i jedinicama. Istorijski razalog je jednostavan. Ako u vodovima ili ima struje ili nema struje, ne postoji mesto grešci (uslovno rečeno). Naime, kada je osobina koja se meri kontinualna (recimo, visina napona), uvek je prisutna greška zbog nesavršenosti provodnika, aparata za merenje, itd. Ako je sve što vi treba da izmerite to da li struja u nekom vodu postoji ili ne, mogućnost greške je minimalna. Naravno, sistem je mogao biti zamišljen tako da postoji 10 skokovitih nivoa struje te da se ne petljamo sa binarnim brojevima, ali se tako povećava i mogućnost greške. Ono što je računar doneo sa sobom je da ljudi imaju potrebu da shvate binardne brojeve kako bi bolje razumeli rad računara. Videćete, ovo je stvarno prosto.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Za početak ćemo prebaciti decimalni broj u neki binarni. Recimo broj 26. To se radi uzastopnim deljenjem sa 2 i zapisivanjem ostataka, sve dok rezultat deljenja ne postane 0. Prvo ću objasniti zapis koji ćemo dalje koristiti. Recimo, pri celobrojnom deljenju brojeva sa 2, imamo rezultat i ostatak:&lt;br /&gt;&lt;/p&gt;
&lt;pre&gt;7 / 2 = 3&lt;br /&gt;ostatak: 1&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;Umesto ovako dugačkog zapisa, koristićemo sledeći format (pri tome se podrazumeva da se deli sa 2):&lt;/p&gt;
&lt;pre&gt;7 | 3&lt;br /&gt;1&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;Ostatak pri deljenju je desno od broja, a rezultat rezultat ispod. Sada kada znamo ovaj format, evo kako se prebacuje decimalni zapis u binarni:&lt;/p&gt;
&lt;pre&gt;26 | 0    26(dec) = 11010(bin)&lt;br /&gt;13 | 1&lt;br /&gt; 6 | 0&lt;br /&gt; 3 | 1&lt;br /&gt; 1 | 1&lt;br /&gt; 0&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;Kao što ste primetili, binarni rezultat se čita od dole na gore. Poprilično jednostavno, zar ne? Drugi problem je kako prebaciti binarni broj u decimalni. Pre toga ću dati primer banalnog računanja u decimalnom sistemu koji oslikava ideju prebacivanja iz sistema u sistem. Recimo da imate broj 128. On se može predstaviti na sledeći način:&lt;/p&gt;
&lt;pre&gt;128 = 1*10&lt;sup&gt;2&lt;/sup&gt; + 2*10&lt;sup&gt;1&lt;/sup&gt; + 8*10&lt;sup&gt;0&lt;/sup&gt; = 1*100 + 2*10 + 8*1&lt;/pre&gt;
&lt;p&gt;Znači, pošto je u decimalnom sistemu osnova 10 (ima 10 cifara ukupno), to je rezultat jednak razlaganju cifara broja (cifra * 10&lt;sup&gt;pozicija cifre&lt;/sup&gt; pri čemu se pozicija cifre broji sa desna na levo i od 0 na više). Slična stvar važi za binarne brojeve, samo što je osnova 2. Recimo da želimo da prebacimo 11010 nazad u decimalni zapis:&lt;/p&gt;
&lt;pre&gt;11010(bin) = 1*2&lt;sup&gt;4&lt;/sup&gt; + 1*2&lt;sup&gt;3&lt;/sup&gt; + 0*2&lt;sup&gt;2&lt;/sup&gt; + 1*2&lt;sup&gt;1&lt;/sup&gt; + 0*2&lt;sup&gt;0&lt;/sup&gt; = 1*16 + 1*8 + 0*4 + 1*2 + 0*1 = 16 + 8 + 2 = 26&lt;/pre&gt;
&lt;p&gt;I to je cela gimnastika koju treba da znate oko pretvaranja u i iz binarnih brojeva. I nije neka nauka, zar ne?&lt;br /&gt;&lt;/p&gt;
</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>meka</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2007-11-04T21:08:59Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/izvorni-kod-ili-binarni-kod">
    <title>Izvorni kod ili binarni kod</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/izvorni-kod-ili-binarni-kod</link>
    <description>Šta je to izvorni kod a sta binarni</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;Jedna od prvih tema koja ljudima nije jasna kod računara je upravo ova. Šta, ustvari, predstavlja binarni kod? To je samo jedan niz nula i jedinica. Bukvalno! Svaki program je niz za sebe. Pri tom taj niz mora biti pravilan, odnosno, ne može svaki niz nula i jedinica da predstavlja program (kao što je reč niz slova, ali samo pravilno složenih).&lt;/p&gt;
&lt;p&gt;Sa druge strane, izvorni kod je nešto što je čovek više u stanju da pročita od 11001001011110. Naime, izvorni kod Vam neće biti jasan samo zato što su imena funkcija (tačnije, skoro pa ceo jezik) u njemu na engleskom, pa čak i ako znate engleski. Stvar je u tome da je izvorni kod opis programa koji se pravi. Možete ga shvatiti kao kuvarski recept. Ono što je napisano na papiru (sam recept) uopšte ne liči na ono što izađe iz rerne (ako ste baš radi probati, testirajte ukus papira na kome je recept odštampan i palačinke iz tiganja - ni nalik, zar ne?). Jedina razlika je u tome što program zahteva striktne naredbe i nikada ne možete napisati nešto tipa "tri prstohvata soli na jednu, ne do vrha punu, kašiku brašna".&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Da biste razumeli zašto je izvorni kod bitan, morate znati najosnovnije o kompajlerima (programski prevodioci). Izvorni kod možete pročitati ako imate znanja o programiranju, dok Vam za binarni ne može niko pomoći da ga pročitate. Ono što kompajler radi je da programeru čitljiv tekst prevede u one silne nule i jedinice koje računar može da pokrene (baš ono što profesionalni kuvari rade sa receptom). Ono što kompajler uz put radi je sastavljanje više naredbi u jednu. Evo jednog primera: "Ispeći pile" podrazumeva niz akcija. Nabavku namirnica, grejanje rerne, pouljivanje pleha, ... Ista stvar je i sa izvornim kodom. Jedna funkcija radi više stvari koje se "ne vide". Naime, ranije su ljudi programirali tako što su unosili nule i jedinice (ne bukvalno, ali da ne komplikujemo), pa su vremenom uvideli da kada žele da, recimo, prikažu bilo kakav tekst na ekranu koriste neke naredbe koje se ponavljaju (malo formalnije rečeno, trebalo je iz operativne memorije preneti tekst u memoriju grafičke kartice i osvežiti taj deo ekrana, između ostalog). Onda su se setili da bi bilo lepo da kad požele da urade nešto slično imaju jednu komandu koja radi sve te akcije. Tako su nastali i prvi kompajleri (da budem precizan, asembleri, ali, opet, da ne komplikujemo priču). Sve u svemu, kompajler radi 2 stvari. "Razvijanje" svake komande u više sekvencijalnih i prevođenje "recepta" u "pile".&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Iz istih razloga zašto je teško napraviti pile kada vidite već jedno ispečeno (niti znate koliko minuta je provelo u rerni, niti na kojoj temperaturi, niti koji začinini su korišćeni, ...), teško je napraviti program koji izgleda isto kao neki postojeći (ako pretpostavimo da ga programirate a ne kopirate sa CD-a).&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;E sad zamislite restoran hrane koji radi kućnu dostavu. Vi naručujete od njih stvari sa menija. Možda Vam se sviđa način na koji je nešto spremljeno, a možda i ne. Ako budete uporni i dobar ste platiša, možda će Vam izaći u susret i izmeniti recept tako da Vama odgovara. E na taj način rade i softverske kuće. I to je upravo ona najbitnija stvar kod posedovanja izvornog koda. Program možete menjati kako god Vama odgovara i koristiti ga kako god Vi želite, a ne kada to neka kuća dozvoli.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;PS. Analogija sa receptima je "ukradena" od &lt;a href="http://www.stallman.org/"&gt;Ričarda Stolmana&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;
</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>meka</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2007-07-17T22:33:54Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/fragmentacija-diskova">
    <title>Fragmentacija diskova</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/fragmentacija-diskova</link>
    <description>Šta je to fragmentacija diskova i zašto linux nema alate za defragmentaciju</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;h3&gt;Šta je to defagmentacija?&lt;/h3&gt;
&lt;p&gt;Disk možete shvatiti kao jednu traku na koju se nešto piše pri čemu postoji minimalna jedinica zapisa (bit). Ako snimate sve fajlove odjednom (jedino se dešava pri instalaciji sistema), fragmentacija se nikad ne  dešava. Šta je to fragmentacija? Recimo da na traku želite da snimite 3 pesme. Ako one idu u kontinuitetu i dovoljno su male da stanu na traku, nema problema. Snimite prvu, pa drugu a onda i treću. E sad, iz nekih razloga Vi odlučite da druga pesma nije vredna traćenja prostora na traci, te je obrišete. Ali, kako se hitovi pojavljuju svakog dana, Vi čujete pesmu koja Vam se jako svidi i shvatite da imate mesta na Vašoj traci. Presrećni krenete sa snimanjem na mestu gde je bila druga pesma, ali je pesma koja je izbrisana znatno kraća od one koju trenutno snimate. Pa ... ako snimate neplanski, snimićete koliko može u prostor koji je zauzimala obrisana pesma, pa ćete nastaviti na nekom drugom praznom prostoru. Ovo se naziva fragmentacija. Ona znatno usporava performanse sistema obzirom da kad želite da preslušate pesmu, može Vam se desiti da ona nije u kontinuitetu snimljena, pa malo-malo pa premotavate traku kako biste našli nastavak pesme. Isto ovo se dešava i na disku, samo što je disk mnogo brži pa se ne primeti premotavanje dok slušate ogg. Gubitak na performansama se oseti kada pokušavate da kopirate velike fajlove koji nisu snimljeni u kontinuitetu na Vašem disku (recimo, DVD venčanja prijatelja na kome je devojka koja Vam se sviđa uhvatila buket).&lt;/p&gt;
&lt;h3&gt;&lt;br /&gt;&lt;/h3&gt;
&lt;h3&gt;Zašto UNIX sistemi ne fragmentiraju diskove?&lt;/h3&gt;
&lt;p&gt;Ono što mnogi pitaju kada se prvi put sretnu sa nekim UNIX sistemom (recimo, Linux) je "gde je ovde alat za defragmentiranje?" Evo zašto to nije potrebno. Sećate se da je rečeno da se fragmentacija javlja ako se radi neplanski? Dakle, postoji i plansko snimanje na medijum (plansko i neplansko ne treba shvatiti doslovno). Plansko snimanje je veoma jednostavno i ne zauzima puno resursa (nema puno više izračunavanja gde se šta snima u odnosu na neplansko). Ideja se sastoji u sledećem. Pretpostavimo da imamo traku od 10 sati i snimamo pesme od 5 minuta u trajanju u proseku. Ideja planskog snimanja je da se prva pesma snimi na početak, isto kao i kod neplanskog. Zatim se snima druga pesma tek na 30-om minutu. Naredna pesma se snima na 60-i minut trake, i tako dalje (ovih pola sata razmaka je uzeto odokativno - stvarne vrednosti na diskovima se izračunavaju u odnosu na veličinu fajla i diska). Ovime dobijamo jako velike rupe između, ali su sve pesme u kontinuitetu, pa kada ih treba presnimiti, sve ide glatko. Sa druge strane, kada poželite da snimite novu pesmu, verovatno ima mesta u jednom od slobodnih prostora. Tako se dobija da su sve pesme u kontinuitetu.&lt;/p&gt;
&lt;h3&gt;&lt;br /&gt;&lt;/h3&gt;
&lt;h3&gt;Zašto UNIX sistemi fragmentiraju diskove?&lt;/h3&gt;
&lt;p&gt;Shvatate, naravno, da ostavljanje praznog mesta ne može da ide u beskonačnost. Zamislite sledeću situaciju. Sve pesme su snimljene u kontinuitetu i iza svake od njih ima još po 5 sekundi praznog prostora. Ako poželite da snimite pesmu od 1 minut, trebaće Vam nemoguće, a to je prazan prostor od 60 sekundi. U ovakvim slučajevima postoje 2 (teorijski - praktično je samo jedno prihvatljivo) rešenja. Da se snimanje u takvim uslovima ne dozvoljava ili da podelite Vašu pesmu na 12 delova i snimite je po delovima tamo gde ima mesta. Naravno, samo druga solucija dolazi u obzir. Iskustvom se došlo do podatka da se fragmentiranje diska u UNIX okruženju dešava na negde oko 80% popunjenosti diska. Šta to znači u realnom životu. Recimo da imate disk od 100GB. Ako ste snimali, recimo, godinu dana kojekakve stvari i brisali ih, verovatno imate rupe. Ovo još ne znači da je disk fragmentiran (možda su fajlovi samo razbacani po disku, ali su još uvek u kontinuitetu). Pre ili kasnije će Vam se desiti da se jedan fajl snimi fragmentirano. Reći ćete "uh, pa ima još 20GB, a disk već pravi brljotine." U pravu ste. Mogli bi se ti podaci malo i sabiti pa da naprave jednu veliku rupu od 20GB. Ovo nije prihvatljivo iz 2 razloga. Prvi je, šta ako poželite da proširite jednu pesmu koja je u onih 80GB prostora? Opet ćete fragmentirati fajl. Drugo, od 80GB, sigurno imate nešto što je spremno za snimanje na DVD. Snimite nešto na backup i oslobodite prostor. Disk ionako nije najsigurnija stvar za trajno čuvanje podataka.&lt;/p&gt;
&lt;br /&gt;
&lt;h3&gt;A šta u slučaju fragmentacije?&lt;/h3&gt;
&lt;p&gt;Neki fajl sistemi imaju alate za defragmentaciju, neki nemaju. Ovisno od toga koji koristite, potražite pogodan alat. Ako i ne postoji alat za defragmentaciju, postoji rešenje. Napravite backup particije pakovanjem u .tar.bz2 (objašnjeno u nekom drugom uputstvu), formatirate particiju i otpakujete backup. Naravno, ovo je veoma primitivan način, ali kad Vam ustreba defragmentacija, to je, neki put, jedini način.&lt;br /&gt;&lt;/p&gt;
</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>meka</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2007-07-12T13:22:17Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/arp-protokol-preveden-u-realni-zivot">
    <title>ARP protokol preveden u realni život</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/arp-protokol-preveden-u-realni-zivot</link>
    <description>Objašnjenje šta je to ARP za sve koji nisu tehnički potkovani</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;ARP = Adress Resolution Protocol&lt;/p&gt;
&lt;p&gt;
E sad sve znate, zar ne? Ajde malo da vidimo šta to stvarno radi. ARP prevodi IP adresu u MAC adresu. MAC adresa je jedinstvena u svetu i možete smatrati da je upisana u čip uređaja (najčešće će Vas zanimati MAC adresa mrežne kartice). ARP možete shvatiti kao jako primitivan protokol. Recimo, ako imate punu sobu ljudi, njihova odeća bi predstavljala IP adrese (pretpostavimo da ne postoje 2 osobe koje nose istu odeću) a njihova lica MAC adresu. Recimo da Vi znate da treba da se nađete sa osobom koja nosi crvenu majicu i farmerice, ali pojma nemate kako ta osoba izgleda. Proderete se u sobi "ko je sa crvenom majicom i farmericama na sebi?" Javi Vam se osoba i kada ugledate lice, znate dalje sa kime komunicirate. Na istom principu radi ARP. "Vikne" IP adresu, a onda se javi mašina sa prozvanom IP adresom i javi svoju MAC adresu.&lt;/p&gt;
&lt;p&gt;Ali to nije sve. Obzirom da ste Vi glavni lik iz filma Memento, a i ljudi menjaju odeću, Vi relativno brzo zaboravljate lica, te ponekad morate ponovo da urlate u prepunoj sobi ljudi i tražite lice koje nosi određenu odeću. Razlog za ovo je što IP adresa ne mora uvek biti dodeljena istoj MAC adresi, pa kako biste osigurali da pristupate pravoj lokaciji, povremeno se ARP keš (cache) osvežava.&lt;/p&gt;
&lt;p&gt;A sada na livadu da vežbate ARP protokol, pošto ne verujem da će Vam i jedna osoba dati da urlate u sobi (osim ako nemate druga psihijatra). :o)&lt;br /&gt;&lt;/p&gt;
</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>meka</dc:creator>
    <dc:rights></dc:rights>
    <dc:date>2007-07-11T13:55:41Z</dc:date>
    <dc:type>Page</dc:type>
  </item>


  <item rdf:about="http://www.ns-linux.org/Uputstva/Teorija/kako-je-sve-pocelo">
    <title>Kako je sve počelo</title>
    <link>http://www.ns-linux.org/Uputstva/Teorija/kako-je-sve-pocelo</link>
    <description>Nekada davno u zemlji pingvina, bio jedan student ...</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/">
&lt;p&gt;Krajem avgusta 1991, student iz Finske, &lt;a href="http://en.wikipedia.org/wiki/Linus_Torvalds"&gt;Linus Torvalds&lt;/a&gt;, na konferencijsku grupu comp.os.minix, poslao je poruku sa sledećim sadržajem:&lt;/p&gt;
&lt;p&gt;&lt;cite&gt;Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby,
won't be big and professional like gnu) for
386(486) AT clones.&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;Pozdrav svima koji koristite Minix –
Pravim (slobodan) operativni sistem (samo hobi,
neće postati značajan i profesionalan kao GNU) za
386 (486) AT klonove.&lt;/p&gt;
&lt;p&gt;Linus Torvalds je svoj operativni sistem napravio na osnovu operativnog sistema Minix, mini verzije Unixa, promenivši je, da bi je prilagodio svojim potrebama. Do sredine 1993. njegov sistem se veoma udaljio od Minix korena, i postao je samostalna i veoma upotrebljiva verzija Unix-a. Linusov operativni sistem i entuzijazam su prihvatili programeri sirom celog sveta, te se novi operativni sistem raširio po celom svetu, postavši operativni sistem sa najbržim razvojem. Danas u svetu postoji preko 80 poznatih distribucija Linux-a, s time da se njihov broj stalno povećava. Najveći uticaj na razvoj Linux-a ima, naravno, Internet, preko kog je omogućena saradnja programera iz celoga sveta.&lt;/p&gt;
&lt;p&gt;Distribuiranje operativnog sistema Linux, u svetu, podleze sledecim pravilima:
- Linux operativni sistem i software za Linux, mozete slobodno kopirati i distribuirati, i to možete naplaćivati,
- svako kome distribuirate Linux (i software za Linux) ima pravo da kopije besplatno daje nekom drugom,
- uz distribucjiu Linux-a morate da distribuirate i izvorni kod, ili da ga učinite dostupnim samo za troškove presnimavanja.&lt;/p&gt;
&lt;p&gt;Ideja je u tome da je programerima dopušteno da distribuiraju kopije, i da se ohrabruju u tome, a da se usluge održavanja naplaćuju, sve dok sam software ostane potpuno slobodno dostupan.&lt;/p&gt;
&lt;p&gt;To je, takođe još jedna karakteristika Linux-a koja ga je učinila popularnim, i koja je omogućila njegov izuzetno brz razvoj, i koja ga je stavila rame uz rame sa "najpopularnijim" operativnim sistemom današnjice – Microsoft Windows-om.&lt;/p&gt;
&lt;p&gt;Sam Linux je, dakle, verzija Unix-a. Preuzeo je sve njegove dobre osobine, i dobio neke nove. I praktično, svi programi koji su pisani za UNIX, izvršavaće se i na Linux-u bez problema.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;Osnovne komponente operativnog sistema Linux&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Linux se sastoji iz dve osnovne komponente:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;kernela, ili takozvanog jezgra sistema&lt;/li&gt;&lt;li&gt;shell-a, ili takozvane školjke sistema.&lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;Kernel je jezgro celog sistema. Ono kontroliše pristup kompletnom kompjuterovom hardware-u, rasopred rada procesa, organizaciju memorije, datoteka i raspodelu sistemskih resursa.&lt;/p&gt;
&lt;p&gt;Shell je komandni interfejs, koji interpretira ulazne podatke i aktivira odgovarajuće sistemske programe koji čine kernel sistema. Svaki korisnik, uključivanjem u sistem započinje svoj shell proces, pomoću kog može da aktivira svoje shell komande i programe. Postoji nekoliko shell-ova, od kojih su najpoznatiji Bash, Bash New, Bourne, Bourne Again, Korn i C.&lt;/p&gt;
</content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Nikola Kavečan</dc:creator>
    <dc:rights></dc:rights>
    
      <dc:subject>Osnove Linuxa</dc:subject>
    
    <dc:date>2007-08-08T07:37:08Z</dc:date>
    <dc:type>Page</dc:type>
  </item>





</rdf:RDF>
