Кратчайшая работа следующей
Для улучшения этой статьи желательно:
|
SJN (англ. shortest job next — следующий с кратчайшим заданием) — невытесняющий алгоритм, в котором наивысший приоритет имеет самый короткий процесс.
Для того чтобы применять этот алгоритм, должна быть известна длительность процесса — задаваться пользователем или вычисляться методом экстраполяции. Для коротких процессов SJN обеспечивает лучшие показатели, чем RR, как по потерянному времени, так и по штрафному отношению.
SJN обеспечивает максимальную пропускную способность системы — выполнение максимального числа процессов в единицу времени, но показатели для длинных процессов значительно худшие, а при высокой степени загрузки системы активизация длинных процессов может откладываться до бесконечности. Штрафное отношение слабо изменяется на основном интервале значений t, но значительно возрастает для самых коротких процессов: такой процесс при поступлении в систему имеет самый высокий приоритет, но вынужден ждать, пока закончится текущий активный процесс. Растёт также дисперсия времени ожидания, а в результате трудно предсказать, когда какой-либо процесс будет обслужен.