Почему контекст не сохраняется в самом процессе вместо печатной платы?

Я читал, что когда происходит переключение контекста, контекст этого конкретного процесса будет сохранен в блоке управления процессом. Но я удивляюсь, почему контекст не может быть сохранен в самом процессе, поэтому процессор должен только напоминать себе, какой процесс он должен возобновить, вместо того, чтобы копировать контекст на печатную плату.

1 ответ

Контекст сохраняется в блоке КОНТЕКСТ процесса. Состояние процесса определяется значениями в регистрах процесса. То, что вы предлагаете, потребовало бы наличия отдельного набора регистров для каждого процесса, что сделало бы проектирование оборудования кошмаром.

Процессор знает только о текущем запущенном процессе. Если бы блок контекста процесса находился в пользовательском адресном пространстве процесса, его значения были бы недоступны.

Другие вопросы по тегам