Dis Next, ça sert à quoi un noyau et des pilotes dans un système ?
Le noyau et ses pépins
Illustration : Flock
Le 17 juillet à 10h31
Chez Next, on aime bien proposer des articles reprenant une notion qui semble élémentaire, mais dont beaucoup ignorent le fonctionnement concret. Cette fois, on se penche sur le noyau et les pilotes, des composants essentiels à tout système d’exploitation.
Dis Next, ça sert à quoi un noyau et des pilotes dans un système ?
Le noyau et ses pépins
Illustration : Flock
Chez Next, on aime bien proposer des articles reprenant une notion qui semble élémentaire, mais dont beaucoup ignorent le fonctionnement concret. Cette fois, on se penche sur le noyau et les pilotes, des composants essentiels à tout système d’exploitation.
Logiciel
Logiciel
14 min
Avant de plonger dans ces deux notions, commençons par une question élémentaire : qu’est-ce qu’un système d’exploitation ?
Un OS (Operating System) est le logiciel faisant l’interface entre le matériel de l’ordinateur et les applications que vous utilisez. Windows, macOS et Linux en sont les exemples les plus connus. Au cœur de tout OS se trouve une pièce centrale : le noyau. Et pour que ce noyau puisse dialoguer avec chaque pièce de matériel, il s’appuie sur des programmes spécialisés : les pilotes. C’est ce duo que nous allons explorer, ainsi que la notion incontournable de « droits » qui l’accompagne.
Le noyau, ce grand chef d’orchestre
Le noyau est le cœur d’un système d’exploitation, d’où son nom. Il agit comme le grand gestionnaire qui va distribuer aux applications les ressources dont elles ont besoin. Un jeu a besoin d’accéder à la carte graphique pour calculer des scènes 3D ? Le noyau va se charger de relayer la demande. C’est le chef d’orchestre de l’environnement logiciel, veillant à ce que chacun puisse s’exprimer, dans l’ordre et la discipline. Il ne faudrait pas que deux applications mettent la main en même temps sur la même ressource.
Le noyau reste toujours en mémoire et assure les interactions entre le matériel et les composants logiciels. Pour que ces derniers puissent remplir leur rôle – vous permettre d’écrire une note, chercher un virus, communiquer… – le noyau est chargé de répartir le temps du processeur, d’allouer puis de libérer la mémoire vive, ou encore de gérer les entrées-sorties (clavier, souris, écran, réseau, stockage, imprimante…). Si un conflit éclate, le noyau doit arbitrer.
Cette situation est commune à tous les systèmes d’exploitation : Windows, Linux, macOS, Android et tous ceux apparus au cours des dernières décennies. Sa nécessité est apparue très tôt dans l’histoire de l’informatique, quand les « pionniers » se sont rendu compte que si plusieurs codes se partageaient des ressources matérielles uniques, il fallait un chef d’orchestre pour éviter que les logiciels ne se marchent dessus.
Il reste 86% de l'article à découvrir.
Déjà abonné ou lecteur ? Se connecter
Soutenez un journalisme indépendant,
libre de ton, sans pub et sans reproche.
Accédez en illimité aux articles
Profitez d'un média expert et unique
Intégrez la communauté et prenez part aux débats
Partagez des articles premium à vos contacts
expert et sans pub.
Commentaires (16)
Le 17 juillet à 10h41
Modifié le 17 juillet à 10h45
Le 17 juillet à 10h56
Le 17 juillet à 13h17
Le 17 juillet à 11h06
Le 17 juillet à 14h07
Le 17 juillet à 14h24
Le 17 juillet à 16h17
Les compéts de bench ça n'existe pas que pour l'overclocking
Le 17 juillet à 14h14
Le 17 juillet à 16h22
Le 17 juillet à 14h48
Le 17 juillet à 18h06
Le 17 juillet à 17h16
(et sur des CPUs qui n'ont pas forcément cette séparation d'espaces d'exécution)
Le 17 juillet à 23h48
Ensuite, certes les drivers sont dans le noyau par défaut, mais il y a un grand nombre d'exceptions. Pour clavier/souris en mode graphique, c'est
libinput(espace user) ; pour la souris en console texte, c'estgpm(mode user), avec certes le clavier géré par le noyau (mais c'est en train de changer, aveckmscon). Pour le driver graphique, seule la gestion de base des ressources est dans le module noyau ; la grande majorité du code (et de la complexité) est dans MESA, en espace user. Pour les imprimantes, c'est CUPS, en espace user. Pour les scanners, c'est SANE, en espace user. Pour les webcams, le noyau fournit le flux brut de la caméra, tous les codecs sont en espace user. Pour l'audio, il y a une bonne partie d'ALSA en noyau (trop, je pense, toute la partie MPU401 par exemple pourrait en sortir à mon avis), mais tout ce qui est codec, routage, resampling est en espace user (pulseaudio, pipewire, jackd) ; en Firewire, on avait la pile complète en espace user (FFADO). Bref, c'est dans le noyau par défaut, mais les exceptions font qu'au final, la situation ne semble pas si éloignée que ça de ce que fait Windows.Le 18 juillet à 16h18
Le 18 juillet à 22h20
kdbus. Attention, il est de retour cette année sous la forme debus1. Mais ça m'étonnerait que ce soit accepté upstream.Signaler un commentaire
Voulez-vous vraiment signaler ce commentaire ?