В каталоге также есть индекс.Однако он не содержит указателей на расположение содержимого файла (поскольку это не файл), а указателей на inode-ы файлов / подкаталогов каталога (так что это в основном файл, но со специальным содержимым / флажками),Кроме того, он содержит указатели на родительский каталог и сам по себе.
Чтобы добраться до определенного файла, структуру директории просто обойти, как при обходе дерева - чтобы узнать полный путь к файлу, псевдокод выглядит следующим образомчто:
parts = []
inode = inode_of(file);
parts.add(inode.name);
while(inode.parent):
parts.add(inode.parent.name)
inode = inode.parent
path = parts.reverse.join('/')