LINUX.ORG.RU
ФорумTalks

Свалка

 , , ,


0

1

Какой смысл включать драйверы в ядро, если в большинстве дистрибутивов используются драйверы из пакетов (какой-нибудь там amdgpu например)? Ладно, допустим есть LFS (что конечно не дистрибутив, но кому не насрать). Но во всех (насколько я знаю) мейнстримовых дистрибутивах на ядро накладываются только дистро-специфические патчи. Во всяком случае, я пока не встречал дистрибутивов, которые делают что-то большее, чем накладывают патчи «под себя».

В общем, объясните мне пожалуйста, почему никто не вычищает старый хлам из ядра (имеются в виду драйверы, которые обновляются из репозиториев дистрибутивов)?

UPD: да, я не совсем понимаю, как это работает. Но так даже веселее.

Deleted

Последнее исправление: Deleted (всего исправлений: 2)

Так_сложилось.джпг

Вообще, конечно, бредовенькая модель - чтобы обновить драйвер, нужно обновить ядро.

Deleted
()

А мне нравится! Бывает тухляк какой-нибудь как заведёшь, а он из коробки работает.
Вот тема например, конечно это не совсем тухляк, но по крайней мере работает из коробки и не нужно страдать как вантузятники со своими говнодрайверами. Подключение полётного контроллера Naze32 в Linux.

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

Ну драйвер же в ядре. Допустим вышло ядро 5.0.1, а через пару дней обновился видеодрайвер intel с фиксами глюков, и это обновление попадёт только в ядро 5.0.2, и у юзера выбор - или ждать, когда это 5.0.2 попадёт в апдейты его дистрибутива, или накатывать ядро из git.

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

Все целиком?!

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

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

Я про подход. Не размены.

Вопрос:
Падение драйвера видео как проходит? Перезапуск графики и пофигу? Или серьёзнее?

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

А это-жи смотря какого драйвера!

Вот невидь на старых карточках падает, так падает: черный экран, клавиатура не отвечает :-)))

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

Oops, kernel panic, падение или фриз иксов - как повезёт.

Deleted
()

Если ты копнёшь в историю, то юниксы поставлялись с драйверами. Это такой вот дизайн.

С другой стороны, почему винде всегда хватало стандартных vga&ide для старта - тоже не понятно. %-) ага-ага...линукс, все драйвера всегда на месте, запускается там, где винда не взлетает.. ага-ага...

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

винде всегда хватало стандартных vga&ide для старта

А в Линуксе какие-то проблемы с блочными устройствами и vesa?

Deleted
()

Чтобы тот, кто рефакторит подсистему сразу адаптировал под новый API/ABI драйвера.

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

фига-ссе ты хитро спросил!

Ну, в памяти еще свежи воспоминания о работающем инсталяторе, а вот установленная система могла вместо графики и черный экран показать.. бу-га-га!

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

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

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

Вот и я могу сказать тоже самое. Винда всегда устанавливалась и стартовала, в отличии от прочих набросов.

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

С тех пор десктопный линукс стал лучше?

А то! Вайн заработал, как часы. А 15 лет назад это было глюкалово похуже ReactOS

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

Падение драйвера видео как проходит? Перезапуск графики и пофигу? Или серьёзнее?

С болью и страданиями. Линуксу до винды очень далеко в этом плане.

intelfx ★★★★★
()

В общем, объясните мне пожалуйста, почему никто не вычищает старый хлам из ядра (имеются в виду драйверы, которые обновляются из репозиториев дистрибутивов)?

Что такое «драйверы, которые обновляются из репозиториев дистрибутивов»? Сдаётся мне, ты не очень понимаешь, как вообще устроены драйверы в линуксе.

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

Поехали!

Ты и так поехавший, куда тебе дальше?

Deleted
()

Какой смысл включать драйверы в ядро, если в большинстве дистрибутивов используются драйверы из пакетов (какой-нибудь там amdgpu например)?

Такой что:

  1. Драйвер может иметь лицензию, коротая не позволяет включить его в ядро.
  2. Драйвер может состоять из ядерной и не ядерной частей.
  3. Драйвер может быть сторонним и те кто его выпускают просто не стремятся включить его в ядро (ибо это процедура предполагает также возложение на себя обязательств).
no-such-file ★★★★★
()

Какой смысл включать драйверы в ядро, если в большинстве дистрибутивов используются драйверы из пакетов (какой-нибудь там amdgpu например)?

Ты, походу, вообще не понимаешь, о чём пишешь...

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

Ты вообще даже бубунту не осилил, тебе не о чем рассуждать.

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

