stringtranslate.com

ГНУ

GNU ( / ɡn / )[3][4]представляет собой обширную коллекциюсвободного программного обеспечения(394 пакета по состоянию на июнь 2024 года[5]), которое может использоваться в качестве операционной системы или может использоваться по частям с другими операционными системами.[6][7][8]Использование завершенных инструментов GNU привело к появлению семейства операционных систем, широко известных какLinux.[9]Большая часть GNU лицензируется в соответствии ссобственной Стандартной общественной лицензией (GPL)проекта GNU

Ричард Столлман , основатель проекта GNU

GNU также является проектом, в рамках которого возникла концепция свободного программного обеспечения . Ричард Столлман , основатель проекта, рассматривает GNU как «техническое средство для достижения социальной цели». [10] В связи с этим Лоуренс Лессиг утверждает в своем введении ко второму изданию книги Столлмана « Свободное программное обеспечение, свободное общество », что в ней Столлман писал о «социальных аспектах программного обеспечения и о том, как свободное программное обеспечение может создавать сообщество и социальную справедливость». [11]

Имя

GNU — это рекурсивная аббревиатура от «GNU's Not Unix!», [6] [12] выбранная потому, что дизайн GNU подобен Unix , но отличается от Unix тем, что является свободным программным обеспечением и не содержит кода Unix. [6] [13] [14] Столлман выбрал название, используя различные игры слов, включая песню The Gnu . [4] : 45:30 

История

Разработка операционной системы GNU была инициирована Ричардом Столлманом , когда он работал в Лаборатории искусственного интеллекта Массачусетского технологического института . Она называлась Проектом GNU и была публично анонсирована 27 сентября 1983 года в группах новостей net.unix-wizards и net.usoft Столлманом. [15] Разработка программного обеспечения началась 5 января 1984 года, когда Столлман уволился с работы в Лаборатории, чтобы они не могли претендовать на право собственности или вмешиваться в распространение компонентов GNU как свободного программного обеспечения. [16]

Целью было создание полностью свободной операционной системы. Столлман хотел, чтобы пользователи компьютеров могли свободно изучать исходный код используемого ими программного обеспечения, делиться программным обеспечением с другими людьми, изменять поведение программного обеспечения и публиковать свои измененные версии программного обеспечения. Эта философия была опубликована как Манифест GNU в марте 1985 года. [17]

Опыт Ричарда Столлмана с Несовместимой Системой Разделения Времени (ITS), [16] ранней операционной системой, написанной на языке ассемблера , которая устарела из-за прекращения поддержки PDP-10 , компьютерной архитектуры, для которой была написана ITS, привел к решению о необходимости портативной системы. [4] : 40:52  [18] Таким образом, было решено, что разработка будет начата с использованием C и Lisp в качестве языков системного программирования, [19] и что GNU будет совместима с Unix. [20] В то время Unix уже была популярной проприетарной операционной системой. Конструкция Unix была модульной, поэтому ее можно было переделывать по частям. [18]

Большую часть необходимого программного обеспечения пришлось писать с нуля, но также использовались существующие совместимые сторонние компоненты свободного программного обеспечения, такие как система набора текста TeX , X Window System и микроядро Mach , которое составляет основу ядра GNU Mach GNU Hurd (официальное ядро ​​GNU). [21] За исключением вышеупомянутых сторонних компонентов, большая часть GNU была написана добровольцами; некоторые в свободное время, некоторые оплачивались компаниями, [22] образовательными учреждениями и другими некоммерческими организациями. В октябре 1985 года Столлман основал Фонд свободного программного обеспечения (FSF). В конце 1980-х и 1990-х годах FSF нанял разработчиков программного обеспечения для написания программного обеспечения, необходимого для GNU. [23] [24]

По мере того, как GNU набирала популярность, заинтересованные компании начали вносить вклад в разработку или продажу программного обеспечения GNU и технической поддержки. Наиболее выдающейся и успешной из них была Cygnus Solutions , [22] теперь часть Red Hat . [25]

Компоненты

