Драйверы поддерживаются в ядре, поэтому при изменении ядра требуется глобальный поиск и замена (или поиск и изменение вручную) для всех пользователей функции, это делает человек, вносящий изменение. Обновление вашего драйвера людьми, вносящими изменения в API, является очень приятным преимуществом, вместо того, чтобы делать это самостоятельно, когда он не компилируется на более свежем ядре.
Альтернатива (что происходит с драйверами, поддерживаемыми вне дерева) состоит в том, что патч должен быть повторно синхронизирован его сопровождающими, чтобы не отставать от любых изменений.
Быстрый поиск привел к дебатам о разработке драйверов внутри дерева и вне дерева .
Поддержание Linux в основном заключается в хранении всего в основном репозитории.Создание небольших урезанных ядер поддерживается параметрами конфигурации для управления #ifdef
s. Таким образом, вы можете создавать крошечные урезанные ядра, которые компилируют только крошечную часть кода во всем репозитории.
Широкое использование Linux во встраиваемых системах привело к лучшей поддержке исключения ненужных вещей, чем в Linux несколькими годами ранее, когда дерево исходных текстов ядра было меньше. Сверхминимальное ядро 4.0, вероятно, меньше суперминимального ядра 2.4.0.