Драйвер: Разлика между версии

Изтрито е съдържание Добавено е съдържание
EmausBot (беседа | приноси)
м r2.7.2+) (Робот Промяна: ar:مشغل (حاسوب)
Ред 7:
 
==Предназначение==
Драйверът опростява програмирането, защото представлява преводач между хардуерното устройство и приложните п
Драйверът опростява програмирането, защото представлява преводач между хардуерното устройство и приложните програми или операционната система, които го използват. Програмистите могат да пишат приложения от високо ниво, без да се съобразяват с това на какъв хардуер потребителят ще ги пуска. Физически слоеве комуникират със специфичните инстанции на устройството. Примерно, [[сериен порт|серийният порт]] трябва да може да обработва стандартни комуникационни протоколи, като [[XON| XON/XOFF]], които са нормални за всякакъв хардуер, работещ на сериен порт. Това се управлява от логически слой на серийния порт. Но трябва физическият слой да комуникира и с конкретен чип на серийния порт. [[16550 UART]] хардуера е различен от PL-011. Физическият слой адресира тези особености, специфични за чипа. По подразбиране операционната система първо вика логическия слой. Съответно логическият слой вика физическия, за да може да изпълни изискването на операционната система. Накрая, когато хардуерното устройство трябва да отговори на операционната система, използва физическия слой, за да се обърне към логическия.
 
При [[Линукс|Линукс]], програмистите могат да създават драйвери или като част от ядрото, или като допълнително заредими.
 
Заредимите драйвери са в [[Windows]] .sys файловете, а в Линукс .ko. Предимството на заредимите драйвери е че те могат да бъдат заредени само когато има нужда от тях и после освободени, така пестейки от паметта на ядрото.