Відмінності між версіями «Драйвери пристроїв.»
(Створена сторінка: Драйвер - комп'ютерна програма, за допомогою якої операційна система отримує доступ до ке...) |
Donserg (Обговорення • внесок) м (Захист на Драйвери пристроїв. встановлено ([edit=sysop] (безстроково) [move=sysop] (безстроково))) |
Поточна версія на 22:55, 20 вересня 2012
Драйвер - комп'ютерна програма, за допомогою якої операційна система отримує доступ до керування апаратним забезпеченням. У загальному випадку для використання кожного пристрою, підключеного до комп'ютера, необхідний спеціальний драйвер. Зазвичай з операційними системами поставляються драйвери для ключових компонентів апаратного забезпечення, без яких система не зможе працювати. Однак для більш специфічних пристроїв (таких, як графічна плата або принтер) можуть знадобитися спеціальні драйвери, зазвичай надавані виробником пристрою. Операційна система керує деяким "віртуальним пристроєм", який розуміє стандартний набір команд. Драйвер переводить ці команди в команди, які розуміє безпосередньо пристрій. Ця ідеологія називається "абстрагування від апаратного забезпечення". Драйвер складається з декількох функцій, які обробляють певні події операційної системи. Зазвичай це 7 основних подій: • завантаження драйвера. Драйвер реєструється в системі, робить первинну ініціалізацію й т.п. ; • вивантаження. Драйвер звільняє захоплені ресурси - пам'ять, файли, пристрої й т.п. ; • відкриття драйвера. Початок основної роботи. Зазвичай драйвер відкривається програмою як файл, функціями CreateFile() в Win32 або fopen() в UNIX-подібних системах; • читання; • запис: програма читає або записує дані з/у пристрій, що обслуговується драйвером; • закриття: операція, зворотна відкриттю, звільняє зайняті при відкритті ресурси й знищує дескриптор файлу; • керування вводом-виводом-IO Control-IOCTL. Драйвери — це особливий тип комп'ютерних програм, розроблених для коректної взаємодії з пристроями. Вони представляють інтерфейс для взаємодії з пристроєм через певну шину комп'ютера, до котрої даний пристрій під'єднано, за допомогою ряду команд що відправляють та отримують дані з пристрою. Ці програми залежні як від пристрою так і від операційної системи, тобто кожен пристрій потребує свого драйвера під кожну ОС. Ключовим моментом проектування драйверів є абстрагування. Кожна модель пристрою (навіть якщо пристрої однакового класу) є унікальною. Новіші моделі часто працюють швидше чи продуктивніше і інакше контролюються. ОС не може знати, як контролювати кожен пристрій зараз і в майбутньому. Для вирішення цієї проблеми ОС лише задає правила поведінки класу пристроїв. Задачею драйвера є перетворення цих правил у специфічні для кожного пристрою команди керування.