Share via


Real-Time logiciel sur Windows IoT Entreprise

Windows 10 temps réel logiciel est une nouvelle fonctionnalité avec Windows 10 IoT Entreprise, version 21H2 qui permet aux fabricants d’appareils d’introduire des fonctionnalités en temps réel souples sur leurs appareils.

Ce comportement en temps réel est introduit par le biais de 4 paramètres clés :

  1. Isolation du processeur : migre les perturbations au niveau du système hors des processeurs isolés, ce qui réduit la gigue potentielle vers l’application en temps réel de l’utilisateur

  2. Épinglage ISR/DPC personnalisé sur des processeurs isolés : toutes les interruptions matérielles sont acheminées vers le système et les cœurs non en temps réel, mais en écrivant un pilote ISR/DPC personnalisé, vous pouvez acheminer les interruptions spécifiques de votre appareil vers les cœurs en temps réel.

  3. Héritage de priorité pour les mutex : ce paramètre garantit l’exécution du thread de priorité la plus élevée, même dans des scénarios multithread complexes.

  4. Jusqu’à 16 niveaux de priorité de thread RT : cela permet au programmeur de répartir les ressources entre les tâches en temps réel pour s’assurer que les plus importantes sont exécutées en premier.

Qu’est-ce qu’un système d’exploitation Real-Time ?

Lors de l’exécution d’un programme, un système d’exploitation normal donne des résultats déterministes, mais permet un temps non déterministe pour effectuer une tâche. Dans un système d’exploitation en temps réel, les résultats de l’exécution du programme et le temps nécessaire pour obtenir ces résultats sont (au moins partiellement) déterministes.

Real-Time Real-Time Real-Time par rapport à Real-Time souple

Un système d’exploitation en temps réel difficile est un système où le temps nécessaire est déterministe à un moment précis. Ces systèmes d’exploitation sont déployés dans les cas d’usage où l’échec de l’obtention des résultats à temps représente une défaillance totale du système. Les exemples incluent les micro-contrôleurs au sein d’un moteur de voiture ou d’un avion, les imprimantes, les découpeurs laser, etc. Azure Real-Time système d’exploitation est un exemple de ce système d’exploitation.

Un système d’exploitation en temps réel souple est un système où il y a une petite fenêtre de temps pour l’achèvement du programme plutôt qu’un moment précis en raison d’un peu de gigue du système d’exploitation. Les systèmes en temps réel souples, bien que moins précis, peuvent être exécutés sur plusieurs cœurs et imposer moins de restrictions aux applications. Il s’agit du type de performances en temps réel que vous pouvez attendre de Windows 10 IoT Entreprise après avoir utilisé ce guide.

Quand ai-je besoin de Real-Time Performances ?

Les performances en temps réel ne sont pas nécessairement plus rapides. Il s’agit simplement de performances prévisibles. Si vous souhaitez améliorer les performances globales du système, le temps réel souple n’est peut-être pas votre meilleure façon d’y parvenir. Toutefois, si vous avez une contrainte réelle (par exemple, un calcul qui doit être effectué avant que l’environnement d’un robot change ou un moteur qui doit être activé avant qu’un tapis roulant ne se déplace), le temps réel souple peut être ce dont vous avez besoin.

Les appareils en temps réel logiciel sont plus souvent utilisés au sein d’une boucle de contrôle plus large pour déclencher des comportements à partir d’une machine d’état. Les boucles de contrôle en temps réel plus petites se trouvent dans la boucle plus large et fonctionnent sur des microcontrdateurs indépendants jusqu’à ce que la machine en temps réel souple fournisse une entrée pour modifier leur comportement. De nombreuses boucles de commande et de contrôle ont des exigences de temps de cycle difficiles et doivent utiliser un appareil en temps réel dur dans la boucle pour le contrôle direct.

Cas d’usage soft Real-Time

Suivant : Comment configurer un appareil pour Real-Time performances