Le noyau Unix joue le rôle d'intermédiaire entre vos programmes et votre matériel. Premièrement, il gère la mémoire pour tous les programmes en cours d'exécution (processus), et s'assure qu'ils occupent tous une part équitable (ou non) du temps processeur. En plus, il fournit une interface (simple à utiliser) aux programmes pour communiquer avec votre matériel (appels système).
Bien sûr c'est un petit peu plus compliqué que ça, mais ces fonctions de bases sont les plus importantes à connaître.
Les nouveaux noyaux offrent plus de facilité pour communiquer avec plus de matériels (c'est-à-dire qu'ils gèrent plus de périphériques...), ils peuvent avoir une meilleure gestion des processus, tourner plus rapidement que les anciennes versions, être plus stables et ils corrigent les erreurs stupides des versions précédentes. Beaucoup de gens mettent à jour leurs noyaux car ils veulent avoir les nouveaux pilotes de périphériques et les corrections d'erreurs.
Jetez un coup d'oeil sur le Hardware-HOWTO. Vous pouvez aussi regarder le
fichier "config.in
" dans les sources de Linux, ou
juste essayer "make config
", ce qui vous permet de voir tous
les matériels supportés par le noyau standard, mais pas tout ce que
Linux supporte. En effet, beaucoup de périphériques assez utiles
(tels les périphériques PCMCIA, et quelques lecteurs de cartouches) sont des
modules chargeables maintenus et distribués séparément.
Linus recommande une version de gcc dans le fichier README
fourni
avec le code source. Si vous ne possédez pas cette version, la
documentation dans la version recommandée de gcc devrait vous indiquer si
vous avez besoin de mettre à jour votre libc. Ce n'est pas une opération
compliquée, mais il est important de suivre les instructions.
Ce sont des parties du noyau (pilotes de périphériques généralement) qui ne sont pas compilées dans celui-ci. On peut les compiler séparément, les insérer et les retirer du noyau à n'importe quel moment. En raison de cette souplesse, c'est devenu la méthode préférée pour coder certaines fonctionnalités du noyau. Bon nombre de pilotes de périphériques tels que PCMCIA et les gestionnaires de cartouches QIC-80/40 sont des modules chargeables.
Cela dépend de la configuration de votre système. Tout d'abord, le code source compressé de Linux fait presque 16 Mo pour la version 2.2.9. Vous voulez généralement le garder dans un coin après l'avoir décompressé. Décompressé et compilé avec une configuration moyenne, il occupe 67 Mo de plus.
Sur les machines récentes la compilation demande beaucoup beaucoup moins de temps que sur les anciennes. Un AMD K6-2/300 avec un disque rapide peut compiler un noyau 2.2.x en à peu près quatre minutes. Avec de vieux Pentium, 486 ou 386 soyez prêts à patienter, éventuellement des heures, jours...
Si cela vous pose problème et que vous avez accès à une machine rapide, vous pouvez compiler sur celle-ci (fournissez les bons paramètres, assurez-vous que vos utilitaires sont à jour, etc.) et transférer l'image du noyau sur la machine lente.