> Мне почему-то кажется, что через несколько лет проект ядра линукс разделят на
> несколько подпроектов, которые параллельно будут развиваться и поддерживаться
> различными группами разработчиков и мейнтенеров.Мне почему-то кажется, что где-то разморозилась криокамера. Ядро Linux уже давно именно так и разрабатывают. Разработчики пилят свои куски где-то отдельно, а потом, когда собираются выкатить новую версию - открывают окно приема изменений, и разработчики кидают Торвальдсу pull requests на то что готово, а тот сводит все воедино. Готово - это логически завершенное состояние, не конфликтующее с остальным деревом сорцов и более-менее работоспособное (окончательная проверка - в -RC версиях).
Логично что пилить на части имеет смысл в рамках подсистем/драйверов/etc и разработка естественным образом распараллелилась по сложившимся границам подсистем и драйверов. Git позволяет это делать естественно и удобно. А в релизы ядер включают соответственно те фичи/драйвера/... которые удалось нормально запилить к этому моменту. Для любителей экспериментов/свежака есть staging drivers, там могут быть драйвера которые "пц как нужны, но не допилено до состояния которое разработчики считают желаемым".
> Например, выделят Core Level в ядре и этот уровень будет отвечать за
> взаимодействие драйверов с другими подсистемами.
Остается только взять сорец линя в виде гитовой репы и полгодика понаблюдат как туда коммиты вообще прилетают, что такое окно приема изменений и кто и что майнтайнит.
> Выделят Block Device Driver Level, в котором не будут менять интерфейсы и
> методы взаимодействия на протяжении версии Core Level.
Будут. Там никто не ориентируется на проприетарь, поэтому если блочному уровню от core станет надо что-то новое - пойдут и запилят, подточив оба уровня друг к другу. Как там будут проприерасы выкруиваться - никого не е... :). С другой стороны это обеспечивает неплохую скорость и фичность. Если нечто работает лучше по другому - идут и переделывают вот так.
> Далее другие подсистемы ядра, такие как планировщики, фильтры и прочие.
Капитан Очевидность сообщает что оно как-то так и происходит.
> При таком подходе к разработке, драйверы к своим новым устройствам смогут создавать
> даже совсем маленькие стартапы, в которых нет опыта взаимодействия с воротилами
> ядерной промышленности. ;-)
А вот тут проблемы негров - шерифа не волнуют. Корректный метод создания драйвера для Linux - это замайнлайнить и развивать/поддерживать оный в рамках ядра. При этом разумеется отвалбашки будут замечены и вовремя починены, ибо если ядро не билдуется - причастный или таки починет это, или его кусок кода будет с треском вынесен.