Топ питань
Часова шкала
Чат
Перспективи

GNU

З Вікіпедії, вільної енциклопедії

GNU
Remove ads

GNU (рекурсивний акронім від англ. GNU's Not Unix., кириліз.: ґну, досл.«GNU — не Unix.», GNU, вимовляється як один склад із українським ґ) — це повністю вільна операційна система, що складається виключно з вільного програмного забезпечення. Система GNU створена за зразком операційної системи «UNIX» і має з нею висхідну сумісність[2].

Коротка інформація Тип, Автор ...

GNU — це також назва великої колекції вільного програмного забезпечення[a][3][4][5], для використання з Unix™ та Unix-подібними операційними системами, такими як GNU/Linux[6][7][8], що дало початок сімейству операційних систем, широко відомих під назвою Linux[9].

GNU General Public License (GPL), GNU Lesser General Public License (LGPL) та GNU Free Documentation License (GFDL) були написані спеціально для проєкту GNU, а нині використовуються багатьма проєктами, не пов'язаними з ним[10].

Remove ads

Історія

Узагальнити
Перспектива
Thumb
Річард Столлман – ініціатор створення системи GNU

Проєкт GNU був публічно представлений 27 вересня 1983 року Річардом Столлманом у групах новин net.unix-wizards та net.usoft[11], а розробка того, що згодом стало GNU/Linux, почалася 5 січня 1984 року, коли Столлман залишив Массачусетський технологічний інститут; це було зроблено для того, щоб університет не заважав випуску GNU як вільного програмного забезпечення і не претендував на авторські права на нього. За словами Столлмана, назва системи була натхненна різними каламбурами, зокрема піснею «The Gnu(інші мови)».

Наміром Столлмана було створити повністю вільну операційну систему. Він хотів надати користувачам комп'ютерів таку ж свободу, яку вони мали в 1960-х і 1970-х роках: можливість аналізувати вихідний код програмного забезпечення, яке вони використовували, свободу ділитися програмним забезпеченням з іншими, можливість змінювати програмне забезпечення і свободу публікувати модифіковані версії програмного забезпечення. Ця філософія була опублікована в березні 1985 року як Маніфест GNU і пізніше використана для створення Визначення вільного програмного забезпечення. Значну частину необхідного програмного забезпечення довелося розробляти з нуля; для цього використовували існуючі вільні системні компоненти, такі як TeX і X Window System. У жовтні 1985 року Столлман заснував Фонд вільного програмного забезпечення (англ. Free Software FoundationFoundation, FSF). Наприкінці 1980-х і 1990-х років він платив програмістам за написання програм для GNU. Більшість програм GNU було написано вкладчиками у вільний час; деяким з них платили різні компанії, установи та некомерційні організації.Рання операційна система, написана Річардом Столлманом на асемблері, застаріла через відсутність постійної роботи на комп'ютерах PDP-10, що призвело до рішення, що система GNU має бути портативною. Також було вирішено, що вона має бути максимально сумісною з Unix.

З часом приватні компанії почали брати участь у розробці GNU, продаючи програмне забезпечення GNU та надаючи комерційну технічну підтримку. Найвідомішою з цих компаній була Cygnus Solutions, яка сьогодні є частиною Red Hat.

Remove ads

Побудова та впровадження

Узагальнити
Перспектива

До 1990 року система GNU вже включала текстовий редактор Emacs, компілятор GCC і більшість основних бібліотек та інструментів стандартного дистрибутива Unix. Оскільки основною ідеєю було створення повністю вільної операційної системи, а не написання її повністю з нуля, докладалися зусилля для використання вільного програмного забезпечення скрізь, де це було можливо. У 1980-х роках його було небагато, тому було використано і включено до GNU віконну систему X Window, професійну систему набору текстів TeX і мікроядро Mach.

Найважливішим компонентом, якого бракувало GNU, було ядро. У маніфесті GNU Столлман зазначив, що «ядро перебуває в зародковому стані, але йому все ще бракує багато чого, щоб емулювати Unix». Він мав на увазі ядро системи TRIX, яке автори вирішили випустити як вільне програмне забезпечення і яке було сумісним з версією 7 Unix. Робота над модифікацією цього ядра почалася в грудні 1986 року. Однак, врешті-решт, було вирішено відмовитися від нього через його обмежену зручність використання та той факт, що воно працювало лише на «рідкісному, дорогому 68000», що змусило б у майбутньому провести додаткову роботу з перенесення його на інші архітектури, перш ніж його можна було б ввести в експлуатацію.

Початковим планом проєкту GNU була адаптація ядра BSD 4.4-Lite. Через брак співпраці з боку програмістів з Берклі, Річард Столлман розглядав можливість використання ядра Mach замість ядра BSD 4.4-Lite з 1988 року, але йому довелося чекати до 1990 року, щоб воно стало доступним як вільне програмне забезпечення; протягом цього часу програмісти, які працювали над ним, намагалися видалити захищений авторським правом код AT&T. Структура ядра мала стати найбільшою відмінністю між GNU та «традиційним» Unix. Ядро GNU мало бути багатопотоковим мікроядром і складатися з набору програм, що називалися серверами, які мали пропонувати таку ж функціональність, як і традиційне ядро Unix.

Оскільки Mach забезпечував лише низькорівневу функціональність ядра, проєкт GNU був змушений створити високорівневі частини ядра як колекцію користувацьких програм. Спочатку цю колекцію планували назвати Alix на честь тодішнього партнера Річарда Столлмана, але Томас Бушнелл, головний розробник ядра GNU, віддав перевагу назві Hurd. Частина ядра, яка перехоплює, обробляє та надсилає системні повідомлення на сервери Hurd, називалася Alix, і зрештою її було закинуто після того, як бібліотека C змогла надсилати повідомлення безпосередньо на сервери[12]. З початку 1990-х років розробка Hurd раптово сповільнилася через виникнення технічних проблем. Річард Столлман згадував про це 9 березня 2006 року в Загребі[13]:

Нам знадобилося багато-багато років, щоб запустити ядро, але воно все ще не працює належним чином. Схоже, що у нас можуть бути фундаментальні проблеми з його дизайном, які ніхто не усвідомлював у 1990 році.

Незважаючи на оптимістичну заяву Столлмана у 2002 році[14], що передувала випуску GNU/Hurd, ядро потребує подальшого розвитку і вдосконалення. Ядро підходить для некритичних застосувань. З 2005 року розробка Hurd сповільнилася, але воно стало офіційним ядром GNU. У рамках проєкту GNU також існує проєкт з перенесення системи GNU на ядра FreeBSD, NetBSD та OpenSolaris. Станом на березень 2020 року ядро GNU/Hurd не мало стабільної версії[15], остання версія була 0.9, випущена наприкінці 2016 року[16].

У 2019 році, через 29 років після створення ядра, було додано транслятор для інтерфейсу ACPI, який, серед іншого, дозволяє безпечно вимикати комп'ютер[17].

З моменту введення ядра Linux у широкий обіг, воно стало найпоширенішим ядром для програмного забезпечення GNU. Проєкт GNU ввів термін GNU/Linux для цього типу систем.

Remove ads

Авторське право, ліцензування та управління

Узагальнити
Перспектива

Проєкт GNU пропонує авторам пакунків GNU підписувати декларацію про передачу авторських прав до Фонду вільного програмного забезпечення[18], хоча це не є обов'язковим: винятки було зроблено, зокрема, для MULE[19] та більшої частини GNOME. Володіння авторським правом на програмне забезпечення дозволяє FSF ефективніше забезпечувати дотримання ліцензійних вимог та, за необхідності, вносити зміни до ліцензії[20].

Принцип авторського права полягає в тому, що тільки уповноважена особа може використовувати або розпоряджатися твором: найчастіше сам творець, особа, яка придбала певні економічні права, або особа, на користь якої була встановлена ліцензія. Щоб змінити це, Фонд вільного програмного забезпечення написав ліцензію для програмного забезпечення GNU, яка дозволила будь-кому копіювати та розповсюджувати його. Протягом більшої частини 1980-х років кожен пакет GNU мав свою власну ліцензію, таку як Загальна публічна ліцензія Emacs General Public License, Загальна публічна GCC General Public License GCC тощо. У 1989 році FSF опублікував ліцензію, яка могла охоплювати все їхнє програмне забезпечення і яку могли використовувати проєкти, що не належать до GNU — Загальну публічну ліцензію GNU (GNU General Public License).

Ця ліцензія наразі є найпоширенішою ліцензією на вільне програмне забезпечення; вона охоплює більшість програм GNU, а також велику кількість програм, що не належать до GNU. Вона дозволяє будь-кому, хто використовує охоплене програмне забезпечення, запускати, копіювати, змінювати та розповсюджувати його, забороняючи будь-які додаткові обмеження на розповсюджувані копії (або змінені версії). Така система називається копілефт (copyleft).

У 1991 році була випущена GNU Lesser General Public License (LGPL), написана для деяких бібліотек GNU. Того ж року була випущена 2-га версія GNU GPL. Ліцензія GNU Free Documentation License (FDL), ліцензія на вільну документацію, була випущена у 2000 році. 29 червня 2007 року були випущені треті версії GNU GPL і LGPL, які привели ліцензії у більшу відповідність до міжнародних умов і забезпечили захист користувачів, чиє апаратне забезпечення обмежує їхню можливість змінювати програмне забезпечення, що є порушенням Свободи № 1 у Визначенні вільного програмного забезпечення.

Більшість пакунків GNU випущено під ліцензією GNU GPL, деякі випущені під ліцензією GNU LGPL, а деякі використовують інші ліцензії вільного програмного забезпечення.

Remove ads

Операційна система

Узагальнити
Перспектива

Офіційною операційною системою GNU є GNU Hurd (ядро GNU Mach, набір програм-серверів та інших системних компонентів), яка також є основою дистрибутива Debian GNU/Hurd[21]. Однак, оскільки офіційне ядро GNU Hurd не є досконалим, та не всі компоненти сумісні з ним, тому більшість розробників GNU використовують ядро Linux або Linux-libre[22].

У системі GNU/Linux ядром є Linux. Решта системи складається з інших програм, багато з яких було написано проєктом GNU або для нього. Оскільки ядро Linux саме по собі не утворює робочої операційної системи, FSF вважає за краще використовувати термін «GNU/Linux» для позначення систем, які багато людей недбало називають «Linux»[9].

Дистрибутиви GNU, які не використовують Hurd:

  • GNU/Linux – найрозповсюдженіший різновид системи GNU
  • GNU/NetBSD
  • GNU/kFreeBSD
  • Nexenta OS – система GNU з ядром OpenSolaris

Основними компонентами системи є Колекція компіляторів GNU (GCC), Двійкові утиліти GNU (binutils), оболонка bash, GNU бібліотека Сі (glibc) та GNU Core Utilities (coreutils).

Станом на серпень 2025 року на офіційному сайті проєкту GNU налічується 387 пакунків GNU[23]. Систему GNU (з ядром Hurd) можна спробувати за допомогою LiveCD. Дистрибутиви GNU, які використовують Hurd:

Remove ads

Програмне забезпечення

Узагальнити
Перспектива

В рамках проєкту GNU було розроблено велику кількість високоякісного вільного програмного забезпечення, зокрема текстовий редактор Emacs[24], збірку компіляторів GNU (GCC англ. GNU Compiler Collection) і зневаджувач GNU Debugger (GDB).

GNU офіційно включає зовнішнє програмне забезпечення, таке як реалізація X.Org для X Window System та професійна система верстки TeX. Багато програм GNU також було портовано на інші операційні системи, такі як Microsoft Windows, дистрибутиви BSD, Solaris та macOS[25].

Також поширеним є встановлення програм GNU на пропрієтарних Unix-системах замість оригінальних програм UNIX, оскільки багато програм, написаних для проєкту GNU, виявилися кращої якості, ніж відповідники з UNIX. Часто ці компоненти узагальнено називають «Знаряддя GNU» (англ. GNU Tools). Багато програм GNU також було перенесено на Microsoft Windows, macOS та деякі інші пропрієтарні платформи.

Деякі приклади програмного забезпечення, розробленого проєктом GNU:

Remove ads

Лідери

Талісман

Thumb
Талісман проєкту GNU (антилопа гну)

Логотип GNU — це стилізована антропоморфна голова антилопи гну. Оригінальний дизайн створив Етьєн Суваса. Він використовується у програмному забезпеченні GNU, друкованих та електронних версіях документації проєкту GNU та матеріалах Фонду вільного програмного забезпечення[26].

Див. також

Примітки

  1. 387 пакунків, станом на серпень 2025 року

Джерела

Література

Посилання

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads