Kaj je unix: razvoj, funkcije in uporaba operacijskega sistema

Uradna opredelitev Unixa je registrirana blagovna znamka skupine The Open Group, družine računalniških operacijskih sistemov in orodij. Za uporabo blagovne znamke Unix mora prodajalec operacijskega sistema plačati licenčnino in letne licenčnine. Uradno licencirani operacijski sistemi Unix vključujejo Apple, Oracle, AIX, IRIX (SGI) in Hewlett-Packard.

Zgodovina sistema UNIX

Zgodovina sistema UNIX

Če želimo pojasniti, kaj je Unix, moramo začeti z zgodovino razvoja. V šestdesetih letih sta General Electric in Bell Labs na Tehnološkem inštitutu v Massachusettsu poskušala razviti interaktivni sistem Multics, ki bi več uporabnikom omogočil hkraten dostop do glavnega računalnika. Podjetje Bell Labs je bilo razočarano nad rezultati, zato se je umaknilo iz projekta, vendar sta se računalniška znanstvenika Ken Thompson in Dennis Ritchie odločila nadaljevati delo, ki je privedlo do razvoja sistema Unix.

Thompson in Ritchie sta vodila skupino raziskovalcev pri razvoju hierarhičnega datotečnega sistema, prevajalnika ukazne vrstice, nekaterih manjših uporabnih programov ter konceptov procesov in datotek naprav.

Mesec dni pozneje je Thompson predstavil samostojen operacijski sistem z asemblerjem, urejevalnikom in lupino, imenovan YEW-nihks, ki je temeljil na zgodnejši različici sistema Multics. "Unix" je bil veliko manjši in je bil sistem z enim samim opravilom.

do leta 1973 je bil napisan v skupnem jeziku, četrta izdaja Unixa pa je bila na novo napisana v jeziku C. Takrat je bil revolucionaren, saj je operacijski sistem veljal za preveč zapletenega, da bi ga bilo mogoče napisati v jeziku visoke ravni. S tem se je povečala prenosljivost sistema Unix na druge računalniške platforme. V začetku osemdesetih let prejšnjega stoletja "Unix" je bil priljubljen v akademskem okolju, nato pa so ga komercialna zagonska podjetja, kot sta Solaris Technologies in Sequent, prevzela v širšem obsegu.

V poznih 90. letih 20. stoletja je mreža programerjev skupaj razvila Linux in Berkeley Software Distribution (BSD), kar je privedlo do vse večje priljubljenosti sistemov, podobnih Unixu. Danes večina sodobnih računalniških in mobilnih naprav uporablja OS "Unix".

Sodobni "Unix" in vmesnik Single UNIX Specification sta last podjetja The Open Group. Najnovejša različica certifikacijskega standarda UNIX V7 je bila četrta sprememba, izdana v letu 2013.

Značilnosti konceptov OS

Značilnosti konceptov OS

Za razumevanje Unixa je treba upoštevati njegovo edinstvenost v nizu konceptov operacijskih sistemov. Njegova glavna značilnost je, da uporablja navadno besedilo za shranjevanje podatkov, hierarhične datotečne sisteme in nekatere vrste medprocesorske komunikacije (IPC).

Uporabniki sistema Unix lahko v ukazni vrstici povežejo programska orodja in majhne programe. To je program na uporabniški ravni. Razvijalci lahko napišejo svojo lupino in dodajo nove ukaze, ne da bi spremenili samo lupino, saj uporablja isto jezik za interaktivni ukazi, ki so enaki za pisanje skript.

Koncepti Unixa so vplivni iz več razlogov. Sistem Unix je bil gonilna sila razvoja interneta in spreminjanja računalnikov v omrežno orodje. Vse vrste datotek obravnava kot preprosta bajtna polja, kar v primerjavi z drugimi operacijskimi sistemi predstavlja poenostavljen datotečni model.

Unix je populariziral hierarhični datotečni sistem s poljubno ugnezdenimi podimeniki. Prej so lahko operacijski sistemi razdelili pomnilnik le na določeno število ravni.

Razvijalci tega sistema si zaslužijo priznanje, ker so v prakse razvoja programske opreme vnesli modularnost in ponovno uporabnost ter spodbudili gibanje za programska orodja. Ustvarili so tudi nabor kulturna pravila za razvoj programske opreme in razvil filozofijo Unixa, ki je vplivala na skupnost IT.

Arhitektura operacijskega sistema UNIX

Struktura operacijskega sistema UNIX

Arhitektura Unix je računalniški operacijski sistem, ki uteleša filozofijo Unixa. Upošteva standarde, kot je Enotna specifikacija UNIX (SUS) ali podobno Nabor standardov POSIX IEEE.

