L'approche moitié-moitié est-elle vraiment moins bonne ?
Oui, cf "μ-kernels can and must be small" sur l4ka.org.
L'approche moitié-moitié, ce serait celle de Mach: un micro-noyau qui fait pas mal de choses... et on voit que niveau performances, c'est assez catastrophique.
La seule façon d'avoir un système utilisant abondamment les méchanismes d'IPC (et donc une architecture multi-serveurs) est d'avoir de l'IPC extrêmement rapide, ce qui n'est possible qu'avec un noyau minimal ne faisant quasiment que de l'IPC.
De plus, tout ce qui est mis dans le kernel (la VM, le scheduler, ...) perd instantanément en flexibilité et en possibilités de "customization", et donc en efficacité (cf les différentes VMs sous Linux, aucune n'est meilleure dans l'absolu, mais en avoir plusieurs dans le noyau est impossible. Alors qu'avec une VM en espace utilisateur, il est possible de la changer facilement, voir même d'en avoir plusieurs qui cohabitent pour différents types programmes est possible.)
[^] # Re: Hurd bientot au niveau de l'Everest !!!
Posté par Gaël Le Mignot . En réponse à la dépêche Le Hurd bientôt au niveau de l'Everest !. Évalué à 6.
Oui, cf "μ-kernels can and must be small" sur l4ka.org.
L'approche moitié-moitié, ce serait celle de Mach: un micro-noyau qui fait pas mal de choses... et on voit que niveau performances, c'est assez catastrophique.
La seule façon d'avoir un système utilisant abondamment les méchanismes d'IPC (et donc une architecture multi-serveurs) est d'avoir de l'IPC extrêmement rapide, ce qui n'est possible qu'avec un noyau minimal ne faisant quasiment que de l'IPC.
De plus, tout ce qui est mis dans le kernel (la VM, le scheduler, ...) perd instantanément en flexibilité et en possibilités de "customization", et donc en efficacité (cf les différentes VMs sous Linux, aucune n'est meilleure dans l'absolu, mais en avoir plusieurs dans le noyau est impossible. Alors qu'avec une VM en espace utilisateur, il est possible de la changer facilement, voir même d'en avoir plusieurs qui cohabitent pour différents types programmes est possible.)
Les BSD c'est monolithique ?
Tout autant que Linux.