Cтраница 1
Алгоритм планирования с учетом приоритетов очень эффективен для систем с ограниченной емкостью оперативной памяти, не позволяющей разместить в ней программы всех работ, выполняемых системой. В таком случае в оперативной памяти размещается только небольшая часть программ, а остальные программы хранятся во внешней памяти - на магнитном диске. [1]
Алгоритм планирования, максимизирующий пропускную способность, не обязательно минимизирует оборотное время. При наличии смеси из длинных и коротких задач алгоритм, запускающий только короткие задачи, может добиться высокой пропускной способности ( много коротких задач в час), но за счет ужасного оборотного времени для длинных задач. Если короткие задачи поступают с постоянной скоростью, до длинных задач дело может не дойти никогда, в результате чего оборотное время будет бесконечным при высокой пропускной способности. [2]
Алгоритмы планирования для систем реального времени могут быть как статическими, так и динамическими. В первом случае все решения планирования принимаются заранее, еще до запуска системы. Во втором случае решения планирования принимаются по ходу дела. Статическое планирование применимо только при наличии достоверной информации о работе, которую необходимо выполнить, и о временном графике, которого нужно придерживаться. Динамическое планирование не нуждается в подобных ограничениях. На этом мы отложим изучение алгоритмов планирования и вернемся к ним в главе 7, посвященной мультимедийным системам реального времени. [3]
Демонстрация того, что состояние б небезопасно. [4] |
Алгоритм планирования, позволяющий избегать взаимоблокировок, был разработан Дейкстрой ( Dijkstra, [96]) и носит название алгоритма банкира. Он представляет собой расширение алгоритма обнаружения тупиков, о котором было рассказано в разделе Обнаружение взаимоблокировки при наличии одного ресурса каждого типа данной главы. Модель алгоритма основана на примере банкира в маленьком городке, имеющего дело с группой клиентов, которым он выдал ряд кредитов. [5]
Алгоритм планирования реализован программным комплексом, состоящим из нескольких десятков функционально законченных блоков. На рис. 1.3, изображающем структуру математического обеспечения АСУ Метрология, этот комплекс обозначен одним блоком PLANP. В действительности, имеется местный диспетчер с таким именем, загружаемый в оперативную память главным диспетчером системы DISP, когда в обрабатываемом входном потоке встречается идентификатор задания PLANP. В зависимости от состава параметров PLANP выбирает из имеющегося в его распоряжении подчиненного множества блоков нужные, определяет режимы их работы, загружает в оперативную память, анализирует полученные результаты. Фактически формируется вариант макропрограммы, соответствующий набору параметров. Следовательно, получение нужных сведений обеспечивается функционированием построенной макропрограммы. А ее структура целиком зависит от сформулированных параметров. Поэтому, давая системе заказ на планирование, следует правильно определять параметры и их значения. [6]
Алгоритм планирования, максимизирующий пропускную способность, не обязательно минимизирует оборотное время. При наличии смеси из длинных и коротких задач алгоритм, запускающий только короткие задачи, может добиться высокой пропускной способности ( много коротких задач в час), но За счет ужасного оборотного времени для длинных задач. Если короткие задачи поступают с постоянной скоростью, до длинных задач дело может не дойти никогда, в результате чего оборотное время будет бесконечным при высокой пропускной способности. [7]
Алгоритмы планирования для систем реального времени могут быть как статическими, так и динамическими. В первом случае все решения планирования принимаются заранее, еще до запуска системы. Во втором случае решения планирования принимаются по ходу дела. Статическое планирование применимо только при наличии достоверной информации о работе, которую необходимо выполнить, и о временном графике, которого нужно придерживаться. Динамическое планирование не нуждается в подобных ограничениях. На этом мы отложим изучение алгоритмов планирования и вернемся к ним в главе 7, посвященной мультимедийным системам реального времени. [8]
Демонстрация того, что состояние б небезопасно. [9] |
Алгоритм планирования, позволяющий избегать взаимоблокировок, был разработан Дейкстрой ( Dijkstra, [96]) и носит название алгоритма банкира. Он представляет собой расширение алгоритма обнаружения тупиков, о котором было рассказано в разделе Обнаружение взаимоблокировки при наличии одного ресурса каждого типа данной главы. Модель алгоритма основана на примере банкира в маленьком городке, имеющего дело с группой клиентов, которым он выдал ряд кредитов. [10]
Планирование смен состояний процесса. [11] |
Алгоритм планирования состоит в следующем. Выбирается процесс из списка готовности высокоприоритетных процессов. Если такового не оказывается, выбирается процесс из списка готовности среднеприоритетных процессов. Низкоприоритетные процессы выполняются только в том случае, если нет процессов с более высоким приоритетом. [12]
Алгоритмы планирования, реализуемые ПЛАНИРОВЩИКОМ, должны быть достаточно простыми и малотрудоемкими. [13]
Алгоритм планирования с учетом приоритетов очень эффективен для систем с ограниченной емкостью оперативной памяти, не позволяющей разместить в ней программы всех работ, выполняемых системой. В таком случае в оперативной памяти размещается только небольшая часть программ ( возможно, даже одна программа), а остальные программы хранятся во внешней памяти - в запоминающем устройстве с прямым доступом. Все программы циклически обслуживаются предоставлением им кванта процессорного времени, поэтому они вызываются в оперативную память поочередно, а получив квант обслуживания, удаляются из нее во внешнюю память. Процесс циклического замещения программ в оперативной памяти называется свопингом. Если система работает со свопингом и все без исключения работы поступают в первую очередь, причем всем очередям выделяются одинаковые по длительности кванты времени, то затраты ресурсов системы на свопинг крайне большие. Для уменьшения непроизводительных затрат целесообразно трудоемкие работы сразу же размещать в очередях с низкими приоритетами и выделять им большие по длительности кванты времени. [14]
Алгоритм планирования заданий может также варьироваться путем определения барьерного приоритета распределения ресурсов, с помощью которого можно выделять группу приоритетов заданий с первоочередным планированием распределения ресурсов. [15]