По моим наблюдениям, чтобы какая-то техническая идея могла быть воплощена, недостаточно просто бросить клич, навалиться толпой и
что-то сделать. Обычно получается картина "Лебедь, рак и щука", если вообще что-то получается. Для успешной реализации нужен "паровоз", т.е. некоторый лидер проекта, который заведомо обладал бы:
1. богатыми знаниями и опытом в соответствующей области;
2. достаточную мотивацию для поддержания проекта;
3. технические возможности по её реализации.
Вот мы, например, имеем опыт разработки драйверов под Windows для наших устройств и по опыту могу сказать, что даже помимо особенностей архитектуры ОС каждая железка обладает какими-то уникальными особенностями, которые сложно учесть в общей драйверной модели. Например, разработали модель устройств ввода/вывода. Оказалось, что видеодрайвер (будучи устройством вывода) должен поддерживать огромную кучу специфических явлений, таких, как 2D/3D-ускорение. Хорошо, разработали трёхмерную модель. Вслед за этим оказалось, что есть устройства видеоввода, такие как веб-камеры и ТВ-тюнеры, которые работают на совершенно других принципах. Хорошо, поддержали видеоввод. Затем оказалось, что видеокарты имеют специальное ускорение для устройств видеоввода, например, оверлей со своими цветовыми настройками, поддержкой цветового пространства YUV, деинтерлейсингом (уже страшные слова, да? А ведь это
стандартные функции любой современной видюшки). Ладно, поработали пару лет, договорились. Потом выясняется, что есть вообще странные железки, например, трёхмерный ускоритель 3Dfx Voodoo или ТВ-тюнер Tekram M200, которые картинку накладывают не через видеопамять, а через видеокабель, подмешивая и заменяя непосредственно видеосигнал. А есть такие чудеса природы как аппаратный видеодекодер MPEG (PCI плата!) или аппаратный ускоритель общего назначения на транспьютерах Inmos T800. А сейчас уже и видюшки выступают в роли аппаратных ускорителей (GPGPU). И для каждого такого направления нужен свой "паровоз". И как всё это учесть? "Есть ли у вас план, мистер Фикс?" (с)