gljukonaft (gljukonaft) wrote in foss_ru,
gljukonaft
gljukonaft
foss_ru

Ричард Столлман: как сделать «железо» свободным.

http://www.wired.com/2015/03/richard-stallman-how-to-make-hardware-designs-free

Мы должны конструировать свободные аппаратные средства. Но остается вопрос: как?

Во-первых, мы должны понять, почему мы не можем заставить аппаратные средства освободиться тем же самым способом, которым мы делаем программное обеспечение свободным. Аппаратное и программное обеспечение существенно отличаются. Программа, даже в собранной выполняемой форме, является коллекцией данных, которые могут интерпретироваться как инструкции для компьютера. Как любая другая цифровая работа, это может быть скопировано и изменено с помощью компьютера. У копии программы нет врожденной физической формы или воплощения.

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

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

Уровни конструирования



У программного обеспечения есть уровни реализации; пакет может включать библиотеки, команды и скрипты, например. Но эти уровни не имеют существенного значения для свободы программного обеспечения, потому что оно позволяет сделать все уровни свободными. Разработка компонентов программы является тем же самым видом работы как разработка кода, который объединяет их; аналогично, сборка компонентов из исходников является тем же самым видом операций как сборка объединённой программы из исходников. Чтобы сделать всё освобождение просто требуется продолжение работы, до тех пор, пока мы не сделали работу целиком.

Поэтому, мы настаиваем, чтобы программа была свободная на всех уровнях. Для программы, которая готовиться как свободная, каждая строка исходного кода, который составляет её, должна быть свободной, так, чтобы Вы могли пересобрать программу из одного только свободного исходного кода.

Физические объекты, в отличие от этого, часто строятся из компонентов, которые разработаны и построены на различного вида заводах. Например, компьютер сделан из чипов, но конструирование (или производство) чипов очень отличается от конструирования (или производства) компьютера из чипов.

Таким образом, мы должны отличить уровни в конструировании цифрового продукта (и возможно некоторых других видов продуктов). Схема, которая соединяет чипы, является одним уровнем; конструкция каждого чипа -- другой уровень. В FPGA соединение примитивных ячеек -- один уровень, в то время как сами примитивные ячейки -- другой уровень. В идеальном будущем мы захотим конструкцию, свободную на всех уровнях. При существующих обстоятельствах, просто делая один уровень свободным значительный шаг вперед.

Однако, если конструкция на одном уровне объединяет свободные и несвободные части — например, “свободная” схема HDL, которая включает проприетарные “soft cores” — мы должны прийти к заключению, что дизайн в целом несвободный на том уровне. Аналогично для несвободных “волшебников” (wizards) или “макросов”, если они определяют часть соединений чипов или программно связывают части чипов. Свободные части могут быть шагом к будущей цели свободного конструирования, но достижение, когда цель влечет за собой замену несвободных частей. Они никогда не могут быть допустимыми в свободном мире.

Лицензии и копирайт на свободные конструкции аппаратных средств



Вы делаете конструкции аппаратных средств свободными, выпуская их в соответствии со свободной лицензией. Мы рекомендуем использовать лицензию GNU/GPL, версии 3 или позже. Мы проектировали версию 3 GPL в целях такого использования.

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

Например, схема, как топология, не может быть защищена копирайтом (и поэтому не может стать копилефтом). Определения схем, написанных в HDL, могут быть защищены копирайтом (и поэтому стать копилефтом), но копилефт покроет только детали выражения кода HDL, не топологию схемы, которую он производит. Аналогично, рисунок или разводка схемы могут быть защищены копирайтом, таким образом, это может стать копилефтом, но это только покрывает рисунок или разводку, не топологию схемы. Любой может законно нарисовать ту же самую топологию схемы различно выглядящим способом или написать различное определение HDL, которое производит ту же самую схему.

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

Для рисунков объектов и моделей 3D принтера, копирайт не покрывает создание различного рисунка той же самой чисто функциональной формы объекта. Это также не покрывает функциональные физические объекты, сделанные из рисунка. Насколько копирайт затронут, все свободны сделать их и использовать их (и эта свобода нам очень нужна). В США копирайт не покрывает функциональные аспекты, которые описывает конструкция, но покрывает декоративные аспекты. Когда у одного объекта есть и декоративные аспекты и функциональные аспекты, Вы выходите на зыбкий песок.

Всё это может быть также верным в Вашей стране, а может и нет. Прежде, чем произвести объекты коммерчески или в большом количестве, Вы должны консультироваться с местным адвокатом. Копирайт не единственная проблема, которой Вы должны быть обеспокоены. Вы можете подвергнуться нападению, использующему патенты, скорее всего имеющиеся у предприятий, которые не имели никакого отношения к созданию конструкции, которую Вы используете, и также могут быть другие юридические вопросы.

Следует иметь в виду, что закон об копирайте и патентное право полностью отличаются. Ошибка предположить, что у них есть что-то общее. Это -- то, почему термин “интеллектуальная собственность” является истинным непорядком и должен быть полностью отменён.

Продвижение свободных аппаратных средств через репозитории



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

Для декоративных объектов не применяется тот аргумент, таким образом, мы не должны настаивать, чтобы они были свободны. Однако мы должны настоять, что они с обеспечением совместного доступа. Таким образом у репозитория, который обращается и с декоративными моделями объекта и с функциональными, должна быть соответствующая политика лицензии для каждой категории. (Для цифровых конструкций я предлагаю, чтобы репозиторий настаивал на GNU/GPLv3 и поздней. Для функциональных 3D конструкций репозиторий должен попросить, чтобы автор конструкции выбрал одну из четырех лицензий: GNU/GPLv3 и поздней, CC-SA, CC-BY или CC-0. Для декоративных проектов нужно позволить любую из лицензий CC или GNU/GPLv3 и поздней.)

Репозиторий должен требовать, чтобы все конструкции были опубликованы как исходный код, и исходный код в секретных форматах, применимых только проприетарными программами конструирования, реально не адекватен. Для 3D модели формат STL не предпочтительный формат для изменения конструкции и таким образом не является исходным кодом, таким образом, репозиторий не должен принимать его, кроме, возможно, в сопровождении реального исходного кода.

Нет никакой причины выбрать один единый формат для исходного кода конструкций аппаратных средств, но исходные форматы, которые ещё не могут быть обработаны свободным программным обеспечением, должны быть приняты неохотно в лучшем случае.

У нас уже есть подходящие лицензии, чтобы сделать наши конструкции аппаратных средств свободными. То, в чем мы нуждаемся -- признание сообществом, что это -- то, что мы должны сделать и настаивать на свободных конструкциях, когда мы изготовляем объекты сами.

Copyright 2015 Richard Stallman. Released under Creative Commons Attribution No Derivatives 3.0 license.
Tags: free hardware, rms
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments