ソフト リアルタイム アプリケーションの開発

デバイスがリアルタイム パフォーマンス用に構成された後は、標準的な Win32 API を使用してアプリケーションをリアルタイムで実行するように設定できます。 スレッドまたはプロセスのリアルタイム パフォーマンスを実現する唯一の要因は、スレッド/プロセスの優先度ランクと CPU コアとの親和性です。

特定のスレッドまたはプロセスでリアルタイム パフォーマンスを取得するには、その優先度をリアルタイム パフォーマンスの範囲内に設定し、その親和性をリアルタイム コアで実行する必要があります。

リアルタイム向けにプロセスを設定する

  1. SetPriorityClass 関数を使用して、プロセスの ProcessPriorityClass 属性を にREALTIME_PRIORITY_CLASS設定します。
  2. SetProcessAffinityMask 関数を使用して、リアルタイム アプリケーション用に予約されているコア上で排他的に実行するプロセスを設定します

リアルタイム向けにスレッドを設定する

  1. NtSetInformationThread 関数 を使用して、スレッドの ThreadBasePriority を 16 ~ 31 の間の値に設定します
  2. SetThreadAffinityMask 関数を使用して、リアルタイム アプリケーション用に予約されているコア上で排他的に実行するスレッドを設定します