Wolna encyklopedia

GNU Hurd
Logo programu
Rodzaj Kernel
Licencja GNU GPL
Platforma systemowa GNU
http://gnu.org/software/hurd

GNU Hurd - jądro systemu operacyjnego opartego na architekturze mikrojądra.

Ściśle technicznie Hurd nie jest jądrem, a jedynie zbiorem uprzywilejowanych serwerów działających w przestrzeni użytkownika i dostarczających takich usług jak system plików, obsługa terminala, dysku czy sieci reszcie systemu. W jądrach monolitycznych sterowniki tego typu znajdują się w jądrze.

Spis treści

Nazwa

System, którego jądrem jest Hurd, nazywa się GNU/Hurd (analogicznie do GNU/Linux) albo po prostu GNU, ponieważ Hurd jest częścią tego projektu.

Nazwa "Hurd" jest rekurencyjnym akronimem. Oznacza Hird of Unix-Replacing Daemons, "Hird" natomiast oznacza Hurd of Interfaces Representing Depth.

Dystrybucje

Obecnie (styczeń 2008) praktycznie jedyną używalną dystrybucją z jądrem Hurd - poza ręczną kompilacją systemu - jest Debian GNU/Hurd.

Zgodność ze standardem POSIX

Hurd jest mniej więcej zgodny ze standardem POSIX. Najważniejszą niezgodnością jest używanie systemu wątków Cthreads zamiast systemu określonego w standardzie POSIX (Pthreads). Istnieje biblioteka emulująca wątki Pthreads na bazie Cthreads.

Budowa

Mikrojądro

Obecnie Hurd używa mikrojądra Mach 4, powstałego na Uniwersytecie Carnegie-Mellon, lecz od lat pojawiają się propozycje zmiany mikrojądra. Są one wysuwane ze względu m.in. na słabą wydajność i przenośność oraz brak obsługi SMP w Mach 4.

Podjęto nawet próbę nieoficjalnego przeniesienia Hurd na L4. Udało się uzyskać pewne sukcesy na L4Ka::Pistachio, a docelowo jest rozważana integracja z jądrem Coyotos i współpraca z jego autorami.

Serwery

Hurd bywa nazywany "zespołem serwerów" (bazujących na Machu lub innym mikrojądrze) wykonujących konkretne zadania. Do dyspozycji są serwery uwierzytelniania, haseł, procesów itd.

Nowatorskim rozwiązaniem zastosowanym w Hurdzie jest danie użytkownikom możliwości usunięcia lub zamiany jakiegokolwiek z serwerów. Użytkownicy mogą pisać też własne pełnoprawne serwery. Obszar systemu (w sensie obszaru, z którym użytkownik nie może nic zrobić) jest ograniczony do minimum.

Translatory

Inną ciekawą cechą jest mechanizm translatorów, działających na zasadzie filtrów nakładanych na konkretne miejsca w drzewie katalogowym (także na pliki). Za przykład translatora mógłby posłużyć mechanizm pozwalający na dostęp do zasobów FTP tak jak do zwykłego katalogu na dysku i operacje na tych zasobach tak jak na plikach lokalnych (tymi samymi narzędziami).

Współcześnie takie możliwości są oferowane w obrębie pojedynczych programów, a nie całego systemu, natomiast najbliższy odpowiednik translatorów dla systemów typu GNU/Linux to projekt FUSE (filesystem in userspace).

Linki zewnętrzne


Źródło: „haslo,GNU_Hurd