GNU Hurd

Материал из Seo Wiki - Поисковая Оптимизация и Программирование
Перейти к навигацииПерейти к поиску
GNU Hurd
Файл:Hurd-logo.png
HURD Live CD
Тип ядро
Разработчик Thomas Bushnell
Roland McGrath
Marcus Brinkmann
и другие
ОС GNU
Версия L1 (19 октября 2009)
Лицензия 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, однако в настоящее время работа в этом направлении остановлена. [3]

На данный момент (июль 2008) существует дистрибутив Debian GNU/Hurd K16, выпущенный в декабре 2007 года. В 2005 году разрабатывался другой дистрибутив под названием Bee GNU/Hurd. Этот проект, судя по всему, мёртв, так как последний snapshot (версия Bee 0.3 beta 1) в системе CVS датирован 22 декабря 2005.[4]

Именование дисков в 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 самого компьютера.[5] Поскольку GRUB на данный момент имеет функции tab дополнения, пользователю GRUB не требуется прилагать много усилий для определения корректного значения имени диска и раздела.

Примечания

  1. http://www.debian.org/ports/hurd/index.ru.html
  2. http://www.pcworld.com/news/article/0,aid,88464,00.asp
  3. http://www.gnu.org/software/hurd/history/port_to_l4.html
  4. http://bee.es.gnu.org/
  5. В GRUB2 нумерация разделов (slice) начинается с единицы. Таким образом второй раздел на первом диске будет иметь имя hd(0,2).

Ссылки



ar:هيرد ca:Hurd cs:GNU Hurd da:GNU Hurd de:GNU Hurd en:GNU Hurd eo:Hurd es:GNU Hurd eu:GNU Hurd fi:GNU Hurd fr:Hurd gl:GNU Hurd ia:Hurd it:Hurd ja:GNU Hurd ko:GNU 허드 la:GNU Hurd lt:GNU Hurd ml:ഗ്നു ഹേർഡ്‌ nl:GNU/Hurd no:GNU Hurd pl:GNU Hurd pt:GNU Hurd sc:HURD sk:Hurd sv:GNU/Hurd tr:GNU Hurd uk:GNU HURD zh:Hurd

Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....