Бесплатное программное обеспечение с открытым исходным кодом ( FOSS ) — это программное обеспечение, доступное по лицензии, которая дает право использовать, изменять и распространять программное обеспечение, модифицированное или нет, всем бесплатно. Таким образом, публичная доступность исходного кода является необходимым, но недостаточным условием. FOSS — это общий термин для свободного программного обеспечения и программного обеспечения с открытым исходным кодом . [a] FOSS отличается от проприетарного программного обеспечения , где на программное обеспечение распространяются ограничительные авторские права или лицензии , а исходный код скрыт от пользователей.
FOSS поддерживает права пользователей программного обеспечения на гражданскую свободу посредством «Четырех основных свобод» свободного программного обеспечения. Другие преимущества использования FOSS включают снижение затрат на программное обеспечение, повышенную безопасность от вредоносных программ , стабильность, конфиденциальность , возможности использования в образовательных целях и предоставление пользователям большего контроля над собственным оборудованием. Бесплатные операционные системы с открытым исходным кодом, такие как Linux и потомки BSD, сегодня широко используются, обеспечивая работу миллионов серверов , настольных компьютеров , смартфонов и других устройств. [3] [4] Лицензии на бесплатное программное обеспечение и лицензии с открытым исходным кодом сегодня используются во многих пакетах программного обеспечения . Движение за свободное программное обеспечение и движение за программное обеспечение с открытым исходным кодом — это социальные онлайн-движения, стоящие за широким производством, внедрением и продвижением FOSS, при этом первое предпочитает использовать термины FLOSS , «свободный» или «свободный».
«Свободное программное обеспечение с открытым исходным кодом» (FOSS) — это общий термин для программного обеспечения, которое одновременно считается как свободным, так и программным обеспечением с открытым исходным кодом . [5] Точное определение терминов «свободное программное обеспечение» и «программное обеспечение с открытым исходным кодом» применимо к любому программному обеспечению, распространяемому на условиях, которые позволяют пользователям использовать, изменять и распространять указанное программное обеспечение любым способом, который они считают целесообразным, не требуя этого. они платят автору(ам) программного обеспечения роялти или гонорар за участие в перечисленных видах деятельности. [6]
Хотя существует почти полное совпадение между лицензиями на свободное программное обеспечение и лицензиями на программное обеспечение с открытым исходным кодом, между сторонниками этих двух позиций существуют серьезные философские разногласия. Терминология FOSS была создана, чтобы нейтрально относиться к этим философским разногласиям между Фондом свободного программного обеспечения (FSF) и Инициативой открытого исходного кода (OSI) и иметь единый унифицированный термин, который мог бы относиться к обеим концепциям. [7]
Определение свободного программного обеспечения Ричарда Столлмана , принятое FSF, определяет свободное программное обеспечение как вопрос свободы, а не цены, [8] [9] и то, что поддерживает Четыре основные свободы. Самая ранняя известная публикация этого определения его определения свободного программного обеспечения была в февральском выпуске 1986 года [10] издания GNU's Bulletin, выпуск которого сейчас прекращен, FSF. Канонический источник документа находится в разделе философии веб-сайта проекта GNU . По состоянию на август 2017 года [обновлять]он опубликован на 40 языках. [11]
Чтобы соответствовать определению «свободного программного обеспечения», FSF требует, чтобы при лицензировании программного обеспечения уважались гражданские свободы/права человека, которые FSF называет « четырьмя основными свободами » пользователя программного обеспечения. [12]
Определение открытого исходного кода используется Инициативой открытого исходного кода (OSI) для определения того, соответствует ли лицензия на программное обеспечение знаку отличия организации для программного обеспечения с открытым исходным кодом . Определение было основано на Руководстве по свободному программному обеспечению Debian , написанном и адаптированном главным образом Брюсом Перенсом . [13] [14] Перенс не основывал свое письмо на «Четырех основных свободах свободного программного обеспечения» Фонда свободного программного обеспечения , которые только позже стали доступны в Интернете. [15] Впоследствии Перенс заявил, что, по его мнению, продвижение Эриком Рэймондом открытого исходного кода несправедливо затмило усилия Фонда свободного программного обеспечения, и подтвердил свою поддержку свободного программного обеспечения. [16] В следующих 2000-х годах он снова заговорил об открытом исходном коде. [17] [18]
С 1950-х по 1980-е годы у пользователей компьютеров было обычным иметь исходный код всех используемых ими программ, а также разрешение и возможность изменять его для собственного использования. Программное обеспечение , включая исходный код, обычно распространялось людьми, которые использовали компьютеры, часто как программное обеспечение, являющееся общественным достоянием [19] (FOSS — это не то же самое, что программное обеспечение, являющееся общественным достоянием, поскольку программное обеспечение, являющееся общественным достоянием, не содержит авторских прав [20] ). Большинство компаний имели бизнес-модель, основанную на продаже оборудования , и бесплатно предоставляли программное обеспечение или комплектовали его вместе с оборудованием. [21]
К концу 1960-х годов преобладающая бизнес-модель программного обеспечения изменилась. Растущая и развивающаяся индустрия программного обеспечения конкурировала с программными продуктами производителей аппаратного обеспечения; вместо того, чтобы финансировать разработку программного обеспечения за счет доходов от оборудования, эти новые компании продавали программное обеспечение напрямую. Арендованные машины требовали поддержки программного обеспечения, но при этом не приносили дохода от программного обеспечения, а некоторые клиенты, которые могли лучше удовлетворять свои собственные потребности, не хотели, чтобы затраты на программное обеспечение были связаны с затратами на аппаратное обеспечение. В деле «Соединенные Штаты против IBM» , возбужденном 17 января 1969 года, правительство заявило, что поставляемое в комплекте программное обеспечение является антиконкурентным. [22] Хотя некоторое программное обеспечение по-прежнему предоставлялось без денежных затрат и ограничений по лицензии, росло количество программного обеспечения, которое продавалось только за денежную плату и с ограниченным лицензированием. В 1970-х и начале 1980-х годов некоторые части индустрии программного обеспечения начали использовать технические меры (например, распространение только двоичных копий компьютерных программ ), чтобы запретить пользователям компьютеров использовать методы обратного проектирования для изучения и настройки программного обеспечения, за которое они заплатили. В 1980 году в США закон об авторском праве был распространен на компьютерные программы [23] — раньше компьютерные программы можно было считать идеями, процедурами, методами, системами и процессами, не охраняемыми авторским правом. [24] [25]
Вначале программное обеспечение с закрытым исходным кодом было редкостью до середины 1970-х - 1980-х годов, когда IBM в 1983 году реализовала политику «только объектный код», больше не распространяя исходный код. [26] [27] [28]
В 1983 году Ричард Столлман , давний член хакерского сообщества Лаборатории искусственного интеллекта Массачусетского технологического института , объявил о проекте GNU , заявив, что он разочарован последствиями изменения культуры компьютерной индустрии и ее пользователей. [29] Разработка программного обеспечения для операционной системы GNU началась в январе 1984 года, а Фонд свободного программного обеспечения (FSF) был основан в октябре 1985 года. В марте 1985 года была опубликована статья с описанием проекта и его целей под названием «Манифест GNU» . Манифест включал подробное объяснение философии GNU, определения свободного программного обеспечения и идей « авторского лева ». FSF придерживается позиции, что фундаментальная проблема, которую решает свободное программное обеспечение , является этической: обеспечить, чтобы пользователи программного обеспечения могли осуществлять то, что он называет « четырьмя основными свободами ». [5]
Ядро Linux , созданное Линусом Торвальдсом , было выпущено как свободно модифицируемый исходный код в 1991 году. Первоначально Linux не выпускался ни под лицензией на свободное программное обеспечение, ни под лицензией на программное обеспечение с открытым исходным кодом. Однако с версией 0.12 в феврале 1992 года он повторно лицензировал проект под GNU General Public License . [30]
FreeBSD и NetBSD (обе произошли от 386BSD ) были выпущены как свободное программное обеспечение, когда иск USL против BSDi был урегулирован во внесудебном порядке в 1993 году. OpenBSD отделился от NetBSD в 1995 году. Также в 1995 году появился HTTP-сервер Apache , обычно называемый Apache. , был выпущен под лицензией Apache версии 1.0 .
В 1997 году Эрик Рэймонд опубликовал «Собор и базар» — рефлексивный анализ хакерского сообщества и принципов свободного программного обеспечения. Этот документ привлек значительное внимание в начале 1998 года и стал одним из факторов, побудивших Netscape Communications Corporation выпустить свой популярный Интернет-пакет Netscape Communicator как бесплатное программное обеспечение . Этот код сегодня более известен как Mozilla Firefox и Thunderbird .
Поступок Netscape побудил Рэймонда и других задуматься о том, как привнести идеи свободного программного обеспечения FSF и предполагаемые преимущества в индустрию коммерческого программного обеспечения. Они пришли к выводу, что социальная активность FSF не привлекает такие компании, как Netscape, и искали способ переименовать движение за свободное программное обеспечение, чтобы подчеркнуть бизнес-потенциал совместного использования и совместной работы над исходным кодом программного обеспечения. Новое название, которое они выбрали, было «Открытый исходный код», и быстро Брюс Перенс , издатель Тим О'Рейли , Линус Торвальдс и другие подписались на ребрендинг. Инициатива открытого исходного кода была основана в феврале 1998 года с целью поощрения использования нового термина и пропаганды принципов открытого исходного кода. [31]
В то время как Инициатива открытого исходного кода стремилась поощрять использование нового термина и пропагандировать принципы, которых она придерживалась, поставщики коммерческого программного обеспечения оказались под все большей угрозой со стороны концепции свободно распространяемого программного обеспечения и универсального доступа к исходному коду приложения . В 2001 году один из руководителей Microsoft публично заявил: «Открытый исходный код является разрушителем интеллектуальной собственности. Я не могу себе представить ничего хуже этого для бизнеса программного обеспечения и бизнеса интеллектуальной собственности». [32] Компании действительно столкнулись с проблемами нарушения авторских прав при внедрении FOSS. [33] В течение многих лет FOSS играло нишу за пределами основной разработки частного программного обеспечения. Однако успех операционных систем FOSS, таких как Linux, BSD, и компаний, основанных на FOSS, таких как Red Hat , изменил отношение индустрии программного обеспечения, и произошел резкий сдвиг в корпоративной философии, касающейся его развития. [34]
Пользователи FOSS получают преимущества от четырех основных свобод, позволяющих неограниченно использовать, изучать, копировать, изменять и распространять такое программное обеспечение с модификациями или без них. Если они хотят изменить функциональность программного обеспечения, они могут внести изменения в код и, если захотят, распространять такие модифицированные версии программного обеспечения или часто – в зависимости от модели принятия решений программного обеспечения и других его пользователей – даже нажимать или запрашивать такие изменения должны быть внесены посредством обновлений исходного программного обеспечения. [35] [36] [37] [38] [39]
Производители проприетарного программного обеспечения с закрытым исходным кодом иногда вынуждены встраивать в свое программное обеспечение бэкдоры или другие скрытые нежелательные функции. [40] [41] [42] [43] Вместо того, чтобы доверять поставщикам программного обеспечения, пользователи FOSS могут сами проверять и проверять исходный код и доверять сообществу добровольцев и пользователей. [39] Поскольку проприетарный код обычно скрыт от публичного просмотра, только сами поставщики и хакеры могут знать о каких-либо уязвимостях в них [39], в то время как FOSS привлекает как можно больше людей для быстрого выявления ошибок. [44] [45]
FOSS часто предоставляется бесплатно, хотя пожертвования часто поощряются. Это также позволяет пользователям лучше тестировать и сравнивать программное обеспечение. [39]
FOSS позволяет улучшить сотрудничество между различными сторонами и отдельными лицами с целью разработки наиболее эффективного программного обеспечения для своих пользователей или вариантов использования, в то время как проприетарное программное обеспечение обычно предназначено для получения прибыли . Более того, во многих случаях в такие проекты вносят вклад больше организаций и частных лиц, чем в несвободное программное обеспечение. [39] Было показано, что техническое превосходство обычно является основной причиной, по которой компании выбирают программное обеспечение с открытым исходным кодом. [39]
Согласно закону Линуса, чем больше людей смогут увидеть и протестировать набор кода, тем больше вероятность того, что любые ошибки будут обнаружены и быстро исправлены. Однако это не гарантирует высокий уровень участия. Наличие группы штатных профессионалов, работающих над коммерческим продуктом, в некоторых случаях может оказаться более эффективным, чем FOSS. [39] [44] [46]
Кроме того, опубликованный исходный код может облегчить хакерам поиск уязвимостей и написание эксплойтов. Однако это предполагает, что такие злонамеренные хакеры более эффективны, чем хакеры в белой шляпе , которые ответственно раскрывают или помогают устранить уязвимости, что не происходит утечек кода или эксфильтрации и что обратное проектирование проприетарного кода является существенным препятствием для злонамеренных хакеров. [44]
Иногда FOSS несовместим с проприетарным оборудованием или конкретным программным обеспечением. Часто это происходит из-за того, что производители препятствуют свободному использованию свободного программного обеспечения, например, не раскрывая интерфейсы или другие спецификации, необходимые членам движения свободного программного обеспечения для написания драйверов для своего оборудования - например, потому, что они хотят, чтобы клиенты запускали только их собственное проприетарное программное обеспечение, или потому, что они могут получить от этого выгоду. от партнерства. [47] [48] [49] [50] [51] [52] [53]
Хотя FOSS может превосходить проприетарные аналоги с точки зрения функций и стабильности программного обеспечения, во многих случаях оно имеет больше неисправленных ошибок и недостающих функций по сравнению с аналогичным коммерческим программным обеспечением. [54] [ необходимы дополнительные ссылки ] Это зависит от каждого случая и обычно зависит от уровня интереса к конкретному проекту. Однако, в отличие от программного обеспечения с закрытым исходным кодом, улучшения может вносить любой, у кого есть для этого мотивация, время и навыки. [46] [ необходимы дополнительные ссылки ]
Распространенным препятствием в развитии FOSS является отсутствие доступа к некоторым общим официальным стандартам из-за высоких гонораров или необходимых соглашений о неразглашении (например, для формата DVD-Video ). [55]
Часто существует меньшая уверенность в том, что проекты FOSS получат необходимые ресурсы и участие для дальнейшего развития, чем коммерческое программное обеспечение, поддерживаемое компаниями. [56] [ необходимы дополнительные ссылки ] Однако компании также часто отменяют проекты из-за их нерентабельности, однако крупные компании могут полагаться на программное обеспечение с открытым исходным кодом и, следовательно, совместно разрабатывать его. [45] С другой стороны, если поставщик несвободного программного обеспечения прекращает разработку, альтернативы нет; тогда как в случае с FOSS любой пользователь, которому он нужен, по-прежнему имеет право и исходный код продолжать его разработку самостоятельно или платить за это третьей стороне.
Поскольку дистрибутивы операционной системы Linux FOSS имеют меньшую долю рынка среди конечных пользователей, доступно также меньше приложений. [57] [58]
«Мы перенесли ключевые функции из Windows в Linux, потому что нам нужна была стабильная и надежная операционная система, которая давала бы нам возможность внутреннего контроля. Поэтому, если бы нам нужно было внести исправления, настроить или адаптировать, мы могли бы это сделать».
Официальное заявление Объединенного космического альянса , управляющего компьютерными системами Международной космической станции (МКС), относительно того, почему на МКС решили перейти с Windows на Linux. [88] [89]
В 2017 году Европейская комиссия заявила, что «учреждения ЕС сами должны стать пользователями программного обеспечения с открытым исходным кодом, даже в большей степени, чем они уже есть», и назвала программное обеспечение с открытым исходным кодом одним из девяти ключевых факторов инноваций, наряду с большими данными , мобильностью, облачными вычислениями. и Интернет вещей . [90]
В 2020 году Европейская комиссия приняла свою Стратегию открытого исходного кода на 2020-2023 годы , [91] включая поощрение совместного использования и повторного использования программного обеспечения, а также публикацию исходного кода Комиссии в качестве ключевых целей. Среди конкретных действий также следует отметить создание в 2020 году Офиса программ открытого исходного кода [92] , а в 2022 году он запустил собственный репозиторий FOSS https://code.europa.eu/. [93]
В 2021 году Решение Комиссии о лицензировании открытого исходного кода и повторном использовании Комиссией
программное обеспечение (2021/C 495 I/01) [94] , в соответствии с которым, в качестве общего принципа, Европейская комиссия может выпускать программное обеспечение по лицензии EUPL или другой лицензии FOSS, если это более целесообразно. Однако есть исключения.
В мае 2022 года [95] Экспертная группа по совместимости европейских государственных служб опубликовала 27 рекомендаций по усилению совместимости государственных администраций в ЕС. Эти рекомендации должны быть учтены позже в том же году в предложении Комиссии по «Закону о совместимости Европы» .
Хотя авторское право является основным юридическим механизмом, который авторы FOSS используют для обеспечения соответствия лицензии своему программному обеспечению, другие механизмы, такие как законодательство, патенты и товарные знаки, также имеют значение. В ответ на юридические проблемы с патентами и Законом об авторском праве в цифровую эпоху (DMCA) Фонд свободного программного обеспечения в 2007 году выпустил третью версию своей публичной лицензии GNU (GNU GPLv3), в которой явно рассматриваются DMCA и патентные права.
После разработки GNU GPLv3 в 2007 году FSF (как владелец авторских прав на многие части системы GNU) обновил многие лицензии программ GNU с GPLv2 на GPLv3. С другой стороны, принятие новой версии GPL активно обсуждалось в экосистеме FOSS, [96] несколько проектов отказались от перехода на GPLv3. Например, ядро Linux , [97] [98] проект BusyBox [99] [100] , AdvFS , [101] Blender , [102] и медиаплеер VLC решили не использовать GPLv3. [103]
Apple , пользователь GCC и активный пользователь как DRM , так и патентов, переключила компилятор в своей среде разработки Xcode с GCC на Clang , который является еще одним компилятором FOSS [104] , но находится под разрешительной лицензией . [105] LWN предположил, что Apple частично руководствовалась желанием избежать GPLv3. [104] Проект Samba также перешел на GPLv3, поэтому Apple заменила Samba в своем программном пакете альтернативой проприетарного программного обеспечения с закрытым исходным кодом. [106]
Лимхейс критикует приоритетность квалифицированных разработчиков, которые вместо исправления проблем в уже популярных приложениях с открытым исходным кодом и настольных средах создают новое, по большей части избыточное программное обеспечение, чтобы добиться славы и богатства. [107]
Он также критикует производителей ноутбуков за то, что они оптимизируют свои продукты только в частном порядке или создают обходные пути вместо того, чтобы помочь устранить реальные причины многих проблем с Linux на ноутбуках, такие как ненужное энергопотребление. [107]
Слияния затронули основное программное обеспечение с открытым исходным кодом. В 2008 году компания Sun Microsystems (Sun) приобрела MySQL AB , владельца популярной базы данных MySQL с открытым исходным кодом. [108]
Oracle, в свою очередь, приобрела Sun в январе 2010 года, получив ее авторские права, патенты и товарные знаки. Таким образом, Oracle стала владельцем как самой популярной собственной базы данных, так и самой популярной базы данных с открытым исходным кодом. Попытки Oracle коммерциализировать базу данных MySQL с открытым исходным кодом вызвали обеспокоенность в сообществе FOSS. [109] Частично в ответ на неопределенность относительно будущего MySQL сообщество FOSS разделило проект на новые системы баз данных , находящиеся вне контроля Oracle. К ним относятся MariaDB , Percona и Drizzle . [110] Все они имеют разные имена; это отдельные проекты и не могут использовать торговую марку MySQL. [111]
В августе 2010 года Oracle подала в суд на Google , утверждая, что использование Java в Android нарушает авторские права и патенты Oracle. В мае 2012 года судья первой инстанции установил, что Google не нарушала патенты Oracle, и постановил, что структура API Java, используемая Google, не защищена авторским правом. Присяжные установили, что Google нарушила небольшое количество скопированных файлов, но стороны оговорили , что Google не будет возмещать ущерб. [112] Oracle подала апелляцию в Федеральный округ , а Google подала встречную апелляцию по иску о буквальном копировании. [113]
Игнорируя правила владения информацией при создании и использовании информации – ключевой области современного роста – движение за свободное/открытое программное обеспечение (FOSS) противостоит неолиберализму и приватизации в целом. [114] [115]
Реализуя исторический потенциал « экономики изобилия » для нового цифрового мира , FOSS может разработать план политического сопротивления или указать путь к потенциальной трансформации капитализма . [115]
По мнению Йохая Бенклера , профессора предпринимательских правовых исследований Гарвардской школы права Джека Н. и Лилиан Р. Беркман , свободное программное обеспечение является наиболее заметной частью новой экономики, основанной на совместном производстве информации, знаний и культуры. В качестве примеров он приводит различные проекты FOSS, включая как бесплатное программное обеспечение, так и с открытым исходным кодом. [116]
Хотя политика IBM по сокрытию исходного кода для некоторых программных продуктов уже отметила свою вторую годовщину, пользователи только сейчас начинают осознавать последствия этого решения. Но независимо от того, повлияло ли появление продуктов, использующих только объектный код, на повседневную работу DP, некоторые пользователи по-прежнему недовольны решением IBM. Объявленная в феврале 1983 года политика IBM в отношении использования только объектного кода была применена к растущему списку системных программных продуктов Big Blue.
{{cite web}}
: CS1 maint: неподходящий URL ( ссылка )В настоящее время решение о переходе с GPL v2 на GPL v3 горячо обсуждается многими проектами с открытым исходным кодом. По данным компании Palamida, поставщика программного обеспечения для обеспечения соответствия требованиям IP, около 2489 проектов с открытым исходным кодом перешли с GPL v2 на более поздние версии.
Также обратите внимание, что единственной действительной версией GPL в отношении ядра является _эта_ конкретная версия лицензии (т.е. v2, а не v2.2 или v3.x или что-то еще), если явно не указано иное.
«В некотором смысле, Linux был проектом, который действительно прояснил раскол между тем, что продвигает FSF, что сильно отличается от того, что всегда было с открытым исходным кодом и Linux, что является скорее техническим превосходством, а не... этим религиозным вера в свободу», — сказал Торвальдс Земляну. «Итак, версия GPL 3 отражает цели FSF, а версия 2 GPL довольно точно соответствует тому, что, по моему мнению, должна делать лицензия, и поэтому сейчас версия 2 — это ядро».
Поскольку BusyBox можно найти во многих встроенных системах, он оказывается в центре дебатов по GPLv3 против DRM. [...] Реальный результат, однако, таков: BusyBox станет GPLv2 только начиная со следующего выпуска. Принято считать, что удаление «или любой более поздней версии» юридически оправдано, и что объединение другого кода, предназначенного только для GPLv2, в любом случае вызовет эту проблему.
Не придумывайте, пожалуйста, подставной аргумент. Я считаю, что лицензирование BusyBox по лицензии GPLv3 бесполезно, ненужно, слишком сложно и запутанно, и, кроме того, у него есть реальные недостатки. 1) Бесполезно: мы никогда не откажемся от GPLv2.
[Тони Розендал из Blender:] «Blender также по-прежнему имеет лицензию GPLv2 или более позднюю версию. На данный момент мы придерживаемся этого, переход на GPL 3 не имеет очевидных преимуществ, о которых я знаю».
В 2001 году VLC был выпущен под одобренной OSI GNU General Public версии 2 с широко предлагаемой возможностью использовать «любую более позднюю версию» (хотя в то время такой более поздней версии не существовало). После выпуска Фондом свободного программного обеспечения (FSF) новой версии 3 Стандартной общественной лицензии GNU (GPL) 29 июня 2007 года участники медиаплеера VLC и других программных проектов, размещенных на videolan.org, обсудили возможность обновления условий лицензирования будущей версии медиаплеера VLC и других размещенных проектов до версии 3 GPL. [...] Существует серьезная обеспокоенность тем, что эти новые дополнительные требования могут не соответствовать промышленной и экономической реальности нашего времени, особенно на рынке бытовой электроники. Мы убеждены, что изменение наших условий лицензирования на GPL версии 3 в настоящее время не отвечает интересам нашего сообщества в целом. Следовательно, мы планируем продолжать распространять будущие версии медиаплеера VLC на условиях GPL версии 2.