Čo je UNIX? Definícia, história a filozofia operačného systému
Objavte UNIX: jeho definíciu, vývoj od roku 1969, filozofiu návrhu a vplyv na Linux a moderné OS. Jasné vysvetlenie, história a praktické použitie.
UNIX je počítačový operačný systém pôvodne vyvinutý v roku 1969 v Bell Labs. Vytvorili ho Ken Thompson, Dennis Ritchie, Douglas McIlroy a ďalší. Na jeho napísanie použili assembler. V roku 1972 bol kód Unixu prepísaný pomocou nového programovacieho jazyka C, čo výrazne zlepšilo jeho prenositeľnosť medzi rôznymi typmi hardvéru. Operačný systém Unix je viacpoužívateľský a viacprocesorový systém: môže súčasne spúšťať niekoľko aplikačných programov pre viac ako jedného používateľa. Je tiež dobre prispôsobený prevádzke v sieti počítačov a mnoho jeho nástrojov podporuje sieťovú prácu.
Krátka história
UNIX vznikol ako experimentálny systém v Bell Labs a rýchlo získal popularitu v akademickom a profesionálnom prostredí. Prepísanie jadra do jazyka C umožnilo jeho ľahšie prenosy na nové platformy, čo prispelo k jeho rozšíreniu. Počas 70. a 80. rokov vznikali rôzne komerčné varianty (napr. System V, BSD), ktoré priniesli vlastné rozšírenia a odlišnosti. Neskôr sa vyvinula norma POSIX, ktorá uľahčila prenosnosť a zlučiteľnosť programov medzi rôznymi implementáciami.
Filozofia Unixu
Mnohé myšlienky v systéme Unix boli nové a ovplyvnili návrh neskorších systémov. Medzi základné princípy patrí:
- používanie malých, samostatných nástrojov, ktoré robia jednu vec dobre, a ich spájanie pomocou potrubí (pipes);
- jasné rozdelenie medzi jadrom (kernel) a používateľským priestorom (user space);
- text ako univerzálny formát na výmenu dát medzi programami;
- hierarchický súborový systém, kde je takmer všetko reprezentované ako súbor (vrátane zariadení);
- stabilné a dobre zdokumentované rozhrania, ktoré umožňujú vývoj nástrojov a skriptov.
Z tohto dôvodu sa hovorí o "filozofii Unixu". Systémy ako Linux, aj keď nepoužívajú pôvodný kód systému UNIX, preberajú tieto myšlienky a názvy príkazov. Linux preto nie je identický s originálnym UNIXom, ale je "Unix-like" — teda podobný Unixu.
Architektúra a základné vlastnosti
Unix rozlišuje viacero základných konceptov:
- Kernel — jadro systému riadi procesy, pamäť, súborový systém a zariadenia;
- Procesy a multitasking — Unix efektívne spravuje súbežné procesy (preemptívny multitasking);
- Viac používateľov — systém podporuje vedenie samostatných používateľských kont s oprávneniami;
- Prístupová práva — súbory a adresáre majú vlastníka a nastavené práva (čítanie, zápis, spustenie) pre vlastníka, skupinu a ostatných;
- Súborové systémy — Unix podporuje rôzne súborové systémy, pričom hierarchická štruktúra je základom práce so súbormi a adresármi.
Bezpečnosť
Počítačová bezpečnosť je v Unixe dôležitá, pretože k systému môže mať prístup mnoho ľudí lokálne aj cez sieť. Základné bezpečnostné mechanizmy zahŕňajú: spravovanie užívateľských účtov, oprávnenia súborov, skupinové politiky, auditovanie a (v modernejších implementáciách) rozšírenia ako SELinux alebo AppArmor na kontrolu prístupu na úrovni jadra. Správca systému (root) má vysoké privilégiá, preto je dôležité minimalizovať priame používanie tohto účtu a používať mechanizmy ako sudo.
Shell a príkazové rozhranie
Jedným zo spôsobov používania systému Unix je rozhranie príkazového riadka. Používatelia spúšťajú príkazy a programy zadávaním textu. Naučiť sa ho vyžaduje čas, ale je to veľmi výkonný a flexibilný spôsob práce. Väčšina správcov systémov a vývojárov ho stále preferuje. Príkazy sa spúšťajú v shelli, ktorý sa môže v jednotlivých systémoch líšiť (príklady: sh, bash, zsh, ksh). Shell poskytuje skriptovanie, presmerovania, potrubia a ďalšie mechanizmy, ktoré uľahčujú automatizáciu úloh.
Grafické používateľské rozhranie (GUI)
Ďalšou metódou je grafické používateľské rozhranie. Systém X Window (X11) je tradičné a rozšírené grafické rozhranie pre systémy Unix a Unix-like. X Window System poskytuje základný mechanizmus na vykresľovanie okien a komunikáciu medzi klientmi a serverom, no neobsahuje správu okien — na to sú potrebné správca okien alebo správca pracovnej plochy (window manager / desktop environment). Samotný X má množstvo protokolov a rozšírení.
Niektoré z obľúbených správcov pracovnej plochy a okien sú:
Okrem X11 sa v novších systémoch používa aj Wayland — modernejší zobrazovací protokol, ktorý zjednodušuje architektúru a môže priniesť lepší výkon a bezpečnosť. GUI v Unix-like systémoch zvyčajne podporujú okná, dialógové okná, prácu s myšou a klávesnicou a sú navrhnuté tak, aby boli používateľsky prístupné.
Aplikácie a softvér
Pre systém X Window je k dispozícii mnoho tisíc programov. Existujú natívne aplikácie ako textové editory, tabuľkové procesory, vývojárske nástroje a tiež množstvo voľne dostupného softvéru vrátane projektov s otvoreným zdrojovým kódom. Unix systémy sú známe bohatou sadou príkazov a utilít (sed, awk, grep, find, tar a ďalšie), ktoré umožňujú efektívnu prácu so súbormi a textom.
Varianty Unix a Unix-like systémy
Originálny UNIX dal vzniknúť mnohým derivátom a implementáciám. Medzi komerčné varianty patria napríklad Solaris (Sun), AIX (IBM) alebo HP-UX (Hewlett-Packard). Z rodiny BSD vznikli systémy ako FreeBSD, OpenBSD a NetBSD, ktoré sú príbuzné pôvodnému Unixu. macOS od Apple tiež vychádza z Unixu (konkrétne z NeXTSTEP a BSD) a je certifikovaný ako UNIX v zmysle normy.
Pre koho je UNIX vhodný
Unix a unix-like systémy sú vhodné pre servery, vývojové pracoviská, vedecké výpočty a profesionálne prostredia, kde je priorita stabilita, spravovateľnosť a sieťová prevádzka. Vďaka modulárnej filozofii a silným administračným nástrojom sú často používané v infraštruktúre a pri správe veľkých systémov.
Záver
UNIX mal a stále má veľký vplyv na vývoj moderných operačných systémov. Jeho jednoduché a konzistentné princípy — malé nástroje, textové rozhranie, jasné rozhrania medzi komponentami a dôraz na prenositeľnosť — formovali spôsob, akým sa systémy navrhujú dodnes. Aj keď existujú rôzne implementácie a varianty, základné myšlienky Unixu zostávajú bežne používané v IT svete.

