1

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

Я имею в виду ОЧЕНЬ много подобных вопросов, но все они относятся только к одной вещи: как запланирован сам планировщик?

1 ответ1

4

Есть несколько подходов к этой проблеме.

Совместные Планировщики Многозадачности

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

Preemptive Многозадачный планировщик

Очень простой упреждающий планировщик периодически вызывается временным прерыванием ЦП. Программа не может предотвратить это (без привилегий системного уровня) и выйдет из рабочего состояния, потому что ЦП перемещает указатель команд во время прерываний.

Я предлагаю вам прочитать статью в Википедии о многозадачности.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .