Введение

Структура файловой системы для поиска файлов В вычислительной технике каталог - это каталогическая структура файловой системы, которая содержит ссылки на другие компьютерные файлы и, возможно, другие каталоги. На многих компьютерах каталоги известны как папки или ящики, аналогичные рабочему столу или традиционному офисному шкафу. Это название происходит от книг, подобных телефонному справочнику, в котором перечислены номера телефонов всех людей, живущих в определенной местности. Файлы организованы путем хранения связанных файлов в одном каталоге. В иерархической файловой системе (то есть в которой файлы и каталоги организованы таким образом, что напоминают дерево), каталог, содержащийся внутри другого каталога, называется подкаталогом. Термины родитель и ребенок часто используются для описания отношений между подкаталогом и каталогом, в котором он каталогизирован, последний из которых является родителем. Самый верхний каталог в такой файловой системе, который не имеет собственного родительского каталога, называется корневым каталогом. Свободный рабочий стол. org тип медиа для каталогов во многих системах Unix включая, но не ограничиваясь системами, использующими GNOME, KDE Plasma 5 или ROX Desktop в качестве среды рабочего стола является "инод/каталог". Это не зарегистрированный тип носителя IANA.

Обзор

Исторически, и даже в некоторых современных встроенных системах, файловые системы либо вообще не поддерживали каталоги, либо имели только "плоскую" структуру каталогов, что означало, что подкаталоги не поддерживались; существовала только группа каталогов верхнего уровня, каждый из которых содержал файлы. В современных системах каталог может содержать смесь файлов и подкаталогов. Ссылка на местоположение в системе каталогов называется пути. Во многих операционных системах программы имеют связанный рабочий каталог, в котором они выполняются. Как правило, имена файлов, доступ к которым предоставляется программой, предполагаются в этой директории, если имена файлов не указаны с ясным именем директории. Некоторые операционные системы ограничивают доступ пользователя только к его домашней директории или директории проекта, тем самым изолируя его деятельность от всех других пользователей. В ранних версиях Unix корневой каталог был домашним каталогом корневого пользователя, но современный Unix обычно использует другой каталог, например, для этой цели. В соответствии с философией Unix, системы Unix рассматривают каталоги как тип файла. Ограничения включают в себя невозможность записи в файл каталога, за исключением косвенного создания, переименования и удаления объектов файловой системы в каталоге, а также возможность чтения из файла каталога только с использованием специфических для каталога библиотек и системных вызовов, которые возвращают записи, а не байтовый поток.

Метафора папки

Файл-папка, представляющая собой аналогию папке файлов, используемых в офисах, и используется в иерархическом файловой системе для электронной записывающей машины, бухгалтерского учета (ERMA) Mark 1, опубликованной в 1958 году, а также Xerox Star, используется почти во всех современных операционных системах на рабочем столе. Папки часто изображаются с иконками, которые визуально напоминают физические папки файлов. Существует разница между каталогом, который является концепцией файловой системы, и метафорой графического пользовательского интерфейса, которая используется для его представления (папкой). Например, Microsoft Windows использует концепцию специальных папок, чтобы помочь представить содержимое компьютера пользователю в довольно последовательной форме, что освобождает пользователя от необходимости иметь дело с абсолютными каталогами, которые могут варьироваться между версиями Windows и между отдельными установками. Многие операционные системы также имеют концепцию "умных папок" или виртуальных папок, которые отражают результаты поиска файловой системы или другой операции. Эти папки не представляют собой каталог в иерархии файлов. Многие почтовые клиенты позволяют создавать папки для организации электронной почты. Эти папки не имеют соответствующего представления в структуре файловой системы. Если речь идет о контейнере с документами, то термин "папка" более подходит. Термин "каталог" относится к тому, как структурированный список файлов и папок документов хранится на компьютере. Различие может быть связано с тем, как каталог доступен; на системах Unix, обычно называется каталогом, когда он просматривается в командной строке консоли, но если доступ к нему осуществляется через графический файловый менеджер, пользователи иногда могут называть его папкой.

Кэш поиска

Операционные системы, поддерживающие иерархические файловые системы (практически все современные), реализуют форму кэширования в оперативной памяти недавних поисков пути. В мире Unix это обычно называется каталогом поискового кэша (DNLC), хотя в Linux это называется dcache. Для локальных файловых систем, записи DNLC обычно истекают только под давлением других более поздних записей. Для сетевых файловых систем необходим механизм согласованности, чтобы гарантировать, что записи не были аннулированы другими клиентами.