Файл: Управление устройствами вводавывода и файловые системы Управление вводомвыводом.pptx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 18.01.2024
Просмотров: 23
Скачиваний: 1
СОДЕРЖАНИЕ
Управление устройствами ввода-вывода и файловые системы
Основные функции подсистемы ввода-вывода
1.Организация параллельной работы устройств ввода-вывода и процессора.
2. Согласование скоростей обмена и кэширование данных.
3. Разделение устройств и данных между процессами.
4. Обеспечение удобного логического интерфейса между устройствами и остальной частью системы.
5. Поддержка широкого спектра драйверов с возможностью простого включения в систему нового драйвера.
6. Динамическая загрузка и выгрузка драйверов.
7. Поддержка нескольких файловых систем.
8. Поддержка синхронных и асинхронных операций ввода-вывода.
Классификация устройств ввода-вывода
Управление устройствами ввода-вывода и файловые системы
Управление вводом-выводом
Основные функции подсистемы ввода-вывода
1.Организация параллельной работы устройств ввода-вывода и процессора.
2. Согласование скоростей обмена и кэширование данных.
3. Разделение устройств и данных между процессами.
4. Обеспечение удобного логического интерфейса между устройствами и остальной частью системы.
5. Поддержка широкого спектра драйверов с возможностью простого включения в систему нового драйвера.
6. Динамическая загрузка и выгрузка драйверов.
7. Поддержка нескольких файловых систем.
8. Поддержка синхронных и асинхронных операций ввода-вывода.
Операционная система
Драйвер
Контроллер
Внешнее устройство
Интерфейс драйвер – устройство (Driver Device Interface, DDI)
Интерфейс драйвер – ядро (Driver Kernel Interface, DKI)
Аппаратный низкоуровневый интерфейс контроллер - устройство
Функции драйвера
- Обработка запросов записи-чтения от программного обеспечения управления устройствами. Постановка запросов в очередь
- Проверка входных параметров запросов и обработка ошибок
- Инициализация устройства и проверка статуса устройства
- Управление энергопотреблением устройства.
- Регистрация событий в устройстве
- Выдача команд устройству и ожидание их выполнения возможно в блокированном состоянии до поступления прерывания от устройства
- Проверка правильности завершения операции
- Передача запрошенных данных и статуса завершенной операции
- Обработка нового запроса при незавершенном предыдущем запросе (для реентерабельных драйверов)
Классификация устройств ввода-вывода
Типы устройств по функциональному назначению:
1. Работающие с пользователем. Используются для связи с пользователем компьютера (принтеры, дисплеи, клавиатура, манипуляторы (мышь, джойстик и т. п.).
2. Работающие с компьютером. Используются для связи с электронным оборудованием (диски, магнитные ленты, датчики, контроллеры, преобразователи и т. п.).
3. Коммуникации. Используются для связи с удаленными устройствами (модемы, адаптеры цифровых линий и др.).
Типы устройств по принципам функционирования:
- Блочные, хранящие информацию в виде адресуемых блоков фиксированного размера и позволяющие работать с каждым блоком независимо от других блоков ( дисковые устройства).
- Символьные, принимающие или предоставляющие поток символов без какой-либо структуры (принтеры, модемы, сетевые карты).
Различия в характеристиках устройств ввода-вывода
- Скорость передачи данных (на несколько порядков).
- Применение. Один и тот же тип устройства может требовать различного ПО и стратегии операционной системы (диск для хранения файлов приложений и файла подкачки, терминал пользователя и администратора).
- Сложность управления (для принтера относительно простой интерфейс управления, для диска – намного сложнее).
- Единицы передачи данных. Данные могут передаваться блоками или потоком байтов или символов.
- Представление данных. Различные устройства используют разные схемы кодирования данных, включая различную кодировку символов и контроль четности.
- Условия ошибок. Природа ошибок, способ сообщения о них, возможные ответы резко отличаются от одного устройства к другому.
101
102
103
104
105
106
107
108
109
Gigabit Ethernet
Графический монитор
Жесткий диск
Ethernet
Оптический диск
Сканер
Лазерный принтер
Гибкий диск
Модем
Мышь
Клавиатура
Бит в секунду
Многослойная модель подсистемы ввода-вывода
Системные вызовы
Диспетчер прерываний, функции доступа к аппаратуре
Байт-ориентированный интерфейс
VFS
Блок-ориентированный интерфейс
UFS
NTFS
FAT
Дисковый кэш
Драйвер HD
Драйвер FD
Контроллеры
устройств ввода-вывода
Диски
Графические устройства
Дисковые устройства
Сетевые устройства
Низкоуровневые графические драйверы
Менеджер окон
Высокоуровневые графические драйверы
HTTP
FTP
SMB
TCP/UDP
SPX
IP
IPX
NetBEUI
Ethernet
FR
ATM
Межмодульный обмен, связывание, буферизация, синхронизация, к другим подсистемам
Файловая система – это часть операционной системы, включающая:
- совокупность всех файлов на различных носителях информации (магнитные диски, магнитные ленты, CD-ROM и т. п.);
- наборы структур данных, используемых для управления файлами (каталоги и дескрипторы файлов, таблицы распределения свободного и занятого пространства носителей информации);
- комплекс системных программных средств, реализующих различные операции над файлами (создание, чтение, запись, уничтожение, изменение свойств и др.).
Один файл – одно полное имя
Корневой каталог
Файлы
Корневой каталог
User 1
User 2
User 3
ДЕРЕВО
Корневой каталог
User 1
User 2
User 3
СЕТЬ
Один файл – много полных имен
Файловый каталог является связующим звеном между системой управления файлами и набором файлов
Атрибут
Значение
Тип файла Обычный, каталог, специальный и т. д.
Владелец файла Текущий владелец
Создатель файла Идентификатор пользователя, создавшего файл
Пароль Пароль для получения доступа к файлу
Время Создания, последнего доступа, последнего изменения
Текущий размер файла Количество байтов в записи
Максимальный размер Количество байтов, до которого можно увеличивать размер Флаг «только чтение» 0 – чтение-запись, 1 – только чтение
Флаг «скрытый» 0 – нормальный, 1 – не показывать в перечне файлов каталога
Флаг «системный» 0 – нормальный, 1 – системный
Флаг «архивный» 0 – заархивирован, 1- требуется архивация
Флаг ASCII/двоичный 0 – ASCII, 1 – двоичный
Флаг произвольного доступа 0 – только последовательный доступ, 1 – произвольный доступ
Флаг «временный» 0 – нормальный, 1 – удаление после окончания работы процесса
Файловая система 1
Файловая система 2
Общая файловая система после монтирования
Обычный файл
Каталог
Специальный файл-устройство
Монтирование
/ (root)
/ (root)
/ (root)
dev
dev
t
t
t
r
r
user
user
home
home
bin
bin
man
man
loc
loc
man1
man1
man2
man2
f1
f1
f2
f2
Шесть типоразмеров жёстких дисков. Для масштаба рядом лежит дюймовая линейка
1956 год — жёсткий диск IBM 350 в составе первого серийного компьютера IBM 305 RAMAC. Накопитель занимал ящик размером с большой холодильник и имел вес 971 кг, а общий объём памяти 50 вращавшихся в нём покрытых чистым железом тонких дисков диаметром 610 мм составлял около 5 миллионов 6-битных слов (3,5 Мб в пересчёте на 8-битные слова — байты).
1980 год — первый 5,25-дюймовый Winchester, Shugart ST-506, 5 Мб.
2013 год — Western Digital выпускает диск на 6 ТБ, используя 7 пластин.
Структура диска: (A) дорожка (B) геометрический сектор (C) сектор дорожки (D) кластер
Адресация блоков данных диска
1 способ: c – h - s с – номер цилиндра, h – номер головки, s – номер сектора
2 способ: LBA A = (c * H + h) * S + s – 1 H – число рабочих поверхностей в цилиндре, S – количество секторов на дорожке
Структура элемента таблицы разделов
N п/п | Назначение | Размер в байтах |
1. | Флаг активности раздела (Boot Indicator) | 1 |
2. | Номер головки начала раздела | 1 |
3. | Номер сектора и цилиндра загрузочного сектора раздела | 2 |
4. | Системный идентификатор, показывающий на принадлежность к ОС и ФС | 1 |
5. | Номер головки конца раздела | 1 |
6. | Номер сектора и цилиндра последнего сектора раздела | 2 |
7. | Младшее и старшее двухбайтовые слова относительного номера начального сектора | 4 |
8. | Младшее и старшее двухбайтовые слова размера раздела в секторах | 4 |
9. | Сигнатура-признак MBR и загрузочных секторов – 55AA h (только в конце MBR) | 2 |
Системные идентификаторы: 06h – FAT16, 07h – NTFS, 0Bh – FAT32
Физическая организация файловой системы
Структура диска: пластины, дорожки, цилиндры, секторы, кластеры.
Низкоуровневое форматирование – создание дорожек и секторов.
Высокоуровневое форматирование – создание разделов и кластеров для определенной файловой системы или нескольких файловых систем.
Р А З Д Е Л Ы (первичные и расширенные)
Загрузочный блок
MBR
Таблица разделов
С:
D:
E:
Суперблок –таблица параметров
Карта дискового пространства
i-узлы
Каталоги и файлы
Корневой каталог
Системная область
Область данных
З
С
NSB
NSB (Non –System Bootstrap) – внесистемный загрузчик
Первичный раздел
Расширенный раздел
Не использован
Не использован
Главная таблица разделов
Master Boot Record
Загрузочный сектор диска C:
Карта дискового пространства
Данные
Первичный раздел (диск C:)
Данные
Карта дискового пространства
Secondary Master Boot Record
Загрузочный сектор диска D:
Secondary Master Boot Record
Загрузочный сектор диска D:
Карта дискового пространства
Данные
Логический диск D:
Логический диск E:
Расширенный раздел
Логический диск D:
Логический диск E:
Адрес таблицы для диска E:
0 – конец цепочки
Не использован
Не использован
Не использован
Не использован
Первая таблица логического диска
Вторая таблица логического диска
Разбиение диска на разделы
1
5
2
3
4
файл
непрерывное размещение
1
2
3
4
5
6
#
6
4
3
размещение в виде связанного списка кластеров
Достоинства: высокая скорость доступа, минимальный объем адресной информации, нет ограничений на размер файла.
Недостатки: нет возможностей для изменения размера файла, высокая степень возможной внешней фрагментации
Область применения – компакт-диски
Достоинства: минимальная адресная информация, отсутствие внешней фрагментации, возможность изменения размеров файла.
Недостатки: медленный доступ, сложность доступа к произвольному блоку файла, некратность блока файла степени двойки.
123456789
3
5
6
Область индексов
Связный список индексов
Перечень номеров кластеров
123456789
Файл 2, 4, 5
Все достоинства варианта А), быстрый доступ к произвольному кластеру файла, полное заполнение кластера, кратное степени двойки
Достоинства: высокая скорость доступа к произвольному кластеру благодаря прямой адресации, отсутствие внешней фрагментации.
Недостаток: длина адреса зависит от размера файла и может быть значительной.
Недостаток: рост адресной информации с увеличением емкости диска
Файл 1, 3, 5, 6
перечисление номеров блоков, занимаемых этим файлом
1 2 3 4 10 11 12 13
адрес
Прямая адресация
……………………….
…
1 2 128
Косвенная адресация
…
…
1
128
двойная адресация
тройная адресация
FAT
0 1 2 3
Корневой каталог
.
.
.
FAT 2 (копия)
0 1 2 3 4
FAT 1
Загрузочный сектор
- 512 б
Элементы FAT
32 бита – одна запись каталога
Кластеры
данных
Структура записи каталога FAT
8 байт Имя файла
3 байт Расширение файла
1 байт Атрибуты файла
1 байт Зарезервировано
3 байт Время создания
2 байт Дата создания
2 байт Дата последнего доступа
2 байт Зарезервировано
2 байт Время последней модификации
2 байт Дата последней модификации
2 байт Начальный кластер
4 байт Размер файла
Длина поля Описание
Таблица FAT (как основная копия, так и резервная) состоит из массива индексных указателей, количество которых равно количеству кластеров области данных. Между кластерами и индексными указателями имеется взаимно однозначное соответствие — нулевой указатель соответствует нулевому кластеру и т. д.
Индексный указатель может принимать следующие значения, характеризующие состояние связанного с ним кластера:
- кластер свободен (не используется);
- кластер используется файлом и не является последним кластером файла; в этом случае индексный указатель содержит номер следующего кластера файла;
- последний кластер файла;
- дефектный кластер;
- резервный кластер.
Подключение сетевого диска
Сетевой диск— назначенный логический диск (папка), который служит для хранения «общих» файлов, доступных для всех пользователей, на других персональных компьютерах, включенных в общую локальную сеть.
Основные характеристики файловых систем
FAT Разрядность Число Максимальный Максимальный Имя файла
указателя кластеров объем кластера размер раздела
FAT12 12 4096 4 Кбайт 16 Мбайт 8.3
FAT16 16 65536 64 Кбайт 4 Гбайт 8.3 255.3
FAT 32 32 4 Г 32 Кбайт 232 по 32 Кбайт 255.3
NTFS 64 264 4 Кбайт 264 по 4 Кбайт 255.3
Программа Fdisk автоматически определяет размер кластера на основе выбранной файловой системы и размера раздела. Существует недокументированный параметр команды Format, позволяющий явно указать размер кластера:
Format /z:n, где n – размер кластера в байтах, кратный 512.
Основные свойства файловой системы NTFS:
1. Поддержка больших файлов и больших дисков (объем до 264 байт). 2. Восстанавливаемость после сбоев и отказов программ и аппаратуры управления дисками. 3. Высокая скорость операций, в том числе для больших дисков. 4. Низкий уровень фрагментации, в том числе для больших дисков. 5. Гибкая структура, допускающая развитие за счет добавления новых типов записей и атрибутов файлов с сохранением совместимости с предыдущими версиями ФС. 6. Устойчивость к отказам дисковых накопителей. 7. Поддержка длинных символьных имен. 8. Контроль доступа к каталогам и отдельным файлам.
Файл NTFS – не просто линейная последовательность байтов, характерная для FAT-систем и Unix, а множество атрибутов, представляемых в виде потока байтов. Файл имеет несколько коротких потоков (имя, идентификатор и др.) и один или несколько длинных потоков с данными (ff:stream1, ff:stream2 и др.).
Структура тома NTFS
Основой структуры тома является главная таблица файлов (Master File Table, MFT), которая содержит одну или несколько записей для каждого файла тома и одну запись для самой себя (размер записи – 1, 2 или 4 Кбайт).
Том состоит из последовательности кластеров, порядковый номер кластера в томе – логический номер кластера (Logical Cluster Number, LCN).
Файл состоит из последовательности кластеров, порядковый номер кластера внутри файла называется виртуальным номером кластера (Virtual Cluster Number, VCN). Размер кластера от 512 байт до 64 Кбайт.
Базовая единица распределения дискового пространства – отрезок – непрерывная область кластеров.
Адрес отрезка – (LCN, k), k –количество кластеров в отрезке. Адрес файла (или его части) – (LCN, VCN, k).
Файл целиком размещается в записи таблицы MFT (если позволяет размер). В противном случае в записи MFT хранится резидентная часть файла (некоторые его атрибуты), а остальная часть файла хранится в отдельном отрезке тома или нескольких отрезках.
Загрузочный блок
0
1
2
15
Системный файл 1
Системный файл 2
Системный файл n
Копия MFT (первые 3 записи)
Копия загрузочн. блока
Файл M
MFT
MFT
Загрузочный блок содержит стандартный блок параметров BIOS, количество блоков в томе, начальный логический номер кластера основной и зеркальной копии MFT.
0. Описание MFT, в том числе адреса всех ее отрезков. 1. Зеркальная копия MFT. 2. Журнал для восстановления файловой системы. 3. Файл тома (имя, версия и др. информация). 4. Таблица определения атрибутов. 5. Индекс корневого каталога. 6. Битовая карта кластеров. 7. Загрузочный сектор раздела. 8. Список дефектных кластеров. 9. Описатели защиты файлов. 10. Таблица квот. 11. Таблица преобразования регистра символов (для Unicode). 12 – 15 – зарезервировано.
1-й отрезок MFT
2-й отрезок MFT
3-й отрезок MFT
Файл K
MFT
Файлы метаданных
Структура файлов NTFS
Файлы и каталоги состоят из набора атрибутов. Каждая запись MFT состоит из заголовка, за которым следуют атрибуты. Атрибуты содержат следующие поля: тип, длина, имя (образуют заголовок) и значение.
Атрибуты, используемые в записях MFT: 1. Стандартная информация (сведения о владельце, флаговые биты, время создания, время обновления и др.). 2. Имя файла в кодировке Unicode, м.б. повторено для имени MS DOS. 3. Список атрибутов (содержит ссылки на номера записей MFT, где расположены атрибуты), используется для больших файлов. 4. Версия – номер последней версии файла. 5. Дескриптор безопасности – список прав доступа ACL. 6. Версия тома –используется в системных файлах тома. 7. Имя тома. 8. Битовая карта MFT – карта использования блоков тома. 9. Корневой индекс – используется для поиска файлов в каталоге. 10. Размещение индекса – нерезидентная часть индексного списка ( для больших файлов). 11. Идентификатор объекта – 64-разрядный идентификатор файла, уникальный для данного тома. 12. Данные файла. 13. Точка повторного анализа (монтирование и симв. ссылки)
Файлы NTFS в зависимости от способа размещения делятся на небольшие, большие, очень большие и сверхбольшие.
Заголовок записи
Стандартный информационный заголовок
Заголовок имени файла
Заголовок данных
ДАННЫЕ
Заголовок ACL
Список прав доступа
Стандартная информация
Имя файла
НЕ используется
Пример небольшого файла NTFS
Стандартная информация
Имя файла
ДАННЫЕ
Список прав доступа
Список прав доступа
VCN
K
K
K
K
LCN
LCN
LCN
0
9
20
4
64
2
80
3
20 – 23, 64 – 65, 80 - 82
Блоки диска
Пример большого файла NTFS
Заголовок данных
Заголовок ACL
Небольшие файлы (small).
Если файл имеет небольшой размер, то он может целиком располагаться внутри одной записи MFT, имеющей, например, размер 4 Кбайт. Небольшие файлы NTFS состоят по крайней мере из следующих атрибутов:
Файлы NTFS в зависимости от способа размещения делятся на небольшие, большие, очень большие и сверхбольшие.
Большие файлы (large). Если данные файла не помещаются в одну запись MFT, то этот факт отражается в заголовке атрибута Data, который содержит признак того, что этот атрибут является нерезидентным, то есть находится в отрезках вне таблицы MFT. В этом случае атрибут Data содержит адресную информацию (VCN, LCN, k) каждого отрезка данных.
Очень большие файлы. Если файл настолько велик, что его атрибут данных, хранящий адреса не резидентных отрезков данных, не помещается в 1-й записи, то этот атрибут помещается в 2-ю запись MFT, а ссылка на такой атрибут помещается в основную запись файла. Она (ссылка) содержится в атрибуте Attribute List. Сам атрибут данных по-прежнему содержит адреса нерезидентных отрезков данных.
106
Сверх большие файлы. Для этих файлов в атрибуте Attribute List можно указать несколько атрибутов, расположенных в дополнительных записях MFT. Кроме того, можно использовать двойную косвенную адресацию, когда нерезидентный атрибут будет ссылаться на другие не резидентные атрибуты.
Каталоги NTFS
- Каждый каталог NTFS представляет собой один вход в таблицу MFT, который содержит атрибут Index Root. Индекс содержит список файлов, входящих в каталог. Индексы позволяют сортировать файлы для ускорения поиска, основанного на значении определенного атрибута. Обычно в файловых системах файлы сортируются по имени. NTFS позволяет использовать для сортировки любой атрибут, если он хранится в резидентной форме.
- Имеются две формы хранения списка файлов.
Небольшие каталоги (small indexes)
- Если количество файлов в каталоге невелико, то список файлов может быть резидентным в записи в MFT, являющейся каталогом
- Для резидентного хранения списка используется единственный атрибут − Index Root. Список файлов содержит значения атрибутов файла. По умолчанию – это имя файла, а также номер записи MFT, содержащей начальную запись файла.
Большие каталоги (large indexes)
- По мере того как каталог растет, список файлов может потребовать нерезидентной формы хранения. Однако часть списка всегда остается резидентной в корневой записи каталога в таблице MFT. Имена файлов резидентной части списка файлов являются узлами так называемого В-дерева (сбалансированного дерева). Остальные части списка файлов размещаются вне MFT. Для их поиска используется специальный атрибут Index Allocation, представляющий собой адреса отрезков, хранящих остальные части списка файлов каталога. Узлы В-дерева делят весь список файлов на несколько групп. Имя каждого файла-узла является именем последнего файла в соответствующей группе.
ReFS (Resilient file system)
- предварительное название Protogon — файловая система, используемая в Windows Server 2012, Windows Server 2012 R2, бета-версиях Microsoft Windows 8, Windows 8.1. Является дальнейшим развитием NTFS. Protogon поддерживает точки повторной обработки (reparse points) — технологию, которая ранее содержалась только в файловой системе NTFS. Через точки повторной обработки реализована поддержка символьных ссылок и точек монтирования в Windows, так что Protogon также поддерживает их.
- Protogon не поддерживается Windows 7 и более ранними системами.
Сравнение файловых систем NTFS и ReFS
Сравнение файловых систем NTFS и ReFS на примере переименования файлов
- Файловая система NTFS записывает в журнал, что файл должен быть переименован, там же она регистрирует и все остальные действия.
- Только после того, как она запишет в журнал, что должно быть переименовано, выполняется переименование.
- В конце выполнения операции, в журнале появляется сообщение о том, что было произведено успешное или неуспешное переименование файла.
- В файловой системе ReFS, новое имя для файла или папки записывается в свободное место, при этом старое имя сразу не удаляется.
- Как только новое имя будет записано, в файловой системе ReFS происходит создание ссылки на новое имя.
В файловой системе NTFS
- 1. NTFS, как обычно, записывает запрос на изменение в Журнал.
- 2. После этого из-за отказа питания процесс переименования прерывается, и не остается записи ни о прежнем, ни о новом именах.
- 3. Происходит перезагрузка Windows.
- 4. Вслед за этим запускается программа для исправления ошибок — Chkdisk.
- 5. Только теперь с помощью Журнала при применении отката восстанавливается изначальное имя файла.
Матрица прав доступа
Разрешения на доступ к каталогам
Стандартные разрешения
Специальные разрешения
Разрешения на доступ к файлам
Квоты дискового пространства
Файловая система 1
Файловая система 2
Общая файловая система после монтирования
Обычный файл
Каталог
Специальный файл-устройство
Монтирование
/ (root)
/ (root)
/ (root)
dev
dev
t
t
t
r
r
r
user
user
home
home
bin
bin
man
man
loc
loc
man1
man1
man2
man2
f1
f1
f2
f2
Типы файлов
- (дефис) — обычный файл; |
d — каталог; |
с — символьное устройство; |
b — блочное устройство; |
p — именованный канал (named pipe); |
s — сокет (socket); |
l — символическая ссылка. |
Физическая организация S5 и ufs
Расположение файловой системы s5 на диске
Структура индексного дескриптора (i-node)
- идентификатор владельцев файла;
- тип файла, файл может быть файлом обычного типа, каталогом, специальным файлом, конвейером и символьной связью;
- права доступа к файлу;
- временные характеристики: время последней модификации файла, время последнего обращения к файлу, время последней модификации индексного дескриптора;
- число ссылок на данный индексный дескриптор равно количеству псевдонимов файла;
- адресная информация ;
- размер файла в байтах.
Копирование индексного дескриптора входит в процедуру открытия файла. При открытии файла ядро выполняет следующие действия:
- Проверяет, существует ли файл; если не существует, то можно ли его создать. Если существует, то разрешен ли к нему доступ требуемого вида.
- Копирует индексный дескриптор с диска в оперативную память; если с указанным файлом уже ведется работа, то новая копия индексного дескриптора не создается.
- Создает в области ядра структуру, предназначенную для отображения текущего состояния операции обмена данными с указанным файлом. Эта структура, называемая file, содержит данные о типе операции (чтение, запись или чтение и запись), о числе считанных или записанных байтов, указатель на байт файла, с которым проводится операция.
- Делает отметку в контексте процесса, выдавшего системный вызов на операцию с данным файлом.
Поиск файла /bin/ my_shell/print
2. из области индексных дескрипторов считывается дескриптор №6, начальный адрес дескриптора определяется на основании известных системе номера начального сектора номера индексного дескриптора и размера индексного дескриптора. Из индексного дескриптора 6 определяется физический адрес каталога bin.3. просматривается каталог bin, целью поиска имени my_shell и определяется его номер – это 25;
4. считывается индексный дескриптор 25, определяется физический адрес каталога /bin/ my_shell/print;
5. просматривая каталог /bin/ my_shell/print, определяется номер индексного дескриптора файла print – это 131;
6. из индексного дескриптора131 определяются номера блоков данных и другие характеристики искомого файла.
Физическая организация файловой системы ufs
Загрузочный блок |
Суперблок |
Блок группы цилиндров |
Список i-node |
Блоки данных |
Суперблок |
Блок группы цилиндров |
Список i-node |
. . . |
Реализация прав доступа в UNIX
- С каждым процессом UNIX связаны два идентификатора: пользователя, от имени которого был создан этот процесс, и группы, к которой принадлежит данный пользователь. Эти идентификаторы носят название реальных идентификаторов пользователя: Real User ID, RUID и реальных идентификаторов группы: Real Group ID, RGID.
- При проверке прав доступа к файлу используются так называемые эффективные идентификаторы пользователя: Effective User ID, EUID и эффективные идентификаторы группы: Effective Group ID, EGID.
- Файл имеет два признака разрешения смены идентификатора — Set User ID on execution (SUID) и Set Group ID on execution (SGID), которые разрешают смену идентификаторов пользователя и группы при выполнении данного файла.