Podroben pregled družine operacijskih sistemov UNIX se začne z razlago strukturne strukture, ki jo sestavljajo trije deli: jedro, lupina in programi.

Nekatere ključne značilnosti koncepta arhitekture Unix so centralizirano jedro operacijskega sistema, ki upravlja delovanje sistema in procesov. Vsa nejedrna programska oprema je organizirana v ločene procese, ki jih upravlja jedro, ki je središče operacijskega sistema, programom dodeljuje čas in pomnilnik Unixa ter skrbi za shranjevanje datotek kot odgovor na sistemske klice.

Sistemi Unix so pretežno večopravilni - več procesov se lahko izvaja hkrati ali v majhnih časovnih intervalih in skoraj hkrati, jedro pa lahko vsak proces prekine in opusti izvajanje. Datoteke so na disku shranjene v hierarhičnem datotečnem sistemu z enim vrhnjim mestom v sistemu (korenski ali "/") z datotekami, imeniki in podimeniki. Z nekaj izjemami se naprave in nekatere vrste komunikacije med procesi upravljajo in prikazujejo kot datoteke ali psevdodatoteke v hierarhiji datotečnega sistema.

Operacijski sistem UNIX podpira naslednje funkcije in zmogljivosti:

  1. Večopravilnost in večuporabniški vmesnik.
  2. Programski vmesnik.
  3. Uporaba datotek kot abstrakcij naprav in drugih predmetov.
  4. Vgrajeno omrežje (standard TCP/IP).
  5. Procesi stalnih sistemskih storitev, imenovani "z demoni" in upravljani init ali inet.

Datoteke in procesi

Vse v sistemu UNIX je bodisi datoteka bodisi proces. Proces je izvedljivi program, ki ga identificira edinstven identifikator procesa, PID. Datoteka Unix je niz podatkov. Ustvarjajo jih uporabniki z urejevalniki besedil in tekočimi prevajalniki.

Primeri datotek:

  • dokument (poročilo, povzetek itd.).д.);
  • besedilo programa, napisanega v nekem programski jezik na visoki ravni;
  • navodila, ki so neposredno razumljiva stroju in nerazumljiva povprečnemu uporabniku, npr. niz binarnih številk;
  • imenik z informacijami o vsebini, ki je lahko mešanica drugih imenikov (podimenikov) in običajnih datotek.

Vse datoteke Unixa so razvrščene v imeniški strukturi. Datotečni sistem je organiziran v hierarhični strukturi, ki spominja na obrnjeno drevo. Vrh hierarhije se tradicionalno imenuje koren (root), zapisan s poševnico ("/").

Prikaz in urejanje besedilnih datotek. Za UNIX je na voljo več programov za urejanje besedila, med katerimi sta najbolj znana vi in Emacs. Številni uporabniki uporabljajo pico, preprost urejevalnik besedila, ki je priložen "Pine ". Če želite na primer preprosto prikazati vsebino datoteke, vnesite "$pico", in nato ime datoteke, ki jo je treba ustvariti.

Urejevalnik besedila Pico

Funkcije urejanja v programu pico se prikličejo s hkratnim pritiskom tipk, npr. Ctrl in R.

Funkcija izreži in prilepi v programu pico:

  1. Pojdite na želeno vrstico besedila in pritisnite "^K". celotna vrstica mora izginiti.
  2. Pojdite na konec besedila in pritisnite "^U". To vstavi vrstico besedila na novo mesto.
  3. Besede v besedilu lahko črkujete z "^W".
  4. Če želite delo shraniti, ne da bi ga opustili, vnesite "^O".
  5. Za izhod vnesite "^X". Če je nespremenjenih podatkov, bo uporabnik pred izhodom iz sistema pozvan, da to stori.

Pico nima veliko naprednih funkcij, kot jih imajo drugi urejevalniki, kot sta vi in Emacs, vendar je enostaven za uporabo in vsekakor primeren za urejanje majhnih datotek.

Unixu podobni sistemi

Unixu podobni sistemi

Med njimi so operacijski sistemi, ki vodijo kot Unixu podobni sistemi, ki zagotavljajo podobne pripomočke, vendar zanje skupina The Open Group nima licence. Te operacijske sisteme običajno imenujemo Unixu podobni operacijski sistemi. To so različne distribucije Linuxa. Na primer Red Hat Enterprise Linux, Ubuntu in CentOS ter več potomcev družine operacijskih sistemov Unix - Berkeley Software Distribution.

