Как работают драйверы Linux и где я нахожу их? (особенно драйвер NIC)

Существует Rush, который использует рубин и Psh, который основан на жемчуге.

11
22.05.2013, 10:18
3 ответа

Драйверы очень похожи на любую другую программу, они могут состоять из нескольких исходных файлов. Драйверы устройств Linux могут быть непосредственно скомпилированы в ядро или модуль ядра. Модули ядра обладают преимуществом способности, которая будет загружена динамично (т.е. Вы не должны компилировать новое ядро для использования их).

Можно, очевидно, всегда смотреть на исходный код Linux, но это может быть грандиозной задачей сначала. Однако как с чем-либо в драйверах Linux файлы. Это означает, что другие программы получают доступ к ним через интерфейс VFS. Например, можно управлять CD-ROM через ioctl() вызовы с помощью его файла устройств.

Я настоятельно рекомендовал бы проверку Драйверов устройств Linux. Это в свободном доступе и ответит на Ваши вопросы. В частности, можно прочитать главу 2, которая показывает Вам, как создать простое "Привет, Ядро" модуль. Это может быть намного больше, чем Вы просите, но можно считать остатки, которыми Вы интересуетесь. И его свободное.; P

6
27.01.2020, 19:59

Драйверы Linux создаются с ядром, скомпилированным в или как модуль. С другой стороны, драйверы могут быть созданы против заголовков ядрa в исходном дереве. Вы видите список в настоящее время устанавливаемых модулей ядра путем ввода lsmod и, если установлено, смотрите на большинство устройств, подключенных через шину при помощи lspci.

Если текущая версия ядра не будет иметь поддержки драйвера Вашего NIC, то необходимо будет найти, что драйверы в поставщике и необходимо будет скомпилировать модуль ядра из источника (против заголовков ядра).

3
27.01.2020, 19:59

Большую часть времени, если что-то как Ваш NIC не обнаруживается автоматически, необходимо перейти к сайту производителя оборудования и надеяться видеть, есть ли у них версия Linux.

В более общих чертах драйверы Linux имеют тенденцию принимать форму библиотек или модулей.

1
27.01.2020, 19:59

Теги

Похожие вопросы