Какие алгоритмы планирования используют ядро Linux?
Какие алгоритмы планирования используют ядро Linux?
Где я могу получить дополнительную информацию о ядре Linux? (Начальный курс OS... студент)
Ответы
Ответ 1
Ядро Linux имеет несколько различных доступных алгоритмов планирования как для планирования процесса, так и для планирования ввода-вывода. Загрузите его из www.kernel.org и вызовите
make menuconfig
Вы получите полный список всех доступных вариантов со встроенной справкой.
Один парень, который однажды придумал свой планировщик O (1), Con Kolivas. Окончательно нужно взглянуть на то, что он сделал. Я когда-то был большим прорывом.
Ответ 2
Если вы просто хотите проверить, какой планировщик использует ваша Linux-система, и какие из них доступны, вы можете запустить следующую команду:
cat /sys/block/sda/queue/scheduler
Единица между [] - та, которая используется в данный момент. Другие доступны.
Чтобы изменить его:
sudo bash -c 'echo deadline > /sys/block/sda/queue/scheduler'
Будьте осторожны, чтобы вернуть его к умолчанию, если вы не знаете, что делаете и чего хотите.
По умолчанию (в более новых дистрибутивах Ubuntu) CFQ (полностью справедливое расписание):
http://en.wikipedia.org/wiki/CFQ
Интервью с создателем (Jens Axboe):
http://kerneltrap.org/node/7637
Ответ 3
Как уже упоминалось, существует несколько доступных алгоритмов планирования в соответствии с предполагаемым использованием.
Отметьте эту статью, если вы хотите узнать больше о планировании в Linux.
Ответ 4
Я считаю, что "полностью справедливый планировщик" используется с последними ядрами. Я думаю, вы можете получить хороший объем информации, если вы просто ищете его в Google.
ссылка: http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
Ответ 5
Новое дополнение к Linux Kernel - EDF (самый ранний срок для первого) для гарантированной поддержки RealTime
http://lkml.org/lkml/2009/9/22/186
http://www.evidence.eu.com/content/view/313/390/
Ответ 6
Я думаю, что на ядре Linux есть несколько разных планировщиков, которые вы можете выбрать во время компиляции. Чтобы узнать больше о ядре Linux, вы можете загрузить исходный код ядра (или просмотреть его в Интернете) и посмотреть в каталоге документации. Например, может оказаться полезным подкаталог scheduler. Вы также можете просто взглянуть на сам код.
Ответ 7
Linux Kernel позволяет использовать три разных алгоритма планирования
- кратчайшая работа сначала
- Раунд Робин Планирование
- Алгоритм приоритетного планирования приоритетов.
Третий метод планирования, который отличается от более низкой версии версий Linux, таких как 2.4