Открыть сервис

Проект GNU

Проект GNU — это проект по созданию полностью свободной операционной системы, совместимой с Unix, инициированный Ричардом Столлманом 27 сентября 1983 года. Проект является основополагающим для движения свободного программного обеспечения (СПО) и ставит своей целью предоставить пользователям права на запуск, копирование, распространение, изучение, изменение и улучшение программного обеспечения. Название «GNU» является рекурсивным акронимом от «GNU’s Not Unix» (GNU — это не Unix).

История

Предпосылки и основание

В начале 1980-х годов в сообществе программистов Массачусетского технологического института (MIT) назрело недовольство растущей коммерциализацией программного обеспечения. Ричард Столлман, работавший в лаборатории искусственного интеллекта MIT, столкнулся с ситуацией, когда производители принтеров отказывались предоставлять исходные коды драйверов, что делало невозможным их исправление и доработку. В ответ на это Столлман сформулировал концепцию «свободного программного обеспечения» (free software), где «свобода» понимается как свобода использования, а не как бесплатность.

27 сентября 1983 года Столлман опубликовал в группах новостей Usenet объявление о начале проекта GNU. В нём он объявил о намерении создать свободную Unix-подобную операционную систему, которая будет распространяться бесплатно (в смысле свободы, а не цены) и позволит пользователям сотрудничать, а не конкурировать.

Ранние годы (1984–1990)

В январе 1984 года Столлман уволился из MIT, чтобы посвятить себя проекту, но сохранил доступ к лабораторным ресурсам. Первым шагом стала разработка компилятора GNU C Compiler (GCC), который был завершён в 1987 году. GCC стал одним из первых и наиболее успешных компонентов системы, обеспечив переносимость программного обеспечения на различные архитектуры.

В 1985 году Столлман основал Фонд свободного программного обеспечения (FSF) — некоммерческую организацию для поддержки проекта GNU и продвижения идей свободного ПО. FSF взял на себя юридическую и финансовую поддержку разработчиков, а также занялся распространением программного обеспечения.

К концу 1980-х годов были созданы многие ключевые компоненты GNU: редактор Emacs (1984), отладчик GDB (1986), библиотека GNU C Library (glibc) (1988), утилиты coreutils (файловые менеджеры, текстовые процессоры и т.д.). Однако отсутствовало ядро операционной системы — центральный компонент, управляющий ресурсами компьютера.

Ядро Hurd и роль Linux

Столлман планировал разработать микроядро под названием GNU Hurd (начало разработки — 1990 год). Hurd должен был стать заменой ядра Unix и обеспечить полную свободу системы. Однако разработка Hurd затянулась из-за сложности архитектуры и нехватки ресурсов. К 1991 году Hurd всё ещё не был готов к практическому использованию.

В 1991 году финский студент Линус Торвальдс начал разработку собственного ядра, которое впоследствии стало известно как Linux. Ядро Linux было совместимо с утилитами GNU и распространялось под лицензией GPL. Сочетание ядра Linux и готовых компонентов GNU (компилятор, библиотеки, утилиты) позволило создать первую полностью свободную операционную систему. Эта комбинация получила название GNU/Linux.

Современное состояние

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

Ключевые компоненты проекта GNU

Проект GNU включает в себя сотни программных пакетов, охватывающих практически все аспекты операционной системы.

Компиляторы и инструменты разработки

Библиотеки и системные утилиты

Прикладное программное обеспечение

Лицензирование

Проект GNU известен созданием системы лицензий, которые гарантируют свободу программного обеспечения. Основной лицензией является GNU General Public License (GPL).

GNU GPL

GPL — это лицензия с «копилефтом» (copyleft). Она требует, чтобы производные работы (программы, основанные на GPL-коде) также распространялись под той же лицензией. Это предотвращает превращение свободного кода в проприетарное (несвободное) программное обеспечение. GPL гарантирует четыре фундаментальные свободы:

  1. Свобода запускать программу для любых целей.
  2. Свобода изучать, как программа работает, и изменять её (требуется доступ к исходному коду).
  3. Свобода распространять копии программы.
  4. Свобода улучшать программу и публиковать свои улучшения (требуется доступ к исходному коду).

Другие лицензии GNU

Влияние и значение

Проект GNU оказал огромное влияние на развитие информационных технологий и общества в целом.

Критика

Проект GNU и его подход подвергались критике с разных сторон.

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →