Содержание
- 2. Лекция 11. Планирование процессов 1 Алгоритмы планирования Планирование процессов включает в себя решение следующих задач: определение
- 3. Первые две задачи решаются программными средствами, а последняя в значительной степени аппаратно. Существует множество различных алгоритмов
- 4. 1.1 Квантование Алгоритмы планирования В соответствии с алгоритмами, основанными на квантовании, смена активного процесса происходит, если:
- 5. Процесс, который исчерпал свой квант, переводится в состояние ГОТОВНОСТЬ и ожидает, когда ему будет предоставлен новый
- 7. Чем больше квант, тем выше вероятность того, что потоки завершатся в результате первого же цикла выполнения,
- 8. Кванты, выделяемые одному потоку, могут быть фиксированной величины, а могут и изменяться в разные периоды жизни
- 9. В таком случае преимущество получают короткие задачи, которые успевают выполняться в течение первого кванта, а длительные
- 10. Потоки получают для выполнения квант времени, но некоторые из них используют его не полностью, например из-за
- 11. В качестве компенсации за неиспользованные полностью кванты потоки получают привилегии при последующем обслуживании. Для этого планировщик
- 13. Многозадачные ОС теряют некоторое количество процессорного времени для выполнения вспомогательных работ во время переключения контекстов задач.
- 14. 1.2 Приоритеты Алгоритмы планирования Другая группа алгоритмов использует понятие приоритет процесса. Приоритет - это число, характеризующее
- 15. Приоритет может выражаться целыми или дробными, положительным или отрицательным значением. Чем выше привилегии процесса, тем меньше
- 16. В большинстве операционных систем, поддерживающих потоки, приоритет потока непосредственно связан с приоритетом процесса, в рамках которого
- 17. При назначении приоритета вновь созданному процессу ОС учитывает, является этот процесс системным или прикладным, каков статус
- 18. Во многих ОС предусматривается возможность изменения приоритетов в течение жизни потока. Изменение приоритета могут происходить по
- 19. От того, какие приоритеты назначены потокам, существенно зависит эффективность работы всей вычислительной системы. В современных ОС
- 20. При этом обычные пользователи, как правило, не имеют права повышать приоритеты своим потокам, это разрешено делать
- 21. В качестве примера рассмотрим схему назначения приоритетов потокам, принятую в операционной системе Windows NT. В системе
- 23. При создании процесса он в зависимости от класса получает по умолчанию базовый приоритет в верхней или
- 24. Во многих операционных системах алгоритмы планирования построены с использованием как квантования, так и приоритетов. Например, в
- 25. 2 Алгоритмы с вытеснением и без Существует два основных типа процедур планирования процессов - вытесняющие (preemptive)
- 26. Preemptive multitasking - вытесняющая многозадачность - это такой способ, при котором решение о переключении процессора с
- 27. Основным различием между preemptive и non-preemptive вариантами многозадачности является степень централизации механизма планирования задач. При вытесняющей
- 28. При этом операционная система выполняет следующие функции: определяет момент снятия с выполнения активной задачи, запоминает ее
- 29. Прикладная программа, получив управление от операционной системы, сама определяет момент завершения своей очередной итерации и передает
- 30. Для пользователей это означает, что управление системой теряется на произвольный период времени, который определяется приложением (а
- 31. Эта ситуация нежелательна, так как пользователи обычно не хотят долго ждать, когда машина завершит свою задачу.
- 32. После выполнения других задач система возвратит управление программе форматирования, чтобы та отформатировала следующую дорожку. Подобный метод
- 33. Крайним проявлением "недружественности" приложения является его зависание, которое приводит к общему краху системы. В системах с
- 34. Однако распределение функций планировщика между системой и приложениями не всегда является недостатком, а при определенных условиях
- 35. Кроме того, легко разрешаются проблемы совместного использования данных: задача во время каждой итерации использует их монопольно
- 37. Скачать презентацию