Popisovač souboru

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 10. dubna 2021; kontroly vyžadují 2 úpravy .

Deskriptor souboru  je nezáporné celé číslo. Když je vytvořen nový I/O stream, jádro se vrátí k procesu, který vytvořil I/O stream jeho deskriptor souboru.

Ke všem I/O tokům (které mohou být spojeny se soubory i adresáři, sokety a FIFO ) lze přistupovat prostřednictvím takzvaných deskriptorů souborů.

Unixové shelly standardně spojují deskriptor souboru 0 se standardním vstupem procesu (klávesnice), deskriptor souboru 1 se standardním výstupem procesu (terminál) a deskriptor souboru 2 s diagnostickým proudem (kde se obvykle zapisují chybové zprávy). Tato konvence je respektována mnoha unixovými shelly a mnoha aplikacemi – a v žádném případě není součástí jádra.

Standard POSIX.1 nahradil „magická čísla“ 0, 1, 2 symbolickými konstantami STDIN_FILENO, STDOUT_FILENO a STDERR_FILENO.

Deskriptory souborů mohou nabývat hodnot od 0 do OPEN_MAX. Podle POSIX.1 je hodnota OPEN_MAX 19. V reálných operačních systémech může být tato hodnota vyšší.

Chcete-li v operačním systému Windows získat popisovač souboru, musíte jej otevřít pomocí funkce CreateFile. Výsledný deskriptor (nebo popisovač) pak lze použít k práci s tímto souborem. Pokud se jedná o ovladač, pak se rukojeť použije ve funkci DeviceIoControl.

Viz také