Desenvolvendo um aplicativo de Real-Time reversível

Depois que um dispositivo é configurado para desempenho em tempo real, um aplicativo pode ser definido para ser executado em tempo real usando APIs Padrão do Win32. Os únicos fatores que fornecerão um desempenho de thread ou processo em tempo real são a classificação de prioridade de thread/processo e a afinidade principal da CPU.

Para obter desempenho em tempo real em um determinado thread ou processo, sua prioridade deve estar no intervalo de desempenho em tempo real e sua afinidade deve ser definida para ser executada nos núcleos em tempo real.

Configurar um processo para Real-Time

  1. Use a função SetPriorityClass para: defina o atributo ProcessPriorityClass do processo como REALTIME_PRIORITY_CLASS.
  2. Use a função SetProcessAffinityMask para definir o processo a ser executado exclusivamente nos núcleos reservados para o aplicativo em tempo real

Configurar um Thread para Real-Time

  1. Use a função NtSetInformationThread para definir o ThreadBasePriority do thread como um valor entre 16 e 31
  2. Use a função SetThreadAffinityMask para definir o thread a ser executado exclusivamente nos núcleos reservados para o aplicativo em tempo real