Слушай, как причастный (ну ты понел, да) скажи как на самом деле линукс с иксами отрабатывает падение видеодрайвера? Такое, когда в венде черный экран на пару секунд, перезапуск звука, а потом все дальше работает.

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

Тебе ж выше ответили уже.

Парадигмы разные, венда: ну упало (даже несмотря на wqhl и всё такое) и хер с ним, быстренько перезапустим, чтобы пользователь не заметил и ни в коем случае не волновался. Linux: вот вам kernel panic, запостите в рассылку/багтрекер дистрибутива, то, что падает - это очень неправильно и должно быть пофикшено.

И да, зависоны драйверов у себя я не встречал очень давно, разве что во время экспериментов, которые не будут проводить «обычные» пользователи.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от dk-

Вопрос: Падение драйвера видео как проходит? Перезапуск графики и пофигу? Или серьёзнее?

С драйверами видео не очень хороший пример, так как драйверы видео состоят, как правило, не только из ядерного модуля, но и user space компонента. По этому, всё сильно зависит от того, в каком месте произошёл сбой. Если в user space, то это не приведёт к краху всей системы, но может порушить все gui компоненты (крах x-сервера вызовет падение всех графических приложений). Если в kernel space, то последствия могут быть самыми печальными. Но в реальности этого практически не происходит даже с проприетарными видео драйверами.

Black_Shadow ★★★★★
()

почему никто не вычищает старый хлам из ядра (имеются в виду драйверы, которые обновляются из репозиториев дистрибутивов)

А откуда они берутся в репозитариях?

imul ★★★★★
()

Какой смысл включать драйверы в ядро, если в большинстве дистрибутивов используются драйверы из пакетов (какой-нибудь там amdgpu например)? Ладно, допустим есть LFS (что конечно не дистрибутив, но кому не насрать). Но во всех (насколько я знаю) мейнстримовых дистрибутивах на ядро накладываются только дистро-специфические патчи. Во всяком случае, я пока не встречал дистрибутивов, которые делают что-то большее, чем накладывают патчи «под себя».

Поехавший что ли? Сравни количество драйверов в ядре, и количество драйверов сторонними модулями.

kirk_johnson ★☆
()

https://github.com/torvalds/linux/blob/e7aa8c2eb11ba69b1b69099c3c7bd6be3087b0...

Если драйвер не включен в ядро, то его разработчикам самим надо фиксить его под новые версии ядра. Если же он в ядре, то это делают разработчики ядра, когда ломают API.

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

te111011010
()
Ответ на: комментарий от dk-

Падение драйвера видео как проходит? Перезапуск графики и пофигу? Или серьёзнее?

Не знаю, не видел такого. Помню, что в KDE4 плазма падала, но это не графический драйвер.

Да, майнеры биткоинов из трёх букв в качестве видеокарт никогда не использовал.

te111011010
()
Ответ на: комментарий от dk-

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

Не видел исходников драйверов под Windows, но видел исходники из недавно открытого intel media sdk. И там реально процентов тридцать обёрток. Причём не заметно, чтобы это был код под Windows. Видимо, это энтерпрайз-стайл — писать обёртки даже там, где обёртки не нужны.

i-rinat ★★★★★
()
Ответ на: комментарий от dk-

У Intel'овского драйвера два вида «падений». Первый — ошибка в драйвере, всё ядро падает. Не видел ещё такого, но в интернете есть багрепорты. Второй — железка повисает. В этом случае происходит фриз картинки секунд на пять, потом драйвер перезапускает железку, и всё продолжает работать дальше. Этот вариант видел, его даже несложно самому вызвать.

i-rinat ★★★★★
()

Какой смысл включать драйверы в ядро, если в большинстве дистрибутивов используются драйверы из пакетов (какой-нибудь там amdgpu например)

Вот как раз из пакетов обычно только драйвер на видеокарту и... все? А 100500 драйверов на оборудование используется из ядра.

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

Помню когда на фотошопе включал режим работы с видеокартой (или как-то так это в настройках называется), то драйвера одной конторы, у которой бело-зелёный логотип, через 5 минут работы падали -> перезапускали в vesa -> потом вешали всё наглухо. PS6, Win7/Win8.1.

ИМХО ой далеко не всегда он перезагружается.

SkyMaverick ★★★★★
()

Stable API is nonsence - вот главная причина, по которой драйвера тащатся с ядром

cvs-255 ★★★★★
()
Ответ на: комментарий от intelfx

Я тоже долго втыкал и решил, что речь про DKMS.

CYB3R ★★★★★
()

Потому что Торвальдс победил Таненбаума в споре о микроядерной архитектуре ядра ОС. (Она не нужна).

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