GNU Hurd
Rodzina systemów operacyjnych uniksopodobne | |
Interfejs użytkownika | |
Producent | Projekt GNU |
---|---|
Architektura | i386 |
Aktualna wersja | 0.9 (18 grudnia 2016; ponad 5 lat temu) |
Jądro | Mikrojądro |
Środowisko pracy | Bash |
Licencja | GNU General Public License |
Wersja Live | dostępna |
Strona internetowa |
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.
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 nadającymi się do użytku dystrybucjami z jądrem Hurd – poza ręczną kompilacją systemu – są Debian GNU/Hurd i ArchHurd.
Zgodność ze standardem POSIX
Hurd jest częściowo zgodny ze standardem POSIX. Najważniejszą niezgodnością jest używanie systemu wątków Cthreads zamiast systemu określonego w standardzie POSIX (Pthreads). Planowane jest porzucenie Cthreads na rzecz Pthreads[1], tymczasowo 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 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).
Dystrybucje GNU uruchamiające Hurda
Dystrybucje GNU bazujące na Hurdzie:
- Arch Hurd
- Debian GNU/Hurd
- NixOS[2][3]
- Bee GNU/Hurd (rozwój przerwany)
- Gentoo GNU Hurd (rozwój przerwany)
- GNU/Hurd Live CD[4] (rozwój przerwany)
Zobacz też
Linki zewnętrzne
Przypisy
- ↑ GNU Issues Convert Hurd Libraries and Servers to pthreads, dostęp 2011-10-07
- ↑ nixos.org
- ↑ Gnu.org: Nix-based GNU/Hurd System. 2012-03-21. [dostęp 2012-07-12].
- ↑ GNU Hurd/ hurd/ running/ live cd. [dostęp 2012-11-19].
Media użyte na tej stronie
Autor: MGalloway (WMF), Licencja: CC BY-SA 3.0
A tickmark icon included in the OOjs UI MediaWiki lib.
Autor: MGalloway (WMF), Licencja: CC BY-SA 3.0
A tickmark icon included in the OOjs UI MediaWiki lib.
Autor: Original METAFONT by Stephen McCamant. Converted into hand-written SVG by Colin Leitner and Thomas Schwinge., Licencja: CC-BY-SA-3.0
GNU Hurd logo.
Autor: Venca24, Licencja: GPL
Zrzut ekranu systemu operacyjnego Debian GNU/Hurd wykorzystującego manadżer okien Xfce4 i przeglądarkę internetową Midori.