stringtranslate.com

Проект GNU

Талисман GNU, автор Аурелио А. Хеккерт [1] (взято из более подробной версии Этьена Сувасы) [2]

Проект GNU ( / ɡ n / )[3]— этомассового сотрудничества,на свободном программном обеспечении,о котором объявилРичард Столлман27 сентября 1983 года. Его цель — предоставить пользователям компьютеров свободу и контроль в использовании своих компьютеров ивычислительных устройствпутем совместной разработки и публикации программного обеспечения, которое дает каждый имеет право свободно запускать программное обеспечение, копировать и распространять его, изучать и изменять. Программное обеспечение GNU предоставляет эти права в своейлицензии.

Чтобы гарантировать, что все программное обеспечение компьютера предоставляет пользователям все права свободы (использование, совместное использование, изучение, изменение), даже самую фундаментальную и важную часть, операционная система (включая все ее многочисленные служебные программы) должна была быть свободной. программное обеспечение. Столлман решил назвать эту операционную систему GNU ( рекурсивная аббревиатура , означающая « GNU — это не Unix! »), основываясь на конструкции Unix , проприетарной операционной системы. [4] Согласно манифесту, основной целью проекта было создание свободной операционной системы и, если возможно, «всего полезного, что обычно поставляется с системой Unix, чтобы можно было обойтись без любого несвободного программного обеспечения. " Разработка была начата в январе 1984 года. В 1991 году появилось ядро ​​Linux , разработанное вне проекта GNU Линусом Торвальдсом , [5] и в декабре 1992 года оно стало доступным по версии 2 GNU General Public License . [6] В сочетании с утилитами операционной системы, уже разработанными в рамках проекта GNU, это позволило создать первую операционную систему, которая представляла собой свободное программное обеспечение, широко известное как Linux . [7] [8]

Текущая работа проекта включает разработку программного обеспечения, повышение осведомленности, политическую кампанию и обмен новыми материалами.

Происхождение

Ричард Столлман объявил о своем намерении начать кодирование проекта GNU в сообщении Usenet в сентябре 1983 года. [9] Несмотря на то, что Столлман никогда раньше не использовал Unix, он считал, что это наиболее подходящая конструкция системы для использования в качестве основы для проекта GNU, поскольку он был портативным и «достаточно чистым». [10]

Когда проект GNU только начинался, у них был текстовый редактор Emacs с Lisp для написания команд редактора, отладчик уровня исходного кода , генератор синтаксического анализатора , совместимый с yacc , и компоновщик . [11] Система GNU требовала, чтобы собственный компилятор C и инструменты были свободными, поэтому их тоже необходимо было разработать. К июню 1987 года в рамках проекта было накоплено и разработано свободное программное обеспечение для ассемблера , почти готовый портативный оптимизирующий компилятор C ( GCC ), редактор ( GNU Emacs ) и различные Unix-утилиты (такие как , , и ) . [12] У них было первоначальное ядро, которое нуждалось в дополнительных обновлениях. lsgrepawk make ld

Как только ядро ​​и компилятор были закончены, GNU можно было использовать для разработки программ . Основная цель заключалась в создании множества других приложений, похожих на систему Unix. GNU мог запускать программы Unix, но не был им идентичен. GNU включала более длинные имена файлов, номера версий файлов и защищенную от сбоев файловую систему. Манифест GNU был написан для того, чтобы заручиться поддержкой и участием других в проекте. Программистам было предложено принять участие в любом аспекте проекта, который их интересовал. Люди могли пожертвовать средства, компьютерные детали или даже свое время на написание кода и программ для проекта. [4]

Истоки и развитие большинства аспектов проекта GNU (и свободного программного обеспечения в целом) подробно описаны в справочной системе Emacs. (Ch g запускает команду редактора Emacs describe-gnu-project.) Это такая же подробная история, как и на их веб-сайте.

Манифест GNU

