GNU 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 publié sous licence GNU GPL.
Le but recherché est de remplacer les fonctionnalités d'un noyau de type UNIX, tout en maintenant une large compatibilité avec ceux-ci. Il respecte autant que possible les spécifications POSIX, tout en évitant les restrictions d'action arbitrairement imposées à l'utilisateur.
Son nom est un double acronyme récursif, « Hurd » signifiant « Hird of Unix-Replacing Daemons », et « Hird » « Hurd of Interfaces Representing Depth » et un jeu de mots avec la proximité du mot "herd", qui signifie troupeau en anglais.
Contrairement aux noyaux UNIX classiques, essentiellement monolithiques, GNU Hurd se fonde sur un micro-noyau, qui fournit uniquement les fonctions de base (accès basique au matériel et à la mémoire, gestion des tâches et de la communication entre celles-ci). Il se compose d'une série de services (appelés serveurs), fournissant des fonctions et des abstractions de plus haut niveau (système de fichiers, processus Unix, gestion des permissions, console, pilotes évolués...). Cette conception est donc plus modulaire et plus facile à faire évoluer dynamiquement. Cependant, ces serveurs indépendants doivent fréquemment communiquer, ce qui affecte les performances du système.
Le micro-noyau utilisé est GNU Mach, une implémentation Mach. Il existe d'autres systèmes de type UNIX utilisant Mach, tels OSF/1, NeXTSTEP, et MkLinux. Ils ont en commun une architecture basée sur le modèle serveur : le noyau monolithique du système UNIX traditionnel est ainsi remplacé par deux composants distincts, le micro-noyau et un serveur monolithique qui fournit la compatibilité Unix (BSD le plus souvent, sauf évidemment pour MkLinux). Mac OS X utilise également Mach comme base de son noyau monolithique xnu.
Depuis 2004, des efforts ont été réalisés pour exécuter le portage de Hurd sur une nouvelle génération de micro-noyau, le L4, mais la progression a été très lente, par manque de temps et de développeurs.