Планирование процессов. Уровни планирования

Процессы – деятельность ОС. Одной из составляющих процессов являются ресурсы. Они ограничены. Поскольку процессов много, необходимо организовать координацию их использования. Кроме того, процессы – это деятельность, и, следовательно, у них должна быть определенная цель. С помощью предоставленных ресурсов и алгоритмов планирования эти цели должны быть достигнуты.

Потенциально алгоритмов может быть много, поэтому должны быть некоторые критерии для их выбора.

Далее будем рассматривать, каким образом осуществляется планирование исполнения процессов в мультипрограммных ВС.

Определенный уровень планирования осуществляется еще в пакетных системах, поскольку с помощью команд управления заданиями осуществляется планирование самих заданий с одной стороны и процессора с другой стороны.

Планированием заданий называется процедура выбора очередного задания для загрузки в машину, т.е. порождение соответствующего процессора.

Планирование использования процессора впервые было осуществлено в мультипрограммных ВС, поскольку в них может существовать несколько процессов, которые находятся в стадии готовность.

Необходима процедура выбора того процесса, который будет переведен из состояния готовность в состояние исполнение.

Принято планирование заданий рассматривать в качестве долгосрочного планирования процесса. Этот уровень планирования отвечает за порождение новых процессов в системе. Именно здесь определяется количество процессов, одновременно находящихся в системе (это количество ограничено и называется степенью мультипрограммирования). Если она поддерживается постоянной (в среднем), то новые процессы могут появляться только после завершения ранее загруженных. Поэтому долгосрочное планирование осуществляется достаточно редко, интервал времени между возникновением процессов может составлять от минуты до десятков минут.

Выбор того или иного процесса на исполнение определяет функционирование всей системы на достаточно длительный период. Поэтому этот уровень планирования и называется долгосрочным.

Существуют системы, в которых он может отсутствовать. Одним из средств разумной степени мультипрограммирования является ограничение количества пользователей в системе.

К категории краткосрочного планирования процессов отводят планирование использования процессора. Необходимость такого планирования возникает, например, при обращении исполняющегося процесса к устройствам ввода-вывода или при завершении кванта времени, выделенного для данного процесса.

Осуществляется краткосрочное планирование не реже одного раза в 100 милисекунд. Отсюда и название уровня планирования: краткосрочное.

В ряде случаев целесообразно переместить частично выполнившийся процесс из ОЗУ на диск, а потом, при определенных условиях, вернуть его обратно. Такая процедура называется свопингом (swapping, «перекачка»).

Свопингом необходимо управлять. Этот вид управления процессами называется среднесрочным.