Лекция: Вопрос 25. Файловая система ОС UNIX

Файловая система ОС Unix имеет иерархическую (древовидную) структуру. В вершинах дерева находятся каталоги (используют также термины — справочники, директории), содержащие списки файлов. Эти файлы в свою очередь могут быть либо снова каталогами, либо обычными файлами, либо специальными файлами, представляющими различные устройства ввода-вывода.

 

Kорневой каталог имеет имя "/". Он обычно содержит каталоги:

bin для наиболее используемых команд;

usr каталоги и обычные файлы, содержащие информацию, привлекаемую при решении задач пользователя;

dev для специальных файлов, представляющих устройства (дисплеи, диски...);

etc для хранения команд администратора системы;

lib важнейшие библиотеки;

mnt для подключения (примонтирования) новых файловых систем;

sys средства для изменения конфигурации системы;

tmp для хранения временных файлов;

usr каталоги и обычные файлы, содержащие информацию, привлекаемую при решении задач пользователя.

А также обычные (выполняемые) файлы:

unix ядро;

boot загрузчик.

Полные имена файлов будут: /bin, /usr, ..., /unix, /boot.

В свою очередь эти каталоги могут содержать каталоги следующего уровня. Например, каталог «usr», кроме прочего, содержит каталоги:

bin хранит дополнительные команды;

games игры;

include хранит фрагменты системных программ;

lib хранит дополнительные библиотеки.

полные имена этих файлов будут:

/usr/bin /usr/games /usr/include /usr/lib

Если в каталоге "/usr/include" содержится каталог «sys», который в свою очередь, содержит каталог «conf», то полное имя файла «conf» будет

/usr/include/sys/conf

Формальным признаком полного имени является то, что оно начинается со слэша ("/").

Относительное имя начинается не с "/", и определят имя относительно своего местоположения. Если (пользователь?) в данный момент находится в директории /usr файловой системы, то он может обратиться к этому же файлу по относительному имени

include/sys/conf

Есть два специальных имени:

. это «имя» текущего директория и

… это «имя» родительского директория (т.е. директория,

находящегося на ступеньку выше данного на пути к корню).

В качестве имени файла как правило может использоваться любая последовательность из букв, цифр и подчеркиваний. Могут использоваться и другие символы, однако ряд этих символов при использовании в имени требует специального экранирования. (Лучше не пользоваться специальными символами в именах — иногда это может привести к сложностям в обращении к таким именам, поскольку спецсимволы могут иметь в shell некоторый специальный смысл).

В ряде систем длина имени ограничивается 14-ю символами (этого ограничения желательно придерживаться для переносимости файлов), однако в других системах допускаются более длинные имена — например, до 256 символов.

В общем случае не являются обязательными и какие-то расширения в именах. Хотя ряд команд требуют наличия некоторых фиксированных расширений в именах, например расширение ".с" для исходных файлов для Си-компилятора.

КСТАТИ. В ОС UNIX большие и маленькие буквы воспринимаются как различные, поэтому «FILE», «file» и «File» — это три различных имени!

 

ВАЖНОЕ ЗАМЕЧАНИЕ. Отдельные части файловой системы могут находиться на различных физических устройствах, например, на нескольких жестких и гибких дисках (или в различных частях одного диска). Соответствующие фрагменты (поддеревья файловой системы) монтируются (присоединяются) в единую файловую систему командой mount (обычно это функция администратора системы), после чего пользователь может обращаться к любым доступным файлам, при этом в имени никак не отражается устройство, на котором файл находится или создается (т.е. никаких «A:»).

 

Командный язык ОС Unix — shell оперирует с командами. Более подробно о нем разговор далее, а пока рассмотрим несколько команд работы с файловой системой.

 

 

еще рефераты
Еще работы по информатике