Каждому файлу в ОС Unix соответствует только один индексный дескриптор. На примере файловой системы s5 индексные дескрипторы всех файлов имеют одинаковый размер – 64 байта и содержат данные о типе файла, о физическом расположении файла на диске, размере в байтах, о дате создания, последней модификации и последнего обращения к файлу, количество ссылок на файл, о привилегиях доступа и некоторую другую информацию.
Для хранения информации о физическом расположении используются 13 элементов следующим образом - первые 10 указывают непосредственно адреса блоков. Если их не хватает то используется 11 элемент который указывает номер блока, в котором содержится список следующих 128 блоков, если файл имеет размер более чем 10+128 блоков, то используется 12 элемент, содержащий номер блока, в котором указываются номера 128 блоков, каждый из которых может содержать еще по 128 номеров блоков. Если все равно места не хватает, то используется 13 элемент, в котором 128 по 128 по 128 блоков).
В рамках каждой файловый системы inode пронумерованы начиная с 1. № inode хранится в поле ссылки в элементе каталога, также содержащим в поле имени файла то имя, по которому обеспечивается доступ к файлу.
Для системных нужд зарезервированы два индексных дескриптора с номерами 0 и 1. Индексный дескриптор с номером 0 используется для спецификации дефектных блоков внешней памяти. Индексный дескриптор номер 1 выделен для корневого каталога файловой системы.
В FAT каждая запись таблицы каталогов содержит подробную информацию о файле (рис А). В Unix-е хранится информация только о имени файла и номера индексного дескриптора с ним сопоставленного (рис Б).
В unix при такой схеме взаимно-однозначного соответствия между именем файла и самим файлом нет. Что позволяет создать несколько имен для одного и того же индексного дескриптора (файла).
В FAT такой возможности принципиально нет.
В UNIX System V Release 3 был реализован механизм переключения файловых систем (File System Switch, FSS), позволяющий операционной системе поддерживать различные типы файловых систем. В соответствии с этим подходом информация о файловой системе и файлах разбивается на две части – зависимую от типа файловой системы и не зависимую. FSS обеспечивает интерфейс между ядром и файловой системой, транслируя запросы ядра в операции, зависящие от типа файловой системы. При этом ядро имеет представление только о независимой части файловой системы.
Однако большее распространение получила схема, реализованная фирмой Sun Microsystems, использующая аналогичный подход. Эта схема называется Virtual File System (VFS). VFS не ориентируется на какую-либо конкретную файловую систему, механизмы реализации файловой системы полностью скрыты как от пользователя, так и от приложений. В ОС нет системных вызовов, предназначенных для работы со специфическими типами файловой системы, а имеются абстрактные вызовы типа open, read, write и др. VFS также предоставляет ядру возможность оперирования файловой системой, как с единым целым: операции монтирования и демонтирования.