Як працює драйвер?

За допомогою програм-драйверів операційна система віддає свої розпорядження апаратним пристроям. Адже вона не тільки управляє пам’яттю, але і всім різноманіттям девайсів комп’ютера. Функцією більшості драйверів є переклад з мов програмування високого рівня на мову електричних сигналів. Мови високого рівня є рідними для операційної системи і додатків. А ось обладнання звикло мати справу з електричними сигналами. Драйвери отримують від операційної системи дані і переводять їх в потоки бітів, що розміщуються в спеціальних ділянках пам’яті накопичувачів або в серії лазерних імпульсів, якщо мова йде про принтер.

Як працює драйвер?

Як працює драйвер?

Апаратні пристрої дуже сильно відрізняються один від одного, тому кожному з них потрібен свій драйвер-«перекладач». Більшість драйверів завантажуються тоді, коли виникає потреба в пов’язаному з цим драйвером пристрою. Драйвер функціонує, як і будь-який інший процес, запущений в операційній системі. В процесі роботи драйвера, операційна система досить часто направляє йому блоки даних з високим рівнем пріоритету. Таким чином, апаратний пристрій виконує свою роботу настільки швидко, наскільки це можливо в даній конфігурації.

Як працює драйвер?

Багато користувачів не в захваті від того, що багато драйверів не входять до складу операційної системи. У такого підходу є свої причини. Справа в тому, що в драйвери часто вносяться зміни. Якщо б вони були «прошиті» в ОС, кожна зміна драйвера вимагало б модифікації і перекомпіляції всієї операційної системи в цілому. Крім того, розробка драйверів лежить, в основному, на творцях обладнання, а не на розробниках операційної системи. Це досить логічно, оскільки тільки ті, хто працював над самим пристроєм, можуть в повній мірі знати про його особливості.

Керування введенням і висновком в значній мірі полягає в управлінні чергами і буферами, а також спеціальними ділянками накопичувача даних. Операційна система приймає від пристрою (наприклад, клавіатури або серійного порту) набір бітів, утримує ці дані і направляє їх процесору в зрозумілому для нього вигляді. Ця функція набуває особливого значення в світлі того, що одночасно працює багато процесів, що вимагають дорогоцінного часу процесора.

Розподіляюча час процесора операційна система дає буферу інструкцію продовжувати прийом даних від пристрою введення, але сама призупиняє їх передачу центральному процесору на той час, протягом якого пристрій введення перебуває в режимі очікування. Коли відбувається введення, пов’язаний з пристроєм процес переходить в активний стан, і операційна система дає буферу команду на передачу даних. Такий підхід дозволяє пристрою вводу (наприклад, клавіатурі або модему) працювати швидко, навіть беручи до уваги ту обставину, що процесор не в кожен момент часу отримує дані з цього джерела.

Радимо прочитати нову статтю Як відключити інтернет-протокол IPv6, в ній ви знайдете багато цікавої інформації.

Управління всіма апаратними ресурсами комп’ютера є значною частиною роботи, що виконується операційною системою. Якщо мова йде про операційну систему реального часу, трапляється і так, що потрібно обробляти всю доступну функціональність системи. Інші операційні системи починають роботу з драйвером пристрою лише в тому випадку, коли воно необхідне.

Напишіть відгук

Ваша пошт@ не публікуватиметься. Обов’язкові поля позначені *

*

Можна використовувати XHTML теґи та атрибути: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>