Манифест GNU был написан Ричардом Столлманом с целью заручиться поддержкой и участием в проекте GNU. В Манифесте GNU Столлман перечислил четыре свободы, необходимые пользователям программного обеспечения: свободу запускать программу для любых целей, свободу изучать механику программы и изменять ее, свободу распространять копии и свободу улучшать и изменять модифицированные версии для публичного доступа. использовать. [13] [14] Чтобы реализовать эти свободы, пользователям необходим был полный доступ к исходному коду . Чтобы гарантировать, что код останется свободным и предоставить его общественности, Столлман создал Стандартную общественную лицензию GNU (GPL), которая позволяла программному обеспечению и будущим поколениям кода, полученного на его основе, оставаться бесплатными для публичного использования.

Философия и активизм

Хотя большая часть результатов проекта GNU носит технический характер, он был запущен как социальная, этическая и политическая инициатива. Помимо производства программного обеспечения и лицензий, проект GNU опубликовал ряд работ, автором большинства из которых является Ричард Столлман.

Бесплатно программное обеспечение

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

Финансирование

Доходы от ассоциированных членов, покупок и пожертвований поддерживают проект GNU. [15]

Авторское лево

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

Проект GNU и Фонд свободного программного обеспечения иногда различают «сильное» и «слабое» авторское лево. «Слабые» программы авторского лева обычно позволяют дистрибьюторам связывать их вместе с несвободными программами, в то время как «сильное» авторское лево строго запрещает такую ​​практику. Большая часть продукции проекта GNU выпускается под строгим авторским левом, хотя некоторые из них выпускаются под слабым авторским левом или под слабой, принудительной лицензией на свободное программное обеспечение. [16] [17]

Разработка операционной системы

Живой компакт-диск GNU Hurd

Первой целью проекта GNU было создание полноценной операционной системы свободного программного обеспечения. Поскольку UNIX уже была широко распространена и работала на более мощных машинах по сравнению с современными машинами CP/M или MS-DOS , [18] было решено, что это будет Unix-подобная операционная система. Ричард Столлман позже заметил, что считает MS-DOS «игрушкой». [19]

К 1992 году проект GNU завершил работу над всеми основными утилитами операционной системы, но не завершил предложенное ядро ​​операционной системы , GNU Hurd . С выпуском ядра Linux , начатым независимо Линусом Торвальдсом в 1991 году и выпущенным под лицензией GPLv2 с версией 0.12 в 1992 году, впервые появилась возможность запускать операционную систему, полностью состоящую из свободного программного обеспечения. Хотя ядро ​​Linux не является частью проекта GNU, оно было разработано с использованием GCC и других инструментов программирования GNU и выпущено как бесплатное программное обеспечение под лицензией GNU General Public License . [20] Большая часть компиляции ядра Linux по-прежнему выполняется с помощью наборов инструментов GNU, но в настоящее время для компиляции можно использовать компилятор Clang и набор инструментов LLVM . [21]

На данный момент проект GNU/Hurd не выпустил версию GNU/Hurd , подходящую для производственных сред, с момента запуска проекта GNU/Hurd более 33 лет назад. [22]

ГНУ/Линукс

Стабильную версию (или вариант) GNU можно запустить, объединив пакеты GNU с ядром Linux , создав функциональную Unix-подобную систему. Проект GNU называет это GNU/Linux, а определяющими особенностями являются сочетание:

На веб-сайте GNU представлен список проектов, и для каждого проекта указано, какой тип разработчика может выполнить задачу, необходимую для определенной части проекта GNU. Уровень навыков варьируется от проекта к проекту, но любой, кто имеет базовые знания в области программирования, приглашается поддержать проект.

Пакет инструментов GNU вместе с ядром Linux и другими программами обычно называют дистрибутивом Linux (дистрибутивом). Проект GNU называет комбинацию GNU и ядра Linux «GNU/Linux» и просит других сделать то же самое, [34] что приводит к разногласиям в именах GNU/Linux .

Большинство дистрибутивов Linux сочетают пакеты GNU с ядром Linux, которое содержит собственные двоичные объекты . [35]

Рекомендации по распространению свободной системы GNU

Руководство по распространению свободной системы GNU (GNU FSDG) — это обязательство по распространению системы, используемое для объяснения того, что означает, что устанавливаемый дистрибутив системы (например, дистрибутив Linux) квалифицируется как бесплатный (libre), и помогает разработчикам дистрибутива обеспечить соответствие их дистрибутивов.

