Sunday, Feb 05th

Last update12:13:00 PM GMT

Вы находитесь на: FreeBSD Службы ядра Переключение контекста на низком уровне

Переключение контекста на низком уровне

Размещение контекста процесса в структуре его потока дает ядру возможность переключать контекст путем простого изменения представления текущей структуры потока и (при необходимости) структуры процесса и восстановления контекста, описываемого ТСВ, в структуре потока (включая отображение виртуального адресного пространства). Каждый раз, когда требуется переключение контекста, вызов процедуры miswitch() заставляет запустить поток с наивысшим приоритетом. Процедура mi_switch() сначала выбирает из очередей планирования соответствующий поток, а затем возобновляет выбранный поток, загрузив контекст его процесса из его ТСВ. Когда mi_switch() загрузила состояние выполнения нового потока, она должна также проверить состояние нового потока на предмет наличия запроса нелокального возврата (такого, как при первом после fork начале выполнения процессом.


Похожие:
Еще по теме:
Советуем прочитать:

Сейчас 26 гостей онлайн

Реклама на сайте:

Поможем найти лучший вариант грузоперевозки по выгодным тарифам.