• [^] # Re: Hurd sur L4 et Hurd/GNUMach sur PPC ?

    Posté par . En réponse à la dépêche Le Hurd bientôt au niveau de l'Everest !. Évalué à 10.

    Bon, j'en profite pour répondre à l'ensemble du thread.

    -Il y a sur savanah un projet l4hurd consacré au port de Hurd sur micronoyau L4. C'est tellement actif que ça a l'air abandonné depuis 6 mois? Quelqu'un a des infos sur ce projet ?

    Les problèmes d'organisation à L4Hurd .. :-) Bien difficile à expliquer. En fait, à l'origine, L4Hurd - c'est le nom qu'on donne habituellement au port du Hurd sur L4, n'y voyez aucun caractère officiel ou logique, il a juste le mérite de ne comporter aucune ambiguïté - est en fait un projet discuté depuis d'assez nombreuses années. La mailing list l4-hurd a été créée en octobre 2000, si mes souvenirs sont bons, et à l'époque, c'était Yoshinori K. Okuji, qui avait participé à pas mal de choses concernant le Hurd et GNU Mach, et qui est l'auteur de Grub, qui voulait le démarrer. Farid Hajji, à l'époque, voulait également participer au port. Les deux sont des gens que je respecte, ayant un niveau de connaissances techniques générales, et sur le Hurd et Mach en particulier, qui dépasse la plupart des gens - qui dépasse le mien, sans hésiter, même si on finit par atteindre des niveaux similaires. Mais, ils n'ont pas la même vision, je pense, que Thomas, Marcus ou Neal, du développement, et étaient plus dans une approche pragmatique de perfection technique quant aux rouages internes. Ainsi, une VMM à peu près « monolithique » (bien qu'en user space) qui reprendrait les bases de UVM (la VM de NetBSD (les médisants (et les épitéens) disent que c'est la seule chose de bien dans NetBSD .. :-> (et les intelligents que lisp ownaize)) avait été prévue. Ce port se fondait sur la version des API précédente, qui a abouti à Hazelnut, dernière implémentation de L4 sortie du projet L4Ka. Mais, rien de concret n'a *vraiment* été fait, Okuji et Farid ayant très peu de temps.

    Là-dessus est arrivé Neal H. Walfield, développeur du Hurd depuis environ 1999, qui a eu la chance de rencontrer, lors du 18C3 (18ème Chaos Communication Congress (où Neal avait donnée une conf sur le Hurd dont on peut trouver les transparents sur http://web.walfield.org/papers/hurd-conference-ccc-20011228/(...) )), un certain nombre de gens travaillent sur L4, principalement les gens de l'université de Dresden - projet L4Ka. C'est à cette occasion là que Neal, comme Marcus, furent convaincus de la nécessité du port sur L4 - et suite à ça que le premier pas de L4Hurd va être suivi, avec la décision de Neal de passer son été avec les gens de L4Ka pour coder le portage. Ne rêvez pas, ça ne veut pas dire qu'il avait fini au bout :-) Il est très difficile de définir autant de nouvelles interfaces en si peu de temps, surtout quand on a pas envie de vivre reclus, et Neal n'est pas tout à fait le genre à vivre reclus ;-) Dans tous les cas, un certain nombre de choses avaient été définies, dont notamment l'ensemble des serveurs nécessaires, la gestion de choses comme les privileged system calls, la façon dont serait gérée le VMM[0].

    Ian Duggan, et le projet L4Hurd enregistré sur Savannah, font partie de la suite du projet de Okuji et Farid, fondé sur Pistachio, et pour lequel peu ou rien n'a été fait - Pistachio est réellement le seul à nous intéresser, en réalité. Il est donc normal qu'il soit inactif. Le code fait par Neal H. Walfield et auquel on a contribué n'est disponible que dans un CVS privé - il ne mérite pas réellement l'attention, c'est plus les mails et les idées qui en ont résulté qui la mérite. Et, surtout, il repose entièrement sur l'API d'un Pistachio pas encore sorti, donc ..

    -Il y a des réussite de hurd/GnuMach sur PPC, d'après Google... Quelqu'un a un lien qui explique comment faire que je me tente ça aussi ?

    Tous les détails ici : http://lists.debian.org/debian-hurd/2002/debian-hurd-200204/msg0003(...) ; pour les patches manquants, les différents détails, simplement chercher les mails de Peter sur bug-hurd[1], et voir les plus à jour. Au passage : Pistachio est porté sur PowerPC.

    Et si jamais la licence n'est pas sympathique du tout, qu'est-ce qui se passe ? Réimplémentation libre de la version X2 de l'interface ? Abandon du projet L4Hurd ? On l'utilise en attendant une réimplémentation libre ou un changement de licence ? (à la manière de KDE et Qt à leurs débuts) Bref, qu'est-ce qui se passe ?

    Une très bonne question, que je vous remercie d'avoir posée :-) Bon, d'abord, ce qui ne se passera pas : en aucun, aucun cas, il n'y aura abandon du projet L4Hurd. Et, on n'utilisera pas une version non-libre, il n'en est évidemment absolument pas question - bien que le problème soit différent que KDE et Qt, parce que l'exception de la GPL concernant les bibliothèques et outils essentiels au système serait facilement exploitable « légalement ». Bon, dans tous les cas, il est clair, net, et précis, que la licence de Pistachio, dont des pre-releases devraient être publiées d'ici quelques semaines à peine, des dires des développeurs qui s'y affairent, devrait être « sympathique ». C'est à dire, probablement quelque chose autour du BSD. Dans cette perspective, et vu le bon boulot des gens de L4Ka, une réimplémentation à nous utilisant les interfaces X2 (de Version4, plus généralement) n'est pas à l'ordre du jour.
    [0]: http://web.walfield.org/papers/better-best-effort-20021026/(...)
    [1]: http://mail.gnu.org/archive/cgi-bin/namazu.cgi?query=pjbruin&su(...)