Operačný systém (OS) je základný softvér počítača. Bez neho by hardvér bol neschopný čohokoľvek zmysluplného a aplikácie by museli každé zariadenie ovládať samy od základov. OS je prostredník medzi hardvérom, softvérom a používateľom.
Správa procesov
Keď spustíme program, OS vytvorí proces — bežiacu inštanciu programu. OS je zodpovedný za:
- Plánovanie (scheduling) — rozhoduje, ktorý proces dostane čas procesora a na ako dlho.
- Multitasking — umožňuje zdanlivo súčasné bežanie viacerých programov prepínaním medzi nimi.
- Izoláciu — zabezpečuje, že jeden proces nemôže čítať ani zapisovať do pamäti iného procesu.
Moderné CPU sú tak rýchle, že dokážu prepínať medzi procesmi tisícky krát za sekundu. Preto sa zdá, akoby všetky aplikácie bežali naraz — v skutočnosti sa CPU rýchlo striedajú medzi nimi.
Správa pamäte
OS spravuje RAM a rozhoduje, ktorá časť pamäti patrí ktorému procesu. Kľúčové koncepty:
- Virtuálna pamäť — OS môže použiť časť disku ako "rozšírenú RAM" (swap). Je pomalšia, ale umožňuje spustiť viac programov, ako by sa zmestilo do fyzickej RAM.
- Ochrana pamäti — procesy nemôžu pristupovať k pamäti iných procesov bez povolenia.
Súborový systém
OS organizuje dáta na disku prostredníctvom súborového systému. Súborový systém definuje, ako sú súbory pomenované, ukladané a organizované do priečinkov (adresárov).
| OS | Bežný súborový systém |
|---|---|
| Windows | NTFS |
| macOS | APFS |
| Linux | ext4 |
Súborový systém tiež spravuje prístupové práva — kto môže súbor čítať, zapisovať alebo spúšťať.
Používateľské rozhranie
OS poskytuje rozhranie, cez ktoré používateľ komunikuje s počítačom:
- GUI (Graphical User Interface) — grafické rozhranie s oknami, ikonami a myšou. Príklady: Windows, macOS, GNOME (Linux).
- CLI (Command Line Interface) — textové rozhranie, kde používateľ zadáva príkazy textom. Príklady: cmd, PowerShell, Bash terminál.
CLI môže byť efektívnejšie ako GUI pre skúsených používateľov a automatizáciu. Systémovi administrátori a vývojári CLI využívajú každý deň pre správu serverov a automatizáciu opakujúcich sa úloh.
Príklady operačných systémov
| OS | Použitie | Poznámka |
|---|---|---|
| Windows 11 | PC, laptop | Najrozšírenejší desktopový OS |
| macOS | Apple Mac | Unixový základ, integrovaný s hw Apple |
| Linux (Ubuntu, Fedora...) | Servery, vývoj, desktop | Open-source, bezplatný |
| Android | Smartfóny, tablety | Upravený Linux kernel |
| iOS | iPhone, iPad | Uzavretý systém Apple |
Operačné systémy pre servery (Linux, Windows Server) sú optimalizované pre nepretržitú prevádzku, bezpečnosť a obsluhu mnohých súbežných požiadaviek.
Cvičné príklady
Čo je multitasking v kontexte operačných systémov?