LINUX.ORG.RU

Автообновление драйверов - панацея для Linux


0

0

После пяти лет разработки проект Dell Linux представляет DKMS - Dynamic Kernel Module Support.

Этот проект предлагает универсальный фреймворк для исходного кода различных драйверов, который поможет облегчить процесс компиляции и сборки последних. Это даст возможность, в свою очередь, дистростроителям распространять новейшие драйвера без привязки к версиям ядра.

Dell надеется, что ее амбициозное начинание ускорит процесс тестирования и облегчит распространение драйвера, т.к. достаточно будет тарбола с кодом и небольшого конфигурационного драйвера.

Как заявил Matt Domsch, Dell's Linux technology strategist, на вопрос, почему это важно: "так или иначе это будет использоваться для автоматической скачки драйверов которые подходят под ваше оборудование, но отсутствуют в ядре вашего дистрибутива"

>>> Читать дальше

блин поправьте "распространение и драйверка" на "распространение драйвера"

lester_dev ★★★★★
() автор топика

Без стабильного driver API это не имеет смысла. А так как стабильный API не имеет смысла, то вся затея бессмысленна в квадрате :)

Legioner ★★★★★
()
Ответ на: комментарий от Legioner

Я так понял, будет какой-то свой API для создания драйвера, стабильный, и будет драйвер, который будет обеспечивать прослойку между текущим API ядра и своим особым. Таак, например сделан драйвер nvidia.

krum
()
Ответ на: комментарий от catap

да я не спорю, самый быстрый USB-стек в мире, это не шутки :)

Legioner ★★★★★
()
Ответ на: комментарий от scyld

>а потом ещё прослойка и ещё.

ничего страшного, просто появится какой-нибудь gtk3++, который будет прослойкой всех прослоек в прослойке :)

alex-w ★★★★★
()
Ответ на: комментарий от krum

неа, наврал, это просто система для автоматической сборки драйвера под нужную версию ядра.

krum
()

Dell Linux - проект фирмы Dell? Тогда респект им, а я думал они только на ноуты линукс ставят...

anonymous
()

Хотел написать об этом ещё вчера, но инициатива кажется мне бредовой в свете того, что у ядра API нестабильно, а значит драйвер из новой версии ядра просто не заведётся в старом.

Короче, дело темное - как оно работает - не ясно.

birdie ★★★★★
()

Я с месяц назад размышлял, что было бы здорово написать такую утилиту, которая будет по конфигу собирать модуль под нужное ядро.

причем и вручную и прямо при загрузке ядра, если драйвер под него еще не собран.

Короче, идею продумал, даже название придумал, а потом посмотрел, а оказывается это в чистом виде dkms и он уже написан. А потом yum search dkms сделал и выяснил, что он уже в федоре есть, причем последней версии... ;)

AVL2 ★★★★★
()

Робяты вновь изобрели module-assistant? Это есть гуд. Больше велосипедов хороших и разных.

anonymous
()
Ответ на: комментарий от anonymous

>Сейчас придут гентушнеги и начнут ржать над костылями. :)

Над своими?

Midael ★★★★★
()

У гентушников есть module-rebuild и они не парятся

Erik_der_Zweite
()
Ответ на: комментарий от anonymous

Мда, только в чём панацея для пользователей я так и не понял:) Для дистроклепателей просто меньше головной боли с пересборкой всех модулей. А я то уже надеялся, что сделали какой-то API/ABI для внешних доайверов:(

krum
()

Пакеты с драйверами nvidia из freshrpms используют dkms. Все просто: при загрузки системы определяется, есть ли нужный модуль для работающей версии ядра. Если нет - компилируется.

anonymous
()
Ответ на: комментарий от Legioner

> стабильный API не имеет смысла

Для разработчиков ядра -- да. А вот для многих других -- жуткий геморрой: 1) вендорам приходится постоянно что-нибудь фиксить в своих драйверах с каждой новой версией ядра; 2) юзерам приходится ждать, когда вендор выпустит обновление. В итоге недовольны и те, и другие.

Relan ★★★★★
()

Fedora 7:

