Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Типы файлов. Файловая система – это структура, с помощью которой ядро операционной системы организует и представляет пользователям ресурсы памяти системы




ФАЙЛОВАЯ СИСТЕМА

Файловая система – это структура, с помощью которой ядро операционной системы организует и представляет пользователям ресурсы памяти системы. Ресурсы памяти включают память на различного рода носителях информации (жесткие диски, гибкие диски и CD-ROM). Ядро объединяет эти ресурсы в единую иерархическую структуру, которая начинается в каталоге / и разветвляется, охватывая произвольное число подкаталогов. Таким образом, полное имя начинается с ``/`` и не содержит идентификатора устройства (дискового накопителя, CD-ROM и т.д., т.е. никаких “дисков C:” или “дисков A:”), на котором он фактически хранится. Каталог самого верхнего уровня называется корневым.

Цепочка имен каталогов, через которые необходимо пройти для доступа к файлу, вместе с именем этого файла называется путевым именем. Путевые имена могут быть абсолютными (например, /tmp/file01) и относительными (например, bin/ls).

Файловое дерево в ОС UNIX может быть произвольного размера. Однако существуют определенные ограничения: имя каталога должно состоять не более чем из 256 символов, а в определении одного пути не должно быть более 1023 символов. Чтобы получить доступ к файлу, абсолютное путевое имя которого не удовлетворяет этим требованием, необходимо с помощью команды cd прейти в промежуточный каталог, а затем воспользоваться относительным путевым именем.

В операционной системе UNIX существует восемь типов файлов:

· обычные файлы;

· каталоги;

· байт-ориентированные устройства;

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

· доменные гнезда UNIX;

· именованные каналы (FIFO);

· жесткие ссылки (“прямая связь”);

· символические ссылки (“косвенная связь”);

 

Обычный файл – это просто последовательность байтов. Обычный файл может содержать выполняемую программу, текст, фотографию, исходный текст C-программы, т.е. все, что необходимо сохранить для дальнейшего использования.

Каталог может содержать файлы любых типов в любых сочетаниях. Каталог – это файл, содержащий имена находящихся в нем файлов, а также указатели на метаданные, позволяющие системе производить операции над этими файлами. Каталоги определяют положение файла в дереве файловой системы, поскольку сам файл не содержит информации о своем местонахождении. Любая задача, имеющая право на чтение каталога, может прочесть его содержимое, но только ядро имеет право на запись в каталог. Специальные файлы. и.. обозначают соответственно сам каталог и его родительский каталог.

Файлы устройств позволяют UNIX-программам взаимодействовать с аппаратными средствами и периферийными устройствами системы. Доступ к устройствам осуществляется путем открытия, чтения и записи в специальные файлы устройств.

При конфигурировании ядра системы к нему “привязываются” те модули, каждые из которых “умеют” взаимодействовать с конкретным устройством системы. За всю “грязную” работу по управлению конкретным устройством отвечает специальная программа, называемая драйвером.

Драйверы устройств образуют стандартный коммуникационный интерфейс, который выглядит как обычный файл. Когда ядро получает запрос к байт-ориентированному или блок-ориентированному файлу устройства, оно просто передает этот запрос соответствующему драйверу устройства.

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

Каждому типу устройств системы может соответствовать несколько файлов устройств. Поэтому файлы устройств характеризуются двумя номерами: старшим и младшим. Старший номер устройства говорит ядру о том, к какому драйверу относится данный файл, а младший номер устройства сообщает драйверу, к какому физическому устройству следует обращаться. Например, старший номер устройства – 12, и младший номер – 0, в системе SunOS обозначает драйвер первого терминала (файл устройства /dev/ttya). Второй терминал (файл устройства /dev/ttyb) будет иметь старший номер 12 и младший номер устройства 1, и т.д.

Гнезда – это соединения между процессами, которые позволяют им взаимодействовать, не подвергаясь влиянию других процессов. В ОС UNIX поддерживается несколько типов гнезд, использование которых в большинстве своем предполагают наличие сети. Доменные гнезда UNIX локальны для конкретного host-компьютера. Обращение к ним осуществляется через объект файловой системы, а не через сетевой порт.

Именованные каналы – это аналог доменных гнезд BSD-систем в системах AT&T варианта.

Жесткие ссылки – это даже не тип файла, а его дополнительное имя. У каждого файла имеется как минимум одна ссылка. Обычно это имя, под которым он был создан. Добавление ссылки порождает псевдоним для файла. Ссылку невозможно отличить от имени файла, к которому она присоединена: в UNIX это одно и то же. Ядро не освобождает блоки данных файла до тех пор, пока не будет удалена его последняя ссылка. Ссылки добавляются командой ln, а удаляются командой rm.

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




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 420; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.