Как ядро ​​UNIX получает индекс из имени файла? - PullRequest
0 голосов
/ 03 февраля 2011

Я не совсем понимаю, как ядро ​​UNIX получает индекс из имени файла. Скажем, у меня есть файл "/usr/data/tmp/testme.txt". Как ядро ​​может найти для него индекс?

Ответы [ 3 ]

2 голосов
/ 03 февраля 2011

По сути, весь путь разбивается на компоненты, а затем идет сверху вниз, разрешая записи каталога и точки монтирования. Случаи абсолютного и относительного пути различаются незначительно. Это кажется медленным, но ядро ​​выполняет кеширование для поиска имени. Традиционно это была функция namei() в VFS. Вы можете попробовать следовать (по общему признанию довольно волосатый) код, например здесь .

1 голос
/ 03 февраля 2011

Каждый каталог хранится в виде файла записей, и в этой записи есть имя локального каталога («testme.txt») и номер индекса.

0 голосов
/ 03 февраля 2011

[http://www.linuxquestions.org/questions/blog/mr-ameya-sathe-352399/inode-and-its-corresponding-filename-2126/]

ls -i [http://www.cyberciti.biz/tips/understanding-unixlinux-filesystem-inodes.html]

выше ссылка .. этот пост может быть удален или объединен. извините за дубликат вопроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...