Cette page a été traduite automatiquement par DeepL.
Switch to English
Le noyau est le cœur d'un système d'exploitation, l'élément qui se trouve entre vos applications et votre matériel. Il gère les ressources de votre ordinateur (processeur, mémoire, stockage, périphériques) et offre aux logiciels un moyen sûr et cohérent de les utiliser. Considérez-le comme un agent de circulation et un traducteur qui veille à ce que tout fonctionne sans heurts.
Que fait réellement le noyau ?
À un niveau élevé, le noyau :
Les planifications fonctionnent. Elles déterminent quel programme obtient du temps CPU et à quel moment.
Gère la mémoire. Conserve les données de chaque application séparément et alloue la mémoire vive (RAM) selon les besoins.
Gère les périphériques et les fichiers. Communique avec les pilotes de votre GPU, SSD, carte réseau et systèmes de fichiers.
Assure la médiation des E/S. Lit et écrit des fichiers et des données réseau pour le compte des applications.
Renforce la sécurité. Sépare le mode utilisateur (applications) du mode noyau (le cœur du système d'exploitation) afin qu'une application défectueuse ne puisse pas planter l'ensemble du système.
Le noyau est-il la même chose que le système d'exploitation ?
Pas tout à fait. Le terme « système d'exploitation » désigne généralement le noyau ainsi que les outils et services de l'espace utilisateur (shells, bibliothèques, environnements de bureau, services d'arrière-plan, etc.). Dans le langage courant, ces termes sont souvent confondus, mais à proprement parler, le noyau n'est que le cœur privilégié sur lequel tout le reste repose.
Comment les applications « communiquent » avec le noyau ?
Lorsqu'une application doit enregistrer un fichier ou envoyer un paquet réseau, elle effectue un appel système, une requête contrôlée qui passe du mode utilisateur au mode noyau. Le noyau vérifie les autorisations, achemine la requête vers le sous-système ou le pilote approprié, puis renvoie le résultat à l'application. Cette frontière protège les applications les unes des autres et des aspects complexes du matériel.
Existe-t-il différents types de noyaux ?
Oui. Vous verrez quelques grandes conceptions abordées :
Les noyaux monolithiques regroupent les services de base et de nombreux pilotes. (Exemple : le noyau Linux.)
Les micro-noyaux conservent un noyau compact et déplacent davantage de services hors du noyau afin de les isoler.
Les approches hybrides ou modulaires combinent des idées pratiques. Les systèmes intègrent ou retirent souvent des composants du noyau pour des raisons de performances ou de sécurité.
Tous ces systèmes visent le même objectif : un contrôle fiable et rapide du matériel. (Le XNU d'Apple, par exemple, combine un micro-noyau Mach avec une couche BSD ; Windows documente une architecture de noyau en couches.)
Est-ce que je mets à jour « le noyau » directement ?
Cela dépend de votre plateforme :
Windows/macOS : les mises à jour du noyau sont fournies dans le cadre des mises à jour normales du système d'exploitation.
Linux et nombreux serveurs/appareils : le noyau est un paquet séparé que vous pouvez mettre à jour via votre distribution ou votre fournisseur. Les noyaux à support à long terme (LTS) privilégient la stabilité au détriment des nouvelles fonctionnalités.
La mise à jour apporte une prise en charge matérielle, des améliorations en termes de performances et des correctifs de sécurité, mais sur les systèmes de production, vous devrez généralement la tester au préalable.
Que se passe-t-il pendant le démarrage ?
Version très courte : le micrologiciel/UEFI s'exécute en premier, le chargeur d'amorçage charge le noyau dans la mémoire, le noyau initialise le matériel et les pilotes, monte le stockage, puis lance le premier processus de l'espace utilisateur qui démarre le reste du système. Ensuite, il planifie en continu le travail et gère les E/S en arrière-plan.
Mon téléphone a-t-il un noyau ?
Tout à fait. Les téléphones Android, les consoles de jeux, les routeurs, les téléviseurs intelligents fonctionnent pour la plupart avec une variante d'OS dotée d'un noyau. Ce concept ne s'applique pas uniquement aux ordinateurs de bureau et aux ordinateurs portables.
Si un problème survient au sein du noyau (comme une erreur critique du pilote), le système d'exploitation s'arrête souvent plutôt que de risquer de corrompre les données. Les systèmes de type Unix signalent une panique du noyau; Windows affiche une erreur d'arrêt (l'« écran bleu »). C'est spectaculaire, mais il s'agit d'une mesure de sécurité de dernier recours qui protège vos fichiers.
Récapitulatif rapide
Le noyau est le cœur privilégié du système d'exploitation qui gère le processeur, la mémoire, les périphériques et les entrées-sorties.
Les applications interagissent avec lui via des appels système à travers la frontière entre le mode utilisateur et le mode noyau.
Différentes conceptions de noyau (monolithique, micro-noyau, hybrides) permettent d'équilibrer les performances, l'isolation et la maintenabilité.
Termes associés
Espace utilisateur / Espace noyau : zones où s'exécutent les applications normales par opposition au noyau.
Appel système (syscall) : point d'entrée contrôlé entre les applications et les services du noyau.
Pilote : composant du noyau ou de l'espace utilisateur qui sait comment faire fonctionner un périphérique spécifique.
Planificateur : composant du noyau qui décide quel thread sera exécuté ensuite.
Mémoire virtuelle : fonctionnalité du noyau qui attribue à chaque processus son propre espace d'adressage.
Bootloader : programme qui charge le noyau dans la mémoire au démarrage.
Panique du noyau / erreur d'arrêt : erreur fatale en mode noyau qui arrête le système afin d'éviter tout dommage.