- •Раздел 1. Операционная система unix. Введение в операционную систему unix
- •Отличительные черты ос unix
- •Основы архитектуры операционной системы unix Модель системы unix.
- •Структура ядра ос unix.
- •Основы файловой системы ос unix
- •Типы файлов
- •Структура файловой системы unix
- •Владельцы файлов
- •Права доступа к файлу
- •Дополнительные атрибуты файлов
- •Устройства
- •Маска создания файла
- •Программы Oc unix
- •Процессы ос unix
- •Типы процессов
- •Атрибуты процесса
- •Процесс создания и запуска программ
- •Системный вызов завершения процесса exit
- •Системные функции типа exec
- •Обработка ошибок
- •Ограничения для процессов
- •Пользователи системы, Атрибуты пользователя
- •Средства ВзаимодействиЯ между процессАми
- •Сигналы
- •Посылка сигналов.
- •Int raise (int sig); // посылает сигнал вызывающему процессу (т.Е. Самому себе).
- •Обработка сигналов.
- •Набор сигналов.
- •Файловая подсистема ос unix
- •Индексный дескриптор
- •Блоки хранения данных
- •Недостатки и ограничения файловой системы s5fs
- •Файловая система ffs (Fast File System)
- •Основные отличия ffs от s5fs
- •Ограничения ffs
- •Каталоги ffs
- •Раздел 2. Взаимодействие процессов. Процесс, Понятие и классификация
- •Ресурсы, Понятие и классификация
- •Взаимодействие процессов Задача взаимного исключения
- •Integer очередь;
- •ОБобщенная задача взаимного исключения
- •Integer очередь;
- •Синхронизирующие примитивы (семафоры)
- •Процесс 1 :
- •Процесс 2 :
- •V(свободно);
- •Задача “производитель-потребитель” применение ОбщиХ семафорОв
- •Задача “производитель-потребитель” (буфер ограниченНый)
- •Взаимодействие через переменные состояния
- •Integer array желание[1:n], сп[1:n];
- •Integer чпб, бб, рб, чсеб, I;
- •Integer разм_п, n, max, nmax;
- •Проблема тупиков
- •Алгоритм банкира
- •Integer Св_Деньги; boolean Безопасно;
- •If ((Завершение_под_сомнением [I]) and
- •Применение алгоритма банкира
- •V(Взаимн_искл);
- •V(Возвращенные_Талеры[Номер_Клиента[m]]);
- •If (Попытка_выдать_талер_клиенту(h))
- •Монитороподобные средства синхронизации
- •Механизм типа «критическая область»
- •Механизм типа «условная критическая область»
- •Var s : semaphore; считывание : boolean; m : t;
- •Раздел 3. Вычислительные структуры. Машины, управляемые контроллерами (устройствами управления)
- •Усовершенствованная структура вычислительной машины, управляемой контроллерОм
- •Системы с операционным конвейером
- •Мультипроцессорные системы
- •Транспьютеры
- •Распределение памяти в транспьютерах
- •Диспетчеризация процессов
- •Организация ВводА / выводА в транспьютере.
- •Гарвардская архитектура на примере процессоров семейства adsp
Блоки хранения данных
Блоки хранения данных занимают большую часть дискового раздела, и их число определяет максимальный суммарный объем файлов данной файловой системы. Размер блока выбирается кратным 512 байтам. Обработка данных файла осуществляется через индексный дескриптор, который содержит ссылки на блоки данных
При блоковом подходе может наблюдаться фрагментация дискового пространства на уровне блоков, когда последний блок файл не занят полностью.
А когда создаётся много небольших файлов, получается, что большая часть памяти на диске не занята (блоки заполнены не полностью).
Имена файлов
Имя файла хранится в файлах специального типа, называемых каталогами. Такой подход позволяет файлу иметь практически неограниченное число имен, обуславливаемые тем, что ни метаданные, ни блоки хранения данных не содержат имени файла.
Можно удалить отдельные имена, но сам файл удаляется тогда, когда удаляются все имена.
Каталог файловой системы s5fs представляет собой таблицу, каждый элемент которой имеет фиксированный размер в 16 байтов. Два байта предназначены для хранения номера индексного дескриптора файла, а 14 байт – для хранения имени файла.
Отсюда ограничения:
на число индексных дескрипторов.
на длину имени.
Первый элемент каталога адресует сам текущий каталог и имеет имя «.» (точка), а второй – адресует родительский каталог под именем «..» (две точки). При удалении имени файла из каталога номер индексного дескриптора соответствующего элемента устанавливается равным нулю. Обычно ОС не удаляет такие элементы из каталога, следовательно, размер каталога не уменьшается даже при удалении файла. Это составляет определенные проблемы для каталогов с большим числом файлов.
Недостатки и ограничения файловой системы s5fs
Слабым местом в файловой системе, с точки зрения надежности, является суперблок, так как он несёт основную информацию обо всей файловой системе, а так как суперблок хранится в единственном экземпляре, вероятность появления ошибок достаточно высокая, а повреждение суперблока ведёт фактически к разрушению всей файловой системы.
Относительно низкая производительность связана с размещением файловых компонентов на диске: индексный дескриптор размещается в начале файловой системы, а блоки хранения данных – на остальном пространстве диска, а при работе с файлами происходит как обращение к метаданным, так и блокам данных файла; и так как эти элементы могут быть достаточно разнесены по файловому пространству, то необходимо перемещать головки диска, что увеличивает время доступа и снижает соответственно производительность системы.
Использование дискового пространства не оптимально. Для повышения производительности файловой системы желательно использовать блоки большого размера, т. е. это повышает скорость доступа и считывания, но, с другой стороны, большие блоки приводят к значительным потерям дискового пространства, т.к. под файлы выделяется кратное число блоков (целое число блоков) => один из блоков может быть малозаполнен.
Массив индексных дескрипторов имеет фиксированный размер, задаваемый при создании файловой системы. Этот размер накладывает ограничения на максимальное число файлов, которые могут существовать в файловой системе. Максимальное число файлов в такой файловой системе будет 65535.
Ограничение на длину имени файла.