ni jasne opredelitve "Unix"-podobna programska oprema, vendar se izraz nanaša na operacijski sistem, ki se obnaša kot Unix. To se lahko nanaša na njegovo brezplačno in odprtokodno. Nekateri razvijalci programske opreme trdijo, da obstajajo tri vrste. Genetsko so takšni sistemi sorodni prvotni bazi Bell Labs, pozneje AT&T na primer pri BSD, ki so ga raziskovalci na kalifornijski univerzi razvijali v poznih sedemdesetih in zgodnjih osemdesetih letih prejšnjega stoletja.

Blagovne znamke in podobni sistemi so v skladu z enotno specifikacijo "Unix". Funkcionalni sistemi, kot so Unix, Linux in Minix, se obnašajo približno tako, kot je določeno. Na primer, imeti morajo program, ki nadzoruje seje prijave in ukazne vrstice.

Lastniški operacijski sistemi "Unix" in podobne različice delujejo na najrazličnejših digitalnih arhitekturah in se pogosto uporabljajo na spletnih strežnikih, mainframih in superračunalnikih. V zadnjih letih so pametni telefoni, tablični računalniki in osebni računalniki različice ali različice Unixa postajajo vse bolj priljubljene.

Ključne sestavine

Za lastniške sisteme Unix in njihove različice je značilnih več ključnih komponent:

  1. Jedro - je glavni program za upravljanje operacijskega sistema, ki upravlja pomnilnik, sistemske klice in druge funkcije nizke ravni, ki so skupne večini programov, ter zagotavlja gonilnike za nadzor strojne opreme.
  2. Ovojnica je interaktivni program, ki zagotavlja vmesnik med uporabnikom in jedrom. Lupina interpretira ukaze, ki jih vnese uporabnik ali jih zagotovi skript lupine, in jih posreduje jedru v izvajanje. Ovojnice, ki so na voljo za uporabo v operacijskih sistemih Unix in Unixu podobnih operacijskih sistemih, vključujejo sh (Bournova lupina), bash (Bournova lupina), csh (lupina C), tcsh (lupina TENEX C), ksh (Kornova lupina) in zsh (lupina Z).
  3. Datotečni sistem uporablja hierarhično imeniško strukturo s korenskim imenikom ("/") na vrhu. Datotečni sistem je nameščen iz korenskega imenika vsakega sistema v/N, kjer je domači imenik vsakega uporabnika v /N/u/, datoteke, povezane s programsko opremo, pa so v/N/soft. Če želite ugotoviti, kateri datotečni sistemi so nameščeni v sistemu Unix ali podobnem sistemu, uporabite ukaz mount. Večina vključuje orodja in knjižnice za pisanje, sestavljanje in razhroščevanje programov v jezikih C, C+ in Fortran.
  4. Ukazi Unixa in Unixu podobnih sistemov vključujejo veliko jedro standardnih pripomočkov za urejanje besedila, pisanje, sestavljanje in upravljanje programov, obdelavo, upravljanje uporabniškega okolja ter pridobivanje informacij o sistemu in njegovih uporabnikih. Ukazi omogočajo argumente, znane kot možnosti, s katerimi lahko spremenite njihovo privzeto vedenje. Uporabniki vnesejo podatke v ukazno vrstico, lupina pa jih interpretira in posreduje jedru v izvajanje.

V Unixu ima uporabnik možnost uporabe ukazne vrstice (več nadzora in prilagodljivosti) ali grafičnega vmesnika (enostavneje).

Namen argumentov lupine

Uporabnik sodeluje z operacijskim sistemom UNIX prek posebnega programa, imenovanega lupina, ki zahteva ukaze in jih posreduje operacijskemu sistemu, da se po vnosu izvedejo. Ti so sestavljeni iz dveh delov: imena ukaza in argumentov. Določeni argumenti, imenovani možnosti, ki jih običajno vnesete s črko "-", spremenijo obnašanje ukaza na določen način, medtem ko drugi argumenti določajo predmete, npr. imena datotek, računalnike, uporabnike.

V naslednjem primeru: $ ls -l myfile "ls" je ime ukaza, "-l" in "myfile" pa sta argumenta. "-l" je možnost, ki spremeni obnašanje ukaza "ls". Vsi ukazi ne zahtevajo parametrov ali argumentov. Mnogi imajo inteligentne privzete vrednosti, če ni ničesar navedeno.

Ovojnica sistema Unix je na voljo v dveh glavnih različicah: lupina Bourne, sh, in lupina C, csh. Druge priljubljene lupine so ksh, bash, tcsh. Vsaka lupina uporablja poseben znak ali niz znakov, s katerim uporabnika zaprosi za ukaz, ki se imenuje privzeti poziv lupine za bash, in sicer $. Če ni navedeno drugače, se enako dobro obnesejo tudi z večino drugih lupin.

