ПредишенСледващото

Както вече споменахме, една от основните задачи на операционната система е да управлява хардуера. В програмата или част от код, който е предназначен за управление на конкретно устройство, и обикновено се нарича драйвер за устройството. Необходимостта от драйвери на устройства в операционната система се дължи на факта, че всеки отделен блок отнема само строго определен набор от специализирани команди, чрез който устройството може да се контролира. И тези команди са често напълно ?? възнамерява да извършва някои прости елементарни операции. В случай, че всяко приложение, са били принудени да използват само тези команди, за да пишат приложения ще бъде много трудно, и техният размер ще бъде много голям. Поради тази причина, приложения, обикновено използват някакъв вид команди на високо равнище (като например "Записване на файлове на диск"), и на превръщането на тези команди в контролните последователности за даден драйвер на устройство се грижи за това устройство. Поради тази причина, всеки отделно устройство, било на дисковото устройство, клавиатура, принтер или трябва да има софтуер за драйвери, който действа като преводач или като връзка между хардуерни устройства и софтуерни приложения, използващи това устройство.

В Linux, драйверите за устройствата са три вида.

Водачите на втория вид са представени модули на ядрото. Οʜᴎ проектиран като отделни файлове, както и да ги свърже (по време на зареждане или по-късно), е изключително важно да се извършва отделен модул свързан отбор, а след това ще бъде за управление на съответните устройства. Ако това е важно да се използват НХО вече не устройства, модулът може да се разтоварват от паметта (деактивиране). Поради тази причина, използването на модулите осигурява по-голяма гъвкавост, тъй като всеки един от тези шофьори трябва да се преконфигурира, без да прекъсва системата. Модули често се използват за контрол на устройства, като например SCSI-адаптери, звукови карти и мрежови карти.

Файлове модули на ядрото са разположени в поддиректории на директорията / ИЪ / модули. Обикновено при инсталиране на системата е даден списък от модули, които да бъдат свързани автоматично по време на зареждане. Списък натоварени модули се съхраняват във файла / и т.н. / модули. И във файла /etc/modules.conf съдържа списък с опции за тези модули. Редактиране на "Manual" файл не се препоръчва за тази цел има специални скриптове (като например актуализиране на модули).

За да разрешите или забраните на модулите в системата се работи, има специални инструменти.

· Lsmod - показва списък от момента заредени модули.

· Insmod - използва за зареждане или "настройка" на модула от командния ред.

· Rmmod - използва се за разтоварване или "отделяне" на модула.

· Modprobe - автоматично зарежда модула. За да се покаже текущата конфигурация на модули Sun ?? EX да използвате командата: modprobe -с.

Въпреки, че файловете на модула имат наставка .o, когато използвате тези команди, връзки към модулите са определени с точност не се споменава за тази наставка. Например: когато модулът е споменаване, файлът се нарича "joystick.o", трябва да използвате командния ред на "джойстик".

И накрая, третият тип устройство код водача на водача да споделят ?? ен между ядрото и специална програма, предназначена да управлява това устройство. Например, драйвери за принтер за ядрото е отговорен за взаимодействие с паралелен порт, и генериране на управляващи сигнали за принтера изпълнява печат демон LPD на (който използва специална програма за този филтър).

Но е необходимо да се спомене изрично, че в Слънцето ?? бивши трите случая директно взаимодействие с устройството изпълнява ядрото или всеки модул на ядрото. А потребителски програми взаимодействат с драйвери на устройства чрез специални файлове в директорията / сътрудничество и нейните поддиректории. Това означава, че взаимодействието на приложения с хардуера на Linux компютър се извършва, както следва:

приспособление <-> сърцевина <-> специален файл за устройство <-> потребителското програма

Тази схема осигурява единен подход към Слънцето го ?? устройства, които от гледна точка на заявления от изглеждат като нормални файлове.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!