História systému UNIX a jeho variantov
Dva typy Unixu
V súčasnosti existujú dva druhy operačných systémov, ktoré sú podobné systému UNIX.
Prvou skupinou sú všetky tie, ktoré zdieľajú časť kódu jadra s pôvodným kódom z Bell Labs v AT&T. Patria sem komerčné typy UNIXu: Solaris alebo AIX.
Do druhej skupiny patria slobodné operačné systémy, ktoré majú zvyčajne v názve BSD, ako napríklad FreeBSD, OpenBSD a NetBSD. Tieto systémy sú založené na slobodnom BSD. Mac OS X je tiež založený na BSD.
Existujú aj slobodné systémy založené na jadre Linuxu. Tieto systémy nezdieľajú žiadny kód s pôvodným systémom UNIX. Systémy BSD zdieľajú s pôvodným Unixom len veľmi málo kódu, pretože veľká časť kódu bola prepísaná v priebehu mnohých rokov. Mnohí ľudia používajú termíny Unix a Unixu podobné systémy, aby boli jasné.
Väčšinu aplikácií je možné spustiť na akomkoľvek modernom systéme Unix alebo podobnom systému Unix. Prostredia KDE a GNOME boli vyvinuté pre Linux a neskôr upravené tak, aby ich bolo možné spustiť aj na komerčných typoch Unixu.
Otázky a odpovede
Otázka: Čo je to UNIX?
A: UNIX je počítačový operačný systém, ktorý bol prvýkrát vyvinutý v roku 1969 v Bell Labs.
Otázka: Kto vytvoril UNIX?
Odpoveď: Vytvorili ho Ken Thompson, Dennis Ritchie, Douglas McIlroy a ďalší.
Otázka: Ako bol UNIX napísaný?
Odpoveď: Bol napísaný pomocou jazyka assembler.
Otázka: Čo umožňuje operačný systém Unix?
Odpoveď: Operačný systém Unix umožňuje súčasný beh viacerých používateľov a procesov na tom istom počítači alebo sieti počítačov.
Otázka: Čo je "filozofia Unixu"?
Odpoveď: "Filozofia Unixu" sa vzťahuje na myšlienku, že mnohé iné operačné systémy skopírovali myšlienky Unixu, čo viedlo k jeho vplyvu v mnohých rôznych typoch systémov.
Otázka: Je Linux typom systému UNIX?
Odpoveď: Nie, Linux nepoužíva kód systému UNIX, ale zdieľa niektoré myšlienky a príkazy, čo z neho robí skôr systém "podobný Unixu" než skutočný systém UNIX.
Otázka: Aké sú dva spôsoby používania systému Unix?
Odpoveď: Systém Unix sa dá používať dvoma spôsobmi: pomocou rozhrania príkazového riadka alebo pomocou grafického používateľského rozhrania (GUI).
Prehľadať