• [^] # Re: Comment ils font ?

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Haiku a 15 ans. Évalué à 9.

    C'est (comme souvent) plus compliqué. Toujours dans le cas de Haiku, que je connaît bien.

    Lorsque le projet a été lancé (en 2001, donc), Linux, c'était pas encore vraiment ça. Ubuntu n'existait pas, Debian était particulièrement compliquée à installer, la distribution à la mode, c'était Corel. Le support de l'USB arrivait à peine, le SMP était encore tout récent.

    Il y avait en plus un problème de licence: dès le début, Haiku a choisi la licence MIT car elle permettrait, plus facilement que la GPL, de partager du code avec une éventuelle continuation propriétaire de BeOS. Utiliser un noyau Linux n'était donc pas possible.

    Enfin, une des contraintes du projet était la compatibilité avec BeOS, sur tous les points, y compris les pilotes de périphériques (qui fonctionnent encore aujourd'hui sous Haiku). Et aussi, il y a des besoins spécifiques pour les APIs utilisateur auxquelles le noyau Linux n'aurait pas permis de répondre (je pense aux "ports", une IPC utilisée pour implémenter les BMessages et beaucoup d'autres choses dans Haiku).

    D'ailleurs, le noyau de Haiku n'est pas parti de zéro, c'est un fork de NewOS, un noyau développé par un des ex-employés de Be qui travaille en ce moment sur Fuchsia chez Google.

    Si c'était à refaire aujourd'hui, et sans la contrainte de compatibilité, il est probable qu'on utiliserait un noyau BSD (on emprunte du code chez FreeBSD, par exemple tous les drivers réseau).

    Plus de lecture à ce sujet:
    https://archive.fosdem.org/2016/schedule/event/could_haiku_become_bsd/

    Et du code source (des morceaux de l'userland Haiku sur un noyau Linux ou BSD):
    https://github.com/Ithamar/cosmoe