Направо към съдържанието

GNU Hurd

от Уикипедия, свободната енциклопедия
(пренасочване от GNU/Hurd)
GNU Hurd
Live CD на GNU Hurd
РазработчикGNU Project
Thomas Bushnell
Roland McGrath
Marcus Brinkmann
Neal Walfield
Последна версияL1
Вид ОСGNU-базирана Unix-подобна
ЯдроMicrokernel server/client
Архитектуриi386
ЛицензGNU General Public License
Уебсайтwww.gnu.org/software/hurd
GNU Hurd в Общомедия

GNU Hurd (наричано и „the Hurd“) е микроядро, създадено с цел да бъде ”free software” (свободен софтуер) заместител на Unix ядрото[1]. Разработва се от 1990 г. от Фондацията за свободен софтуер (FSF) като част от проекта GNU и е лицензирано под GNU General Public License. Състои се от набор протоколи и сървър процеси („демони“, ако използваме Unix терминологията), работещи върху GNU Mach микроядрото. Двете заедно трябва да формират ядрото на GNU операционната система. Стремежът на GNU проекта е тя да превъзхождаща другите Unix системи като функционалност, сигурност и стабилност, докато все пак остава максимално съвместима с тях. GNU проектът избира архитектурата на ядрото да е микроядро с клиент-сървър процеси поради осезаемите му предимства пред традиционните монолитни ядра на Unix системите.

Hurd e рекурсивен акроним на HIRD of Unix-replacing daemons, където HIRD е съкращение от HURD of interfaces representing depth. Понеже думите HURD и HIRD са вариации на думата Herd (от англ. – стадо), цялото име GNU Hurd също е игра на думи (англ.: стадо от антилопи гну). Това отразява особеностите в работата на ядрото[2].

Разработката на операционната система GNU започва през 1984 г. и първоначално напредва добре. Свободните GNU-инструменти започват да придобиват добра репутация и често са предпочитани пред собственическите инструменти, доставяни с дадена система. Към началото на 90-те години единствената причина да не съществува цялостна GNU-система остава липсата на ядро.

Разработката на Hurd започва през 1990 г. след изоставения опит от 1986 г. за създаване на ядро на базата на операционната система TRIX – разработка на професор Стив Уарт и неговата група от лабораторията за компютърни науки на MIT. Според Томас Бушнел (първоначалният архитект) ранните им планове са били да адаптират ядрото 4.4BSD и, както по-късно казва, „сега ми е напълно ясно, това щеше да успее чудесно и светът днес щеше да е едно напълно различно място“. Но през 1987 г. поради липса на сътрудничество от страна на програмистите от Barkley, Ричард Столман предлага да използват микроядрото Mach, разработено от университета Carnegie Mellon. Работата по него обаче се забавя три години поради неяснотата дали университетът ще пусне изходните текстове на Mach под подходящ лиценз.

С излизането на ядрото Linux през 1991 г. GNU-инструментите намират най-накрая своята липсваща съставка за създаването на изцяло свободна операционна система и на бял свят се появяват системи на основата на ядрото Linux и програмните инструменти GNU (Linux-дистрибуции). Заедно с тях се появява и спорният термин GNU/Linux.

Разработката на Hurd продължава бавно. Независимо от оптимистичното изявление на Столман през 2002 г., предричащо излизането на GNU/Hurd по-късно същата година, Hurd все още не се смята за готов за масова употреба. Разработката му като цяло не удовлетворява очакванията и все още в ядрото има грешки и липсваща функционалност. Резултатът от това е по-слаб продукт, отколкото много хора (включително Столман) са очаквали. През 2010 г., след двадесет години разработка, Столман казва, че не е много оптимистично настроен за GNU Hurd, и че проектът напредва, но за да превъзхожда останалите ядра, трябва да се решат доста сериозни проблеми. Също добавя, че завършването му не е критично за GNU-системите, защото вече съществуват свободни ядра, и довършването на Hurd няма да реши главния оставащ проблем за свободните системи, който е поддръжката за различни устройства.

Проектът Debian, а и не само той, работи за създаването на PC-дистрибуция на основата на Hurd. Вече е налична „unstable“ модификация на Debian с ядрото Hurd. Плановете на дистрибуцията са за следващата си версия (7.0 wheeze) Debian да разполага и със стабилна GNU/Hurd модификация.

За разлика от повечето Unix системи, Hurd използва сървър-клиент архитектура построена върху микроядро, което отговаря за най-базовите услуги и координира достъпа до хардуера: процесор (управление на процесите и диспечер), RAM (управление на паметта), и различни входно-изходни устройства (чрез I/O диспечер) за звук, графика, твърди дискове и др. На теория дизайнът на микроядрото позволява всички да се стартират като сървъри от потребителското пространство, но повечето драйвери работят в пространството на GNU Mach микроядрото. Причината за това е, че първоначално драйверите в потребителското пространство са имали намалена производителност, дължаща се на бавната вътрепроцесорна комуникация на Mach. С производителността на днешните компютри е възможно това вече да не е проблем.

През 2007 г. двама от разработчиците на Hurd, Нийл Уолфийлд и Маркус Бринкман, написват критиките си към архитектурата на ядрото в документ, известен като „the critique“, както и предложение за това как трябва да изглежда една бъдеща система в друг документ, известен като „the position paper“.

Избор на микроядро

[редактиране | редактиране на кода]

От самото начало Hurd е проектиран да използва GNU Mach микроядрото. Решението е взето от Ричард Столман с идеята, че това ще ускори процеса на разработка. По-късно той си признава, че това решение е било грешка.

Други Unix базирани операционни системи като OSF/1, Lites и MkLinux също работят с Mach микроядрото. Mac OS X и NEXTSTEP използват хибридни ядра, базирани на Mach.

GNU Hurd базирани дистрибуции

[редактиране | редактиране на кода]

Hurd-базирани GNU дистрибуции в активна разработка:

Hurd-базирани GNU дистрибуции, чиято разработка е прекъсната:

  1. What Is the GNU Hurd? // gnu.org. Архивиран от оригинала на 27 август 2011. Посетен на 2016-04-21. (на английски)
  2. Origin Of the Name // gnu.org. Архивиран от оригинала на 27 август 2011. Посетен на 2016-04-21. (на английски)