[chantier] wiki noyau RT
Coucou za tous
vu les nouveautés récentes du coté de l'équipe RT du noyau linux, je pense que c'est l'occasion de refaire le wiki le concernant sur linuxmao : Le noyau Temps-Réel
Ce que je crois comprendre :
Le "noyau RT" consiste en plusieurs améliorations diverses et variées de la structure interne du noyau, il ne s'agit pas d'une fonction unique "RT"
Les plus grosses améliorations sont aujourd'hui toutes intégrées au noyau "vanilla" (le noyau de base) mais non activées, il faut pour cela simplement utiliser l'option Preemption Model = Complete Preemption (Real-Time) (CONFIG_PREEMPT_RT) (il y a d'autres réglages sympa à faire pendant la config du noyau tant qu'on y est, mais ceux-la sont indépendants des améliorations RT : fréquence du proc au max, désactivation de la gestion automatique de l'alim...)
(en fait, il y'a peut etre d'autres options liées, à vérifier : High-Resolution Timer (utilisé par rosegarden il me semble, Deterministic Scheduler (on en a besoin pour la MAO de ca ?) )
les améliorations RT importantes et déjà intégrées au noyau vanilla sont, en plus des deux précédentes (sources
) :
la nouveauté, c'est donc les threaded IRQ, cette fonction oblige à utiliser en plus un utilitaire système comme rtirq (voir Temps-réel pour les processus IRQ)
c'est un changement important car les personnes qui utilisaient un noyau ''vanilla' en mode RT n'avaient pas jusqu'à présent à faire celà, et les questions sur le forum du genre "ca marche plus" vont bientôt tomber.
j'aimerai savoir si j'ai bien tout juste, et aussi avoir des détails sur les 2 options de conf du noyau High-Resolution Timer et Deterministic Scheduler (je ne suis pas sur que cette dernière soit une conf à part d'ailleur, elle est peut etre incluse dans Complete Preemption), vous en savez plus ?
si tout le monde est bien d'accord, alors on peut passer à la ré-écriture partielle des pages sur le noyau RT, encore une fois les points importants à aborder sont :
j'en profite pour proposer un plan (hierarchie) pour ce dossier :
dans optimisations système :
j'attend vos commentaires !
oliv'
vu les nouveautés récentes du coté de l'équipe RT du noyau linux, je pense que c'est l'occasion de refaire le wiki le concernant sur linuxmao : Le noyau Temps-Réel
Ce que je crois comprendre :
Le "noyau RT" consiste en plusieurs améliorations diverses et variées de la structure interne du noyau, il ne s'agit pas d'une fonction unique "RT"
Les plus grosses améliorations sont aujourd'hui toutes intégrées au noyau "vanilla" (le noyau de base) mais non activées, il faut pour cela simplement utiliser l'option Preemption Model = Complete Preemption (Real-Time) (CONFIG_PREEMPT_RT) (il y a d'autres réglages sympa à faire pendant la config du noyau tant qu'on y est, mais ceux-la sont indépendants des améliorations RT : fréquence du proc au max, désactivation de la gestion automatique de l'alim...)
(en fait, il y'a peut etre d'autres options liées, à vérifier : High-Resolution Timer (utilisé par rosegarden il me semble, Deterministic Scheduler (on en a besoin pour la MAO de ca ?) )
les améliorations RT importantes et déjà intégrées au noyau vanilla sont, en plus des deux précédentes (sources

- Preemption Support
- IRQ Threads (depuis linux 2.6.30)
- Forced IRQ Threads (depuis linux 2.6.39)
la nouveauté, c'est donc les threaded IRQ, cette fonction oblige à utiliser en plus un utilitaire système comme rtirq (voir Temps-réel pour les processus IRQ)
c'est un changement important car les personnes qui utilisaient un noyau ''vanilla' en mode RT n'avaient pas jusqu'à présent à faire celà, et les questions sur le forum du genre "ca marche plus" vont bientôt tomber.
j'aimerai savoir si j'ai bien tout juste, et aussi avoir des détails sur les 2 options de conf du noyau High-Resolution Timer et Deterministic Scheduler (je ne suis pas sur que cette dernière soit une conf à part d'ailleur, elle est peut etre incluse dans Complete Preemption), vous en savez plus ?
si tout le monde est bien d'accord, alors on peut passer à la ré-écriture partielle des pages sur le noyau RT, encore une fois les points importants à aborder sont :
- le patch RT ne sert à rien pour la MAO, pour du RT dur sans souci utilisez un noyau vanilla ou similaire avec les options RT stables appropriées
- gestion obligatoire des priorités des IRQ (avec rtirq par exemple)
- rabachage : patchez votre noyau seulement si vous souhaitez aider à débugguer, pas pour faire de la musique !!
j'en profite pour proposer un plan (hierarchie) pour ce dossier :
dans optimisations système :
- Le noyau Temps-Réel (ajouter les explications de ce post)
- Tuto Compiler un noyau Temps-Réel (supprimer le paragraphe "patchage" et renommer la page en "compiler un noyau RT" tout court avec l'arrivée de linux 3.0 qui n'est pas vraiment différent à ce niveau là)
- Temps-réel pour les processus IRQ (à finir d'écrire)
j'attend vos commentaires !

oliv'