В основном список описывает дистрибутивы, которые представляют собой комбинацию пакетов GNU с ядром Linux-libre (модифицированное ядро ​​Linux, которое удаляет двоичные объекты, запутанный код и части кода под проприетарными лицензиями) и состоят только из свободного программного обеспечения (избегая проприетарного программного обеспечения). полностью). [36] [37] [35] Дистрибутивы, в которых принята GNU FSDG, включают Dragora GNU/Linux-Libre , GNU Guix System , Hyperbola GNU/Linux-libre , Parabola GNU/Linux-libre , Trisquel GNU/Linux , PureOS и несколько других. [38]

Рекомендации по лицензированию распространения проекта Fedora были использованы в качестве основы для FSDG. [39] Однако собственные руководящие принципы проекта Fedora в настоящее время не соответствуют FSDG, и поэтому проект GNU не считает Fedora полностью свободным (libre) дистрибутивом GNU/Linux. [35]

Стратегические проекты

С середины 1990-х годов, когда многие компании инвестировали в разработку свободного программного обеспечения, Фонд свободного программного обеспечения перенаправил свои средства на юридическую и политическую поддержку разработки свободного программного обеспечения. С этого момента разработка программного обеспечения была сосредоточена на поддержании существующих проектов и запуске новых проектов только тогда, когда возникла острая угроза сообществу свободного программного обеспечения . Одним из наиболее заметных проектов проекта GNU является коллекция компиляторов GNU , компоненты которой были приняты в качестве стандартной системы компилятора во многих Unix-подобных системах.

Авторские права на большинство работ проекта GNU принадлежат Фонду свободного программного обеспечения. [40]

ГНОМ

Разработка рабочего стола GNOME была начата проектом GNU Project, потому что другая настольная система, KDE , становилась популярной, но требовала от пользователей установки Qt , которая в то время была проприетарным программным обеспечением . Чтобы уберечь людей от соблазна установить KDE и Qt, проект GNU одновременно запустил два проекта. Одним из них был инструментарий Harmony . Это была попытка сделать бесплатную замену Qt. Если бы этот проект был успешным, предполагаемая проблема с KDE была бы решена. Вторым проектом был GNOME, который рассматривал ту же проблему под другим углом. Целью проекта было создание замены KDE, которая не зависела бы от проприетарного программного обеспечения. Проект Harmony не добился большого прогресса, но GNOME развивался очень хорошо. В конце концов, проприетарный компонент, от которого зависел KDE ( Qt ), был выпущен как бесплатное программное обеспечение. [41] С тех пор GNOME отделился от проекта GNU и Фонда свободного программного обеспечения и теперь независимо управляется проектом GNOME .

ГНУ Предприятие

GNU Enterprise ( GNUe ) — это метапроект, начатый в 1996 году [42] , и его можно рассматривать как подпроект проекта GNU. Целью GNUe является создание бесплатных «приложений корпоративного класса, поддерживающих данные» ( планировщики ресурсов предприятия и т. д.). GNUe предназначен для сбора корпоративного программного обеспечения для системы GNU в одном месте (так же, как проект GNOME собирает программное обеспечение для настольных компьютеров).

Признание

В 2001 году проект GNU получил премию USENIX Lifetime Achievement Award за «повсеместность, широту и качество свободно распространяемого и модифицируемого программного обеспечения, которое позволило провести целое поколение исследований и коммерческих разработок». [43]

Смотрите также

