3. Structures de noyau, politique et mécanisme
3.1 Politique contre mécanisme
La politique décide quoi faire; le mécanisme fournit le moyen de le faire. Une politique d'ordonnancement choisit le prochain processus, alors que le changement de contexte permet techniquement de lui attribuer le CPU. En mémoire, une politique décide de la répartition et les tables de pages ainsi que la protection matérielle l'appliquent.
Séparer ces deux plans permet de modifier une politique sans reconstruire le mécanisme et de réutiliser un même mécanisme pour plusieurs politiques.
3.2 Architectures principales
| Structure | Principe | Forces | Limites |
|---|---|---|---|
| Monolithique | La plupart des services résident dans le noyau et communiquent directement. | Performance, appels internes directs | Grande surface privilégiée; une panne peut compromettre tout le système |
| En couches | Chaque couche utilise les services des couches inférieures. | Responsabilités claires, raisonnement et test facilités | Découpage parfois artificiel; passages supplémentaires |
| Micro-noyau | Le noyau conserve un minimum de fonctions; plusieurs services passent en espace utilisateur. | Isolation, extensibilité, réduction du code privilégié | Messages et changements de contexte plus nombreux |
| Modulaire | Des composants du noyau sont chargés au besoin. | Souplesse et extension dynamique | Les modules restent souvent privilégiés et doivent être fiables |
| Hybride | Combinaison pragmatique de plusieurs approches. | Compromis adapté aux systèmes modernes | Classification moins nette et architecture plus complexe |
Linux demeure largement monolithique tout en acceptant des modules chargeables. Windows est principalement monolithique avec certains principes inspirés des micro-noyaux. Le bon choix dépend du compromis entre performance, isolation, maintenance et coût de communication.
Les implémentations emploient généralement l'assembleur près du matériel, le C pour une grande partie du noyau, puis le C, le C++ et des scripts pour les programmes système. Le choix équilibre contrôle, performance, portabilité, sécurité et maintenabilité.