Бөлісу құралы:


Общие методы программирования ввода-вывода

Одним из наиболее важных методов программирования ввода-вывода является один из способов, которые следует избегать: принудительное ожидание устройства операционной системой. Почти каждый сталкивался с тем, что Microsoft Windows «зависает». Иногда зависание связано с сбоем, но в других случаях система просто ожидает ответа устройства.

Существует два основных метода программирования для работы с ожиданием устройства: синхронный и асинхронный. Синхронное программирование ждет отклика от устройства и его следует избегать. Асинхронное программирование использует другие методы (например, ожидание запросов прерываний). Дополнительные сведения о синхронном и асинхронном программировании см. в следующих разделах:

Синхронное программирование ввода-вывода

Асинхронное программирование ввода-вывода

Microsoft Vista имеет новую политику для решения проблем с синхронным программированием. Дополнительные сведения об этой новой политике см. в разделе "Ограничение ожиданий" в Windows Vista .

В более ранних программированиях драйверов устройств драйверу потребуется повторно запрашивать информацию от драйвера, пока не будет предоставлен ответ. Этот метод называется опросом и почти никогда не должен использоваться. Лучший способ справиться с проблемой опроса — использовать аппаратные прерывания. Дополнительные сведения об аппаратных прерываниях см. в разделе "Прерывания обслуживания". Для получения дополнительной информации об опросах и по причинам, почему их не следует использовать, см. в статье "Избегайте опроса устройств".