- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •2.1. Особенности оборудования, на котором работают срв
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Возможные области применения opc-серверов в асу предприятия
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
- •Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
Спеціальність 7.080403. Курс 5.
Учбова дисципліна "Проектування ПЗ для спеціалізованих автоматизованих систем"
Екзаменаційний квиток № 4
Види процесів. Поняття крайнього терміну і найгіршого часу виконання.
Проблеми синхронізації. Гонки і взаємне блокування.
Затверджено на засіданні кафедри 603.
Протокол № __1_ від "_28_" ___08___ 2009 р.
Зав. кафедрою ___________ /Туркін І.Б/
Екзаменатор __________ /Туркін І.Б./
Національний аерокосмічний університет ім. М.Є.Жуковського "хаі"
Спеціальність 7.080403. Курс 5.
Учбова дисципліна "Проектування ПЗ для спеціалізованих автоматизованих систем"
Екзаменаційний квиток № 5
Алгоритми планування. Планувальник. Пріоритет.
Доступ любой задачи к центральному процессу осуществляется через системные программы планировщика, диспетчера. Планирование это организация процессов в некоторую последовательность. Планировщик – программа ответственная за постановку процессов в очередь. Диспетчер – это программа, которая выбирает процесс из очереди, переводит его в активное состояние. Планирование диспетчеризации сокращенно называется планирование.
Планирование процессов включает в себя решение следующих основных задач:
1) Определение момента времени для смены определяемого процесса;
2) Вывод процесса на выполнения из очереди готовых процессов;
3) Переключение контекстов в процессы;
Первые две задачи решаются программными средствами, последняя – незначительной степени аппарата. Существует множество различных алгоритмов планирования процессов, рассмотрим подробнее две группы, наиболее чаще встречающихся алгоритмов:
1) Алгоритмы, основанные на квантование;
2) Алгоритмы, основанные на приоритетах.
В соответствие с алгоритмами основанные на квантование, смена активного процесса происходит если:
1) Исчерпан квант процессорного времени;
2) Процесс завершился и покинул систему;
3) Процесс перешел в состояние ожидания;
4) Произошла ошибка.
Процесс, который исчерпал свой квант, переводится в состояние готовность и ожидает, когда ему будет предоставлен новый квант процессорного времени. На дополнение в соответствие с определенными правилами выбирается новый процесс из очереди готовых, таким образом, не один процесс не занимает процессор на долго. Поэтому квантование широко используется в современной ОС.
Кванты, выделяемые процессом, могут быть одинаковыми для всех процессов или различными, могут быть фиксированным величины или изменятся в разные периоды жизни процесса. Процессы, которые не полностью использовали выделенный квант, могут получить компенсацию в виде привилегий. По-разному могут организованными очереди процессов. На пример первый пришел первый обслужился(fee fo) .
Идея мультипрограммирования связанна с наличием очередей, процессор – основной ресурс многопроцессной системы. Использования ресурса осуществляется с помощью различных механизмов распределения ресурсов.
Синхронізація процесів: критичні секції
Критическая секция — часть программы, в которой есть обращение к совместно используемым данным. При нахождении в критической секции двух (или более) процессов, возникает состояние «гонки» («состязания»). Для избежания данной ситуации необходимо выполнение четырех условий:
Два процесса не должны одновременно находиться в критических областях.
В программе не должно быть предположений о скорости или количестве процессоров.
Процесс, находящийся вне критической области, не может блокировать другие процессы.
Невозможна ситуация, в которой процесс вечно ждет попадания в критическую область.
Критическая секция (англ. critical section) — объект синхронизации потоков, позволяющий предотвратить одновременное выполнение некоторого набора операций (обычно связанных с доступом к данным) несколькими потоками. Критическая секция выполняет те же задачи, что и мьютекс.
Между мьютексом и критической секцией есть терминологические различия, так процедура, аналогичная захвату мьютекса, называется входом в критическую секцию (англ. enter), снятию блокировки мьютекса — выходом из критической секции (англ. leave).
Процедура входа и выхода из критических секций обычно занимает меньшее время, нежели аналогичные операции мьютекса, что связано с отсутствием необходимости обращаться к ядру ОС.
В операционных системах семейства Microsoft Windows разница между мьютексом и критической секцией в том, что мьютекс является объектом ядра и может быть использован несколькими процессами одновременно, критическая секция же принадлежит процессу и служит для синхронизации только его потоков.
Критические секции Windows имеют оптимизацию, заключающуюся в использовании атомарно изменяемой переменной наряду с объектом «событие синхронизации» ядра. Захват критической секции означает атомарное увеличение переменной на 1. Переход к ожиданию на событии ядра осуществляется только в случае, если значение переменной до захвата было уже больше 1, то есть происходит реальное «соревнование» двух или более потоков за ресурс.
Таким образом, при отсутствии соревнования захват/освобождение критической секции обходятся без обращений к ядру.
Кроме того, захват уже занятой критической секции до обращения к ядру какое-то небольшое время (англ. spin count) ждёт в цикле опроса переменной, и, если переменная становится равной 0, то захват происходит без обращений к ядру
Затверджено на засіданні кафедри 603.
Протокол № __1_ від "_28_" ___08___ 2009 р.
Зав. кафедрою ___________ /Туркін І.Б/
Екзаменатор __________ /Туркін І.Б./
