GNU/Linux >> Tutoriels Linux >  >> Linux

Qu'est-ce qui empêche les distributions d'utiliser le dernier noyau Linux ?

Je ne travaille pas pour une distribution, mais je peux penser à au moins deux raisons :

  • Certaines distributions appliquent leurs correctifs personnalisés au noyau qui ne sont pas encore fusionnés dans la ligne principale. Cela signifie que pour chaque mise à jour du noyau, ils doivent s'assurer que leurs correctifs ne cassent rien et fonctionnent toujours correctement.
  • Même la dernière version stable du noyau peut contenir un bogue, les distributions qui prennent la fiabilité au sérieux voudront passer par certaines procédures/processus de test avant de livrer un noyau à leurs clients.

L'appel système du noyau Linux les interfaces sont très stables. Mais le noyau a d'autres interfaces qui ne sont pas toujours compatibles.

  • /proc est généralement stable, mais il y a eu quelques changements dans le passé (par exemple, certaines interfaces passant à /sys quelque temps après /sys a été créé).
  • Un certain nombre d'interfaces liées aux appareils ont été supprimées par le passé.
  • /sys contient des interfaces stables (listées dans Documentation/ABI/stable ) et d'autres qui ne le sont pas. Vous n'êtes pas censé utiliser ceux qui ne le sont pas, mais parfois les gens le font, et une simple mise à jour de la sécurité et de la stabilité ne devrait pas leur faire de tort.
  • Il y a eu des incompatibilités avec modutils dans le passé (les nouveaux noyaux nécessitant une version plus récente de modutils), même si je pense que c'était il y a assez longtemps.
  • Il y a également eu des incompatibilités concernant le processus de démarrage sur certaines configurations inhabituelles. Même l'augmentation de la taille du noyau pourrait causer des problèmes sur certains systèmes embarqués.
  • Alors que le noyau est externe les interfaces sont assez stables, les internes les interfaces ne le sont pas. La règle pour les interfaces internes est que n'importe qui peut les casser tant qu'elles corrigent des usages internes, mais la réparation des modules tiers est de la responsabilité de l'auteur desdits modules. Dans l'ensemble, un grand nombre d'installations exécutent des modules tiers :pilotes supplémentaires pour le matériel qui n'était pas pris en charge par le noyau (si le matériel est pris en charge par le nouveau noyau, c'est bien, mais que se passe-t-il si ce n'est pas le cas), pilotes propriétaires ( alors que le monde serait meilleur si tous les pilotes étaient open source, ce n'est pas le cas ; par exemple, si vous voulez de bonnes performances GPU 3D, vous êtes quasiment coincé avec des pilotes propriétaires), etc.
  • Certaines personnes ont besoin de recompiler leur noyau ou certains modules tiers. Les noyaux plus récents ne peuvent souvent pas être compilés avec des compilateurs plus anciens.

Dans l'ensemble, la principale raison de ne pas passer à une version plus récente du noyau est les modules tiers.

Certaines distributions proposent néanmoins des noyaux récents en option. Par exemple, Debian met les noyaux de testing à la disposition des utilisateurs de la version stable via des backports. De même, sur Ubuntu LTS, les noyaux des versions les plus récentes d'Ubuntu sont disponibles, mais ne sont pas utilisés par défaut. Ceci est surtout utile pour les nouvelles installations sur du matériel qui n'était pas encore pris en charge lorsque la distribution a été finalisée.


Linux
  1. Qu'est-ce que le noyau Linux et devez-vous mettre à niveau vers le dernier noyau ?

  2. Linux - Quelles sources d'entropie sont utilisées par le noyau Linux ?

  3. Que signifie __init dans le code du noyau Linux ?

  4. Quel est l'avantage de compiler votre propre noyau Linux ?

  5. Que font les paramètres du noyau acpi_osi=linux et acpi_backlight=vendor ?

Déballage du dernier ordinateur portable Linux de System76

Comment installer la dernière version d'OpenSSL à partir de la source sous Linux

Quelle est la différence entre les noyaux macOS et Linux

Comment installer le dernier noyau Linux sur CentOS 7

Qu'est-ce que le Shell sous Linux ?

Comment puis-je réserver un bloc de mémoire à partir du noyau Linux ?