Зависят ли циклы команд ввода-вывода от скорости устройства?


Например,

in al, 8 

Если устройство на порту 8 работает очень медленно, то должен ли процессор ждать завершения команды в?

Спасибо!

1 2

1 ответ:

Это зависит от того, какая часть устройства "действительно медленная". Если требуется много времени, чтобы ответить на запросы PIO (например, in и out), то да, это остановит блок выполнения (и все, что от него зависит). То же самое произойдет и с "очень медленной" памятью.

Однако, если устройство занимает много времени для выполнения своих задач (какими бы они ни были), но очень быстро реагирует на запросы PIO (например, указывая, что оно еще не завершило задачу), то оно действительно не останавливается. ЦПУ.

Правильно спроектированное оборудование делает последнее.