Рекомендации

  1. ^ «Смелая голова GNU». Архивировано из оригинала 5 декабря 2014 года . Проверено 30 ноября 2014 г. Мы благодарим Аурелио А. Хеккерта... за то, что он подарил нам это изображение.
  2. ^ "Голова GNU" . Архивировано из оригинала 28 июля 2011 года . Проверено 30 ноября 2014 г. Этот рисунок был нарисован Этьеном Сувасой.
  3. ^ «Что такое GNU?». Операционная система GNU . Фонд свободного программного обеспечения . 4 сентября 2009 г. Архивировано из оригинала 2 апреля 2004 г. Проверено 9 октября 2009 г. Название «GNU» — это рекурсивная аббревиатура от «GNU's Not Unix!»; оно произносится как г-ноо , как один слог без гласного звука между г и н .
  4. ^ ab «Манифест GNU». Фонд свободного программного обеспечения . 21 июля 2007 г. Архивировано из оригинала 14 июля 2018 г. Проверено 8 октября 2015 г.
  5. ^ Торвальдс, Линус Бенедикт (август 1991 г.). «comp.os.minix». Архивировано из оригинала 9 мая 2013 г. Проверено 6 сентября 2009 г.
  6. ^ "z-архив Linux версии 0.99" . Архивы ядра Linux . Декабрь 1992 г. Архивировано из оригинала 30 января 2017 г.
  7. ^ Бальса, Эндрю Д. «Часто задаваемые вопросы по списку рассылки Linux-ядра». Архивы ядра Linux . Кернел.орг. Архивировано из оригинала 1 октября 2012 г. Проверено 13 июня 2013 г. ...мы пытались использовать слово «Linux» или выражение «ядро Linux» для обозначения ядра, а GNU/Linux — для обозначения всего программного обеспечения ОС под GNU/GPL,... ...многие люди забывают, что список рассылки ядра Linux — это форум для обсуждения вопросов, связанных с ядром, а не GNU/Linux в целом...
  8. ^ Марк Шаттлворт (14 февраля 2014 г.). «Милостиво проиграть». Архивировано из оригинала 22 марта 2014 года . Проверено 27 апреля 2014 г. сегодня наше внимание сосредоточено на облаке и мобильных устройствах, и мы явно лидируем в GNU/Linux на обоих фронтах.
  9. ^ Ричард Столлман. «новая реализация Unix». Архивировано из оригинала 22 января 2011 г. Проверено 27 сентября 2013 г.
  10. ^ Столлман, Ричард (2022). «Как я занимаюсь вычислениями». Архивировано из оригинала 31 января 2023 года . Проверено 31 января 2023 г.
  11. ^ Уордрип-Фруин, Ной; и Ник Монфор. «Манифест GNU». НьюМедиаРидер . Кембридж, Массачусетс: Массачусетский технологический институт, 2003. стр. 545–550.
  12. ^ "Бюллетень GNU, том 1, № 3" . gnu.org . Июнь 1987 г. Архивировано из оригинала 25 ноября 2015 г. Проверено 18 апреля 2014 г.
  13. ^ Столлман, Ричард (март 1985 г.). «Манифест GNU – Проект GNU – Фонд свободного программного обеспечения (FSF)». gnu.org . Проект ГНУ. Архивировано из оригинала 14 июля 2018 г. Проверено 18 октября 2011 г.
  14. ^ Вебер, С. (2004). Успех открытого исходного кода . Кембридж: Издательство Гарвардского университета.
  15. ^ Помощь проекту GNU и движению за свободное программное обеспечение - Проект GNU - Фонд свободного программного обеспечения. Архивировано 25 декабря 2015 г. в Wayback Machine . gnu.org. Проверено 17 июля 2013 г.
  16. ^ "Нкурсы". wiki.freedesktop.org . Архивировано из оригинала 22 марта 2021 г. Проверено 18 марта 2019 г. Это один из немногих файлов GNU, не распространяемых под лицензией GNU General Public License или GNU Lesser General Public License; он распространяется по такой лицензии, как X11 License.
  17. ^ «Почему вам не следует использовать Меньшую GPL для своей следующей библиотеки» . ГНУ . Архивировано из оригинала 26 ноября 2007 г. Проверено 18 марта 2019 г. Есть причины, по которым в определенных случаях лучше использовать Меньшую GPL.
  18. ^ "Бюллетень GNU, том 1, № 1" . Февраль 1986 г. Архивировано из оригинала 23 июня 2015 г. Проверено 16 августа 2020 г.
  19. ^ «Ричард Столлман: Свобода». Радио Новой Зеландии . 9 августа 2008 г. Архивировано из оригинала 31 октября 2020 г. Проверено 16 августа 2020 г.
  20. Линус Бенедикт Торвальдс (26 августа 1991 г.). «Что бы вы больше всего хотели видеть в миниксе?». комп.os.minix. Архивировано из оригинала 30 апреля 2013 года . Проверено 28 июля 2016 г.
  21. ^ Сообщество разработчиков ядра. «Создание Linux с помощью Clang/LLVM». Документация ядра Linux. Архивировано из оригинала 27 сентября 2022 г. Проверено 8 октября 2022 г.
  22. ^ "GNU Hurd/hurd/status" . Операционная система GNU . Фонд свободного программного обеспечения. Архивировано из оригинала 12 ноября 2020 г. Проверено 15 апреля 2018 г. Возможно, он еще не готов к использованию в производстве, так как все еще есть некоторые ошибки и недостающие функции.
  23. ^ ab «Все пакеты GNU». gnu.org . Архивировано из оригинала 25 декабря 2015 г. Проверено 18 апреля 2014 г.
  24. ^ ab GNU @ Каталог свободного программного обеспечения. Архивировано 5 декабря 2015 г. на Wayback Machine (fsf.org).
  25. ^ «POSIX – Библиотека GNU C». Архивировано из оригинала 24 апреля 2014 г. Проверено 18 апреля 2014 г.
  26. ^ Библиотека GNU C#Временная вилка
  27. ^ Архитектуры GCC
  28. ^ «Архивы ядра Linux». Архивировано из оригинала 21 февраля 2011 г. Проверено 25 июля 2016 г.
  29. ^ «Примечания к выпуску Linux v0.12» . Архивировано из оригинала 26 мая 2013 г. Проверено 24 декабря 2012 г.
  30. ^ Следует ли применять соглашение GNU/name ко всем программам, распространяемым под лицензией GPL? Архивировано 7 сентября 2013 г. в FAQ по Wayback Machine GNU/Linux Ричардом Столлманом.
  31. ^ Почему вы пишете «GNU/Linux» вместо «GNU Linux»? Архивировано 7 сентября 2013 г. в FAQ по Wayback Machine GNU/Linux Ричардом Столлманом.
  32. ^ Разве не неправильно с нашей стороны называть работу Линуса Торвальдса GNU? Архивировано 7 сентября 2013 г. в FAQ по Wayback Machine GNU/Linux Ричардом Столлманом.
  33. ^ Согласен ли Линус Торвальдс с тем, что Linux — это всего лишь ядро? Архивировано 7 сентября 2013 г. в FAQ по Wayback Machine GNU/Linux Ричардом Столлманом.
  34. ^ «Почему вы называете это GNU/Linux, а не Linux?». Архивировано из оригинала 7 сентября 2013 г. Проверено 18 апреля 2014 г.
  35. ^ abc «Объяснение, почему мы не поддерживаем другие системы». ГНУ . Архивировано из оригинала 24 апреля 2011 г. Проверено 22 июля 2016 г.
  36. ^ «Руководство по бесплатному распространению систем» . gnu.org . Архивировано из оригинала 8 декабря 2015 г. Проверено 17 апреля 2014 г.
  37. ^ «Избегая губительных компромиссов». gnu.org . Архивировано из оригинала 22 июня 2018 г. Проверено 22 июля 2016 г.
  38. ^ «Список бесплатных дистрибутивов GNU / Linux - Проект GNU - Фонд свободного программного обеспечения» . gnu.org . Архивировано из оригинала 16 декабря 2014 г. Проверено 18 августа 2014 г.
  39. ^ «Руководство по распространению бесплатных систем (GNU FSDG) - Проект GNU» . gnu.org . издатель. Архивировано из оригинала 8 декабря 2015 г. Проверено 7 июня 2014 г. Мы хотели бы поблагодарить проект Fedora за помощь в определении этих политик и разрешение использовать их собственные рекомендации по лицензированию распространения в качестве основы для этого документа.
  40. ^ Моглен, Эбен. «Почему FSF получает авторские права от участников». проект ГНУ . Архивировано из оригинала 11 мая 2023 г. Проверено 11 мая 2023 г.
  41. Столлман, Ричард (5 сентября 2000 г.). «Столлман о Qt, GPL, KDE и GNOME». Линукс сегодня. Архивировано из оригинала 19 апреля 2012 г. Проверено 9 сентября 2005 г.
  42. ^ «История проекта GNU Enterprise - GNU Enterprise» . 16 января 2013 г. Архивировано из оригинала 16 января 2013 г. Проверено 18 февраля 2019 г.
  43. ^ «Награда USENIX за заслуги перед жанром («Пламя»)» . УСЕНИКС. Архивировано из оригинала 28 декабря 2007 г. Проверено 5 декабря 2007 г.

Внешние ссылки