Ker UNIX podpira več kot enega uporabnika hkrati, se morate sistemu identificirati, preden ga začnete uporabljati. Ta postopek se imenuje prijava. Ko uporabnik se poveže z računalnikom, za prijavo v sistem bo moral navesti dva podatka - prijavno ime, ki predstavlja identiteto sistema, in geslo, ki povečuje verjetnost, da je oseba, ki vstopa v sistem, res tista, za katero se predstavlja.

Osnovni ukazi UNIX

Osnovni ukazi UNIX

Ovojnica tcsh ima nekatere funkcije, ki uporabniku pomagajo pri vnosu ukazov. Če želite dopolniti ime datoteke, vnesite del imena ukaza, datoteke ali imenika. Po pritisku tipke [ Tab ] bo lupina tcsh samodejno dopolnila preostanek imena. Če najde več kot eno ime, ki se začne s črkami, ki jih je vnesel uporabnik, se oglasi s piskom in pozove k vnosu dodatnih črk, preden ponovno pritisnete tipko tab. Lupina hrani seznam vnesenih ukazov. Če je treba ukaz ponoviti, se uporabijo naslednje tipke kazalec za pomikanje po seznamu navzgor in navzdol ali vnos zgodovine za seznam prejšnjih ukazov.

Primeri osnovnih ukazov UNIX vključujejo

  1. ls:seznam datotek.
  2. ls -l: prikaže seznam datotek v dolgi obliki.
  3. cd ..: premaknite se v imenik nad trenutnim imenikom.
  4. cp ime datoteke1 ime datoteke2: Kopiranje datoteke, ime datoteke.
  5. chmod: sprememba dovoljenja za branje, pisanje in izvajanje datotek;
  6. mkdir: ustvari imenik.

Uporaba terminala

To je Aplikacija deluje, ko uporabnik pošlje ukaze neposredno računalniku, ta pa rezultate vrne neposredno uporabniku. Za to je na voljo vmesni program, znan kot terminal ali ukazna vrstica. Kar uporabnik zapiše, se pošlje terminalu, ki izračuna, katere ukaze je treba izvesti, in izda ukaz za izvedbo. V angleščini se terminal imenuje shell, ker pokriva operacijski sistem in tako skriva nekatere njegove zaplete ter olajša interakcijo z njim.

Terminal je program z zmožnostjo izvajanja drugih programov, namesto da bi sam izvajal izračune. Najbolj priljubljen terminal Unix se imenuje Bash - iz Bourne Again Shell, ker izhaja iz prejšnje različice, ki jo je napisal Stephen Bourne. Bash je privzeti terminal v večini sodobnih implementacij Unixa in v večini paketov, ki zagotavljajo Unixu podobna orodja za Windows. Uporaba basha ali katerega koli drugega terminala je včasih lažja za programiranje.

Ukazi so kratki, pogosto le nekaj znakov dolgi, njihova imena so pogosto skrivnostna, njihov rezultat pa je besedilni niz in ne nekaj vizualnega, na primer grafika. Po drugi strani pa terminal z nekaj tipkami omogoča združevanje obstoječih orodij v zmogljive cevovode in samodejno obdelavo velikih količin podatkov.

Avtomatizacija ne omogoča le večje produktivnosti dela, temveč tudi večjo ponovljivost operacij, saj omogoča, da se procesi z nekaj preprostimi ukazi ponovijo na enak način. Poleg tega je ukazna vrstica pogosto najlažji način interakcije z oddaljenimi računalniki in superračunalniki. Poznavanje terminala je praktično potrebno za uporabo različna specializirana orodja in vire, vključno z visokozmogljivimi računalniškimi sistemi.

Grozdi in računalništvo v oblaku postajajo vse bolj priljubljeni za analizo znanstvenih podatkov, sposobnost interakcije z njimi pa postaja nujna spretnost. Uporabnik lahko veščine, ki se jih nauči v ukazni vrstici, uporabi pri reševanju najrazličnejših znanstvenih in uporabniških računalniških problemov.

Ustvarjanje novih imenikov

Zdaj, ko ima uporabnik osnovno znanje o datotečnem sistemu in ravnanju z njim, lahko začne ustvarjati in upravljati svoje datoteke in imenike. Imenike ustvarimo z mkdir in izbrišemo z rmdir.

