Если у вас есть драйвер устройства, работающий в одном дистрибутиве Linux, будет ли он работать и в другом?
3 ответа
Это зависит от того, какое ядро использует другой дистрибутив.
Попробуйте uname -a
чтобы определить версию ядра. Если версия ядра Distro B ниже, чем у Distro A, возможно, драйвер не работает, потому что это зависит от новых функций. Если у Distro B более новое ядро, я бы сказал, что оно будет работать.
Драйвер устройства находится в форме исходного кода или скомпилированной двоичной формы?
Если он находится в исходном коде, то он будет работать нормально при компиляции в версию ядра, для которой он предназначен. Скомпилируйте его отдельно для каждой конфигурации ядра, с которой вам нужно работать.
Если он находится в скомпилированном двоичном виде, он будет работать только с тем ядром, против которого оно было скомпилировано. Даже та же самая версия ядра, скомпилированная с другой конфигурацией, вряд ли будет работать с двоичным модулем, скомпилированным для какой-то другой конфигурации.
Урок:
Выберите оборудование, драйверы которого уже поддерживаются в основном ядре.
Мотивировать разработчиков ядра исправить ситуацию, если вы хотите использовать оборудование, которого пока нет в этой ситуации.
Мотивировать поставщика оборудования, чтобы помочь разработчикам ядра в этом процессе.
Работайте как сумасшедший вдали от любого оборудования, чей поставщик не поддерживает загрузку драйверов в основном ядре.
Общий ответ - да, если ядро такое же или более новое. Как правило, большинство драйверов встроены в ядро. Большинство поставщиков вносят небольшие изменения в ядро для своего дистрибутива, поэтому оно должно работать.
Ваша самая большая проблема в том, что некоторые дистрибутивы опасно устаревают, и вы можете получить старое ядро, в котором конкретный драйвер еще не работает.
Исключения:
Супер старое оборудование все еще висит на каком-либо устройстве COM-порта, все ставки выключены.