КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Шишаев М.Г.Основные принципы организации файловых систем UNIX: пространство имен; структура записи каталога; структура описателя файла (inod-а); выделение блоков. В юниксе файлы организованы в виде древовидной структуры (дерева), называемой файловой системой. Каждый файл имеет имя, определяющее его расположение в дереве файловой системы. Корнем этого дерева является корневой каталог («/»). Имена всех остальных файлов содержат путь – список каталогов (ветвей), которые необходимо пройти, чтобы достичь файла. Так как в юнихе все доступное пользователям файловое пространство объединено в единое дерево каталогов, корнем которого является «/», то полное имя любого файла начинается с «/» и не содержит в себе идентификатора устройства (дискового накопителя, CD-ROM или удаленного компьютера в сети), на котором он фактически хранится. В большинстве случаев единое дерево, каким его видит пользователь системы, составлено из нескольких отдельных файловых систем, которые могут иметь различную внутреннюю структуру, а файлы, принадлежащие этим файловым системам, могут быть расположены на различных устройствах. В юниховой файловой системе каталог почти не содержит информации о файле. Он хранит в себе только имя файла и номер его инода. В иноде хранится: тип файла (обычный файл, специальный файл устройства, кол- во ссылок на инод (link); каталог является примером файла, сохранены права доступа – чтение, запись); идентификаторы хозяина (кто его создал) и группы к которой принадлежит хозяин; времена создания файла, последней модификации файла, последнего доступа к файлу; длина файла; идентификатор файловой системы в которой расположен файл; адреса дисковых блоков в которых расположен файл. В иноде информация о блоках данных файла хранится в массиве из 13 элементов. Первые 10 из них указывают непосредственно на блоки данных, 11й – адресует блок, в свою очередь содержащий адреса блоков хранения данных (блок косвенной адресации 1 уровня). 12й указывает на блок, также хранящий адреса блоков(на блок косвенной адресации1ур-ня), каждый из которых адресует блок хранения данных файла. 13й элемент используется для тройной косвенной адресации. Наиболее интересная особенность Unix-овых ФС состоит в том, что инод не содержит имени файла. С другой стороны, он содержит счетчик связей (links) – ссылок на этот файл из каталогов. Т.е. на один и тот же инод можно ссылаться из различных каталогов или из одного каталога под различными именами. Иными словами, один и тот же файл в этих ФС может иметь несколько различных имен. Это свойство предоставляет неоценимые возможности для организации иерархии каталогов, но имеет и некоторые оборотные стороны (чтобы удалить файл надо удалить все связи)
|