Доступ к устройствам под управлением DOS
Сегодня можно создавать код для поддержки определенных устройств, не имея ни малейшего представления о том, как работает прикладная программа. Драйверы видеоустройств в Windows работают с любым Windows-приложением, но разработчики в Microsoft не должны вникать в детали того, как работает само приложение.
Вместо этого Microsoft предоставляет стандартный интерфейс для разработчиков приложений. Таким же образом, драйвер устройства имеет стандартный интерфейс для работы со средой Windows. Используя этот интерфейс, разработчик изолирован от прикладного программиста так же, как прикладной программист изолирован от разработчика драйвера. Стандартизация интерфейса позволяет разработчику предоставить доступ к нему из любого приложения. Это не только позволяет прикладному программисту сконцентрироваться на разработке приложения, но позволяет разработчику драйвера сконцентрироваться на интерфейсе с аппаратурой.
Создатель драйверов устройств для Windows теперь несет больше ответственности. Так как под управлением DOS прикладная программа и программа, обеспечивающая доступ к аппаратуре, часто тесно связаны, очень просто изменить интерфейс между прикладной программой и самим устройством. В среде Windows такая практика не используется, так как один и тот же драйвер устройства может поддерживать тысячи различных прикладных программ.
Под управлением DOS существуют два основных типа драйверов устройств: работающие в блочном режиме, и работающие в символьном режиме. Драйверы, работающие в блочном режиме, осуществляют интерфейс между DOS и устройствами, которые позволяют хранить файлы в формате файловой системы DOS, например жесткие диски или ленты. К драйверам, работающим в символьном режиме, относятся все остальные типы: последовательных и параллельных портов, клавиатуры и т.д.
Для обоих типов драйверов DOS всегда вызывает драйвер устройства для чтения или записи данных на устройство. Драйверы устройств могут поддерживать DMA и/или прерывания, но, пока DOS не вызовет драйвер для получения данных, данные не передаются. Например, когда программе требуется символ с клавиатуры, этот символ считывается только в том случае, если программа непосредственно запросила его у драйвера устройства. Если пользователь нажал клавишу, когда символ программе не требовался, этот символ сохраняется до тех пор, пока не произойдет запрос.
Для приложений, работающих в среде DOS, такой тип интерфейса вполне подходит. Фактически в Windows до сих пор используется такой же интерфейс для доступа к блочным устройствам, как, например, при открытии или доступе к файлу. Но для некоторых символьных устройств такой тип интерфейса не подходит. Например, если вы создавали Windows-приложения, то вы знаете, что символы с клавиатуры посылаются приложению как только пользователь нажал клавишу на клавиатуре. Windows-программа не выполняет специальных запросов о нажатых клавишах. Подход, используемый в среде DOS при использовании драйверов устройств, не подходит для большинства устройств, поддерживаемых Windows.
Прайс-лист на установку программ Windows в КраснодареПохожие статьи:
► Как переустановить операционную систему
Сегодня в каждой квартире есть компьютер или ноутбук. Но большинство владельцев умеют пользоваться компьютером только на уровне включить/выключить и зайти в интернет, для того чтобы посидеть в социальных сетях и посмотреть погоду.
► Режим «бога» в Windows 7
Наверняка многие из вас слышали, что в Windows 7 можно включить режим «бога» и выполнять тонкую настройку операционной системы. При этом пользователи полагают, что режим «бога» дает им преимущества по сравнению с пользователями...
► Быстрая оптимизация операционной системы
Каждый компьютер или ноутбук начинает со временем тормозить - долго грузится, программы начинают запускаться с большой задержкой. В этом случае нам понадобится выполнить оптимизацию операционной системы с помощью программы CCleaner.
► Что такое Процесс jsq.exe в Windows
Продолжаем знакомиться с процессами, которые встречаются в нашем диспетчере задач windows. Особенно важно разбираться в них, если ваша компьютерная безопасность под угрозой, и произошло заражение вирусами. Эти знания помогут вам разобраться, присутствует ли вредоносный код...