Дизайн чистой комнаты (также известный как Китайская стена техника) - это метод копирования дизайна посредством обратного проектирования с последующим его воссозданием без нарушения каких-либо авторских прав, связанных с оригинальным дизайном. Дизайн чистой комнаты полезен как защита от нарушения авторских прав, потому что он основан на независимом создании. Однако, поскольку независимое изобретение не является защитой от патентов, проекты чистых помещений обычно не могут использоваться для обхода патентных ограничений.
Термин подразумевает, что команда разработчиков работает в среде, которая является «чистой» или явно не загрязненной какими-либо знаниями патентованных методов, используемых конкурентом.
Как правило, проектирование «чистой комнаты» выполняется с помощью кого-нибудь для изучения системы, которую необходимо переопределить, и написания спецификации. Затем эта спецификация проверяется юристом, чтобы убедиться, что в нее не включены материалы, защищенные авторским правом. Затем спецификация реализуется командой, не связанной с первоначальными экзаменаторами.
Phoenix Technologies продал свою версию IBM-совместимого BIOS для чистой комнаты различным производителям клонов ПК.
Несколько других компаний-производителей клонов ПК, включая Corona Data Systems, Eagle Computer, и Handwell Corporation в 1984 г. были успешно предъявлены иском IBM за нарушение авторских прав и были вынуждены заново внедрить свой BIOS таким образом, чтобы не нарушать авторские права IBM.
Эти три урегулирования произошли до того, как Phoenix объявила в июле того года, когда они лицензировали свой собственный код BIOS, явно подчеркивая процесс чистой комнаты, посредством которого код BIOS Phoenix был написан программистом, который даже не имел до этого контакта с микропроцессорами Intel, а сам был TMS9900 заранее программист. Еще в начале 1990-х IBM выиграла миллионы долларов в урегулировании исков о нарушении авторских прав на BIOS против некоторых других производителей клонов ПК, таких как Matsushita / Panasonic (1987) и Kyocera (1993–1994).), хотя последний иск был за нарушения в период с 1985 по 1990 год.
Еще один пример дизайна чистой комнаты - успешные клоны Apple II <14 VTech.>ПЗУ для Laser 128, единственной модели компьютера среди десятков устройств, совместимых с Apple II, которая пережила судебный процесс, возбужденный Apple Computer.
Другие примеры включают ReactOS, операционная система с открытым исходным кодом, созданная из компонентов Windows и когерентной операционной системы для чистой комнаты, -реализация версии 7 Unix. В первые годы своего существования компанию-разработчика Coherent Mark Williams посетила делегация ATT, которая пыталась определить, не нарушает ли MWC права собственности ATT Unix. Он был выпущен с открытым исходным кодом.
Дизайн чистых помещений обычно используется в качестве передовой практики, но не строго требуется по закону. В (1990) NEC потребовала декларативного решения против обвинений Intel в том, что инженеры NEC просто скопировали микрокод процессора 8086 в свой NEC V20 клон. Судья из США постановил, что, хотя ранние внутренние изменения микрокода NEC действительно были нарушением авторских прав, более поздние, которые фактически вошли в продукт NEC, хотя и были заимствованы из первого, существенно отличались от тех, которые можно было считать свободными от нарушений авторских прав.. Хотя сами NEC не следовали строгому подходу «чистой комнаты» при разработке микрокода своего клона, во время испытаний они наняли независимого подрядчика, которому был предоставлен доступ только к спецификациям, но в итоге он написал код, который имел определенные сходства с кодом NEC и Intel.. Основываясь на этих доказательствах, судья пришел к выводу, что сходство в определенных процедурах было вопросом функциональных ограничений, вытекающих из требований совместимости, и, таким образом, вероятно, не содержало творческого элемента. Хотя подход «чистой комнаты» использовался в качестве превентивной меры с учетом возможных судебных разбирательств и раньше (например, в случае с Phoenix BIOS), дело NEC против Intel было первым случаем, когда аргумент «чистой комнаты» был принят в суде США. Здесь стоит упомянуть еще один связанный с этим аспект: NEC действительно имела лицензию на патенты Intel, регулирующие процессор 8086.
Sony Computer Entertainment, Inc. против Connectix Corporation - судебный процесс 1999 г., который установил важный прецедент в отношении обратного проектирования. Sony потребовала возмещения ущерба за нарушение авторских прав в отношении эмулятора Virtual Game Station Connectix, утверждая, что его проприетарный код BIOS был скопирован в продукт Connectix без разрешения. Sony выиграла первоначальное решение, но решение было отменено в апелляционном порядке. В конце концов Sony приобрела права на Virtual Game Station, чтобы предотвратить ее дальнейшую продажу и развитие. Это создало прецедент в отношении юридических последствий коммерческого реверс-инжиниринга.
Во время производства Connectix безуспешно пыталась использовать китайскую стену для обратного проектирования BIOS, поэтому его инженеры разобрали объектный код . напрямую. Успешное обращение Connectix утверждало, что прямая разборка и наблюдение за проприетарным кодом были необходимы, потому что не было другого способа определить его поведение. Из постановления:
Некоторые работы ближе к сути предполагаемой защиты авторских прав, чем другие. BIOS Sony находится на некотором расстоянии от ядра, потому что он содержит незащищенные аспекты, которые нельзя исследовать без копирования. Таким образом, апелляционный суд предоставил ему более низкую степень защиты, чем более традиционные литературные произведения.
Чтобы защитить себя от обвинений в простом (и незаконном) копировании BIOS IBM, Phoenix перепроектировал его, используя так называемый подход «чистой комнаты» или «китайской стены». Сначала группа инженеров изучила IBM BIOS - около 8 КБ кода - и описала все, что она делает, как можно более полно, не используя и не ссылаясь на какой-либо реальный код. Затем Phoenix пригласил вторую команду программистов, которые не знали заранее IBM BIOS и никогда не видели ее кода. Работая только с функциональными спецификациями первой группы, вторая группа написала новый BIOS, который работал, как указано.