Базовые компоненты системы включают в себя коллекцию компиляторов GNU (GCC), библиотеку GNU C (glibc) и основные утилиты GNU (coreutils), [6] , а также отладчик GNU (GDB), двоичные утилиты GNU (binutils), [26] и оболочку GNU Bash . [21] [27] [28] Разработчики GNU внесли свой вклад в порты приложений и утилит GNU для Linux, которые теперь также широко используются в других операционных системах, таких как варианты BSD , Solaris и macOS . [29] [ требуется лучший источник ]

Многие программы GNU были перенесены на другие операционные системы, включая такие проприетарные платформы, как Microsoft Windows [30] и macOS. [31] Программы GNU оказались более надежными, чем их проприетарные аналоги Unix. [32] [33]

По состоянию на июнь 2024 года на официальном сайте разработки GNU размещено в общей сложности 467 пакетов GNU (включая выведенные из эксплуатации, 394 без них). [34]

GNU как операционная система

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

С ядрами, поддерживаемыми GNU и FSF

Parabola GNU/Linux-libre — пример одобренного FSF дистрибутива, использующего модель непрерывных выпусков

GNU Хёрд

Первоначальным ядром проекта GNU является GNU Hurd (вместе с микроядром GNU Mach ), который изначально был целью Фонда свободного программного обеспечения (FSF). [6] [35] [36] [37]

С выпуском дистрибутива Debian GNU/Hurd 2015 30 апреля 2015 года [38] [39] GNU теперь предоставляет все необходимые компоненты для сборки операционной системы, которую пользователи могут установить и использовать на компьютере. [40] [41] [42]

Однако ядро ​​Hurd пока не считается готовым к использованию в производстве, а скорее базой для дальнейшей разработки и некритического использования в приложениях. [43] [40]

Linux-libre

В 2012 году форк ядра Linux официально стал частью проекта GNU в форме Linux-libre , варианта Linux, в котором удалены все проприетарные компоненты. [44] Проект GNU одобрил дистрибутивы Linux-libre, такие как Trisquel , Parabola GNU/Linux-libre , PureOS и GNU Guix System . [45]

С ядрами не-GNU

Trisquel , пример дистрибутива, одобренного FSF

Из-за статуса разработки Hurd, GNU обычно сочетается с другими ядрами, такими как Linux [46] [47] или FreeBSD . [48] Является ли комбинация библиотек GNU с внешними ядрами операционной системой GNU с ядром (например, GNU с Linux), потому что коллекция GNU превращает ядро ​​в пригодную к использованию операционную систему, как это понимается в современной разработке программного обеспечения, или является ли ядро ​​операционной системой само по себе с уровнем GNU поверх (например, Linux с GNU), потому что ядро ​​может управлять машиной без GNU, является предметом продолжающихся дебатов. FSF утверждает, что операционная система, созданная с использованием ядра Linux и инструментов и утилит GNU, должна считаться вариантом GNU , и продвигает термин GNU/Linux для таких систем (что приводит к спору об именовании GNU/Linux ). Эта точка зрения не является исключительной для FSF. [49] [50] [51] [52] [53] Примечательно, что Debian , один из крупнейших и старейших дистрибутивов Linux, называет себя Debian GNU/Linux . [54]

Авторские права, лицензии GNU и управление

Проект GNU рекомендует участникам передавать авторские права на пакеты GNU Фонду свободного программного обеспечения [55] [56], хотя Фонд свободного программного обеспечения считает приемлемым публиковать небольшие изменения в существующем проекте в общественном достоянии . [57] Однако это не обязательно; сопровождающие пакетов могут сохранять авторские права на поддерживаемые ими пакеты GNU, хотя, поскольку только владелец авторских прав может обеспечить соблюдение используемой лицензии (например, GNU GPL), в этом случае именно владелец авторских прав обеспечивает их соблюдение, а не Фонд свободного программного обеспечения [58] .