$ rpm -qi dkms
Name : dkms Relocations: (not relocatable)
Version : 2.0.16 Vendor: Fedora Project
Release : 1.fc7 Build Date: Срд 28 Фев 2007 18:56:42
Install Date: Вск 22 Июл 2007 00:48:38 Build Host: ppc2.fedora.redhat.com
Group : System Environment/Base Source RPM: dkms-2.0.16-1.fc7.src.rpm
Size : 168521 License: GPL
Signature : DSA/SHA1, Птн 18 Май 2007 21:41:45, Key ID b44269d04f2a6fd2
Packager : Fedora Project <http://bugzilla.redhat.com/bugzilla>;
URL : http://linux.dell.com/dkms
Summary : Dynamic Kernel Module Support Framework
Description :
This package contains the framework for the Dynamic
Kernel Module Support (DKMS) method for installing
module RPMS as originally developed by Dell.

anonymous
()

Идея может быть и хорошая, если бы не куча глюков. Руками оно всё таки надёжнее.

anonymous
()
Ответ на: удаленный комментарий

> Ну, далеко не все "гентушнеги" употребляют наркотики перед тем как зайти на ЛОР!

Своей дури хватает?

anonymous
()
Ответ на: комментарий от anonymous

>anon> Сейчас придут гентушнеги и начнут ржать над костылями. :)

Ну, далеко не все "гентушнеги" употребляют наркотики перед тем как зайти на ЛОР!

NonHuman ★★★
()

Не знаю, что они задумали, но в Линуксе нет (и надеюсь не будет) стабильного API для драйверов. Более того, модуль зависит не только от версии ядра, но и от опций компиляции. Можно, конечно, создать прослойку, потом еще одну, но это будет потеря производительности, и, возможно, гибкости. ИМХО, чем больше бинарных дров выпустят, тем больший глюкодром получат.

Фраза "In turn, this enables Linux distributors and driver developers to create driver drops without having to wait for new kernel releases." звучит смешно. Ничего не мешает в рамках дистрибутива выпускать разные сборки одного ядра и обновлять для них модули, и совсем не нужно ждать новый релиз ядра. RedHat прекрасно выпускает работающие, хотя и сильно пропатченные ядра.

А фразу: "This lets us fix and replace individual device drivers to support new hardware without having to respin the whole CD like we wound up doing for Ubuntu," said Domsch." я совсем не понял. В Ubuntu нельзя поменять ядро???

mky ★★★★★
()
Ответ на: комментарий от mky

Мдя, дядя, а ты предлогаешь весе дрова для всевозможного железа вот так прям в ядро запихнуть ? Вот тут крик идет что разработчики ядра уже не могут в этом зоопарке нормально разбираться. Если сейчас об этом не задуматься, потом может быть поздно, будет это паделье глючить хуже висты...

anonymous
()

Пяти _лет_???

AP ★★★★★
()
Ответ на: комментарий от NonHuman

вот кто собирает машину времени для лора

anonymous
()
Ответ на: комментарий от ManMachine

Кстати у меня эта DKMS уже хренову гору времени стоит и регулярно собирает mppe модуль для ядра.

anonymous
()

И получится еще один FreeBSD. Кто знает, тот поймет.

П.С. именно из за такого API я - фанат FreeBSD от него отказался в пользу Linux.

anonymous
()
Ответ на: комментарий от anonymous

> Мдя, дядя, а ты предлогаешь весе дрова для всевозможного железа вот так прям в ядро запихнуть ? Вот тут крик идет что разработчики ядра уже не могут в этом зоопарке нормально разбираться. Если сейчас об этом не задуматься, потом может быть поздно, будет это паделье глючить хуже висты...

Бедный, тяжело тебе, наверное...

anonymous
()

ГЫ! Сначала подумал, что это разработка Deli Linux (http://delili.lens.hl-users.com) - есть такой дистро на основе Слаки для древних компов :-)

glebone
()
Ответ на: комментарий от anonymous

Ето тот же module-assistant но не только для Debiana а для любого Linux.

anonymous
()

А по моему - не стоит возводить нестабильность API в абсолют. Да есть нестабильные части. Но наверняка есть и стабильные. Или редко изменяемые. Вот для таких DKMS - полезная штука. Даже если что-то и поменяется, то можно для оперативности обеспечить обратную совместимость на уровне DKMS. Оставив рабочими все зависимые модули. А затем потихоньку дорабатывать модули. Разработчиков ядра и драйверов это может сильно разгрузить. А конечным пользователям не пийдётся ждать слишком долго. Вот например я не силён в линуксовой компиляции. Времени разбираться с этим нету. А нормальную поддержку Intel HD Audio реализовали только в последней версии ALSA. Когда она попадёт в ядро - непонятно. А так я бы уже имел эти драйвера и не парился с записью с TV тюнера >-).

