Historique: Le noyau Linux
Aperçu de cette version: 20
Le noyal
Table des matières
Informations
Site web officiel : http://kernel.org/.Doc concernant la liste de développement du noyau : http://kernel.org/pub/linux/docs/lkml/.
Les arbres de développement du noyau (GIT) : http://git.kernel.org/.
Présentation
Le noyau, ou Kernel, en anglais, est la couche la plus basse du système Unix / Linux prenant en compte la gestion des périphériques à leurs plus bas niveaux. Il contient donc plusieurs pilotes (génériques ou spécialisés) pour l'aider à amorcer votre système.Pour schématiser, le noyau va être le lien entre votre disque dur, votre clavier, votre écran, ... ... C'est la première couche logicielle permanente qui va être lancée au démarrage de l'ordinateur. (BIOS >> Loader >> Noyau)
Le noyau Linux est naturellement performant en terme de gestion multi-tâche : chaque opération est découpée en une multitude de "processus légers", qu'un ordonnanceur (dans le noyau) organise en fonction de la priorité attribuée à l'opération. Ainsi, vous pouvez utiliser un grand nombre d'applications simultanément, celles-ci garderont un fonctionnement "fluide".
➡️ OK, mais pourquoi on me parle de ça sur un site dédié à la MAO ?
Explications
En matière de MAO, il peut être intéressant de prioriser davantage les processus audio pour diminuer la latence (temps de traitement).En fait cela dépendra surtout de vos besoins, la latence peut ne pas avoir d'importance pour vous (par exemple si vous éditez des partitions), ou au contraire être un élément déterminant (si vous voulez enregistrer 27 pistes en même temps).
Dans cette optique, on peut classer en 3 types les noyaux Linux disponibles :
- Standard : le noyau livré sur la plupart des distributions généralistes.
- Low Latency ("basse latence") : livré sur certaines distributions spécialisées MAO, il offre un certain nombre d'améliorations permettant de réduire de façon significative la latence, tout en restant utilisable dans un cadre bureautique classique. De plus, il contient en général les patchs permettant le même support matériel qu'un noyau standard. Ce choix conviendra dans la plupart des cas, d'autant qu'il est en général installable très facilement via le gestionnaire de paquets de la plupart des distributions.
- Real-Time ("temps réel") (RT): noyau modifié en profondeur (par un patch développé par les développeurs du patch RT) pour permettre un fonctionnement du type système temps réel. C'est celui qui vous permettra d'obtenir les meilleurs résultats en terme de latence, mais au prix d'une incompatibilité avec pas mal de patchs / modules du noyau (donc moins de support matériel). De plus, ce noyau peut poser des problèmes avec des applications boguées ou peu stables (difficile de reprendre la main sur une application plantée qui dispose d'une priorité maximale ! Ceci dit, nous pourrons allez voir du côté de das_watchdog pour éviter ce genre de comportement du système.).
Tordons ici le cou à la rumeur, il n'est pas nécessaire d'utiliser un Noyau Temps-Réel pour faire de la MAO. Si vous démarrez, commencez déjà par vous faire la main sur les noyaux fournis par votre distribution. D'autant plus que l'installation d'un noyau RT sur votre système demande de savoir précisément ce que l'on fait.
Rappel : l'installation de tout nouveau noyau nécessitera la mise à jour de votre gestionnaire de démarrage (Grub ou Lilo), puis un redémarrage de l'ordinateur.
➡️ Mais, comment savoir sous quel noyau on tourne ?
Comment savoir
Vous pouvez regarder la description de votre noyau dans votre gestionnaire de paquet ou bien alors utiliser les commandes suivantes dans un terminal :Copy to clipboard
$cat /proc/version Linux version 2.6.18-rt5 (root@Conroe) (gcc version 4.1.1 (Gentoo 4.1.1)) #1 SMP PREEMPT Sun Oct 1 17:22:00 CEST 2006
Ici on voit bien la version du kernel avec la mention PREEMPT
Ou également (pas disponible sur tous les systèmes) :
Copy to clipboard
$cat /proc/sys/kernel/kernel_preemption 1
Le chiffre "1" confirme que le mode pré-emptif est actif (un 0 l'aurait infirmé)
Aller plus loin
Si les latences faibles vous intéresse, vous pouvez aller voir la page dédiée au noyau RT.