UML, si je ne m'abuse, utilise des modules noyau. Ces modules noyaux sont, comme tout programme informatique, sujets à bug. S'il y a une seule différence à retenir entre le Hurd et Linux en tant que noyaux, c'est bien que les modules Linux ont d'énormes privilèges, qui sont très certainement disproportionnés par rapport à ce qu'ils devraient: un module a accès, à travers le noyau, à l'ensemble de l'espace d'adressage du noyau, il peut foutre une merde noire s'il est mal codé, et faire planter toute la machine alors meme qu'il ne sert qu'à une fonction très particulière.
Les serveurs Hurd n'ont pas ce type de privilèges. Ils tournent dans l'espace utilisateur. Je pense qu'on peut tenter un parallèle (corrigez moi si je me trompe) avec les serveurs DNS, FTP, Web, etc. bref les applications serveurs sous n'importe quel OS, qui tournent sous un utilisateur quelconque, et dont les droits sont restreints à ceux de cet utilisateur.
Ainsi (et là je parle de quelque chose dont je n'ai qu'une connaissance très imparfaite, donc merci de me corriger), je pense qu'on peut assigner à un certain serveur Hurd un utilisateur (par exemple, l'utilisateur "fs" au serveur de systèmes de fichiers), et ainsi limiter les retombées d'un bug ou d'un trou de sécurité quelconque. Bien sur, un bug dans le serveur de systèmes de fichiers peut etre catastrophique: après tout, celui qui gère le système de fichiers a un accès privilégié aux fichiers, il peut donc les foutre en l'air ! L'idée est qu'il ne peut pas faire de mal en dehors de ce qu'il est censé gérer. Un peu l'idée d'un chroot, ou l'utilisateur peut bien sur massacrer tous ses fichiers, mais ça n'affectera pas les autres utilisateurs.
[^] # Re: GNU/Hurd vs GNU/Linux ?
Posté par bmc . En réponse à la dépêche Le Hurd bientôt au niveau de l'Everest !. Évalué à 2.
Les serveurs Hurd n'ont pas ce type de privilèges. Ils tournent dans l'espace utilisateur. Je pense qu'on peut tenter un parallèle (corrigez moi si je me trompe) avec les serveurs DNS, FTP, Web, etc. bref les applications serveurs sous n'importe quel OS, qui tournent sous un utilisateur quelconque, et dont les droits sont restreints à ceux de cet utilisateur.
Ainsi (et là je parle de quelque chose dont je n'ai qu'une connaissance très imparfaite, donc merci de me corriger), je pense qu'on peut assigner à un certain serveur Hurd un utilisateur (par exemple, l'utilisateur "fs" au serveur de systèmes de fichiers), et ainsi limiter les retombées d'un bug ou d'un trou de sécurité quelconque. Bien sur, un bug dans le serveur de systèmes de fichiers peut etre catastrophique: après tout, celui qui gère le système de fichiers a un accès privilégié aux fichiers, il peut donc les foutre en l'air ! L'idée est qu'il ne peut pas faire de mal en dehors de ce qu'il est censé gérer. Un peu l'idée d'un chroot, ou l'utilisateur peut bien sur massacrer tous ses fichiers, mais ça n'affectera pas les autres utilisateurs.