vektory
()
Ответ на: комментарий от catap

> Поверь мне, не в стабильном api счастье!

Докажи! Я хочу чтобы один и тот же драйвер работал без перекомпиляции на ядрах 2.6.0-2.6.23. Объясни почему я должен при обновлеии ядра пересобирать все сторонние драйвера?

anonymous
()
Ответ на: комментарий от mky

> Не знаю, что они задумали, но в Линуксе нет (и надеюсь не будет) стабильного API для драйверов. Более того, модуль зависит не только от версии ядра, но и от опций компиляции. Можно, конечно, создать прослойку, потом еще одну, но это будет потеря производительности, и, возможно, гибкости. ИМХО, чем больше бинарных дров выпустят, тем больший глюкодром получат.

И чо ты надеешься? Ты мазохист?

anonymous
()
Ответ на: комментарий от anonymous

> Объясни почему я должен при обновлеии ядра пересобирать все сторонние драйвера?

Не хочешь собирать драйвера - используй FC/Ubuntu/другой user-friendly дистрибутив, чего плакаться то?

Deleted
()
Ответ на: комментарий от emaxx

> ИМХО Имеет смысл для драйверов устройств, не критичных к скорости.

Глупости. Драйвер, собранный через DKMS никак не отличается от собранного вручную.

Deleted
()

Да, пять лет изобретать m-a - это вам не шутка.

Xellos ★★★★★
()
Ответ на: комментарий от anonymous

> Я хочу чтобы один и тот же драйвер работал без перекомпиляции на ядрах 2.6.0-2.6.23.

Зачем?

anonymous
()
Ответ на: комментарий от Deleted

Не хочешь собирать драйвера - используй FC/Ubuntu/другой user-friendly дистрибутив, чего плакаться то?

А то, что бывают еще и закрытые дрова :(

anonymous
()
Ответ на: комментарий от anonymous

> Сейчас придут гентушнеги и начнут ржать над костылями. :)

ГЫ ГЫ ГЫ

ASM ★★
()
Ответ на: комментарий от Relan

>> стабильный API не имеет смысла
> Для разработчиков ядра -- да. А вот для многих других -- жуткий
> геморрой: 1) вендорам приходится постоянно что-нибудь фиксить в
> своих драйверах с каждой новой версией ядра
Так сейчас-то все драйвера и так в ядре (проприетарные
для двух видюх - не в счёт), и по этому вендорам ничего
фиксить не приходится.
А так - не понятно. Как я понял из статьи, DKMS - это не
прослойка, а просто фрэймворк для _сборки_ дров вне ядра.
Что-то типа того, что в ALSA сделали - там тоже дрова
можно вне ядра собирать.
И вот тут-то и получится, что с каждым релизом ядра, если
какой-то API изменили, вендорам сразу придётся фиксить
дрова, при чём на старых ядрах они либо перестанут
собираться, либо надо будет делать #ifdef'ы всякие.
В общем, надо читать доки по этому DKMS, а мне лень. :)

anonymous
()

> 2 Rozik (*) (24.09.2007 22:40:08)

> Покайтесь, братие - линуксокапец близок :)

Нет! Не дождёшься! :-)

2 anonymous (*) (24.09.2007 22:46:32)

> Объясни почему я должен при обновлеии ядра пересобирать все сторонние драйвера?

А что, лень раньше Вас родилась? Хоть где-то... как-то... Но, есть RH, однако. ;-))

R_Valery ★★★
()
Ответ на: комментарий от anonymous

>> Я хочу чтобы один и тот же драйвер работал без перекомпиляции на ядрах 2.6.0-2.6.23.

>Зачем?

Затем, что бывает еще специфичное железо, с бинарным драйвером под определенное ядро.

anonymous
()
Ответ на: комментарий от R_Valery

Вообще, а что такое "драйвер"??? Ну, модуль (ядра или к ядру) я как-то понимаю... :-)

R_Valery ★★★
()

УРА!!! ВЕНДЕ КАПЕЦ ЕЩЕ БЛИЖЕ!!! БАНЗАЙ!!!

anonymous
()
Ответ на: комментарий от anonymous

>И чо ты надеешься? Ты мазохист?

Не понял ваш пост, но на всякий случай отвечу.

Нет не мазохист. Да надеюсь (правда непонятно на что).

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.