GNU Hurd

GNU Hurd
GNU Hurd
Hurd-logo.svg
Bildschirmfoto
HURD Live CD.png
HURD-Live-CD-Login
Basisdaten
Entwickler Thomas Bushnell, Roland McGrath, Marcus Brinkmann, Neal Walfield
Sprache(n) multilingual
Version L1
(19. Oktober 2009)
Abstammung UNIX
  ⌊GNU Hurd
Kernel Microkernel
Architekturen i386
Lizenz GNU GPL
Sonstiges In Entwicklung
Website http://www.gnu.org/software/hurd/

GNU Hurd ist ein in Assembler und C geschriebenes Betriebssystem, mit einem Mikrokern als Basis.[1] Dieser implementiert Dateisysteme, Netzwerkprotokolle, Datei-Zugriffskontrollen und andere Eigenschaften. Die Entwicklung des Kernels begann 1990 und dauert noch an, während die zur Entwicklung geschaffenen Tools wie gcc, Emacs und andere große Verbreitung in der Open Source-Community erfuhren.

Inhaltsverzeichnis

Namensbedeutung

Bei dem Namensteil Hurd (früher auch HURD) von GNU Hurd handelt es sich um ein komplexes rekursives Akronym, nämlich ein (zweistufig) indirektes, das in der ersten Auflösung HIRD of Unix-Replacing Daemons (deutsch: „Herde Unix-ersetzender Dienste“) lautet. HIRD wird wiederum zu HURD of Interfaces Representing Depth (deutsch: „Herde Tiefe-darstellender Schnittstellen“) aufgelöst. Obige Übersetzung ist keine exakte, sondern gibt die Bedeutung der beiden Kunstworte assoziativ bzw. auf einer lautmalerischen Ebene wieder, denn sie basiert nur auf dem gleich (hier: nicht generell ununterscheidbar) ausgesprochenen engl. Wort herd (deutsch: Herde). Durch die Akronyme und die lautmalerische Verfremdung werden zwei unter Hackern übliche Traditionen gleichzeitig genutzt.

Konzept

Das wichtigste Konzept von GNU Hurd ist, dass die Betriebssystem-Komponenten als eigene Prozesse laufen. Im Englischen werden diese als Server bezeichnet. Ein weiterer Bestandteil von Hurd ist ein Mikrokernel. Hurd verwendet GNU Mach, eine Implementierung des Mach-Kernels. 2002 wurde versucht Hurd auf den L4 Mikrokernel zu portieren, dieses Vorhaben wurde jedoch 2005 wieder aufgegeben.[2] Im Rahmen des Google Summer of Code 2011 wird Java auf GNU Hurd portiert, sodass der Kernel in Debian Wheezy einziehen kann.[3]

Das Design von GNU Hurd ermöglicht es, dass die meisten Betriebssystem-Aktionen keinerlei Privilegien mehr benötigen. Das wird erreicht, indem Gerätetreiber, Dateisysteme, Netzwerkprotokolle und Ähnliches aus dem privilegierten Adressraum des Kernels herausgenommen werden und als normale Benutzerprozesse laufen, sodass sie (theoretisch) keinen Schaden am Gesamtsystem anrichten können.

Ein Prozess kann allerdings Privilegien genießen, um besondere Betriebssystem-Funktionen durchführen zu können. Dieses Konzept bietet eine Reihe von Vorteilen:

  • Sollte ein Prozess in seinem Dienst versagen, kann er den Kernel nicht ohne weiteres zum Erliegen bringen.
  • Programme im User-Space sind leichter zu debuggen.
  • Sofern nicht bestimmte Privilegien benötigt werden, kann jeder Benutzer selbst Betriebssystem-Komponenten setzen, um zum Beispiel ein eigenes Dateisystem einzurichten. Da die entsprechende Betriebssystem-Komponente dann unprivilegiert läuft, stellt sie kein Sicherheitsrisiko dar. Außerdem braucht der Benutzer nicht die eingebauten Funktionen des Kernels zu benutzen, sondern kann sich den Dienst selbst nach Belieben erstellen, ohne dass die Integrität des Systems dadurch in Mitleidenschaft gezogen werden kann.

Sogenannte Übersetzer beantworten Zugriffsanfragen auf einen Einhängepunkt. Dieser kann eine einzelne Datei oder eine ganze Verzeichnis-Hierarchie im Dateisystem sein. Dadurch können Programme mit den üblichen Dateioperationen von den Möglichkeiten von Hurd profitieren, auch ohne speziell dafür angepasst zu werden. Sinnvoll ist das beispielsweise für Low-Level-Implementierungen virtueller Dateisysteme: Der Übersetzer FTPFS stellt zur Laufzeit auf der zugewiesenen Datei ein Verzeichnis dar (der Unterschied zwischen Dateien und Verzeichnissen ist in Hurd verschwindend gering), auf das wie auf ein normales Verzeichnis zugegriffen werden kann; allerdings übersetzt ftpfs die Dateioperationen in FTP-Operationen, die zu einem Server geschickt werden. Das entspricht im Wesentlichen der Funktionalität graphisch orientierter FTP-Clients, in denen entfernte Verzeichnisse wie lokale aussehen, ftpfs von Hurd ermöglicht es jedoch, mit normalen Programmen wie ls oder cat auf dem entfernten Server zu agieren.

GNU Hurd-Distributionen

Quellen

  1. Introduction to the Hurd auf der GNU Webseite, 2. Oktober 2005
  2. Porting the Hurd to another microkernel auf der GNU Webseite, 29. Juni 2011
  3. GNU/Hurd statt Linux-Kernel auf Netzwelt.de, zuletzt abgerufen am 20. Juli 2011

Weblinks

 Commons: HURD – Sammlung von Bildern, Videos und Audiodateien

Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • GNU Hurd — Hurd redirects here. For other uses, see Hurd (disambiguation). GNU Hurd HURD Live CD Company&# …   Wikipedia

  • GNU HURD — GNU Die unter GNU verwendete Desktop Umgebung GNOME …   Deutsch Wikipedia

  • GNU Hurd — HURD …   Википедия

  • GNU Hurd — Hurd Le Hurd est un ensemble de programmes et de bibliothèques servant de base au système d exploitation GNU. Commencé vers 1990, il s agit d un logiciel libre soumis à la licence GNU GPL. Le but recherché est de remplacer les fonctionnalités d… …   Wikipédia en Français

  • GNU Hurd — Live CD de Hurd …   Wikipedia Español

  • GNU/Hurd — GNU Hurd Entwickler GNU Hurd Entwicklerteam Architekturen IA 32 …   Deutsch Wikipedia

  • Gnu hurd — Entwickler GNU Hurd Entwicklerteam Architekturen IA 32 …   Deutsch Wikipedia

  • GNU/Hurd — GNU GNU Famille Type Unix Type de noyau …   Wikipédia en Français

  • Debian GNU/HURD — GNU Die unter GNU verwendete Desktop Umgebung GNOME …   Deutsch Wikipedia

  • Debian GNU/Hurd — GNU Die unter GNU verwendete Desktop Umgebung GNOME …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”