8783

Файловая система UNIX

Доклад

Информатика, кибернетика и программирование

Файловая система UNIX. Одними из базовых принципов UNIX являются: представление всех объектов, включая устройства, как файлов взаимодействие с файловыми системами разных типов, в том числе NFS. Сетевая файловая система NF...

Русский

2013-02-17

57.5 KB

3 чел.

Файловая система UNIX.

Одними из базовых принципов UNIX являются [6, с. 652-660]:

  •  представление всех объектов, включая устройства, как файлов
  •  взаимодействие с файловыми системами разных типов, в том числе NFS.

Сетевая файловая система NFS (Network File System) и соответствующий протокол были разработаны компанией Sun Microsystems для использования дискового пространства в сетевой среде. Отличительной особенностью действия NFS является отсутствие сохранения состояния, т.е. любое взаимодействие между клиентом и сервером не использует информацию о предыдущих сеансах. Компания Sun опубликовала (в Internet) спецификацию NFS, что позволило устранить конфликты монтирования в другие файловые системы, в том числе и UFS.

Файловая система UFS (UNIX File System) произошла от s5 – файловой системы SVr4 и имеет иерархическую древовидную структуру, содержащую файлы следующих типов:

«d» – директории (каталоги, справочники)  «-» - обычные файлы

«|» - символьные связи (каналы)    «b» - блочные файлы (конвеер “.bat”)

«с» - специальные символьные файла (устройства)

Важным в UFS являются понятия корневого, рабочего и текущего директориев. Корневой директорий обозначается «/» и является корнем перевёрнутого дерева UFS. Текущий директорий обозначается «.» и используется для относительной адресации в запущенных из него программах. Выше лежащий каталог (родительский) обозначается «..». Для каждого пользователя устанавливается его личный каталог, называемый рабочим.

Любая файловая система может быть встроена (смонтирована) в любое место дерева UFS. Например, как это показано на рис.

Для любого файла создается дискриптор - индексный узел (inode), хранящийся на диске и копируемый в оперативную память.

В дискрипторе хранится:

  •  Тип файла
  •  Идентификатор владельца и его группы
  •  Список прав доступа, которым относится: «-» - отсутствие каких-либо прав, «r» - право на чтение, «w» - право на запись, «х» - право на выполнение (запуск). Права определяются: для владельца файла, группы владельца и всех прочих.
  •  Время создания, время последних обновления и доступа к файлу
  •  Счётчик ссылок на узел
  •  Адреса блоков файла, адреса списков блоков файла в других дискрипторах (косвенно заданные блоки), адреса косвенно заданных блоков файла в других дискрипторах (дважды косвенно заданные блоки), трижды косвенно заданные блоки и т.д.

Например, полная информация о директории bin, выведенная командой ls, выглядит как -

d rwx  --x    r–x 3 admin admins 96 Oct 27 08:16 bin

│ │ │       │  │ │ │    │    │    │ └→ имя

дире-й┘ │ │       │  │ │ │    │    │    └→ время последнего изменения/создания

права вл.┘ │       │  │ │ │    │    └→ дата последнего изменения/создания

права гр. вл.  ┘       │  │ │ │    └→ размер в байтах

         │  │ │ └→ группа владельца

         │  │ └→ имя владельца

         │  └→ число связей (количество поддиректориев + 2)

         └→ права всех прочих пользователей

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

Интерес представляет организация данных на жестком диске. Все данные хранятся блоками, состоящими из слов по 64 байта каждое.

Блок 0 Boot

Блок 1 Суперблок

Блоки с 2 по N

Дискрипторы

Блоки с N+1

Данные

Суперблок

Загрузочный блок 0 (boot) содержит загрузочную информацию и, строго говоря, не относится к файловой системе.

Суперблок 1 хранит служебную информацию –

  •  Размер блока в 64 байтовых словах
  •  Общее число блоков
  •  Количество свободных блоков
  •  Список свободных блоков с их физическими адресами
  •  Общее число блоков дискрипторов (N-2)
  •  Количество свободных блоков дискрипторов
  •  Список свободных блоков дискрипторов
  •  Флаги для синхронизации доступа к свободным блокам

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

В блоках данных (с N+1) хранится как само содержимое файлов, так и списки свободных для записи блоков.


 

А также другие работы, которые могут Вас заинтересовать

79116. Баптистское движение 15.32 KB
  Основные положения вероучения были разработаны бывшим католическим священником Ульрихом Цвингли. В сотериологии Цвингли придерживался учения о спасении через веру в заместительную жертву Христа. Разногласие Цвингли и Лютера Цвингли первым из всех протестантов выступил против благодатных таинств. Цвингли первый богословски обосновал что Евхаристия это знак символ что субстанционально Христос в Евхаристии не присутствует.
79117. Вероучение анабаптистов 14.49 KB
  Они считали что получали личные откровения от Самого Бога и в свете их необходимо толковать Писание. Или только Писание или же что Писание следует толковать в свете внутренних озарений. Во всяком случае каждый человек мог толковать Писание. Писание ставилось в зависимость от внутреннего состояния человека.
79121. Возникновение и распространение адвентизма седьмого дня в мире и в России 17.48 KB
  Название адвентизм происходит от лат. Движение адвентизма зародилось в 30е годы 19 в.движение крое получило название адвентистов.