Če želite na primer ustvariti dva nova imenika, vnesite: $ mkdir test test2.Zdaj odstranite drugi imenik, ki ste ga pravkar ustvarili: $ rmdir test2. Ta rmdir bo izbrisal samo prazne imenike. Če imenik vsebuje datoteke, jih mora uporabnik najprej izbrisati, preden uporabi rmdir. Prav tako lahko rekurzivno izbrišete imenik in njegovo vsebino z uporabo ustrezne možnosti v ukazu rm.

Če morate nekatere obstoječe datoteke iz drugega dela datotečnega sistema kopirati v testni imenik, uporabite ukaz cp.

Preden nadaljujete, pojdite v novi imenik "test", ki ste ga pravkar ustvarili. Uporabnik bo to območje uporabljal za eksperimentiranje in tako zmanjšal morebitno škodo na drugih datotekah v domačem imeniku:

  • $ cd test;
  • $ pwd ;
  • /home/xxxxx/test.

Sedaj lahko v testni imenik s cp kopirate nekaj datotek:

  • $ cp/etc/motd.$ cp/etc/hosts;
  • $ cp/etc/group.$ ls.

Zgornji trije ukazi cp kopirajo obstoječe datoteke iz imenika "/etc" v trenutni imenik (sledi "."). Datoteko izbrišite z ukazom rm:

  • $ rm skupina ;
  • $ ls ;
  • gostitelji motd.

Nato eno od datotek premaknite z mv:

  • $ mv motd ;
  • $ ls.

Ker lahko cp, mv in rm uničijo podatke, ponujajo interaktivno možnost, ki uporabnika pred nadaljevanjem vpraša. To se sproži z možnostjo -i. Običajno sistemski administrator nastavi račun za privzeto uporabo te možnosti.

cp in mv zahtevata dva argumenta: obstoječo lokacijo in ciljno lokacijo datoteke, ki jo želite kopirati ali premakniti. Cilj je lahko druga datoteka ali imenik.

Prednosti vodilnega internetnega operacijskega sistema

Prednosti vodilnega operacijskega sistema

Nobena vrsta operacijskega sistema ne more ponuditi univerzalnih odgovorov na vse zahteve uporabnikov. Gre za izbiro in sprejemanje odločitev na podlagi informacij. Vendar ima Unix toliko prednosti, da je postal najbolj priljubljen operacijski sistem.

Splošne prednosti operacijskega sistema Unix:

  1. Prilagodljivejši in jih je mogoče namestiti na več vrst računalnikov, vključno z glavnimi računalniki, superračunalniki in mikroračunalniki.
  2. Stabilen in manj nagnjen k izpadom kot Win, zato zahteva manj administracije in vzdrževanja.
  3. Ima več vgrajenih funkcij za varnost in dovoljenja kot Win.
  4. Več procesorske moči kot Win.
  5. je vodilni na področju internetnega vzdrževanja. Skoraj 90 % uporabnikov interneta uporablja operacijske sisteme Unix, na katerih je nameščen Apache, najbolj razširjen spletni strežnik na svetu, ki je brezplačen.
  6. Posodobitve programske opreme iz Microsoft od uporabnika pogosto zahteva, da kupi novo strojno opremo ali potrebna programska oprema. Ne velja za sistem Unix.
  7. Večinoma brezplačni ali poceni odprtokodni operacijski sistemi družine Unix, kot sta Linux in BSD, so s svojo prilagodljivostjo in nadzorom zelo privlačni za mojstri začetniki računalniki.
  8. Številni najpametnejši programerji brezplačno razvijajo sodobno programsko opremo za hitro rastoče "odprtokodno gibanje".
  9. Unix navdihuje tudi nove pristope k razvoju programske opreme, kot so reševanje problemov združevanje enostavnejših orodij namesto ustvarjanja velikih monolitnih aplikacijskih programov.

Uporaba sistema Unix se je v zadnjem času zmanjšala, predvsem zaradi prehoda s platform RISC na alternative na osnovi x86, ki lahko številne delovne obremenitve sistema Unix izvajajo z večjo zmogljivostjo ob nižjih stroških. Strokovnjaki napovedujejo, da bo veliko organizacij še naprej uporabljalo Unix za kritična okolja, vendar bodo zaradi strategij posodobitve in konsolidacije IT zmanjšale svojo odvisnost od tega sistema.

Kljub temu je Unix še vedno najprimernejši sistem za številne primere uporabe, kot so programske aplikacije za vertikalno skaliranje in varnostne funkcije, kar dokazujejo številni pregledi Unixa. Pričakuje se, da se bo prodaja strežnikov v prihodnosti zmanjšala, vendar bodo aplikacije v finančni, vladni in telekomunikacijski industriji še naprej spodbujale uporabo sistemov Unix.

Članki na tem področju