Lt304888.ru

Туристические услуги

GNU Hurd

26-08-2023

GNU Hurd

HURD Live CD
Тип

ядро ОС

Разработчик

Томас Башнелл
Роланд Макграт
Маркус Бринкманн
и другие

Операционная система

GNU

Последняя версия

L1 (19 октября 2009)

Лицензия

GNU GPL

Сайт

www.gnu.org

GNU Hurd (или просто Hurd) — проект по разработке свободного программного обеспечения, целью которого является замена ядра Unix для Unix-подобных операционных систем.[1] Разработка Hurd ведётся начиная с 1990 года проектом GNU и Фондом свободного программного обеспечения.

Содержание

Этимология

Hurd — косвенный рекурсивный акроним от англ. HIRD of Unix-Replacing Daemons («HIRD демонов, заменяющих UNIX»), где HIRD — также акроним от англ. HURD of Interfaces Representing Depth («HURD интерфейсов, олицетворяющих глубину»).

Так как слова «Hurd» и «Hird» в английском языке являются вариантами написания «Herd» («Стадо»), то название GNU Hurd так же является игрой слов — herd of gnus («Стадо антилоп Гну»), что отражает особенности работы ядра.[2]

Идеи Hurd

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

Особый класс серверов — трансляторы — обеспечивают возможность работы с файловыми системами, сетевыми протоколами, контролируют доступ к файлам. Также устройство файловой системы Hurd обладает некоторыми особенностями, которые отличают GNU/Hurd от других операционных систем.

Развязка компонентов операционной системы позволяет модулизировать функции, обычно присущие монолитному ядру, и, таким образом, не только повысить надёжность операционной системы, но и упростить распараллеливание задач.

Статус разработки

Сейчас Hurd работает на компьютерах с архитектурой x86, однако уже много лет находится в состоянии, далёком от стабильной версии. Скептики сомневаются, что в ближайший разумный промежуток времени Hurd достигнет уровня стабильности и простоты использования, необходимого для повседневного применения. В 2002 году Ричард Столлман, руководитель проекта GNU, заявил о скором выходе производственной версии Hurd, однако его обещания не оправдались.[3]

Была предпринята попытка портирования Hurd на высокопроизводительное микроядро L4, однако в настоящее время работа в этом направлении остановлена.[4]

В 2005 году разрабатывался дистрибутив под названием Bee GNU/Hurd. Этот проект, судя по всему, мёртв, так как последний snapshot (версия Bee 0.3 beta 1) в системе CVS датирован 22 декабря 2005.

Но, тем не менее, существует дистрибутив Debian GNU/Hurd, регулярно выпускаются новые CD-сборки и мини-образы этого дистрибутива[5].[6]

Также, в 2010 году появился новый дистрибутив на базе GNU/Hurd и Archlinux — Arch Hurd.[7]

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

Примечания

  1. What Is the GNU Hurd?  (англ.). gnu.org. Архивировано из первоисточника 27 августа 2011. Проверено 28 ноября 2010.
  2. Origin Of the Name  (англ.). gnu.org. Архивировано из первоисточника 27 августа 2011. Проверено 28 ноября 2010.
  3. «Free Software Sees Gnu Loose of Linux»  (англ.). PC World (12 марта 2002г.). Архивировано из первоисточника 27 августа 2011. Проверено 28 ноября 2010.
  4. Porting the Hurd to L4: Hurd/L4
  5. http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/ — текущая версия
  6. GNU chapters
  7. Arch Hurd
  8. В GRUB2 нумерация разделов (slice) начинается с единицы. Таким образом второй раздел на первом диске будет иметь имя hd(0,2).

Ссылки

  • 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 Hurd.

© 2020–2023 lt304888.ru, Россия, Волжский, ул. Больничная 49, +7 (8443) 85-29-01