LINUX.ORG.RU

История изменений

Исправление SkyMaverick, (текущая версия) :

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

В виндах на это просто WDM (сильно позже для видеодров выделился ещё WDDM). В конечном счёте, прикладникам больше ничего и не нужно знать. Но даже когда и это стало слишком сложно и запилили поверх ещё один фреймворк - WDF, чтобы уже любой олень смог хоть что-то да написать. И уже, если хочет - то лезть глубже. Короче МС по максимуму пытается абстрагировать и упростить написание драйверов под платформу (ему это относительно просто, он ведь в одиночку всё разрабатывает).

Ну да, в виндах же не один уровень (по WDM) драйверов (PDO,FDO,FiDO, ещё какое-то DO), которые работают поверх шин, созданных шинными драйверами (который и предоставляют тот самый стабильный IPC для драйверов верхнего уровня, благодаря чему драйвера для старых ОС иногда могут работать в новых), которые работают поверх опять же драйверов HAL. Этож не моноядро.

Короче, stable IPC (IRP) - это я ещё понимаю, но stable api там не ночевал никогда.

Ну у меня только опыт поддержки для Video Capture device и для Audio Capture device.

Ну у меня не такой крутой опыт: периферия COM/USB и сетевые. Совсем уж фундаментальные вещи не писал.

А DKMS вообще не от туда, это просто хелпер для сборки модулей сторонних

Ну, как-минимум, это даёт возможность иметь out-of-tree модули и не страдать.

Исходная версия SkyMaverick, :

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

В виндах на это просто WDM (сильно позже для видеодров выделился ещё WDDM). В конечном счёте, прикладникам больше ничего и не нужно знать. Но даже когда и это стало слишком сложно и запилили поверх ещё один фреймворк - WDF, чтобы уже любой олень смог хоть что-то да написать. И уже, если хочет - то лезть глубже. Короче МС по максимуму пытается абстрагировать и упростить написание драйверов под платформу (ему это относительно просто, он ведь в одиночку всё разрабатывает).

Ну и да, в виндах же не один уровень драйверов (PDO,FDO,FiDO, ещё какое-то DO), которые работают поверх шин, созданных шинными драйверами (который и предоставляют тот самый стабильный IPC для драйверов верхнего уровня, благодаря чему драйвера для старых ОС иногда могут работать в новых), которые работают поверх опять же драйверов HAL. Этож не моноядро.

Короче, stable IPC (IRP) - это я ещё понимаю, но stable api там не ночевал никогда.

Ну у меня только опыт поддержки для Video Capture device и для Audio Capture device.

Ну у меня не такой крутой опыт: периферия COM/USB и сетевые. Совсем уж фундаментальные вещи не писал.

А DKMS вообще не от туда, это просто хелпер для сборки модулей сторонних

Ну, как-минимум, это даёт возможность иметь out-of-tree модули и не страдать.