GNU

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 17:05, 24 августа 2017.
GNU Licenses
логотип: антилопа гну
400px-GNU Linux screenshot.png
Debian GNU/Hurd console startup and login
Разработчик Community
Написана на Various (notably C(programming language) and assembly language)
Линейка ОС Unix-like
Состояние разработки Current
Исходный код Free software
Целевой маркетинг Personal computers, mobile devices, embedded devices, servers, mainframes, supercomputers
Платформы IA-32 (with Hurd kernel only) and Alpha, ARC, ARM, AVR32, Blackfin, C6x, ETRAX CRIS, FR-V, H8/300, Hexagon, Itanium, M32R, m68k, META, Microblaze, MIPS, MN103, OpenRISC, PA-RISC, PowerPC, s390, S+core, SuperH, SPARC, TILE64, Unicore32, x86, Xtensa (with Linux-libre kernel only)
Ядро (тип) Microkernel (GNU Hurd) or Monolithic kernel (GNU Linux-libre, fork of Linux kernel)
Пользовательское
пространство
GNU
Лицензия GNU General Public License
Официальный веб-сайт https://www.gnu.org

GNU (рекурсивный акроним от англ. GNU’s Not UNIX — «GNU не UNIX») — свободное программное обеспечение|свободная Unix-подобная операционная система, разрабатываемая проектом GNU. Не следует путать с GNU GPL — лицензией, также созданной в рамках Проекта GNU, и используемой не только для ПО этого проекта.

История

Разработка системы GNU началась 27 сентября 1983 года, когда Ричард Столлман опубликовал объявление о проекте в группах новостей net.unix-wizards и net.usoft. 5 января 1984 года Столлман уволился из Массачусетского технологического института с целью посвятить своё время написанию свободного программного обеспечения, а также для того, чтобы институт не мог предъявить какие-либо права на исходный код. Первой программой GNU стал текстовый редактор Emacs. В течение почти 20 лет распространялась и набирала обороты идея создания ПО с открытым исходным кодом, увеличивалось число программ, число разработчиков. Необходима была бесплатная[источник не указан 1275 дней] среда, позволяющая осуществлять запуск этих программ. Впоследствии, в августе 1991 года Линус Торвальдс начал работу над свободно распространяемой операционной системой, находящейся под той же лицензией.

В настоящее время система GNU/Linux, более широко известная как просто Linux (GNU включает инструменты для разработки, в том числе и ядра Linux), достаточно распространена, особенно на рынке серверов, и является вполне завершённой. 29 июня 2007 года вышла третья версия лицензии GNU GPLv3 для разрешения некоторых проблем со второй версией GNU, которые были обнаружены в течение долгого срока её эксплуатации. Для сохранения актуальности лицензии, GPL опционально включает пункт "более поздняя версия" позволяющую пользователям выбирать между оригинальной или обновлённой фондом свободного программного обеспечения условиями лицензии. Разработчики могут пропускать этот пункт при лицензировании; к примеру ядро Linux лицензировано с использованием GPLv2 без пункта "какая-либо более поздняя версия". GNU/Linux состоит из большого количества программ проекта GNU (в первую очередь системных утилит и GNU toolchain), ядра Linux — части системы, отвечающей за выполнение других программ, включающей драйверы устройств и т. п. — и множества других свободных программ.

GNU Hurd

Официальным же ядром операционной системы GNU является GNU Hurd. Альтернативное название системы на основе этого ядра — GNU/Hurd, по аналогии с GNU/Linux. Однако, несмотря на то, что Hurd разрабатывается с 1990 года, этот проект всё ещё не завершён (хотя Hurd на основе микроядра Mach уже может нормально функционировать и выполнять многие приложения). По этой причине операционную систему GNU как таковую ещё нельзя считать полностью завершённой и готовой к промышленному использованию.

21 Мая 2013 вышел в свет дистрибутив "Debian GNU/Hurd 2013". Debian GNU/Hurd в настоящее время доступен только для архитектуры i386 и содержит более 10.000 пакетов.

Лицензия

Столлман написал свой знаменитый Манифест GNU, который стал основой для лицензии GPL (GNU General Public License). Эта лицензия повернула весь компьютерный мир.

Основные положения GPL:

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

Код программы распространяемый по лицензии GPL можно использовать каким угодно способом, а именно: копировать, дорабатывать, модифицировать, передавать или продавать модифицированные (или даже не модифицированные) версии другим лицам при условии, что результат такой переработки тоже будет распространяться под лицензией GPL.

Последнее условие — самое важное и определяющее в этой лицензии. Оно гарантирует, что результаты усилий разработчиков свободного ПО останутся открытыми и не станут частью какого-либо лицензированного обычным способом продукта. Оно также отличает свободное ПО от ПО, распространяемого бесплатно. Одно из требований этой лицензии состоит в том, что продавая ПО под лицензией GPL, вы должны предоставить исходные коды этого ПО каждому, кто захочет получить к ним доступ. Лицензия GPL «делает ПО свободным и гарантирует, что оно останется свободным».

К 90му годы были созданы основные инструменты, необходимые для функционирования ОС, такие как: текстовый редактор EMacs, компилятор GCC и отладчик кода gdb. Как мы уже упомянали в статье - Столлман был отличным программистом, и смог создать компилятор, превосходивший по качествам своих коммерческих собратьев, создаваемые целыми группами программистов. Сегодня существуют версии практически для всех операционных систем и языков написания программ(языков программирования), что является залогом переносимости программ.

Дистрибутивы GNU/Linux

Большинство пользователей для установки GNU/Linux используют дистрибутивы. Дистрибутив — это не просто набор программ, а ряд решений для разных задач пользователей, объединённых едиными системами установки, управления и обновления пакетов, настройки и поддержки. Самые распространённые в мире дистрибутивы:

Быстро завоевавший популярность дистрибутив, ориентированный на лёгкость в освоении и использовании.

Бесплатно распространяемая версия дистрибутива SuSE, принадлежащая компании Novell. Отличается удобством в настройке и обслуживании благодаря использованию утилиты YaST.

Поддерживается сообществом и корпорацией RedHat, предшествует выпускам коммерческой версии RHEL.

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

Французско-бразильский дистрибутив, объединение бывших Mandrake и Conectiva.

Один из старейших дистрибутивов, отличается консервативным подходом в разработке и использовании.

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

Ориентированный на применение самых последних версий программ и постоянно обновляемый, поддерживающий одинаково как бинарную, так и установку из исходных кодов и построенный на философии простоты «KISS» («Keep it simple, stupid» / «Не усложняй»), этот дистрибутив ориентирован на компетентных пользователей, которые хотят иметь всю силу и модифицируемость Linux, но не в жертву времени обслуживания.

Ссылки

  • Официальный сайт GNU [Электронный ресурс]: Что такое GNU / Дата обращения: 21.11.2016. — Режим доступа: https://www.gnu.org/home.html
  • GNU [Электронный ресурс]: Сведения о проекте / Дата обращения: 21.11.2016. — Режим доступа: https://ru.wikipedia.org/wiki/GNU
  • Философия проекта GNU [Электронный ресурс]: Сведения о проекте / Дата обращения: 21.11.2016. — Режим доступа: https://www.gnu.org/philosophy/philosophy.html
  • Операционные системы Linux [Электронный ресурс]: Linux / Дата обращения: 21.11.2016. — Режим доступа: http://help.ubuntu.ru/wiki/linux