- •Конспект лекций по курсу: «Операционные системы. Ч.1»
- •Введение
- •Аппаратные средства.
- •Центральный процессор.
- •Разрядность шины памяти.
- •Архитектура процессора.
- •Процессорное ядро.
- •Декодер.
- •Регистры процессора.
- •Многопроцессорные и многоядерные системы.
- •Многоядерные системы.
- •Оперативная память.
- •Адресация оп.
- •Ввод-вывод.
- •Прерывания.
- •Внешние устройства.
- •Классификация ос.
- •Основные понятия ос.
- •Структура ос.
- •Программная структура ос.
- •Программная структура ядра.
- •Интерфейсы системы вызовов.
- •Понятие мобильной ос.
- •Микроядерная архитектура.
- •Основные компоненты ос
- •Процессы и потоки.
- •Потоки.
- •Взаимодействие процессов, потоков.
- •Управление памятью.
- •Организация виртуальной памяти в ос.
- •Организация виртуальной памяти.
- •Сегментно-страничное распределение.
- •Преобразование адресов.
- •Буферы быстрого преобразования адреса.
- •Инвертированные таблицы страниц.
- •Алгоритмы замещения страниц.
- •Распределение виртуального адресного пространства.
- •Очистка страниц.
- •Перезапуск прерванной команды процессора.
- •Хранение страничной памяти на диске.
- •Реализация виртуальной памяти ос multics.
- •Виртуальная память в ос с аппаратной платформой Intel Pentium.
- •Защита памяти.
- •Ввод-вывод.
- •Контроллеры устройств.
- •Обмен данными с реальной оп.
- •Принципы программной реализации управления вводом-выводом.
- •Программная организация ввода-вывода.
- •Уровни реализации ввода-вывода.
- •Обработчики прерываний
- •Драйверы устройств.
- •Управление внешними устройствами.
- •Службы времени.
- •Алфавитно-цифровые терминалы.
- •Программное обеспечение ввода.
- •Программное обеспечение вывода.
- •Датчики.
- •Управление электропотреблением.
- •Файловые системы.
- •Логическая и физическая организация файлов.
- •Файловая система msdos.
- •Организация нескольких логических разделов.
- •Надежность файловой системы.
- •Производительность фс.
- •Файловая система cdr.
- •Формат записи каталога.
- •Сжатие видеоинформации.
- •Стандарт mpeg (Motion Picture Expert Group).
- •Структура реальной оп.
- •Структура виртуальной оп виртуальной машины.
- •Организация вычислительного процесса.
- •Планирование и диспетчирование.
- •Обработка прерываний.
- •Управление памятью.
- •Управление внешней памятью.
- •Планирование и диспетчирование.
- •Управление вводом-выводом.
- •Средства программирования и инструментальные средства.
- •Сетевые возможности операционных систем.
- •Понятие dce.
- •Подходы к обеспечению безопасности информации в ос.
Файловые системы.
Файловая система – часть ОС, включающая:
- совокупность всех файлов;
- структуры данных, используемых для управления файлами (каталоги, дескрипторы, таблицы распределения свободного пространства и т.д.);
- комплекс системных программных средств, реализующих различные операции над файлами (создание, уничтожение, перемещение).
Типы файлов:
1. Обычные файлы. Содержат информацию различного характера. Структура файлов определяется ОС, пользовательскими процессами и приложениями (программными средами), которые работают с этими файлами.
2. Каталоги – особый тип файлов, которые содержат справочную информацию о наборе файлов, сгруппированных по какому-либо признаку.
3. Специальные файлы. Фиктивные, эмулирующие внешние устройства.
Структура файловой системы.
Большинство файловых систем имеет иерархическую структуру. Иерархия может быть деревом или сетью. Дерево - файл входит только в один каталог. Сеть - файл входит в несколько каталогов. Корневой каталог - каталог самого верхнего уровня.
Имена файлов.
Простое имя - может назначаться процессом, в том числе на некоторое время. Полное имя (составное) - путь от корневого каталога до файла. Относительное имя - определяется "текущим" каталогом. В каждый момент времени имеется каталог, который называется текущим. Имя текущего каталога является дополнением для образования полного имени файла.
Атрибуты файлов - информация, описывающая свойства файлов. В различных ОС атрибуты могут быть разные.
Логическая и физическая организация файлов.
Как правило, различают логическую (концептуальную) и физическую организацию данных на внешних устройствах.
Логическая организация.
Как правило, различают структурированную модель и неструктурированную модель. Неструктурированная - поток битов или логических записей. Структурированная - файл разбивается на области, каждая из которых хранит ту или иную управляющую информацию. Как правило, используют два способа доступа к логическим записям: читать или писать последовательно (последовательный доступ), позиционировать с помощью операций поиска на данную логическую запись, чтение, запись (прямой доступ, индексный, индексно-последовательный).
Последовательный доступ. Как правило, записи могут быть двух типов: фиксированной длины и переменной длины. Для доступа к записи n необходимо пропустить (n-1)L байтов. Для записи переменной длины, как правило, в поле записи, имеются данные о ее длине, либо метка конца блока (логической записи).
Прямой доступ. Все записи имеют номера и идентификатор для позиционирования. Логическая запись адресуется установкой каретки с дальнейшей операцией чтения/записи. Как правило, при прямом доступе логические записи фиксированной длины.
Индексный доступ. В начале файла имеется таблица (индекс), причем каждому индексу соответствует физический адрес записи.
Доступ осуществляется логически по индексу, который преобразуется в номер физической записи из таблицы.
Индексно-последовательный. Существует таблица индексов, но другая.
Индекс |
1 |
2 |
||||||
№ записи |
21 |
22 |
23 |
24 |
25 |
29 |
30 |
… |
Индекс указывает на зону внешней памяти, в которой записи расположены последовательно. Сначала по индексу находится зона внешней памяти, а в зоне последовательно запись.
Физическая организация.
Файл, логически имеющий вид непрерывной области байтов, физически разбросан по диску кусками. Сектор - наименьшая адресуемая единица обмена данными между диском и памятью. Разметка внешней памяти на сектора осуществляется процедурой форматирования низкого уровня. Каждое внешнее устройство имеет различное количество секторов и их длинну. Разметку диска под ту или иную файловую систему выполняет соответствующая утилита данной ОС. На внешнем носителе могут располагаться несколько логических устройств (файловых систем). Раздел - непрерывная часть физического диска, которую ОС рассматривает как отдельное устройство. В различных разделах форматирование может происходит по-разному. Кластер - информационный блок, может содержать несколько секторов. Можно выделить следующие способы физической организации данных:
- непрерывное размещение (файлу предоставляется последовательность кластеров диска, образующих непрерывный участок дисковой памяти). Достоинства: высокая скорость доступа, минимальная адресная информация. Недостатки: фрагментация.
- связанные списки кластеров. При таком способе в начале каждого кластера содержится ссылка на следующий кластер. Достоинства: минимальная адресная информация. Недостаток: сложность реализации доступа, для того, чтобы прочитать n-ый кластер нужно прочитать (n-1).
- использование связанного списка индексов. Является модификаций предыдущего способа. Файлу выделяется память в виде списка кластеров. Номер первого кластера запоминается в записи каталога. С каждым кластером диска связан некоторый элемент - индекс. Индексы располагаются в отдельном месте. Когда диск свободен, все индексы равны 0 или 1. Если кластер n выделен некоторому файлу, то индекс становится равным n либо (n+1) - номер следующего кластера данного файла. А может быть нули. Достоинства: минимальная адресная информация, не требуется просмотр всех кластеров, требуется просмотр таблицы индексов, которая может хранится в реальной ОП (перемещать головки и читать не нужно много раз). Пример: файловая система MSDOS.
-использование перечисления кластеров файла. В этом случае перечень кластеров служит сам по себе адресной частью файла. Достоинства: прямая адресация к файлу (без просмотра цепочек). Недостаток: длина адреса зависит от размера файла.
- i-узлы. Метод состоит в связывании с каждым файлом структуры данных, называемой i-node. i-node содержит атрибуты файла и адреса кластеров секторов. Достоинства: i-node находится в реальной памяти, когда файл открыт, поэтому доступ осуществляется быстро. Если i-node занимает n байт, а одновременно может быть открыто k файлов, то для массива i-node потребуется kn байт (это не много, значительно меньше FAT).
Адресация файлов в UFS.
Кластеры файла адресуется в соответствии с некоторой схемой.
Для хранения адресов кластеров файла выделяется 15 полей, каждое поле состоит из 4х байт. Кластеры в этой ФС имеют длину 8 кб. Если размер файла <= 12, то можно реализовать 12*8 кб=96 кб файла. Если > 12, 13е поле содержит адрес кластера, в котором расположены адреса следующих кластеров файла. Если количество кластеров файлов ещё больше, то подключается 13 и 14 поля, причем они представляют собой иерархию кластеров, в которых находятся номера. Такая схема адресации позволяет адресовать файл, длинной 7*10^10 байт.
