Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Урок_к_лаб_3.doc
Скачиваний:
15
Добавлен:
15.03.2016
Размер:
112.64 Кб
Скачать

Файлы каталогов

Файл каталога представляет собой специальный файл, содержащий информацию о различных файлах, хранящихся в каталоге, расположение файлов, размеры файлов, время создания файлов и время модифи­кации файлов. Этот специальный файл может читать только операционная система UNIX или программа, специально написанная для обработки каталога Файл каталога необязательно просматривать, вместо этого можно использовать команды UNIX для определения атрибутов каталога. Файл каталога похож на теле­фонный каталог — он содержит адресную информацию о файлах, находящихся в каталоге. Когда вы про­сите UNIX обработать файл, система просматривает указанный каталог в поисках информации о файле В каждом каталоге всегда есть два файла:

1. . (одна точка)

2. .. (две последовательные точки)

Одна точка (.) ссылается на текущий каталог, две последовательные точки (..) ссылаются на каталог на один уровень выше (который иногда называется родительским каталогом.) Пример атрибутов каталога testdir представлен ниже:

drwxr-xr-x 2 guhas writer 512 Oct 30 18:39 testdir

drwxr-хг-х определяет права доступа к testdir, созданного пользователем guhas, принадлежащим к груп­пе writer. Размер записи каталога testdir составляет 512 байтов. Последний раз каталог был модифицирован 30 октября в 18:39.

Байт-ориентированные и блок-ориентированные файлы устройств

Байт-ориентированные файлы устройств используются для небуферированного ввода/вывода, а блок-ориентированные файлы устройств используются тогда, когда данные передаются пакетами фиксирован­ного размера.

Сокеты (Sockets)

Сокет — интерфейс прикладного программирования (API), который используется для обмена инфор­мацией между двумя компьютерами Другими словами, сокет выполняет сетевой ввод/вывод. Абстракция сокета была создана на основе файлов, но сокет не является реальным файлом Для использования сокета в программе следует создать сокет и сконфигурировать его с соответствующими адресами локального и удаленного хостов. После соединения локального сокета с сокетом на удаленном хосте программа может использовать его для обмена информацией с удаленными хостами. Кроме того, существует два способа об­мена информацией между хостами, использующими бесконтактные (connectionless) сокеты. Контактные сокеты обеспечивают передачу данных между двумя хостами, используя установленное соединение. В слу­чае бесконтактного сокета для каждой передачи должен быть специфицирован адрес места назначения, то есть обмен не ограничен двумя точками. Бесконтактный сокет можно использовать для обмена информаци­ей между любыми двумя компьютерами в сети.

Именованные каналы

Именованный канал представляет собой файл, созданный для обмена информацией между двумя про­цессами на одной машине. Посылающий процесс пишет данные в именованный канал, а принимающий процесс считывает данные из именованного канала Канал — это временный файл, который существует так долго, как долго процессы обмениваются информацией. Данные из поименованного канала обрабаты­ваются на основе алгоритма конвейера FIFO (First-in, first-out — первый пришел, первый ушел).

Символические и жесткие ссылки

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

• жесткая ссылка;

• символическая ссылка, часто называемая symlink.

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

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

Именование файлов и каталогов

Каждый файл идентифицируется именем, которое представляет собой последовательность символов. Ниже следует список символов, которые можно использовать как часть имен файлов UNIX:

• Символы от А до Z или от а до z

• Цифры от 0 до 9

• Подчеркивание (_)

• Точка (.)

UNIX чувствительна к регистру. Например, файл с именем abc отличается от файла с именем ABC. Некоторые из системных файлов, которые начинаются с точки, например, файл .profile, называются скрытыми. Они не отображаются до тех пор, пока не будет задействован специальный флаг в команде ls.

Организация файловой системы

Как средство организации файлов UNIX предлагает каталоги. Каталог представляет собой специальный файл, в котором содержится список как файлов, так и других каталогов (называемые также подкаталога­ми). Можно визуально представить структуру файлов UNIX как перевернутое дерево с корнем вверху. Та­ким образом самый верхний каталог называется корневым и отмечается одиночной наклонной чертой /. Все каталоги и файлы принадлежат корневому каталогу. Вы можете также представить файловую систему UNIX в виде шкафа с делами, где шкаф является корневым каталогом, отдельные ящики являются различными каталогами корневого каталога и папки являются подкаталогами, а дела в отдельных папках являются файлами в структурах каталогов и подкаталогов. Рисунок 1 показывает типичное дерево структуры каталогов.

home/ usr/ var/

joe/ jane/ bin/ lib/

letters/ games/ doc/

Рисунок 1. Дерево каталогов