Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Топ:
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Интересное:
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Дисциплины:
2021-01-29 | 103 |
5.00
из
|
Заказать работу |
|
|
Хотя мы только что сказали, что вам следует использовать лишь члены и структуры, стоит знать о члене в BSD и Linux. Это значение, в котором хранится тип файла, имя которого находится в элементе каталога:
может принимать любые значения, описанные в табл. 5.1.
Таблица 5.1. Значения для
Имя | Значение |
Файл блочного устройства | |
Файл символьного устройства | |
Каталог | |
FIFO или именованный канал | |
Символическая ссылка | |
Обычный файл | |
Сокет | |
Неизвестный тип файла | |
Нет элемента (только системы BSD) |
Знание типа файла просто путем чтения элемента каталога очень удобно; это может сэкономить на возможно дорогом системном вызове. (Вызов вскоре будет описан в разделе 5.4.2 «Получение информации о файле».)
Функции размещения каталогов BSD
Иногда полезно отметить текущее положение в каталоге для того, чтобы иметь возможность позже к нему вернуться. Например, вы пишете код, обходящий дерево каталога, и хотите рекурсивно входить в каждый подкаталог, когда его проходите. (Как отличить файлы от каталогов обсуждается в следующем разделе). По этой причине первоначальный интерфейс BSD включал две дополнительные процедуры:
Эти процедуры подобны функциям и и. Они возвращают текущее положение в каталоге и устанавливают текущее положение в ранее полученное значение соответственно.
Эти процедуры включены в часть XSI стандарта POSIX, поскольку они имеют смысл лишь для каталогов, которые реализованы с линейным хранением элементов каталога
Помимо предположений, сделанных относительно лежащей в основе структуры каталога, эти процедуры рискованнее использовать, чем простые процедуры чтения каталога. Это связано с тем, что содержание каталога может изменяться динамически: когда файлы добавляются или удаляются из каталога, операционная система приводит в порядок содержание каталога. Поскольку элементы каталога имеют различный размер, может оказаться, что сохраненное ранее абсолютное смещение больше не представляет начало элемента каталога! Поэтому мы не рекомендуем вам использовать эти функции, если вам они действительно не нужны[56].
|
Получение информации о файлах
Чтение каталога для получения имен файлов лишь половина дела. Получив имя файла, нужно знать, как получить остальную информацию, связанную с файлом, такую, как тип файла, права доступа к нему, владельца и т.д.
Типы файлов Linux
Linux (и Unix) поддерживает следующие различные типы файлов:
Обычные файлы
Как предполагает имя, данный тип используется для данных, исполняемых программ и всего прочего, что вам может понравиться. В листинге '' они обозначаются в виде первого символа '' поля прав доступа (режима).
Каталоги
Специальные файлы для связывания имен файлов с индексами. В листинге '' они обозначаются первым символом поля прав доступа.
Символические ссылки
Как описано ранее в главе. В листинге '' обозначаются первым символом (буква «эль», не цифра 1) поля прав доступа.
Устройства
Файлы, представляющие как физические аппаратные устройства, так и программные псевдоустройства. Есть две разновидности:
Блочные устройства
Устройства, ввод/вывод которых осуществляется порциями некоторого фиксированного размера физической записи, такие, как дисковые и ленточные приводы. Доступ к таким устройствам осуществляется через буферный кэш ядра. В листинге '' они обозначаются первым символом поля прав доступа.
Символьные устройства
Известны также как непосредственные (raw) устройства. Первоначально символьными устройствами были те, в которых ввод/вывод осуществлялся по несколько байтов за раз, как в терминалах. Однако, символьное устройство используется также для непосредственного ввода/вывода на блочные устройства, такие, как ленты и диски, минуя буферный кэш[57]. В листинге '' они отображаются первым символом поля прав доступа.
|
Именованные каналы (named pipes)
Известны также файлы FIFO («first‑in first‑out» – «первым вошел, первым обслужен»). Эти специальные файлы действуют подобно конвейерам (pipes); данные, записанные в них одной программой, могут быть прочитаны другой; данные не записываются на диск и не считываются с диска. FIFO создаются с помощью команды; они обсуждаются в разделе 9.3.2 «FIFO». В листинге '' они отображаются первым символом поля прав доступа.
Сокеты
Сходные по назначению с именованными каналами[58], они управляются системными вызовами межпроцессных взаимодействий (IPC) сокетов, и мы не будем в данной книге иметь с ними дело в других отношениях. В листинге '' они отображаются первым символом поля прав доступа.
|
|
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!