- •Кафедра автоматизації і комп’ютерних систем
- •Классификация архитектурных типов процессоров.
- •Традиционно машинный уровень.
- •Команды обращения к процедурам
- •Процедуры
- •Управление циклами
- •Представление данных
- •Управление процессами
- •Типы адресации
- •Поиск и сортировка
- •Сортировка данных
- •Межпроцессорное взаимодействие.
- •Критические области.
- •Методы синхронизации с пассивным ожиданием.
- •Решение задачи производительности потребителя с помощью мониторов.
- •Разработка систем с помощью передачи сообщений.
- •Классические проблемы межпроцессорного взаимодействия.
- •Планировщик процессов
- •Планирования в системах реального времени.
- •Организация виртуальной памяти.
- •Стратегии замещения страниц.
- •Алгоритм «2-я попытка»
- •Алгоритм «часы»
- •Алгоритм nfu (редко используемая страница)
- •Методы ускорения работы со страницами
- •Способы ассемблирования
- •Связывание программ
- •Структура объектного модуля
- •Атака системы безопасности
- •Принципы проектирования систем безопасности.
- •Аутентификация пользователей
- •Механизм защиты
- •Технические механизмы защиты
- •Защита информации при передаче
- •Основные понятия криптографии:
- •Криптографический протокол
- •Гибридные криптосистемы
- •Цифровая подпись
- •Сертификаты
- •Алгоритм des
- •Принципы аутентификации управления доступом
- •Аутентификация с использованием односторонних функций
- •Аутентификация по принципу "запрос-ответ"
- •Аутентификация управления доступом в Unix
- •Супер-пользователь Root
- •Теневые пароли
- •Поддержка возможностей в Linux.
- •Аутентификация.
- •Идентификаторы безопасности.
- •Одалживание прав.
- •Управление доступом Windows xp.
- •Аудит. Общие принципы.
- •Локальная безопасность.
- •Сетевая безопасность
Планировщик процессов
Наиболее частая задача планирования это разрешить доступ к процессору одному из активных процессов отвечает за это часть ОС называемая планировщиком, планировщик использует алгоритм планирования, существует несколько алгоритмов планирования. При разработке алгоритмов решается 5 задач:
Равноправие – предоставление каждому процессу адекватные доли процессорного времени.
поддержка максимальной занятости процессора;
Обеспечение быстрой реакции на запросы;
Сокращение оборотного времени т.е. сумарного времени на ожидание времени и обработку задачи;
Повышение пропускной способности – это повышение количества решаемых задач в единицу времени.
Все 5 задач в ходе решения противоречат друг другу поэтому при написании планировщика выбирается компромис наиболее соотвецтвующий для решения задачи. При разработке алгоритмов планирования возникает 3 вида проблем:
Каждый процесс уникален и не предсказуем, поэтому планировщик не может зарание знать сколько процессорного времени займет процесс до своего ближайшего прирывания. Вычислительные системы имеют встроенный таймер вызывающий прирывания 50-60 Гц. Однако ОС может произвольным образом менять эту частоту при каждом прирывании ОС решает продолжить работу или передать ее другому процессу.
Существует 2 стратегии: с вытесняющей многозадачностью и стратегия выполнения до завершения или невытесняющая многозадачность, она вытесняющи предпологает состояние состязания, что усложняет алгоритм планирования за счет симафоров и пр. механизмов синхронизации.
Невытесняющие алгоритмы не находят для многоцелевых и многопользовательских систем т.к. по определению может предоставить преймущества одному из пользователей случайным образом.
Планирования в системах реального времени.
Система реального врмени – это такие системы в которых отмечена реакция в которой задан промежуток времени независимо от прочих факторов. Делится на жесткие системы реального времени и гибкие.
В жестких системах реального времени реакция не более 30 секунд, в гибких до 3-х. В любом случае, для обеспечения своевременной реакции ПО систем реального времени разделяются на несколько процессов, каждый из которых предсказуем.
Внешние события на которые реагирует ОС делятся на периодические и непериодические, в зависимости от периодичности возникновения.
Системы реального времени могут быть разделены на поддающиеся планированию и не поддающиеся. Подчиняются условию планируемости:
m – количество периодических событий.
P – период поступления событий.
С – время обработки события.
Суммарный период поступления событий должен быть больше сумарного сремени обработки. Непериодические события по возможности сводятся к периодическим, даже если при этом возникает непроизводительные затраты процессорного времени.
Алгоритмы планирования систем реального времени могут быть статическими и динамическими. Все решения по планировке принимаются заранее системой.
Динамические алгоритмы реального времени имеют несколько реализаций:
Алгоритм постоянной скорости – в нем процессам предварительно задаются приоритеты в зависимости от частоты возникающих вызовов. В момент запуска планировщик инициирует высший приоритет, этот процесс может быть прерван вызовом процесса с еще большим приоритетом.
Планирование по ближайшему крайнему сроку. При обнаружении события процесс обработчик запишится в список готовых. Процессы в этом списке упорядочены по предельному сроку. Планировщик запускает тот процесс из списка который имеет минимальный предельный срок.
Алгоритм планирования с наименьшей неопределеностью. Согласно алгоритму для каждого процесса расчитывается сколько времени у него в запасе:
L = p – c
Выбирается процесс с наименьшим процентом неопределенности.
Двухуровневый механизм планирования – применяется в системах с файлами подкачки или системах кеширования. Согласно этому механизму в память загружается несколько готовых к работе процесов. Планировщиквыбирает процессы на запуск только из этого списка. Периодически запускается планировщик 2-го уровня который выгружает из памяти процессы которые не вызываются достаточно долго и загружает из более медленного источника другой процесс.
Механизм планирования определяет как правило ядро ОС.
Политика планирования – это настройки процесса определенного пользователем и необходимые для применения над этим процессом механизма планирования.
