Замена процесса, ожидающего завершения ввода-вывода

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

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

Заранее спасибо


person shar    schedule 25.03.2013    source источник


Ответы (1)


Да, оно может. Однако вряд ли это произойдет, так как очень простая реализация диспетчера виртуальной памяти будет рассматривать локальность ссылки как способ продвижения - и процесс вероятно является очень последним управляемым данным в системе.

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

person Rubens    schedule 25.03.2013