Для разработки необходимого программного обеспечения Столлман написал лицензию под названием GNU General Public License (сначала называвшуюся Emacs General Public License), с целью гарантировать пользователям свободу делиться и изменять свободное программное обеспечение. [59] Столлман написал эту лицензию после своего опыта с Джеймсом Гослингом и программой под названием UniPress, по поводу спора об использовании программного кода в программе GNU Emacs . [60] [61] На протяжении большей части 80-х годов каждый пакет GNU имел свою собственную лицензию: Emacs General Public License, GCC General Public License и т. д. В 1989 году FSF опубликовал единую лицензию, которую они могли использовать для всего своего программного обеспечения, и которая могла использоваться не-GNU проектами: GNU General Public License (GPL). [60] [62]

Эта лицензия теперь используется большинством программного обеспечения GNU, а также большим количеством свободных программ, которые не являются частью проекта GNU; она также исторически была наиболее часто используемой лицензией свободного программного обеспечения (хотя недавно была оспорена лицензией MIT ). [63] [64] Она дает всем получателям программы право запускать, копировать, изменять и распространять ее, запрещая им налагать дополнительные ограничения на любые распространяемые ими копии. Эту идею часто называют копилефтом . [65]

В 1991 году была написана GNU Lesser General Public License (LGPL), тогда известная как Library General Public License, для библиотеки GNU C , чтобы позволить ей быть связанной с проприетарным программным обеспечением. [66] В 1991 году также была выпущена версия 2 GNU GPL. GNU Free Documentation License (FDL) для документации последовала в 2000 году. [67] GPL и LGPL были пересмотрены до версии 3 в 2007 году, добавив положения для защиты пользователей от ограничений оборудования, которые не позволяют пользователям запускать измененное программное обеспечение на своих собственных устройствах. [68]

Помимо пакетов GNU, лицензии проекта GNU могут [69] использоваться и используются многими не связанными проектами, такими как ядро ​​Linux , часто используемое с программным обеспечением GNU. Большинство свободного программного обеспечения, такого как X Window System, [70] лицензируется в соответствии с разрешительными лицензиями свободного программного обеспечения . [71]

Логотип

Оригинальный логотип GNU, нарисованный Этьеном Сувасой

Логотип GNU — голова GNU . Первоначально нарисованная Этьеном Сувасой, сейчас предпочтительнее более смелая и простая версия, разработанная Аурелио Хеккертом. [72] [73] Она появляется в программном обеспечении GNU, а также в печатной и электронной документации проекта GNU, а также используется в материалах Free Software Foundation.

Логотип 30-летия

Также была измененная версия официального логотипа. Она была создана Free Software Foundation в сентябре 2013 года в ознаменование 30-летия проекта GNU . [74]

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

