Partager via


Développement d’une application soft Real-Time

Une fois qu’un appareil est configuré pour des performances en temps réel, une application peut être configurée pour s’exécuter en temps réel à l’aide des API Win32 standard. Les seuls facteurs qui donneront des performances en temps réel à un thread ou à un processus sont le rang de priorité thread/processus et l’affinité de cœur du processeur.

Pour obtenir des performances en temps réel sur un thread ou un processus particulier, sa priorité doit être dans la plage de performances en temps réel et son affinité doit être définie pour s’exécuter sur les cœurs en temps réel.

Configurer un processus pour Real-Time

  1. Utilisez la fonction SetPriorityClass sur : Définissez l’attribut ProcessPriorityClass du processus sur REALTIME_PRIORITY_CLASS.
  2. Utilisez la fonction SetProcessAffinityMask pour définir le processus pour qu’il s’exécute exclusivement sur les cœurs réservés à l’application en temps réel

Configurer un thread pour Real-Time

  1. Utilisez la fonction NtSetInformationThread pour définir la valeur ThreadBasePriority du thread entre 16 et 31
  2. Utilisez la fonction SetThreadAffinityMask pour définir le thread de manière à ce qu’il s’exécute exclusivement sur les cœurs réservés à l’application en temps réel.