Rappelons le processus ayant conduit à la sortie de cette nouvelle version. Après la sortie du 2.6.19, Andrew Morton a indiqué la liste des patchs suffisamment stables pouvant migrer de sa branche de test (la -mm) vers la branche de Linus pendant la période d'intégration. Cette période, d'une durée de deux semaines, permet l'ajout de toutes les nouveautés prévues.
Une fois ce délai de deux semaines écoulé, Linus annonce la sortie de la première release-candidate (la -RC1) et il n'est plus permis d'ajouter de nouvelles fonctions. Seul le travail de correction des bugs et de stabilisation est autorisé, rythmé régulièrement par les releases-candidates successives toutes les quelques semaines. La -RC3 est ainsi apparue juste avant la nuit du réveillon pour éviter, selon Linus, tout problème avec l'organisation MADR ("Mothers Against Drunk Releases").
La RC6, annoncée le 24 janvier dernier (voir le message d'annonce) devait être la version finale, cependant quelques régressions persistaient et Linus a insisté le 30 janvier pour sortir une RC7 afin de corriger cela.
En dépit des espoirs initiaux d'une version facile à développer, car sans grandes nouveautés conceptuelles, le chemin n'a pas été semé de roses. Un bug vicieux et subtil a notamment déclenché une véritable traque à grande échelle dont la saga est narrée en plusieurs épisodes sur le site Kerneltrap.
C'est Linus lui-même qui a finalement eu la peau du bug et un article explicatif (très technique) est disponible ici pour les curieux. Les nouveautés marquantes du nouveau noyau :
- La principale innovation de la version 2.6.20 est l'intégration de la technologie de virtualisation KVM dans le noyau. C'est la première fois qu'une telle technologie est acceptée dans la branche principale (mainline) car ses concurrents (Xen et autres) sont des patchs externes. C'est la simplicité qui a payé car KVM consiste seulement en un module noyau et un composant en espace utilisateur. Il s'appuie sur les extensions hardware des processeurs récents (Intel VT et AMD SVM). Selon cet article détaillé la solution KVM est plus simple et plus maintenable et la communauté des développeurs va maintenant converger vers cette solution au détriment de Xen.
- Une option de fonctionnement du noyau à 300 Hz a été ajoutée. Elle permet d'obtenir des nombres entiers quand on la divise par le nombre d'images par seconde des vidéos PAL ou NTSC. Les formats à 25 images/s et 30 images/s sont donc plus facilement supportés.
- Le support du protocole UDP-Lite est ajouté dans le noyau. UDP-Lite est spécialement adapté pour le transport en streaming des flux média. Un survol technique de ce nouveau protocole est disponible sur ce wiki
- Toujours en ce qui concerne le réseau on note que DCCP supporte maintenant l'infrastructure de sécurité SELinux ce qui permet un contrôle plus fin.
- Les bus SCSI peuvent maintenant être scannés de façon asynchrone ce qui améliore la vitesse de démarrage.
- Le système permettant d'observer les entrées/sorties (I/O Accounting) est largement modifié pour améliorer sa précision. Les développeurs Samba se réjouissent de cette amélioration qui va permettre d'observer plus précisément le comportement de leur logiciel dans tous les cas de figure.
- Le système de fichier pour cluster GFS2 (introduit dans le noyau précédent) est largement amélioré. Le gestionnaire des verrous (lock manager) supporte maintenant les connections TCP.
- La couche générique HID n'est plus réservée seulement aux pilotes des périphériques USB et accepte maintenant d'autres protocoles (Bluetooth...etc). L'utilisation de cette couche générique permet une réutilisation et un partage optimal du code.
- Le mécanisme de Workqueue est largement modifié afin de réduire drastiquement son empreinte mémoire. Cela a conduit à des modifications de l'API et à des corrections à travers tout le noyau. Workqueue est utilisé pour gérer les processus afin de les "endormir" et les "réveiller" après un intervalle de temps spécifié.
- Le travail d'annotation du code du noyau continue afin de permettre les travail de sparse. Cet outil, écrit à l'origine par Linus Torvalds, utilise des annotations sémantiques présentes dans le code pour faire une analyse des erreurs potentielles lors de la compilation (pointeurs mémoires, verrous...etc). Le sous-système réseau est maintenant largement annoté pour permettre cette analyse automatique.
- Pour améliorer encore la qualité et la robustesse du noyau une infrastructure d'injection d'erreur a été ajoutée. Cela semble paradoxal mais c'est en fait très simple : le noyau Linux actuel est très stable ce qui entraîne que le code de gestion des erreurs n'est pas souvent sollicité. Pour s'assurer de la robustesse de ce code la nouvelle infrastructure va permettre de générer des erreurs afin de vérifier que le noyau se comporte comme prévu dans tous les cas imaginables. Une documentation complète est disponible pour utiliser au mieux ce mécanisme original.
- Un nettoyage des fichiers de header de Linux a été effectué. Cela diminue le nombre d'includes afin d'accélérer la compilation du noyau.
- Comme d'habitude énormément de pilotes sont améliorés, corrigés ou ajoutés. Il est impossible de tous les citer mais, à titre d'exemple parmi d'autres, on peut noter l'intégration du pilote "usbvision" qui permet le support générique de plus de cinquante webcams USB.
En ce qui concerne les évolutions futures du noyau Linux on peut se pencher sur les patchs qui ont rejoint la branche expérimentale -mm d'Andrew Morton.
Une première évolution sera la possibilité d'avoir des entrées/sorties asynchrones dans les fichiers tampons (Asynchronous buffered file I/O). Actuellement ces entrées/sorties asynchrones existent seulement en cas de connexion directe mais si le système de fichier utilise la couche d'abstraction (Virtual File System) alors cette possibilité n'existe plus. Une série de patchs est maintenant en phase de test afin de corriger cela.
On trouve également dans la branche -mm le support unifié des pilotes en espace utilisateur. Il peut être utile dans certains cas, par exemple quand il est trop gros pour rejoindre le noyau, de faire fonctionner un pilote en tant que programme en espace utilisateur (userspace). Afin d'éviter l'anarchie de douzaines d'implémentations différentes il sera possible d'utiliser cette future interface standard. Le support unifié permettra de n'implanter dans l'espace du noyau qu'un minuscule module qui communiquera avec le pilote complet vivant, lui, en espace utilisateur.
# lorem ipsum 0.8809686525547585 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 4.
[^] # lorem ipsum 0.0553060276948903 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 10.
[^] # lorem ipsum 0.5207940903685931 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 5.
[^] # lorem ipsum 0.6413758896676599 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à -2.
[^] # lorem ipsum 0.7775789869740409 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 5.
[^] # lorem ipsum 0.09614096684021965 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.4296169247754076 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.566130844472098 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 4.
[^] # lorem ipsum 0.15498555186668928 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 7.
[^] # lorem ipsum 0.5126765524155242 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 0.
[^] # lorem ipsum 0.22177453080357473 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 4.
[^] # lorem ipsum 0.48550049819564495 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.8296063736356855 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 6.
[^] # lorem ipsum 0.49629874946204827 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.06037279969116002 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 3.
[^] # lorem ipsum 0.7917394710627752 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # Re: Le linux nouveau est arrivé!
Posté par patrick_g . Évalué à 4.
The "usbvision" driver has been merged, adding support for "more than 50" USB video camera devices.
[^] # lorem ipsum 0.23064583188914306 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.1092879689385071 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.6151995329327877 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.22133158447344936 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.4813353880134741 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 0.
[^] # lorem ipsum 0.6463198882027714 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 3.
[^] # Re: Le linux nouveau est arrivé!
Posté par patrick_g . Évalué à 4.
C'est uniquement des tuners TV et pas du tout des webcams USB ?
[^] # lorem ipsum 0.7252452883173202 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 3.
[^] # Re: Le linux nouveau est arrivé!
Posté par patrick_g . Évalué à 4.
[^] # lorem ipsum 0.9263389892190127 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
# lorem ipsum 0.3396423909251042 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 5.
[^] # Re: Rahhhhhh
Posté par patrick_g . Évalué à 6.
En fait il indique explicitement ici => http://lkml.org/lkml/2007/2/4/119 qu'il a essayé de faire une release la plus stable possible :
I tried rather hard to make 2.6.20 largely a "stabilization release".
Unlike a lot of kernels lately, there aren't really any big fundamental changes to some core infrastructure area, and while we always have bugs, I really am hoping that we fixed many more than we introduced.
Rappelons que ce kernel sera celui de la future Ubuntu Feisty et, je crois, de la future Fedora 7. C'est donc un noyau important et je trouve très bien que l'accent soit mis avant tout sur la plus grande stabilité possible.
[^] # lorem ipsum 0.5033748527088899 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 5.
# lorem ipsum 0.257602996432784 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.8376756904997636 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.5974114282032581 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.046285184143376706 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.5737929936254331 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.7425297030643837 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
# lorem ipsum 0.3840601997301543 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.8825506613427314 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.7487585840269537 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.23442911285388202 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.9254627702063534 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.6302886601819551 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.7074371676029984 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.6074802108178662 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.4072309698976865 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.07677176322487347 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.197016308267616 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.05236426466364811 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.6815523083149942 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 4.
[^] # lorem ipsum 0.9286826317465703 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.4757734588121748 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.7424379798978921 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
# lorem ipsum 0.883722694482396 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 4.
[^] # lorem ipsum 0.7095371780074547 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.49761493829788167 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 10.
[^] # lorem ipsum 0.5846274966230872 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
# lorem ipsum 0.7153261645839794 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à -9.
[^] # Re: Hans si tu nous lis !
Posté par patrick_g . Évalué à 5.
Ou alors c'est moi qui suis en panne d'humour noir aujourd'hui.
[^] # lorem ipsum 0.6675330052781226 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à -1.
[^] # lorem ipsum 0.6783675455286796 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 0.
# lorem ipsum 0.3123388572710928 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 3.
[^] # Re: ext4
Posté par patrick_g . Évalué à 2.
ici on trouve quelques mentions de délai => http://lwn.net/Articles/189950/
Je parie pour la fin 2007.
[^] # lorem ipsum 0.9353623426848672 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.11457232769073204 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 3.
# lorem ipsum 0.14287585592165203 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.24818417639302479 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 4.
[^] # lorem ipsum 0.4348338846441674 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.8435830006781807 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.9290642597983259 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 3.
[^] # lorem ipsum 0.11035111743058182 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.42617866809124005 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # lorem ipsum 0.8867043050813529 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
# lorem ipsum 0.10911774924874096 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # lorem ipsum 0.20114415250825152 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 6.
# lorem ipsum 0.7884053008522888 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 1.
[^] # Re: Xen
Posté par patrick_g . Évalué à 2.
One can almost see the interest in Xen (for example) fading; KVM comes across as a much simpler, more maintainable way to support full and paravirtualization. The community seems to be converging on KVM as the low-level virtualization interface; commercial vendors of higher-level products will want to adapt to this interface if they want their products to be supported in the future.
[^] # lorem ipsum 0.9069238984090499 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
[^] # Re: Xen
Posté par patrick_g . Évalué à 1.
Pas d'accord !
KVM est maintenant intégré en mainline alors que Xen n'est qu'un patch externe.
C'est donc KVM qui est en avance !
[^] # lorem ipsum 0.24063714429795477 Dolore molestias recusandae quam
Posté par Anonyme . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.