WikiDer > Вытеснение ядра
Вытеснение ядра метод, используемый в основном в монолитный и гибридный ядра где все или большинство драйверы устройств вбегают пространство ядра, посредством чего планировщик разрешено принудительно выполнить переключатель контекста (т. е. превентивное планирование; от имени работающего процесса с более высоким приоритетом) на драйвере или другой части ядра во время его выполнения, а не кооперативно ожидание драйвера или функции ядра (например, системный вызов), чтобы завершить его выполнение и вернуть управление процессором планировщику.[1][2][3][4]
У этого метода есть два основных преимущества в монолитных и гибридных ядрах, и он отвечает на одну из основных критических замечаний в отношении монолитных ядер со стороны микроядро адвокатов, а именно:
- Драйвер устройства может войти в бесконечный цикл или в другое неисправимое состояние, что приведет к сбою всей системы.[1]
- Некоторые драйверы и системные вызовы на монолитных ядрах выполняются медленно и не могут вернуть управление процессором планировщику или другой программе, пока они не завершат выполнение.[2]
Смотрите также
Рекомендации
- ^ а б «Вытеснение под Linux». kernelnewbies.org. 2009-08-22. Получено 2016-06-10.
- ^ а б Джонатан Корбет (24 февраля 2003 г.). «Перенос драйверов: вытесняемое ядро». LWN.net. Получено 2016-06-10.
- ^ «Руководство по архитектуре FreeBSD, глава 8. Документ по проектированию SMPng, раздел 8.3. Общая архитектура и дизайн». freebsd.org. Получено 2016-06-10.
- ^ Роберт Лав (2002-05-01). «Снижение задержки в Linux: введение вытесняемого ядра». Linux журнал. Получено 2016-06-10.
Этот Операционная система-связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |