{"id":76,"date":"2015-04-22T13:43:11","date_gmt":"2015-04-22T11:43:11","guid":{"rendered":"http:\/\/lekcije.mfp.co.rs\/?page_id=76"},"modified":"2015-08-27T09:06:22","modified_gmt":"2015-08-27T07:06:22","slug":"3-1-1-jezgro-operativnog-sistema","status":"publish","type":"page","link":"https:\/\/lekcije.mfp.co.rs\/?page_id=76","title":{"rendered":"3.1.1.Jezgro operativnog sistema"},"content":{"rendered":"<p>Najni\u017ei nivo, sama <b>osnova operativnog sistema<\/b>, naziva se <b>jezgro<\/b>, odnosno <i>kernel<\/i>. Svi ostali delovi operativnog sistema oslanjaju se na kernel i funkcioni\u0161u zahvaljuju\u0107i njemu. Kernel se sastoji iz nekoliko delova, od kojih su najva\u017eniji podsistemi za upravljanje [1]:<\/p>\n<ul>\n<li>procesima,<\/li>\n<li>memorijom,<\/li>\n<li>ulazom \/ izlazom,<\/li>\n<li>datotekama.<\/li>\n<\/ul>\n<p><b>Podsistem za upravljanje procesima<\/b> slu\u017ei za kontrolu programa koji se izvr\u0161avaju. Dana\u0161nji operativni sistemi omogu\u0107uju rad vi\u0161e programa istovremeno, koriste\u0107i tzv. <b>vi\u0161eprocesni rad<\/b> (<i>multitasking<\/i>). Svaki program se izvr\u0161ava u zasebnom procesu i, kao da to nije dovoljno, svaki program mo\u017ee <b>razgranati svoje izvr\u0161avanje u vi\u0161e niti<\/b> (<i>threads<\/i>). Zbog toga je potreban visok nivo kontrole kako bi svi programi imali pristup ra\u010dunarskim resursima i procesorskom vremenu. Da bi se spre\u010dilo da neki program, gre\u0161kom ili namerno, potpuno preuzme ra\u010dunar, koristi se tzv. <b>preventivni vi\u0161eprocesni rad<\/b> (<i>preemptive multitasking<\/i>), pomo\u0107u koga operativni sistem mo\u017ee i nasilno prekinuti izvr\u0161avanje programa i dodeliti resurse drugom programu.[2]<\/p>\n<p>U bliskoj vezi sa kontrolom procesa je i <b>podsistem za upravljanje memorijom<\/b>. Kontrolisanje paralelnog izvr\u0161avanja programa je mnogo slo\u017eenije ako se ima u vidu da jedan program mo\u017ee prebrisati memorijski prostor koji koristi drugi program, \u0161to u najboljem slu\u010daju dovodi do blokiranja samih programa, a u najgorem do ru\u0161enja celog operativnog sistema. Zbog toga se danas programi izvr\u0161avaju unutar zasebnih <b>virtuelnih ma\u0161ina<\/b>, koje predstavljaju simulaciju \u201era\u010dunara u ra\u010dunaru\u201c. Tako je svaki program sme\u0161ten u svoj \u201ebazen sa peskom\u201c (<i>sandbox<\/i>) i \u201emisli\u201c da je jedini koji se u tom trenutku izvr\u0161ava na ra\u010dunaru. Na ovaj na\u010din <b>programi su odvojeni jedan od drugog<\/b>, a konfliktne zahteve za memorijom i hardverom re\u0161ava sam operativni sistem.<\/p>\n<p><b>Podsistem za upravljanje ulaznim i izlaznim operacijama<\/b> u stvari predstavlja deo operativnog sistema pomo\u0107u koga programi pristupaju periferijskim ure\u0111ajima ra\u010dunara. Ovaj pristup omogu\u0107en je preko posebnih upravlja\u010dkih programa \u2013 <b>drajvera<\/b>.<\/p>\n<p>Kompjuter koji danas nazivamo PC ra\u010dunarom sastavljen je od komponenti velikog broja razli\u010ditih proizvo\u0111a\u010da. Programeri ne moraju da s ebrinu oko toga iz kojih delova se sastoji va\u0161 ra\u010dunar, po\u0161to operativni sistem programima pru\u017ea standardizovani interfejs za upravljanje hardverom.<\/p>\n<aside class=\"savet\">\n<h4>Nekada davno&#8230;<\/h4>\n<p>Ranije je svaki program morao da bude pravljen tako da podr\u017eava ve\u0107i broj razli\u010ditih ulazno-izlaznih ure\u0111aja. Tako bi jedna igra pisana za operativni sistem DOS morala da podr\u017eava razli\u010dite grafi\u010dke i zvu\u010dne kartice. Sre\u0107a pa ih nije bilo mnogo na tr\u017ei\u0161tu.<\/p>\n<p>U to vreme je korisnicima koji bi kupovali zvu\u010dnu karticu bilo najbitnije da je <b>Sound Blaster<\/b> kompatibilna, po\u0161to je tada ova kartica bila prakti\u010dno standard koji su podr\u017eavale skoro sve igre.<\/p>\n<p>Dana\u0161nji operativni sistemi stavljaju ta\u010dku na probleme ovog tipa.<\/p>\n<\/aside>\n<p>Drugim re\u010dima, ako bi program u jednom trenutku trebalo da odsvira neki zvuk, ne bi direktno pristupao zvu\u010dnoj kartici, ve\u0107 bi se obratio operativnom sistemu koji bi, putem drajvera za tu konkretnu zvu\u010dnu karticu, reprodukovao zvuk.<\/p>\n<p>Drajvere mo\u017ee isporu\u010divati proizvo\u0111a\u010d operativnog sistema ili proizvo\u0111a\u010d ure\u0111aja. Obi\u010dno su drajveri koje kreira proizvo\u0111a\u010d ure\u0111aja noviji i omogu\u0107uju kori\u0161\u0107enje punih mogu\u0107nosti ure\u0111aja, ali su tako\u0111e i vi\u0161e podlo\u017eni gre\u0161kama, koje, budu\u0107i da se radi o vitalnom delu operativnog sistema, mogu veoma lo\u0161e da uti\u010du na stabilnost celog sistema.<\/p>\n<p>Ovaj podsistem u sebe uklju\u010duje jo\u0161 jednu va\u017enu funkciju, a to je <b>upravljanje prekidima<\/b> (<i>interrupts<\/i>). Kada odre\u0111eni ure\u0111aj (ulazni, odnosno ulazno-izlazni) prosle\u0111uje podatke ra\u010dunaru, to radi preko zahteva za prekidom (<i>IRQ \u2013 interrupt request<\/i>). Tada procesor, odnosno kontroler na mati\u010dnoj plo\u010di, \u201eobrati pa\u017enju\u201c na ure\u0111aj kako bi primio podatke. Najjednostavniji primer ovakvog funkcionisanja je komunikacija tastature sa ra\u010dunarom.<\/p>\n<p>Jo\u0161 jedna veoma bitna funkcija operativnog sistema jeste pristup ure\u0111ajima spoljne memorije, za koji je zadu\u017een <b>podsistem za upravljanje datotekama<\/b> (fajlovima). Ovaj podsistem se oslanja na podsistem za kontrolu ulaza\/izlaza, s tim \u0161to u sebe uklju\u010duje i <b>fajl-sistem<\/b> koji vr\u0161i alociranje fajlova na konkretnom ure\u0111aju spoljne memorije.<\/p>\n<p><a href=\"http:\/\/lekcije.mfp.co.rs\/?page_id=74\">Slede\u0107a lekcija<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Najni\u017ei nivo, sama osnova operativnog sistema, naziva se jezgro, odnosno kernel. Svi ostali delovi operativnog sistema oslanjaju se na kernel i funkcioni\u0161u zahvaljuju\u0107i njemu. Kernel se sastoji iz nekoliko delova, od kojih su najva\u017eniji podsistemi za upravljanje [1]: procesima, memorijom, ulazom \/ izlazom, datotekama. Podsistem za upravljanje procesima slu\u017ei za kontrolu programa koji se izvr\u0161avaju. &hellip; <a href=\"https:\/\/lekcije.mfp.co.rs\/?page_id=76\" class=\"more-link\">\u041d\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u0435 \u0441\u0430 \u0447\u0438\u0442\u0430\u045a\u0435\u043c <span class=\"screen-reader-text\">3.1.1.Jezgro operativnog sistema<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":139,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/pages\/76"}],"collection":[{"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=76"}],"version-history":[{"count":4,"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/pages\/76\/revisions"}],"predecessor-version":[{"id":335,"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/pages\/76\/revisions\/335"}],"up":[{"embeddable":true,"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=\/wp\/v2\/pages\/139"}],"wp:attachment":[{"href":"https:\/\/lekcije.mfp.co.rs\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=76"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}