По сравнению с FAT, такая схема хранения информации об размещении, является намного более устойчивой к разрушениям. Она как бы "размазывается" по всему диску и уничтожить все блоки адресации можно разве что динамитом. К тому же, номера блоков хранятся в прямом виде "как есть", а это значит, что для каждого блока файла мы может быстро найти соответствующий ему косвенный блок, даже если inod'а полностью разрушена.
Рисунок 4 описание порядка размещения файла на диске, иерархия непосредственных и косвенных блоков
Имена файлов хранятся в директориях и в inode их нет. Директории представляют собой обычные файлы… ну, хорошо, не совсем обычные, а специальные служебные файлы, содержащие массив записей типа:
смещение размер описание
------- ------- -----------
0 4 inode ; ссылка на inod'у
4 2 rec_len ; длина данной записи
6 1 name_len ; длина имени файла
7 1 file_type ; тип
файла
8 ... name ; имя файла
Листинг 3 формат представления массива директорий
Поле inode содержит порядковый номер inode, которому соответствует данное имя файла; поле rec_len задает длину текущей записи, а name_len – длину имени файла. Само имя хранится в ASCII виде сразу после длины.