kazalo nazaj naprej osnovni koncepti sistema unix jedro kernel jedro kernel je osnova vsakega operacijskega sistema unix nalozi se ob zagonu sistema system boot namesceno je v delovnem pomnilniku racunalnika zato mora biti majhno jedro upravlja z vsemi sistemskimi viri in jih prikazuje vsem uporabnikom kot koherenten sistem glavne funkcije ki jih izvaja jedro so upravljanje racunalnikovega pomnilnika in njegova alokacija procesom razporejanje dela cpe tako da je delo vsakega uporabnika izvedeno cimbolj ucinkovito organzacija prenosa podatkov iz enega dela racunalnika na drugi sprejem ukazov od lupine in njihovo izvajanje uveljavljanje dostopnih dovoljenj ki veljajo nad datotecnim sistemom lupina shell lupina shell je program ki omogoca uporabnikom da interaktirajo z operacijskim sistemom unix lupina je interpreter ukazne vrstice ki bere uporabnikov vhod in izvaja ukaze ter se obnasa kot uporabniski vmesnik za sistem unix ukaze ki jih vnese uporabnik lupina poda operacijskemu sistemu ta pa jih izvede rezultate potem lupina poda nazaj in jih prikaze na uporabnikovem zaslonu ko se uporabnik prijavi v operacijski sistem unix pride v program imenovan lupina njeno najavko lahko vidi na spodnji levi strani zaslona najavka shell prompt je znak na zacetku ukazne vrstice ki oznacuje da je lupina pripravljena na sprejem ukazov ta znak je ponavadi znak za odstotke ali znak dolar na voljo je vec lupin in uporabnik lahko sam izbere katero bo uporabljal bourne shell sh to je originalna lupina sistema unix ki jo je napisal steve bourne iz bell labs na voljo je na vseh sistemih unix ta lupina nima interaktivnih zmoznosti kot jih nudijo novejse lupine na primer c shell ali korn shell zato je priporocljivo uporabljati druge lupine ki nudijo te moznosti bourne shell nudi jezik ki je enostaven za uporabo s katerim lahko programirate v lupini c shell csh to lupino so napisali na university of california berkley oponasa jezik c in je primerna predvsem za interaktivno delo z racunalnikom tc shell tcsh ta lupina nudi vse moznosti lupine c shell ter hkrati omogoca emacs stil urejanja ukazne vrstice korn shell ksh to lupino je napisal david korn iz bell labs danes predstavlja standardno lupino v sistemih unix nudi vse moznosti lupin c shell in tc shell hkrati z jezikom za programiranje v lupini ki je podoben tistemu iz originalne lupine bourne shell zato je ta lupina najucinkovitejsa priporocljiva je za standardno interaktivno lupino bourne again shell bash ta lupina je v javni lasti napisali pa so jo pri free software foundation gnu initiative njen namen je da bi bila polna implementacija specifikacij ieee posix shell and tools ta lupina je siroko uporabljana v akademskih krogih bash nudi vse interaktivne moznosti lupin c shell in korn shell njen programski jezik je kompatibilen z lupino bourne shell programi in procesi program je izvrsljiva datoteka ki se nahaja na disku proces je izvajana instanca programa kadar vpisemo ukaz v unixu se poklice program ko ta program tece ga imenujemo proces proces je delujoc program proces je dinamicen in uporablja sistemske vire vsak program lahko pozene vec procesov pomembno je vedeti da lahko tece poljubno stevilo procesov ki izvajajo dolocen program ceprav je v datotecnem sistemu le ena kopija tega programa ob zagonu operacijskega sistema se zazene en sam proces ta proces je oce parent vseh nadaljnih procesov vsak proces ki ga kreira sistem ima svojo stevilko imenovano pid process id ko se prijavite v sistem se zazene proces ki izvaja program lupine vse procesi ki jih zazenete znotraj lupine kot je na primer izvajanje ukaza so otroci child tega procesa vsak proces ima lahko vec otrok a samo enega oceta x okna x okna x windows so okensko okolje za unix sisteme na zaslonu imate lahko odprtih vec oken hkrati v vsakem pa tece svoj program okna se lahko zazenejo avtomaticno pri prijavi v sistem ali pa jih pozenete rocno v ukazni vrstici ukazi osnovna oblika unix ukazov je a an so argumenti ukaza ukaz a a a an standardni vhod izhod in izhod za napake lupina vedno odpre ali tvori tri datoteke to so standardni vhod standard input standardni izhod standard output in standardni izhod za napake standard error output vsaki od treh datotek je prirejena tudi stevilcna oznaka datotecna stevilka ali file descriptor in sicer zaporedoma in standardni vhod standardni izhod izhod za obvestila o napakah med izvajanjem programov se vhodno izhodne operacije usmerijo na standardno vhodno oz izhodno datoteko kadar eksplicitno ne navajamo imen drugih datotek na datoteko za izpis napak se zapisujejo obvestila sistema unix o napakah med izvajanjem programa standardni vhod je vhodna datoteka in je ponavadi prirejena tipkovnici standardni izhod in standardni izhod za napake sta izhodni datoteki ki sta ponavadi prirejeni zaslonu uporabnikovega termilana preusmeritev standardnega vhoda izhoda za lupino je znacilno da lahko katero koli standardno datoteko nadomesti s katero koli drugo datoteko tako lahko dolocimo da klicani program bere vhodne podatke iz datoteke namesto s tipkovnice to imenujemo preusmeritev vhoda v spodnjem primeru ukaz bere vhodne podatke iz datoteke podatki ukaz arg podatki podobno lahko preusmerimo tudi izhod tako da program izpisuje rezultate v datoteko namesto na zaslon ukaz arg izhod isto velja tudi za izhod za napake ukaz arg napake