Взаимодействие с аппаратными средствами

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

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

Драйверы имеют точки входа для взаимодействия с прикладными программами, а диспетчеризация обращений прикладных программ к драйверам устройств — это одна из функций операционной системы.

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

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

Операционная система анализирует требования устройств о выделении им ресурсов и гибко реагирует на них, исключая захват одних и тех же ресурсов разными устройствами. Такой принцип динамического распределения ресурсов операционной системой получил название plug-and-play, а устройства, удовлетворяющие этому принципу, называются самоустанавливающимися.