GNU GPL

GNU GPL – это одна из разновидностей лицензий для свободного программного обеспечения. Возможно, самая популярная. GNU GPL была разработана в рамках проекта GNU. Существуют три версии этой лицензии, созданные в 1988, 1991 и 2007 годах.

GPL есть аббревиатура от General Public License, что на русский язык можно перевести как "универсальная общественная лицензия". Лицензируя программный продукт с помощью GNU GPL или другой копилефт-лицензии, разработчик, сохраняя за собой авторство, передает программу в общественную собственность. В остальном лицензии типа "копилефт" имеют небольшие отличия, нередко специфику областей применения.

Здесь мы не будем вдаваться в юридические особенности и подробно анализировать текст лицензии. Рассмотрим, почему возникла проблема лицензирования ПО, и какие преимущества есть у свободного ПО.

Как распространяются программы

Компьютерные программы создаются с помощью разных языков программирования, которые в настоящее время развиты настолько, что напоминают естественные. Программа на таком языке недоступна для "понимания" аппаратным обеспечением компьютера (железом). Поэтому для каждого языка программирования существуют специальные программы – трансляторы – осуществляющие перевод текста программы с языка программирования, на котором она была написана, на язык вычислительной машины. Команды, которые понимает и пишет программист, называются исходным кодом; команды, которые выдает транслятор, и которые способен выполнить компьютер, называются исполняемым (машинным) кодом.

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

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

Программное обеспечение с закрытым исходным кодом

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

В 80-х годах прошлого века компьютеры начали широко распространяться. Возрос спрос на программное обеспечение. Стали появляться фирмы, продающие ПО. Желая защититься от конкурентов, они "закрывали" исходные коды своих программ, чтобы другие программисты и фирмы не могли их получить. Покупатель же в большинстве случаев получал уже скомпилированный исполняемый файл, который ему было запрещено распространять. Другими словами, были нарушены принципы открытости исходных кодов и свободного распространения ПО.

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

Программы с открытым исходным кодом

Когда исходные коды начали закрываться, а программы запрещаться к распространению, появились несогласные. Яркий пример – Ричард Столлман. Многие программисты не лицензировали свои разработки, а предоставляли исходные коды сообществу. Эти программы становились общественным достоянием. Другой программист мог взять таковую и использовать на свое усмотрение.

Измененная версия также могла стать общественным достоянием. Но могла и не стать. Программист, взявший за основу открытую программу, доработав ее, мог закрыть свою версию. Оказалось, что открытому ПО требуется защита его открытости не в меньшей степени, чем закрытому требуется защита права собственности.

В результате начали появляться лицензии, охраняющие открытое ПО от превращение в закрытое.

Copyleft и лицензия GNU GPL

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

Логотипы копилефта и копирайта

Самым известным примером копилефтной лицензии является GNU GPL – GNU General Public License.

Логотип GNU GPL v3

Разработчикам, выпускающим свои программы под GNU GPL, гарантируется, что

  • авторское право будет сохранено;

  • каждый может копировать и использовать программу;

  • исходный код всегда будет открыт для изучения и изменения;

  • измененные версии программ будут лицензированы копилефтом.

Преимущества открытого и свободного ПО

Можно отметить следующие преимущества программ, распространяемых с открытым исходным кодом:

  • В таких программах быстрее исправляются ошибки, так как код может просмотреть большее количество людей.

  • Безопасность. В закрытые программы разработчик может встроить "секретный" код, делающий что-либо на компьютере пользователя, о чем никто может не знать. С открытым ПО такое невозможно.

  • Открытые программы повышают профессиональный уровень программистов. Каждый может научиться чему-то у другого, исправить ошибки и др.

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

Вопрос 1. Чем отличаются понятия "свободное ПО" и "открытое ПО"?

Вопрос 2. Почему сделать закрытыми исходные коды программ, написанных на интерпретируемых языках, сложнее, чем на компилируемых?

Создано

Обновлено