
- •Понятие операционная система
- •Дескрипторы процессов и потоков
- •Операции над процессами и потоками
- •Создание процесса
- •Алгоритм -Первым пришёл первым обслужен (fcfs)
- •Алгоритм- кратчайшая задача первая (sjf)
- •Приоритетное планирование
- •Алгоритм- самый короткий следующий
- •Алгоритм- гарантированного планирования
- •Планирование с использованием многоуровневых очередей с обратной связью
- •Алгоритм планирования в Windows 2000-2003
- •Алгоритм планирования Unix
- •Алгоритм планирования в Linux
- •Управление памятью
- •Оверлейная структура
- •Свопинг
- •Логическая и физическая организация файлов
- •Физическая организация и адрес файла
- •Модель файловой системы
- •Отображение в память файлов
- •Физическая структура ntfs
- •Журналирование ntfs
- •Особенности дефрагментации ntfs
- •Сравнение файловых систем различны ос
Дескрипторы процессов и потоков
В адресном пространстве ядра ОС хранится информация о существующих процессах и потоках в данный момент. Для каждого процесса и потока приходится хранить его описатель- дескриптор. Каждый дескриптор процессов постоянно располагается в оперативной памяти, с целью ускорить работу диспетчера задач, для более эффективной обработки данных. Дескриптор обладает структурой. Дескриптор включает в себя поля: а)Индификатор процесса или потока. б)Групповые параметры -родительский процесс; дочерние процессы; процессы принадлежащие одному заданию. в)Параметры использования в ходе определения процессов ресурса. г)Состояние процесса. д)Статистические данные(время создания процессов разделённое по подтипам; время использованное дочерними процессами и т.д.) е)Описание виртуального адресного пространства(тип организации; структура ВАП; способы отражения ВАП). ж)Контекст безопасности. з)Текущие системные параметры выполнения. и)Код завершения процесса. к)Описание множества ресурсов используемых процессом или принадлежащих к процессу обычно храниться вне его дескрипторов.
Дескриптор потока в отличии от дескриптора процесса отличается меньшим количеством описания.
Операции над процессами и потоками
Над процессами можно производить следующие операции:
Создание процесса — это переход из состояния рождения в состояние готовности
Уничтожение процесса — это переход из состояния выполнения в состояние смерти
Восстановление процесса — переход из состояния готовности в состояние выполнения
Изменение приоритета процесса — переход из выполнения в готовность
Блокирование процесса — переход в состояние ожидания из состояния выполнения
Пробуждение процесса — переход из состояния ожидания в состояние готовности
Запуск процесса (или его выбор) — переход из состояния готовности в состояние выполнения
Создание процесса
Основные события приводящие к созданию: а)Запрос пользователя, инициализация системы. б)Работающий поток запросил создание процесса. в)С системной точки зрения все создание происходит путём вызова системной функции. При этом операционная система должна выполнить следующие функции: 1-Создаётся дескриптор процесса и помещается в таблицу дескрипторов. 2-Создаётся виртуально адресное пространство процесса (формируется структура) 3-Заполнение ВАПа данными(формируется код, стек). 4-Выделяются к процессу ресурсы. 5-Оповещает под системой, которая участвует в управление процессов. 6-Создаётся первичный поток процесса.
Завершение процесса
При завершение процесса ядро выполняет следующие действия: а)Завершение всех потоков процессора. б)Сохранение всех статистических данных и кода возврата в дескрипторе. в)Перевод всех ресурсов принадлежащих процессу в не противоречивое состояние. г)Освобождение всех ресурсов принадлежащих процессу или потоку. д)Освобождение виртуального адресного пространства с полным его освобождением. е)Оповещение всех подсистем принимающих участие в управление процессами о наступление события. ж)Установления состояния значения завершённым.
После всего остаётся таблица дескриптора.
Критерии оценки алгоритмов планирования
Системы пакетной обработки данных, в таких системах пользователи отсутствуют, допустимы алгоритмы переключения или без переключения. Интерактивная система- основные алгоритмы вытесняющие. Системы реального времени- системы гарантии времени обработки. Для всех существуют общие критерии: 1-Справедливость- гарантия предоставленного процессу или потоку справедливой доли процессорного времени.
2-Баланс-Поддержка занятости всех частей системы. 3- Сокращение полного времени выполнения (turnaround time) – обеспечить минимальное время между стартом процесса или постановкой задания в очередь для загрузки и его завершением.
Сокращение времени ожидания (waiting time) – сократить время, которое проводят процессы в состоянии готовность и задания в очереди для загрузки.
Сокращение времени отклика (response time) – минимизировать время, которое требуется процессу в интерактивных системах для ответа на запрос пользователя. 4-Масштабирование-Рост накладных расходов при увеличении процессов должен быть минимальным.
Пакетные алгоритмы планирования
В таких ОС критерием эффективности служит максимальная загрузка аппаратуры.
Алгоритмы планирования:
FIFO. Процессам предоставляется доступ к процессору в том порядке, в котором они его запрашивают. Достоинства: простота реализации. Недостатки: если есть один процесс, ограниченный возможностями процессора, то они замедлят работу процесса.
Кратчайшая задача - первая. Нужно знать время выполнения задачи! Критерий - минимальное среднее оборотное время. Оборотное время - время, прошедшее от начала выполнения до получения результата.
Наименьшее оставшееся время выполнения. Это версия предыдущего алгоритма с переключениями. В соответствии с этим алгоритмом планировщик каждый раз выбирает процесс с наименьшим оставшимся временем выполнения. В этом случае также необходимо заранее знать время выполнения задач. Когда поступает новая задача, ее полное время выполнения сравнивается с оставшимся временем выполнения текущей задачи. Если время выполнения новой задачи меньше, текущий процесс приостанавливается и управление передается новой задаче. Эта схема позволяет быстро обслуживать короткие запросы.