Ссылки

  1. ^ «Лицензии GNU».
  2. ^ "GNU FSDG".
  3. ^ "Что такое GNU?". Операционная система GNU . Фонд свободного программного обеспечения . 4 сентября 2009 г. Получено 9 октября 2009 г. Название «GNU» — это рекурсивная аббревиатура от «GNU's Not Unix»; произносится как «g-noo» , как один слог без гласного звука между « и « .
  4. ^ abc Столлман, Ричард (9 марта 2006 г.). Движение за свободное программное обеспечение и будущее свободы. Загреб, Хорватия: Free Software Foundation Europe . Получено 20 февраля 2007 г.
  5. ^ Столлман, Ричард. «Программное обеспечение – Проект GNU». Проект GNU . Free Software Foundation, Inc. Получено 9 января 2022 г.
  6. ^ abcde St. Amant, Kirk; Still, Brian (2007). Справочник по исследованию программного обеспечения с открытым исходным кодом: технологические, экономические и социальные перспективы. Справочник по информационной науке. ISBN 978-1-59140999-1. OCLC  1028442948.
  7. ^ "Манифест GNU". Проект GNU . FSF . Получено 27 июля 2011 г.
  8. Рэймонд, Эрик (1 февраля 2001 г.). Собор и базар: размышления о Linux и открытом исходном коде случайного революционера . «O'Reilly Media, Inc.». С. 10–12. ISBN 978-0-59600108-7.
  9. ^ "1.2. Что такое GNU/Linux?". www.debian.org . Получено 7 июня 2024 г. .
  10. ^ Столлман, Ричард (1986), «KTH», Философия (речь), GNU, Стокгольм, Швеция: FSF.
  11. ^ Столлман, Ричард М.; Гей, Джошуа (декабрь 2009 г.). Свободное программное обеспечение, свободное общество: избранные эссе Ричарда М. Столлмана. CreateSpace Independent Publishing Platform. ISBN 9781441436856. Получено 24 марта 2016 г. .
  12. ^ "GNU's Not Unix". Бесплатный словарь . Получено 22 сентября 2012 г.
  13. ^ "Операционная система GNU". Проект GNU . FSF . Получено 18 августа 2008 г.
  14. Маршалл, Розали (17 ноября 2008 г.). «Вопросы и ответы: Ричард Столлман, основатель проекта GNU и Фонда свободного программного обеспечения». AU : PC & Tech Authority . Получено 22 сентября 2012 г.
  15. Столлман, Ричард (27 сентября 1983 г.). "новая реализация UNIX". Группа новостей : net.unix-wizards. Usenet:  [email protected] . Получено 18 августа 2008 г.
  16. ^ ab Holmevik, Jan Rune; Bogost, Ian; Ulmer, Gregory (март 2012 г.). Inter/vention: Free Play in the Age of Electracy. MIT Press. стр. 69–71. ISBN 978-0-262-01705-3.
  17. ^ Столлман, Ричард (март 1985 г.). "Манифест {GNU}". Журнал программных инструментов доктора Добба . 10 (3): 30. Получено 18 октября 2011 г.
  18. ^ ab DiBona, Крис; Стоун, Марк; Купер, Дэнезе (октябрь 2005 г.). Open Sources 2.0: The Continuing Evolution. "O'Reilly Media, Inc.". стр. 38–40. ISBN 9780596008024.
  19. ^ "Хронология GNU/Linux и Unix". C и Lisp будут доступны как языки системного программирования.
  20. ^ Seebach, Peter (ноябрь 2008 г.). Beginning Portable Shell Scripting: From Novice to Professional (Голос эксперта в области открытого исходного кода). Apress. С. 177–178. ISBN 9781430210436.
  21. ^ ab Kerrisk, Michael (октябрь 2010 г.). Интерфейс программирования Linux: Справочник по программированию систем Linux и UNIX. No Starch Press. стр. 5–6. ISBN 9781593272203.
  22. ^ ab Открытые исходники: голоса революции открытых исходников. O'Reilly & Associates, Inc. Январь 1999. ISBN 978-1-56592-582-3.
  23. ^ Буксманн, Питер; Дифенбах, Хайнер; Хесс, Томас (30 сентября 2012 г.). Индустрия программного обеспечения. Спрингер. стр. 187–196. ISBN 9783642315091.
  24. ^ Practical UNIX and Internet Security, 3-е издание. O'Reilly & Associates, Inc. Февраль 2003 г. стр. 18. ISBN 9781449310127.
  25. Стивен Шенкленд (15 ноября 1999 г.). «Red Hat покупает фирму-разработчика программного обеспечения, меняет генерального директора». CNET . CBS Interactive . Получено 5 марта 2016 г. .
  26. ^ "GCC & GNU Toolchains – AMD". Developer.amd.com. Архивировано из оригинала 16 марта 2015 г. Получено 2 сентября 2015 г.
  27. Мэтью, Нил; Стоунз, Ричард (22 апреля 2011 г.). «Проект GNU и Фонд свободного программного обеспечения». Beginning Linux Programming . John Wiley & Sons. ISBN 9781118058619.
  28. ^ Соу, Сулейман К; Стамелос, Иоаннис Г; Самоладас, Иоаннис М (май 2007 г.). Новые практики свободного и открытого программного обеспечения. Idea Group Inc (IGI). стр. 262–264. ISBN 9781599042107.
  29. ^ "Linux: История и введение". Buzzle.com. 25 августа 1991 г. Архивировано из оригинала 11 декабря 2017 г. Получено 22 сентября 2012 г.
  30. ^ Маккьюн, Майк (декабрь 2000 г.). Интеграция Linux и Windows. Prentice Hall Professional. стр. 30. ISBN 9780130306708.
  31. ^ Собелл, Марк Г.; Сибах, Питер (2005). Практическое руководство по Unix для пользователей Mac Os X. Prentice Hall Professional. стр. 4. ISBN 9780131863330.
  32. ^ Fuzz Revisited: A Re-examination of the Reliability of UNIX Utilities and Services – октябрь 1995 г. – Кафедра компьютерных наук, Университет Висконсина
  33. ^ "Исследование стабильности и надежности утилит UNIX" (PDF) . Архивировано (PDF) из оригинала 22 декабря 2009 г.
  34. ^ "Программное обеспечение – проект GNU". Free Software Foundation, Inc. 13 января 2016 г. Получено 13 января 2016 г.
  35. ^ Vaughan-Nichols, Steven J. «Мнение: 10 самых неудачных операционных систем», Computerworld , 9 апреля 2009 г.: «... после более чем 25 лет разработки GNU остается незавершенной: ее ядро, Hurd, так и не вышло за рамки стартовых блоков. ... Почти никто на самом деле не смог использовать эту ОС; на самом деле это скорее набор идей, чем операционная система».
  36. ^ Хиллсли, Ричард (30 июня 2010 г.), «GNU HURD: измененные видения и потерянные обещания», The H (онлайн-редакция), стр. 3. Почти двадцать лет спустя HURD все еще не достиг зрелости и так и не достиг производственного качества. ... Некоторые из нас все еще желают и надеются на что-то настоящее — операционную систему GNU с ядром GNU.
  37. ^ Лессиг, Лоуренс (2001). Будущее идей: судьба общин в связанном мире . Random House. стр. 54. ISBN 978-0-375-50578-2. Он смешал все ингредиенты, необходимые для функционирования операционной системы, но ему не хватало ядра.
  38. ^ "Debian GNU/Hurd 2015 Released – Phoronix". www.phoronix.com . Получено 24 марта 2016 г. .
  39. ^ "Debian GNU/Hurd 2015 выпущен!". lists.debian.org . Получено 24 марта 2016 г. .
  40. ^ ab "status". www.gnu.org . Получено 24 марта 2016 г. .
  41. ^ "Debian – Debian GNU/Hurd". www.debian.org . Получено 24 марта 2016 г. .
  42. ^ "Debian – Debian GNU/Hurd – Configuration". www.debian.org . Получено 24 марта 2016 г. .
  43. Статус, Free Software Foundation, 3 мая 2015 г. , получено 24 апреля 2017 г.
  44. ^ "GNU Linux-libre". 17 декабря 2012 г. Получено 9 февраля 2013 г.
  45. ^ «Список свободных дистрибутивов GNU/Linux», Проект GNU , Фонд свободного программного обеспечения (FSF).
  46. ^ "1.2 Что такое Linux?", Debian open book , O'Reilly, 5 октября 1991 г. , получено 22 сентября 2012 г.
  47. ^ "Что такое GNU/Linux?", Ubuntu Installation Guide (12.4 ed.), Canonical, заархивировано из оригинала 21 июня 2015 г. , извлечено 22 июня 2015 г.
  48. ^ Каванаг, Пол (26 июля 2004 г.). Программное обеспечение с открытым исходным кодом: внедрение и управление. Elsevier. стр. 129. ISBN 978-1-55558320-0.
  49. Welsh, Matt (8 сентября 1994 г.). «Linux — это система GNU, и DWARF поддерживает ее». Группа новостей : comp.os.linux.misc . Получено 3 февраля 2008 г. Идея RMS (которую я слышал из первых рук) заключается в том, что системы Linux следует считать системами GNU с Linux в качестве ядра.
  50. ^ Проффитт, Брайан (12 июля 2012 г.). «Debian GNU/Linux стремится к согласованию с Free Software Foundation». ITworld . Получено 22 сентября 2012 г. .
  51. ^ "1.1. Linux или GNU/Linux, вот в чем вопрос". SAG . TLDP . Получено 22 сентября 2012 г. .
  52. ^ "GNU Operating System – CCM FAQ". CCM . Архивировано из оригинала 15 декабря 2019 г. Получено 8 апреля 2018 г. GNU — это операционная система, которая предлагает набор бесплатных программ с открытым исходным кодом.
  53. ^ Snom Technology. "Source Code & GPL Open Source". www.snom.com . Архивировано из оригинала 9 апреля 2018 г. . Получено 8 апреля 2018 г. Варианты операционной системы GNU, которые используют ядро ​​Linux, в настоящее время широко используются; хотя эти системы часто называют "Linux", их точнее было бы называть "системами GNU/Linux".
  54. ^ "Глава 1. Определения и обзор".
  55. ^ "Copyright Papers". Информация для владельцев программного обеспечения GNU . FSF. 30 июня 2011 г. Получено 27 июля 2011 г.
  56. ^ "Почему FSF получает авторские права от участников". GNU . FSF. 15 июля 2011 г. Получено 27 июля 2011 г.
  57. ^ "Как выбрать лицензию для своей работы". GNU . Free Software Foundation . Получено 12 июля 2012 г.
  58. ^ Raymond, Eric S (9 ноября 2002 г.). "Licensing HOWTO". CatB . Получено 22 сентября 2012 г. .
  59. ^ "GPL 1.0", Старые лицензии , GNU, FSF.
  60. ^ ab Kelty, Christopher M (июнь 2008). "Написание лицензий на авторские права". Two Bits: The Cultural Significance of Free Software . Duke University Press. ISBN 978-0-82234264-9.
  61. ^ История GNU General Public License, свободное программное обеспечение.
  62. ^ "GNU's flashes", GNU's Bulletin , GNU Project, т. 1, № 5, Free Software Foundation (FSF), 11 июня 1998 г..
  63. ^ "Open Source License Data". Open Source Resource Center . Black Duck Software. Архивировано из оригинала 8 октября 2012 г. Получено 24 сентября 2012 г.
  64. ^ "Лучшие лицензии с открытым исходным кодом в 2020 году: тенденции и прогнозы". WhiteSource Software. Архивировано из оригинала 19 февраля 2020 г. Получено 19 февраля 2020 г.
  65. ^ Чопра, Самир; Декстер, Скотт (август 2007 г.). Расшифровка освобождения: обещание свободного и открытого программного обеспечения. Routledge. стр. 46–52. ISBN 978-0-41597893-4.
  66. ^ Истоки Linux и LGPL, Free BSD.
  67. ^ Голдман, Рон; Габриэль, Ричард П. (апрель 2005 г.). Инновации происходят в другом месте: открытый исходный код как бизнес-стратегия. Морган Кауфманн. С. 133–34. ISBN 978-1-55860889-4.
  68. ^ Смит, Родерик В. (2012). «Свободное программное обеспечение и GPL». Linux Essentials . John Wiley & Sons. ISBN 978-1-11819739-4.
  69. ^ "Часто задаваемые вопросы о лицензиях GNU". Проект GNU . Получено 11 мая 2023 г.
  70. ^ "КОПИРОВАНИЕ · master · xorg / xserver · GitLab". GitLab . 25 августа 2014 г. . Получено 18 июля 2023 г. .
  71. ^ "Permissive vs. copyleft open source licenses 2021". Statista . Получено 18 июля 2023 г.
  72. ^ "A GNU Head". Free Software Foundation (FSF). 13 июля 2011 г. Получено 27 июля 2011 г.
  73. ^ "A Bold GNU Head". Free Software Foundation . 13 июля 2011 г. Получено 27 июля 2011 г.
  74. ^ "GNU 30th Anniversary". Free Software Foundation . 8 октября 2013 г. Получено 15 декабря 2014 г.

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