В завершение о планировщике

В завершение о планировщике

Планировщик выполнения процессов является важной частью ядра, так как выполнение процессов (по крайней мере, для большинства из нас) — это основное использование компьютера. Тем не менее, удовлетворение всем требованиям, которые предъявляются к планировщику — не тривиальная задача. Большое количество готовых к выполнению процессов, требования масштабируемости, компромисс между производительностью и временем реакции, а также требования для различных типов загрузки системы приводят к тому, что тяжело найти алгоритм, который подходит для всех случаев. Несмотря на это, новый планировщик процессов ядра Linux приближается к тому, чтобы удовлетворить всем этим требованиям и обеспечить оптимальное решение для всех случаев, включая отличную масштабируемость и привлекательную реализацию.

Проблемы, которые остались, включают возможность точной настройки (или даже полную замену) алгоритма оценки степени интерактивности задания, который приносит много пользы, когда работает правильно, и приносит много неудобств, когда выполняет предсказания неверно. Работа над альтернативными реализациями продолжается. Когда-нибудь мы увидим новую реализацию в основном ядре.

Улучшение поведения планировщика для NUMA систем (систем с неоднородным доступом к памяти) становится все более актуальной задачей, так как количество машин на основе NUMA-платформ возрастает. Поддержка доменов планирования (scheduler domain) — абстракция, которая позволяет описать топологию процессов; она была включена в ядро 2.6 в одной из первых версий.

Эта глава посвящена теории планирования процессов, а также алгоритмам и специфической реализации планировщика ядра Linux. В следующей главе будет рассмотрен основной интерфейс, который предоставляется ядром для выполняющихся процессов, — системные вызовы.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Завершение

Из книги Давайте создадим компилятор! автора Креншоу Джек

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


7.1.5 Завершение

Из книги Процессы жизненного цикла программных средств автора Автор неизвестен


1.1.3.9. Завершение установки

Из книги Fedora 8 Руководство пользователя автора Колисниченко Денис Николаевич

1.1.3.9. Завершение установки После установки пакетов будет установлен загрузчик. Фактически система уже установлена, и вы увидите сообщение об этом.Извлеките дистрибутивный диск из привода и щелкните на кнопке Перезагрузка, Рис. 1.21. Все готово к установке Fedora Рис. 1.22.


Завершение работы

Из книги Реестр Windows автора Климов Александр

Завершение работы Выключить компьютер можно двумя способами - Используя команду Выключение меню кнопки Пуск- Открывая окно Диспетчер задач Windows нажатием кнопок Ctrl+Alt+Del и выбирая пункт меню Завершение работы | Выключение Windows позволяет запретить выключение этими


2.5. Завершение сеанса

Из книги Windows Vista без напряга автора Жвалевский Андрей Валентинович

2.5. Завершение сеанса Наверное, для первого раза – более чем достаточно. Компьютер пора выключать.Для этого в меню Пуск предусмотрено две кнопки: Питание и Блокировка.Первая — – не выключает компьютер, а переводит его в специальный «ждущий» режим. Попросту говоря,


Завершение работы

Из книги Реестр Windows автора Климов А

Завершение работы Выключить компьютер можно двумя способами• Используя команду Завершение работы меню кнопки Пуск• Открывая окно Завершение работы программы нажатием кнопок ctrl+alt+del и нажимая кнопку Завершить работуWindows позволяет запретить выключение этими способами


У15.3 Завершение строительства

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

У15.3 Завершение строительства Завершите проектирование класса WINDOW, показав точно, что необходимо от лежащего в основе механизма управления


10.6.1 Внезапное завершение

Из книги TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) автора Фейт Сидни М

10.6.1 Внезапное завершение Каждая из сторон может запросить внезапное завершение (abrupt close) соединения. Это допустимо, когда приложение желает завершить соединение или когда TCP обнаруживает серьезную коммуникационную проблему, которую не может разрешить собственными


10.11 Завершение сеанса

Из книги Инфраструктуры открытых ключей автора Полянская Ольга Юрьевна

10.11 Завершение сеанса 10.11.1 Тайм-аут Работа партнера по соединению может завершиться крахом либо полностью прерваться вследствие неисправности шлюза или связи. Чтобы предотвратить повторную пересылку данных в TCP, существует несколько механизмов.Достигнув первого


Завершение

Из книги QNX/UNIX [Анатомия параллелизма] автора Цилюрик Олег Иванович

Завершение Если все списки САС проанализированы, а переменная состояния маски причины не показывает, что все причины аннулирования проверены, то переменная состояния статуса сертификата принимает значение "не определен". Большинство приложений будет реагировать на


Завершение процесса

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Завершение процесса С завершением процесса дело обстоит достаточно просто, по крайней мере, в сравнении с тем, что происходит при завершении потока, как это и будет показано очень скоро. Процесс завершается, если программа выполняет вызов exit() или выполнение просто


Завершение транзакций

Из книги Linux глазами хакера автора Флёнов Михаил Евгеньевич

Завершение транзакций Транзакция завершается, когда клиентское приложение подтверждает ее или отменяет. Если оператор COMMIT или вызов эквивалентной функции API isc_commit_ transaction не будут успешными, то транзакция не будет подтверждена. Если транзакция, которая не может быть


2.5. Завершение установки

Из книги Как тестируют в Google автора Уиттакер Джеймс

2.5. Завершение установки После завершения копирования файлов на диск нужно разобраться еще с несколькими настройками. Во-первых, система должна знать, как вы ее будете загружать. Если Windows без разговоров прописывает загрузку в MBR (Master Boot Record, основная загрузочная запись),


В завершение

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

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


Завершение ассоциации

Из книги автора

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


5.7. Нормальное завершение

Из книги автора

5.7. Нормальное завершение На этом этапе соединение установлено, и все, что бы мы ни вводили на стороне клиента, отражается обратно.linux % tcpcli01 127.0.0.1 эту строку мы показывали раньшеhello, world наш вводhello, world отраженная сервером строкаgood byegood bye^D Ctrl+D - наш завершающий символ для