В настоящее время я читаю «Понимание ядра Linux, 3-е издание» и на стр. 22 я могу прочитать:
В простейшем случае ЦП выполняет путь управления ядром последовательно из первая инструкция до последней. Однако, когда происходит одно из следующих событий, ЦП чередует пути управления ядром:
- Процесс, выполняющийся в пользовательском режиме, вызывает системный вызов, и соответствующий Путь управления ядром проверяет, что запрос не может быть удовлетворен немедленно; Это затем вызывает планировщик для выбора нового процесса для запуска. В результате процесс происходит переключение. Первый путь управления ядром остается незавершенным, а ЦП возобновляет выполнение некоторого другого пути управления ядром. В этом случае два пути управления выполняются от имени двух разных процессов.
Путь управления ядром может быть прерван процессом пользовательского пространства, выполняющим системный вызов? Я думал, что приоритет был довольно высоким:
Я проверил исправления и ничего не нашел об этом.