Файловая система
Файловая система UNIX характеризуется:
иерархической структурой,
согласованной обработкой массивов данных,
возможностью создания и удаления файлов,
динамическим расширением файлов,
защитой информации в файлах,
трактовкой периферийных устройств (таких как терминалы и ленточные устройства) как файлов.
Файловая система организована в виде дерева с одной исходной вершиной, которая называется корнем (записывается: “/”); каждая вершина в древовидной структуре файловой системы, кроме листьев, является каталогом файлов, а файлы, соответствующие дочерним вершинам, являются либо каталогами, либо обычными файлами, либо файлами устройств. Имени файла предшествует указание пути поиска, который описывает место расположения файла в иерархической структуре файловой системы. Имя пути поиска состоит из компонент, разделенных между собой наклонной чертой (/); каждая компонента представляет собой набор символов, составляющих имя вершины (файла), которое является уникальным для каталога (предыдущей компоненты), в котором оно содержится. Полное имя пути поиска начинается с указания наклонной черты и идентифицирует файл (вершину), поиск которого ведется от корневой вершины дерева файловой системы с обходом тех ветвей дерева файлов, которые соответствуют именам отдельных компонент.
Основным понятием в системе UNIXявляется файл. Файл это именованный набор данных хранящийся на внешних устройствах и доступный для чтения и записи. Существует единая система для описания томов, дисков, файлов, устройств и т.п., объединяющая все устройства в системе под общим названием файл.
Файловая система UNIXблизка к индексной с последовательным доступом (ISAM Indexed Sequential Access Method), которая может быть установлена дополнительно.Такой метод в последние годы получил право стандарта какX/Open стандарт для Си интерфейса
Внутреннее представление файла описывается в индексе, который содержит описание размещения информации файла на диске и другую информацию, такую как владелец файла, права доступа к файлу и время доступа. Термин “индекс” (inode) широко используется в литературе по системе UNIX. Каждый файл имеет один индекс, но может быть связан с несколькими именами, которые все отражаются в индексе. Каждое имя является указателем. Когда процесс обращается к файлу по имени, ядро системы анализирует по очереди каждую компоненту имени файла, проверяя права процесса на просмотр входящих в путь поиска каталогов, и в конце концов возвращает индекс файла.
Сама файловая система имеет иерархическую систему каталогов и файлов, начиная с корневого каталога как показано на рисунке.
Каждая файловая система имеет четыре основные части:
Загрузочный блок - самый первый блок диска( блок 0), зарезервированный для системной загрузочной информации Блок загрузки располагается в начале пространства, отведенного под файловую систему, обычно в первом секторе, и содержит программу начальной загрузки, которая считывается в машину при загрузке или инициализации операционной системы. Хотя для запуска системы требуется только один блок загрузки, каждая файловая система имеет свой (пусть даже пустой) блок загрузки.;
Суперблок - первый блок собственно файловой системы, содержащий все основные данные о файловой системе на конкретном носителе (размещение, список свободных узлов и блоков и др.). Суперблок содержит: размер диска в блоках, имя файловой системы, число блоков, записанных в i-узлах, имя тома, времена последнего изменения и последнего копирования ссылку на список свободных блоков и ссылку на список свободных индексных узлов ;
индексные (i) - узлы последовательность блоков, расположенная за супер блоком, каждый из которых содержит ссылки на просто блоки. Для каждого каталога, файла или файловой системы определен ровно один индексный узел Ядро операционной системы обращается к индексам, используя указатели в списке индексов. Один из индексов является корневым индексом файловой системы: это индекс, по которому осуществляется доступ к структуре каталогов файловой системы после выполнения системной операции mount;
информационные блоки занимают оставшееся пространство диска. В блоках находится действительное содержание каталогов. Отдельно взятый информационный блок может принадлежать одному и только одному файлу в файловой системе.
Каждый файл и\или каталог в такой файловой системе представлен некоторым i-узлом (индексным узлом), содержащим указатели на блоки, образующие файл. В индексном узле содержится информация о правах доступа к файлу, число ссылок на файл из каталога и другие учетные данные.
Каждый индексный узел содержит nуказателей, причем первыеn-3непосредственно ссылаются на блоки данных файла а так как размер блока в файловой системеUNIXопределен в 512 байт, то для организации файла длиной больше чем(n-3)*512байт используетсяn-2-й указатель -узла, ссылающийся на косвенный индексный блок изnссылок(указателей)на блоки данных если и этого недостаточно для размещения файла то используется и указательn-1индексного узла как указатель на второй косвенный блок. Если же и этого недостаточно то используется последнийn-й указатель на третий косвенный блок. В косвенных блоках возможна такая же система индексной адресации, но без дополнительных косвенных ссылочный блоков, то есть указатели могут быть направлены только на блоки данных.
Примечание: В разных системах UNIX разрешены разные размеры индексных блоков, и таким образом разные UNIX системы могут иметь несовместимые файловые системы.
Программы, выполняемые под управлением системы UNIX, не содержат никакойинформации относительно внутреннего формата, в котором ядро хранит файлыданных, данные в программах представляются как бесформатный поток байтов.
Программы могут интерпретировать поток байтов по своему желанию, при этомлюбая интерпретация никак не будет связана с фактическим способом храненияданных в операционной системе.
Каталоги похожи на обычные файлы в одном отношении; система представляетинформацию в каталоге набором байтов, но эта информация включает в себя имена файлов в каталоге в объявленном формате для того, чтобы операционная система и программы, такие как ls (выводит список имен и атрибутов файлов),могли их обнаружить.
Файловая система создается специальной командой mkfs с помощью которой происходит организация файловой системы на некотором устройстве, при этом пользователь должен указать для файловой системы количеством блоков (то есть указать размер занимаемого пространства) по которому система автоматически вычисляет количество индексных узлов.
После создания файловой системы на некотором устройстве, для того, чтобы ввести ее в работу ее необходимо подключить к основной (смонтировать). Процесс монтирования заключается в подключении созданной файловой системы к одному из файлов основной при помощи системной команды mount. При этом файл к которому происходит присоединение, как бы исчезает а в место него появляется каталог с тем же именем и структурой присоединенной файловой системы.
Обратный процесс называется де монтированием и осуществляется с помощью команды umount/
При работе файловой системы происходит обмен информацией между памятью и файлами, с хранением временных данных о блоках и индексных узлах в буферной памяти. Перед демонтированием файловой системы необходимо принудительное сохранение информации из этих буферов на носителе. Эта операция выполняется с помощью системной команды sync.
Поскольку для каждого устройства в системе должен существовать некоторый образ, называемый в UNIXспециальным файлом, то все специальные файлы принято размещать в каталоге/dev. Связь между такими специальными файлами и системой осуществляется с помощью программных модулей называемых драйверами. Каждое добавление устройства в систему требует и добавления специального файла описания в систему сопровождаемое специальной командой добавления специального узлаmknod.
Характерной чертой файловой системы UNIX является проблема восстановления файловой системы. Эта проблема возникает от того, что при некоторых ситуациях возможно нарушения адресации в индексных узлах с появлением висячих ссылок, не адресуемых блоков(вне файловой системы) и наоборот блоков с множественными ссылками, а также дублирование индексации блока в списке свободных и занятых блоков. Устранение таких сбоем ограниченно возможно путем длительного тестирования файловой системы программойfsck.
Работа этой программы протекает в несколько этапов, проверки блоков и их количества, тестирования системы ссылок, проверки свободных и занятых блоков и узлов.
- Лекции по курсу Сетевые операционные системы Введение.
- Введение в типы операционных систем. Типы операционных систем.
- Среда времени выполнения.
- Сетевая операционная система Novell NetWare. Серверы.
- Клиентская часть в NetWare.
- Основные понятия nds.
- Классификация объектов nds.
- Классификация “листьев” nds.
- Правила именования объектов nds.
- Свойства объектов.
- Особенности функционирования операционной системы Unix Введение
- Базовые понятия ос unix.
- Файловая система
- Среда выполнения процессов.
- Конструкционные блоки.
- Функции ядра.
- Предполагаемая аппаратная среда.
- Прерывания и особые ситуации.
- Уровни прерывания процессора
- Распределение памяти
- Архитектура операционной системы unix Общие положения.
- Процессы
- Контекст процесса
- Состояния процесса
- Переходы из состояния в состояние
- “Сон” и пробуждение
- Резюме.
- Взаимодействие процессов в unix.
- Сетевое взаимодействие в unix. Межмашинный интерфейс
- Сокеты.
- Windows nt
- Архитектура WindowsNt
- Исполняющая система Windows nt.
- Диспетчер виртуальной памяти.
- Средства вызова локальных процедур.
- Диспетчер Кеша(CashManager)
- Драйверы файловой системы.
- Драйвер аппаратных устройств
- Система безопасности Windows nt.
- Сетевые драйверы
- Модель сетевой архитектуры Windows nt.
- Транспортные протоколы
- Интерфейс драйвера транспорта
- Рабочие станции и серверы Windows nt
- Редиректоры
- Серверы Windows nt
- Провайдеры и интерфейс провайдера.
- NetBios и Windows сокеты
- NetBios
- Tcp/ip дляWindows nt.
- Tcp и сетевые возможности
- Базовая поддержка протоколов tcp/ip.
- Конфигурирование tcp/iPиSnmp. Маршрутизация и сетевые шлюзы.
- Процесс межсетевой маршрутизации с использованием шлюзов.
- Протокол динамической конфигурации хостов (dhcp).
- Распознавание имен в сетях на базе WindowsNt.
- NetBios поверхTcp
- Сервис wins.
- Wins в маршрутизируемой среде
- Работа с сетями InternetилиIntranet
- Общие проблемы работы с сетями
- Программы маршрутизации и Устройства Защиты.
- Типичные Сетевые Конфигурации Место Intranet
- Место Internet
- Интегрирование Вашего IntranetсInternet
- Администрирование серверов с Internet Service Manager.
- Обнаружение Других Компьютеров в Вашей Подсети.
- Соединение с Internet
- Как Выбирать Правильное Соединение Internet
- Типы Соединений Internet.
- Типы Соединений
- Ip Адреса и dns
- Другие Услуги Пользователя Internet
- Публикации на Intranet
- Имя разрешающей системы.
- Использование Компьютерных Имен с wins server
- Использование Компьютерных Имен и lmhosts
- Использование Имен Домена с dns Станциями
- Использование Доменных Имен и hosTs
- Использование dhcp в Вашем Intranet
- Использование urLs и Создание html Связей для Intranet
- Snmp Текущий контроль.
- Создание Виртуальных серверов
- Использование ftp и Gopher Сервиса ftp сервис и Gopher сервис
- Что такое ftp сервис?
- Когда необходимо использовать ftp сервис?
- Как работает ftp Сервис?
- Конфигурирования Сеанса.
- Просмотр Текущих Сеансов
- Конфигурирование ftp Входа в систему
- Управление Анонимными Соединениями Установка имени пользователя и пароля защиты:
- Настройка Сообщений
- Конфигурирование ftp Каталогов. Установка Исходного каталога
- Установка, Стиля просмотра
- Установка разрешения на чтение и запись.
- Чтение.
- Создание Файлов Аннотации
- Аннотация файлов
- Ошибки клиента броузера ftp, Directory Annotation Enabled
- Специальные Каталоги в Home каталоге
- Использование Имени Пользователя Directories
- Использование Анонимного Каталога
- Ftp Клиенты
- Что такое Gopher сервис?
- Конфигурирование Gopher сервиса
- Управление Защитой через Имя Пользователя и Passord’s. Установка имени пользователя и пароля защиты.
- Установка wais Индексные Запросы
- Tag файлы
- Создание tag Файлов. Создавать файл отметки
- Резюме содержания файла.
- Интерпретация элементов ввода