Virtuální souborový systém

Vzhledem k tomu, že souborových systémů existuje celá řada tak operační systémy implementují virtuální souborový systém nebo VFS podle anglického „virtual filesystem“.

Můžete mít disk rozdělený na partitiony kde každá partitiona může mít svůj vlastní souborový systém — v rámci OS však budete pracovat se soubory úplně stejně na obou partitionách. Díky OS vás vůbec nezajímají složitosti jednotlivých souborových systémů.

Jak se v OS zobrazují jednotlivé partitiony

Většina ajťáků tak při programování pracuje se soubory úplně stejně, jako běžný uživatel, vždy v kontextu konkrétního OS který soubory implementuje svým vlastním způsobem.

Vrstva, na které většina ajťáků pracuje se soubory.

OS díky VFS skrývá složitosti souborových systémů a mají svůj vlastní způsob adresování.

Windows

Windowsy každý VFS označují velkým písmenem podle abecedy. Z historických důvodů se první dostupný prostor označuje jako C, každý další prostor jako D, E, F…

Tento prostor je taky kořenová složka – anglicky root directory – do které lze ukládat další složky a soubory. Pro prostor C je to adresa C:\

Adresy se ve Windowsech píšou s „obráceným lomítkem“ – „\“. Každá část mezi obráceným lomítkem je složka, která může obsahovat soubory. Poslední název za lomítkem je buď složka, nebo soubor, například C:\slozka\slozka2\abc.

Ukázka adres a souborů ve Windowsech. Adresa složky je „C:\Windows\System32\drivers\etc“ a v ní jsou soubory jako „hosts“, „lmhosts.sam“ atd.

Nutno říct, že Windows žádné jiné FS kromě FAT32 a NTFS nepodporuje.

Linux

Linuxový souborový systém je mnohem bohatší protože nezahrnuje pouze složky a soubory (a jejich související funkcionality) jako Windows.

V Linuxech má kořenová složka adresu / (ano, pouze lomítko).

V této kořenové složce jsou zpravidla další složky, které mají víceméně stejné nebo aspoň podobné uspořádání napříč různými Linuxovými distribucemi.

Obsah kořenové složky v Linuxové distribuci Ubuntu

V Linuxech se konkrétní partitiony musí do souborového systému „namountovat“ což je proces, ve kterém se nad konkrétní partitionou vytvoří v souborovém systému konkrétní složka, která může být v souborovém systému kdekoliv.

Cesty v Linuxech mají podobu /nejaka/cesta/nekam – oproti Windowsům (obrácené lomítko) se používá obyčejné lomítko. Další podstatný rozdíl je, že daná cesta nemusí reprezentovat pouze složky nebo soubory ale i datové toky (o tom si povíme někdy jindy, to teď není podstatné).

Shrnutí

  • Virtuální souborový systém, nebo VFS, je abstrakce, kterou OS skrývá složitosti a rozdíly mezi jednotlivými souborovými systémy
  • Ajťáci většinou pracují na úrovni souborů ve VFS. To znamená na úrovni souborů a adres se kterými pracují i běžní uživatelé.