Please enable JavaScript.
Coggle requires JavaScript to display documents.
Linux Temps Réel - Coggle Diagram
Linux Temps Réel
Linux + co-noyau
l'utilité d'ajout d'un co noyau
pour la gestion du temps-réel
le modèles
Noyau uniquement(RTLinux/Free) intégration complète
Noyau & espace utilisateur(RTAI)semi-intégration Linux
Noyau uniquement
fonctionnement
séparation entre le composant temps-réel et Linux
pas de dépense sur les sections critique linux
ordonnanceur temps-réel spécifique
Virtualisation de la gestion d'interruptions Linux
Se rapproche de la technique de para-virtualisation
paravirtualisation est une technique de virtualisation qui présente une interface logicielle similaire à du matériel réel à une machine virtuelle mais optimisée
Garanties temps-réel fortes
Impact sur l'écriture de code temps-réel
PREEMPT-RT
définition et caractéristique
aucun lien avec l'antique preempt-kernel
surtout utilisé sur x86 et des processuers performants
mise en place trés simple
mêmes API de programmation que linux standard
modification
timers noyau haute précision
utilisation d'un thread noyau (interruptible) pour le traitement de chaque interruption
Réécriture complète des mécanismes de
synchronisation
spinlock → mutex
Compatibilité avec Ftrace pour la mise au point
Ftrace est un framework de traçage pour le noyau Linux
utilisation et performance
Changements significatifs du code noyau
Utilisation de mlockall
Temps de latence maximum nettement amélioré
Le coût de la préemption peut être important si le
nombre de tâches TR augmente
mesure de performances
peut être intégré à Buildroot et utilisé
avec le paquet rt-tests
utilisation du programme cyclictest avec 5 threads
temps réel
Charge avec hackbench
Plate-forme Atom/x86
Sur RPi, la gigue tourne autour de 100 à 150 µs
gigue : la variation de la latence au fil du temps
Xenomai
définition
Xenomai est un sous-système temps-réel de Linux
Intégré à Linux
Supporte de nombreuses architectures
Faible empreinte mémoire
architecture
cœur de RTOS générique :nucleus
Modèle de programmation
RTDM et skins
Couches d'abstraction d'architecture hôte SAL/HAL
ADEOS
Virtualisation de ressources matérielles
Organisation en domaines avec priorité
Existe uniquement sous la forme d'un patch pour le
noyau Linux
Création de processus
méthode
fork()
duplique le processus pére pour crée un nouveau processus fils
Linux standard
Définition et caractéristique
traitements effectués par des processus et pas par les threads
Mode d'exécution de processus
gestion complexe de la mémoire peu fréquente sur
un RTOS
Préemption du traitement applicatif
l'ordonnancement s'effectue par le noyau UNIX
pas de préemption "compléte" en mode noyeau
Préemption par l'ordonnanceur
sur interruption Timer
Fréquence timer fixe
HZ= nombre de ticks par seconde
la puissance du CPU n'améliore pas directement les
performances