Читать «Волшебный котел» онлайн - страница 31

Эрик Реймонд

Еще одно свидетельство в пользу открытой модели – то, что эта работа была существенно улучшена благодаря обратной связи с помощью электронных писем, которые я получил в течение нескольких дней после ее публикации. Ллойд Вуд (Lloyd Wood) указал на важность открытого программного обеспечения, являющегося «защищенным от будущего» (future-proof), а Дуг Данте (Doug Dante) напомнил мне о деловой модели «открой потом». Вопрос от Адама Мурхауса (Adam Moorhouse) спровоцировал обсуждение исключений, при которых лучше оставить исходный текст закрытым. Лайонел Оливира Гресс t (Lionel Oliviera Gresse) дал мне лучшее название для одной из деловых моделей. Стивен Тернбалл (Stephen Turnbull) обозвал меня глупым из-за небрежной трактовки «эффектов халявщика».

17. Приложение: почему закрытие драйверов ведет к убыткам

Изготовители периферийных аппаратных средств ЭВМ (карты Ethernet, контроллеры дисков, видеокарт и т. п.) исторически отказались открывать исходные тексты. Сейчас это положение изменяется в случае с фирмами наподобие Adaptec и Cyclades, начинающими систематически раскрывать спецификации и исходный код драйверов своих плат. Однако, все еще существует сопротивление этому процессу. В этом приложении мы попытаемся опровергнуть несколько неправильных с точки зрения экономики представлений, которые подкрепляют эту тенденцию.

Если вы – производитель аппаратных средств ЭВМ, вы можете бояться, что открытие кода может сделать известной важную информацию о том, как работает ваше оборудование и конкуренты смогут ее скопировать, таким образом получая несправедливое преимущество. Раньше, в эпоху трех – и пятилетних циклов разработки, это было весомым аргументом. Сегодня инженеры ваших конкурентов истратили бы на копирование и понимание копии существенную часть цикла разработки изделия, при этом не используя это время для нововведений или создания особенных функций для собственного устройства. Плагиат – западня, в которую Вы должны желать заманить Ваших конкурентов.

В любом случае, эти детали долго не останутся скрытыми в наши дни. Драйверы устройств ЭВМ не похожи на операционные системы или приложения; они маленькие, легко поддаются декомпиляции, и их легко клонировать. Даже подростки, новички в программировании могут сделать это – и часто делают.

Есть буквально тысячи программистов, пишущих под Linux и FreeBSD, которые способны написать драйвер для новой платы, и заинтересованы в этом. Для многих классов устройств, которые имеют относительно простые интерфейсы и известные стандарты (типа контроллеров диска и сетевых карт), эти нетерпеливые хакеры зачастую разрабатывают драйвер почти так же быстро, как ваши собственные программисты, даже без документации и не декомпилируя существующий драйвер.

Даже для сложных устройств наподобие видеокарт, Вы мало что можете сделать, чтобы воспрепятствовать умному программисту, вооруженному дизассемблером. Затраты на такую разработку низки, а юридические барьеры – зыбкие; Linux – международная разработка и есть всегда юрисдикция, в которой дизассемблирование будет законным.