GNU Hurd
Материал из Википедии — свободной энциклопедии
| GNU Hurd | |
![]() |
|
|
HURD Live CD
|
|
| Тип | ядро |
| Разработчик | Thomas Bushnell Roland McGrath Marcus Brinkmann и другие |
| ОС | GNU |
| Версия | K16 — 30 декабря 2007 |
| Лицензия | GPL |
| Сайт | www.gnu.org |
GNU Hurd — проект по созданию комплекса системных программ-серверов, функционирующего подобно ядру операционной системы, и способного заменить ядро UNIX в Unix-подобной операционной системы GNU. Разработка Hurd ведётся с 1990 года, но пока проект ещё далек от завершения.
GNU/Hurd — название операционной системы от проекта GNU, использующей GNU Hurd в качестве ядра. Название построено по аналогии с «GNU/Linux», используемым для операционных систем GNU на ядре Linux. Используется, когда требуется явно указать на отличие от GNU/Linux. Например, проект Debian использует его в названии разрабатываемой ОС Debian GNU/Hurd,[1] чтобы отличить её от других своих систем на основе GNU — Debian GNU/Linux и Debian GNU/kFreeBSD.
Содержание |
[править] Этимология
Hurd — косвенный рекурсивный акроним от англ. HIRD of Unix-Replacing Daemons («HIRD демонов, заменяющих UNIX»), где HIRD — также акроним от англ. HURD of Interfaces Representing Depth («HURD интерфейсов, олицетворяющих глубину»).
[править] Идеи Hurd
Hurd построен на микроядерной архитектуре. Оно представляет собой набор небольших, автономно работающих программ — серверов, которые обмениваются между собой и программами пользователя формализованными сообщениями. Основа Hurd — микроядро GNU Mach, реализация Mach — обеспечивает только взаимодействие этих программ между собой.
Особый класс серверов — трансляторы — обеспечивают возможность работы с файловыми системами, сетевыми протоколами, контролируют доступ к файлам. Также устройство файловой системы Hurd обладает некоторыми особенностями, которые отличают GNU/Hurd от других операционных систем.
Развязка компонентов операционной системы позволяет модулизировать функции, обычно присущие монолитному ядру, и, таким образом, не только повысить надёжность операционной системы, но и упростить распараллеливание задач.
[править] Статус разработки
Сейчас Hurd работает на компьютерах с архитектурой x86, однако уже много лет находится в состоянии, далёком от стабильной версии. Скептики полагают, что в ближайший разумный промежуток времени Hurd не достигнет уровня стабильности и простоты использования, необходимого для повседневного применения. В 2002 году Ричард Столлман, руководитель проекта GNU, заявил о скором выходе производственной версии Hurd, однако его обещания не оправдались.[2]
В настоящее время ведётся работа по портированию Hurd на высокопроизводительное микроядро L4, что даёт надежду на то, что стабильная версия всё-таки выйдет в обозримом будущем.
На данный момент (июль 2008) существует дистрибутив Debian GNU/Hurd K16, выпущенный в декабре 2007 года. В 2005 году разрабатывался другой дистрибутив под названием Bee GNU/Hurd. Этот проект, судя по всему, мёртв, так как последний snapshot (версия Bee 0.3 beta 1) в системе CVS датирован 22 декабря 2005.[3]
[править] Именование дисков в Hurd
Именование дисков — это нотация, определяющая порядок формирования идентификаторов или имён для обращения к устройствам хранения данных, которые имеют файловую систему определённого типа, в средах различных операционных систем.
Если речь идёт о именовании диска SCSI, необходимо знать номер устройства SCSI; если это IDE диск, то необходимо знать, на каком контроллере находится этот диск, а также ведущий он или ведомый. Система Hurd использует соглашение о наименовании дисков, аналогичное применяемому в BSD, по этому соглашению диски упорядочиваются согласно их физическому расположению по номерам начиная с нуля. Эта схема наименования напоминает свой аналог в Linux. Там ведущий диск на главном контролёре обозначается как «hda», а ведомый диск как «hdb». На вторичном контролёре ведущий диск и ведомый обозначаются «hdc» и «hdd» соответственно. В системе Hurd диск 'hda' будет называться «hd0», а диск «hdb» будет обозначаться «hd1» и т. д.
В системе Hurd, как и в дистрибуции BSD, разделы диска называются «slices» (слои) и нумеруются, начиная с единицы. Поэтому, чтобы сформировать имя для определённого раздела диска, берётся имя диска, к нему добавляется префикс «s» и вслед за ним добавляется номер раздела. Опять таки, это похоже на именование дисков и разделов в Linux за исключением того что там нет префикса «s», а для обозначения диска используется буква, а не цифра. Так, для примера, «hda1» будет называться «hd0s1», то есть имя диска «hd0s1» — это первый раздел (slice) первого диска типа IDE.
GRUB — это программа начальной загрузки операционной системы. Он использует совершенно другую номенклатуру именования дисков: он получает от BIOS данные об имеющихся дисках и преобразует их в свою внутреннюю структуру в формате массива. Таким образом диски и разделы нумеруются в GRUB начиная с нуля. Формат именования дисков в GRUB таков: «(<диск>, <раздел>)». Поэтому имя «hd (0, 1)» обозначает второй раздел на первом диске, который был обнаружен средствами BIOS самого компьютера. Поскольку GRUB на данный момент имеет функции tab дополнения, пользователю GRUB не требуется прилагать много усилий для определения корректного значения имени диска и раздела.
[править] Примечания
[править] Ссылки
- GNU Hurd Homepage(англ.)
- L4-Hurd-Homepage(англ.) — проект портирования Hurd на микроядро L4 (вместо GNU Mach)
- Wiki-проект о GNU Hurd(англ.)
- Debian GNU/Hurd Homepage(англ.)
- Debian GNU/Hurd Live-CD (на базе ядра GNU Mach)(англ.)
|
|
|
|---|---|
|
|
||
|---|---|---|
| История | Манифест GNU • Проект GNU • Фонд СПО • История СПО | |
| Лицензии | GNU GPL • GNU LGPL • Affero GPL • GNU FDL • GPL linking exception | |
| Программное обеспечение |
GNU (варианты) • Hurd • GNOME • GNUzilla • IceCat • Gnash • Bash • GCC • Emacs • glibc • Coreutils • Build system • Bazaar • другие пакеты… | |
| Персоналии | Роберт Часселл • Лоис Дечэри • Рикардо Галли • Джордж Грив • Федерико Хейнц • Бенджамин Хилл • Брэдли Кун • Эбен Моглен • Бретт Смит • Ричард Столлман • Вильям Джон Салливан | |


