Составители:
• выделять столько процессорного времени некоторому процессу, чтобы он мог вы-
полнить свои вычисления к сроку.
Для сравнения алгоритмов диспетчеризации обычно используются следующие
критерии [2]:
• Загрузка центрального процессора (CPU utilization). В большинстве персональных
систем средняя загрузка процессора не превышает 2-3%, доходя в моменты выпол-
нения сложных вычислений и до 100 %. В реальных системах, где компьютеры вы-
полняют очень много работы, например, в серверах, загрузка процессора колеблется
в пределах 15-40 % для легко загруженного процессора и до 90-100 % - для сильно
загруженного процессора.
• Пропускная способность (CPU throughput). Пропускная способность процессора
может измеряться количеством процессов, которые выполняются в единицу време-
ни.
• Время оборота (turnaround time). Для некоторых процессов важным критерием явля-
ется полное время выполнения, то есть интервал от момента появления процесса во
входной очереди до момента его завершения. Это время названо временем оборота и
включает время ожидания во входной очереди, время ожидания в очереди готовых
процессов, время ожидания в очередях к оборудованию, время выполнения в про-
цессоре и время ввода/вывода.
• Время ожидания (waiting time). Под временем ожидания понимается суммарное
время нахождения процесса в очереди готовых процессов.
• Время отклика (response time). Для интерактивных программ важным показателем
является время отклика или время, прошедшее от момента попадания процесса во
входную очередь до момента первого обращения к терминалу. Очевидно, что про-
стейшая стратегия краткосрочного планировщика должна быть направлена на мак-
симизацию средних значений загруженности и пропускной способности, времени
ожидания и времени отклика.
Правильное планирование процессов сильно влияет на производительность всей
системы. Можно выделить следующие главные причины, приводящие к уменьшению
производительности системы [2]:
• Накладные расходы на переключение процессора. Они определяются не только пе-
реключениями контекстов задач, но и перемещениями страниц виртуальной памяти,
а также - необходимостью обновления данных в КЭШе.
• Переключение на другой процесс в тот момент, когда текущий процесс выполняет
критическую секцию, а другие процессы активно ожидают входа в свою критиче-
скую секцию. В этом случае потери будут особо велики.
В случае использования мультипроцессорных систем применяются следующие ме-
тоды повышения производительности системы [2]:
• совместное планирование, при котором все потоки одного приложения одновремен-
но выбираются для выполнения процессорами и одновременно снимаются с них;
• планирование, при котором находящиеся в критической секции задачи не прерыва-
ются, а активно ожидающие входа в критическую секцию задачи не выбираются до
тех пор, пока вход в секцию не освободится;
• планирование с учетом так называемых «советов» программы во время ее выполне-
ния. Например, в известной своими новациями ОС Mach, имелись два класса таких
советов (hints) - указания о снятии текущего процесса с процессора, а также указа-
ния о том процессе, который должен быть выбран взамен текущего.
При выполнении программ, реализующих какие-либо задачи контроля и управле-
ния (что характерно, прежде всего, для систем реального времени), может случиться та-
кая ситуация, когда одна или несколько задач не могут быть решены в течение длитель-
ного промежутка времени из-за возросшей нагрузки в вычислительной системе. Потери,
56
• выделять столько процессорного времени некоторому процессу, чтобы он мог вы-
полнить свои вычисления к сроку.
Для сравнения алгоритмов диспетчеризации обычно используются следующие
критерии [2]:
• Загрузка центрального процессора (CPU utilization). В большинстве персональных
систем средняя загрузка процессора не превышает 2-3%, доходя в моменты выпол-
нения сложных вычислений и до 100 %. В реальных системах, где компьютеры вы-
полняют очень много работы, например, в серверах, загрузка процессора колеблется
в пределах 15-40 % для легко загруженного процессора и до 90-100 % - для сильно
загруженного процессора.
• Пропускная способность (CPU throughput). Пропускная способность процессора
может измеряться количеством процессов, которые выполняются в единицу време-
ни.
• Время оборота (turnaround time). Для некоторых процессов важным критерием явля-
ется полное время выполнения, то есть интервал от момента появления процесса во
входной очереди до момента его завершения. Это время названо временем оборота и
включает время ожидания во входной очереди, время ожидания в очереди готовых
процессов, время ожидания в очередях к оборудованию, время выполнения в про-
цессоре и время ввода/вывода.
• Время ожидания (waiting time). Под временем ожидания понимается суммарное
время нахождения процесса в очереди готовых процессов.
• Время отклика (response time). Для интерактивных программ важным показателем
является время отклика или время, прошедшее от момента попадания процесса во
входную очередь до момента первого обращения к терминалу. Очевидно, что про-
стейшая стратегия краткосрочного планировщика должна быть направлена на мак-
симизацию средних значений загруженности и пропускной способности, времени
ожидания и времени отклика.
Правильное планирование процессов сильно влияет на производительность всей
системы. Можно выделить следующие главные причины, приводящие к уменьшению
производительности системы [2]:
• Накладные расходы на переключение процессора. Они определяются не только пе-
реключениями контекстов задач, но и перемещениями страниц виртуальной памяти,
а также - необходимостью обновления данных в КЭШе.
• Переключение на другой процесс в тот момент, когда текущий процесс выполняет
критическую секцию, а другие процессы активно ожидают входа в свою критиче-
скую секцию. В этом случае потери будут особо велики.
В случае использования мультипроцессорных систем применяются следующие ме-
тоды повышения производительности системы [2]:
• совместное планирование, при котором все потоки одного приложения одновремен-
но выбираются для выполнения процессорами и одновременно снимаются с них;
• планирование, при котором находящиеся в критической секции задачи не прерыва-
ются, а активно ожидающие входа в критическую секцию задачи не выбираются до
тех пор, пока вход в секцию не освободится;
• планирование с учетом так называемых «советов» программы во время ее выполне-
ния. Например, в известной своими новациями ОС Mach, имелись два класса таких
советов (hints) - указания о снятии текущего процесса с процессора, а также указа-
ния о том процессе, который должен быть выбран взамен текущего.
При выполнении программ, реализующих какие-либо задачи контроля и управле-
ния (что характерно, прежде всего, для систем реального времени), может случиться та-
кая ситуация, когда одна или несколько задач не могут быть решены в течение длитель-
ного промежутка времени из-за возросшей нагрузки в вычислительной системе. Потери,
56
Страницы
- « первая
- ‹ предыдущая
- …
- 52
- 53
- 54
- 55
- 56
- …
- следующая ›
- последняя »
