
- •Самарская государственная академия путей сообщения
- •Организация вычислительных процессов в эвм и системах Арбитраж, планирование и диспетчеризация
- •Самара 2005
- •Рецензенты: к.Т.Н., доцент н.А. Локтев (нпц «Информационные и транспортные системы»);
- •1.Мультипроцессорный и мультипрограммный
- •3.Основы организации планирования
- •4.Планирование вычислительных процессов
- •6.Практические и лабораторные работы
- •1.Мультипроцессорный и мультипрограммный способы организации вычислительных процессов
- •1.1. Мультипроцессорные системы и арбитраж
- •1.2. Мультипрограммные системы
- •1.3. Гиперпотоковая организация вычислений
- •2.Процессы и потоки в вычислительных системах
- •2.1. Определение процессов, потоков и ресурсов вс
- •2.2. Состояния потоков
- •3. Основы организации планирования и диспетчеризации процессов и потоков
- •3.1. Принципы планирования процессов и потоков
- •3.2. Классификация алгоритмов планирования (вытесняющие и невытесняющие, бесприоритетные и приоритетные алгоритмы)
- •3.3. Линейные алгоритмы планирования
- •3.4.Алгоритмы планирования, основанные на квантовании
- •3.5.Алгоритмы планирования, основанные на приоритетах
- •3.6. Смешанные алгоритмы планирования
- •4. Планирование вычислительных процессов
- •4.1. Принципы планирования в системах реального времени
- •4.2.Планирование с предельными сроками
- •4.3.Частотно-монотонное планирование
- •5.Планирование в windows 2000
- •5.1. Уровни приоритетов потоков в Windows 2000
- •5.2. Особенности алгоритмов планирования в Windows 2000
- •5.3.Учет квантов и управление их величиной
- •5.4.Динамическое повышение приоритета
- •5.5.Планирование потоков в симметричных мультипроцессорных системах
- •6. Практические и лабораторные работы по планированию процессов и потоков
- •6.1. Изучение диспетчера задач и системного монитора
- •6.2. Мониторинг использования ресурсов вычислительной системы
- •Запустите системный монитор.
- •Добавьте на график различные счетчики объекта «Память» и понаблюдайте за их изменением в процессе работы вычислительной системы.
- •6.3. Учет квантов и управление их величиной
- •6.4. Изучение изменения состояния потоков при планировании
- •6.5. Изучение динамического изменения приоритета потока активного процесса
- •6.6.Изучение динамического повышения приоритета gui-потоков
- •6.7. Изучение динамического повышения приоритетов при нехватке процессорного времени
- •Библиографический список Основная литература
6.5. Изучение динамического изменения приоритета потока активного процесса
Запустите утилиту «CPU Stress».
Запустите системный монитор из Windows NT 4.
Добавьте в список графиков счетчик «Текущий приоритет» объекта «Поток» Cpustres /1.
Установите максимум по вертикальной шкале 16, интервал 0,01 с.
А
Рис. 6.8. Изменение состояния потока Notepad
ктивизируйте процесс Cpustres. В результате приоритет потока Cpustres должен повыситься на 2 уровня, а потом снизиться до базового, как показано на рис. 6.9.
Ч
Рис. 6.9. Динамическое изменение приоритета потока активного процесса
тобы увеличить частоту динамического повышения приоритета потока Cpustress, увеличьте значение Activity с Low до Medium, затем до Busy. При увеличении параметра Activity до значения Maximum повышения приоритета не происходит, так как поток входит в вечный цикл и никаких функций ожидания не вызывает. Какая цель достигается в ВС за счет динамического изменения приоритета активного потока?
6.6.Изучение динамического повышения приоритета gui-потоков
Запустите программу «Блокнот».
Запустите системный монитор из Windows NT 4.
Добавьте в список графиков счетчик «Текущий приоритет» объекта «Поток» notepad /0.
Установите максимум по вертикальной шкале 16, интервал 0,01 с.
Приоритет потока Notepad должен быть в пределах 8-10, так как после повышения его приоритета на 2 уровня как у потока активного процесса, его приоритет мог не успеть снизиться из-за его перехода в состояние ожидания.
А
Рис. 6.10. Колебания приоритета потока Notepad при движении курсора мыши
ктивизируйте монитор производительности и подвигайте курсор мыши в окне программы «Блокнот». Вы увидите, что его приоритет колеблется между 10 и 9, а приоритет 8 будет у него в течение очень короткого времени, так что его можно и не заметить (рис. 6.10).
Активизируйте окно потока Notepad, при этом его приоритет повысится до 12, так повышение приоритета происходит дважды: сначала как у GUI-потока, пробужденного активностью подсистемы управления окнами, затем как у потока активного процесса.
Теперь при движении курсора мыши в окне программы «Блокнот», приоритет его потока может понижаться до 10 из-за динамического снижения приоритета по истечении кванта, но все равно останется выше базового как минимум на два уровня, так как этот поток является потоком активного процесса.
Какая цель достигается в ВС за счет динамического изменения приоритета GUI-потоков?
6.7. Изучение динамического повышения приоритетов при нехватке процессорного времени
Запустите утилиту «CPU Stress». Измените значение в списке Activity для активного потока с Low на Maximum. Далее смените приоритет потока с Normal на Below Normal (рис. 6.11).
Рис.
6.11. Установка параметров потока CPUstres
/1
Запустите системный монитор из Windows NT 4.
Добавьте в список графиков счетчик «% загруженности процессора» объекта «Поток» Cpustres /1.
Увеличьте приоритет системного монитора из Windows NT 4 до уровня реального времени.
Запустите еще один экземпляр потока Cpustres. Измените в нем значение Activity для Thread 1 с Low на Maximum (рис. 6.12).
Теперь переключитесь в системный монитор. Вы должны наблюдать всплески активности процессора примерно каждые 4 секунды, так как приоритет потока возрос до 15. Проведите анализ работы ВС в этом режиме.
Рис.
6.12. Установка параметров потока CPUstres
/2