Jump to content

Абсолютно справедливая очередь

Completely Fair Queuing ( CFQ ) — это планировщик ввода-вывода для ядра Linux , написанный в 2003 году Йенсом Эксбо . [ 1 ]

Описание

[ редактировать ]

CFQ помещает синхронные запросы, отправленные процессами, в несколько очередей для каждого процесса , а затем выделяет интервалы времени для каждой из очередей для доступа к диску . Длина временного интервала и количество запросов, которые может отправить очередь, зависят от приоритета ввода-вывода данного процесса. Асинхронные запросы для всех процессов группируются в меньшее количество очередей, по одной на каждый приоритет. Хотя CFQ не выполняет явного упреждающего планирования ввода-вывода, он достигает того же эффекта, обеспечивая хорошую совокупную пропускную способность для системы в целом, позволяя очереди процессов простаивать в конце синхронного ввода-вывода, тем самым «предвидя» дальнейшее закрытие. Ввод-вывод из этого процесса. Это можно считать естественным расширением предоставления процессу временных интервалов ввода-вывода.

До интеграции

[ редактировать ]

В феврале 2003 года Андреа Арканджели предложил свою идею планировщика ввода-вывода стохастической честной очереди Йенсу Аксбо, который затем реализовал ее. Йенс Аксбо внес улучшения в свою первую реализацию, назвав новую версию планировщиком Completely Fair Queuing, и выпустил патч для применения ее к ядру серии разработки 2.5.60.

Ядро 2.6.6 (10 мая 2004 г.)

[ редактировать ]

Планировщик ввода-вывода CFQ был впервые интегрирован в основное ядро ​​в качестве дополнительного планировщика ввода-вывода. Можно было изменить планировщик во время загрузки с помощью параметра «Elevator» на ядро.

Ядро 2.6.9 (19 октября 2004 г.)

[ редактировать ]

Red Hat Enterprise Linux 4 использовал этот планировщик ввода-вывода по умолчанию, хотя в нем использовалось ядро ​​на основе версии 2.6.9. [ 2 ]

Ядро 2.6.10 (24 декабря 2004 г.)

[ редактировать ]

Вторая версия планировщика CFQ, получившая название CFQv2, включена в версию 2.6.10. Улучшения включают лучшее реагирование и устранение некоторых проблем с голоданием, которые присутствовали в более ранней версии. Планировщик теперь также можно переключать во время выполнения, изменяя переменную /sys/block/<block_device>/queue/scheduler в файловой системе sysfs .

Ядро 2.6.13 (27 июня 2005 г.)

[ редактировать ]

Планировщик CFQ перешел на новую структуру с разделением по времени, получившую название CFQv3. Помимо прочего, он реализует ioprio_get(2) и ioprio_set(2) , которые позволяют пользователю устанавливать приоритеты ввода-вывода для каждого процесса, обычно с помощью команды ionice(1) (хотя использование nice(1) также несколько изменяет приоритеты ввода-вывода)

Ядро 2.6.18 (20 сентября 2006 г.)

[ редактировать ]

CFQ стал планировщиком по умолчанию, заменив упреждающий планировщик . [ 3 ]

Ядро 5.0 (03.03.2019)

[ редактировать ]

CFQ удален. [ 4 ] [ 5 ] CFQ превратился в систему бюджетной справедливой очереди (BFQ) . [ 6 ] [ 7 ]

См. также

[ редактировать ]
  1. ^ «Исходный код планировщика ввода-вывода (содержит информацию об авторских правах в заголовке)» . Проверено 28 декабря 2017 г.
  2. ^ Д. Джон Шакшобер (июнь 2005 г.). «Выбор планировщика ввода-вывода для Red Hat® Enterprise Linux® 4 и ядра 2.6» . Журнал «Красная шляпа» . Архивировано из оригинала 27 августа 2007 года . Проверено 20 ноября 2011 г.
  3. ^ Йенс Аксбо (июнь 2006 г.). «Ядро Linux 2.6.18 — сделать CFQ планировщиком ввода-вывода по умолчанию» . Проверено 20 марта 2016 г.
  4. ^ Йенс Аксбо (12 октября 2018 г.). «блокировать: удалить устаревшие планировщики ввода-вывода» . Проверено 25 октября 2020 г.
  5. ^ Линус Торвальдс (28 декабря 2018 г.). «Объединить тег 'for-4.21/block-20181221' из git.kernel.dk/linux-block» . Проверено 25 октября 2020 г.
  6. ^ «Планировщик очереди ввода-вывода Budget Fair» .
  7. ^ «Планировщик ввода-вывода BFQ в очереди для Linux 4.12 — Phoronix» . www.phoronix.com .

Источники

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 91228b71f82d1ed417dd911eeb78f004__1679878080
URL1:https://arc.ask3.ru/arc/aa/91/04/91228b71f82d1ed417dd911eeb78f004.html
Заголовок, (Title) документа по адресу, URL1:
Completely fair queueing - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)