FAQ

Die Anzahl der Fragen und Antworten hängt davon ab, ob Sie eingeloggt sind.

Was kann ein Jitter bei Echtzeit-Tasks hervorrufen?

Sofern nicht noch eine andere Echtzeit-Software oder ähnliche, systemkritische Software installiert ist, gibt es (fast) nichts, was unsere Echtzeit-Tasks unterbrechen oder verzögern kann, außer:

  • CLI = generelle Interrupt-Sperrungen durch Windows und Treiber. Dagegen kann leider keine Software der Welt etwas tun. Unter Windows sind jedoch die Sperrzeiten begrenzt, meist nur Treiber verantwortlich. In diesem Fall muss die zugehörige Hardware oder der Treiber getauscht werden. Die Ermittlung ist schwierig und nur bei Kithara vor Ort möglich (es entstehen zusätzliche Kosten.
  • WBINVD-Befehl zum Flushen der gesamten internen Caches. Wird erfahrungsgemäß ausschließlich von Nvidia-Grafiktreibern benutzt und ist dort sehr häufig zu finden. Nur der Austausch gegen eine ATI-Grafikkarte (AMD) beseitigt dieses Problem.
  • C1E = Enhanced Power-Save-Modes der CPU. Vor allem die hochgezüchteten Intel-CPUs (i7, Xeon, …) gehen bei der kleinsten Wartepause gleich so weit in den Schlafzustand, dass das Aufwachen nach einem (Timer-) Interrupt mehrere Millisekunden dauern kann; dies ist entweder im BIOS abschaltbar [siehe C1E o.ä.] oder der PC ist nicht echtzeittauglich.
  • Normale Windows-Aktivitäten können Echtzeit-Tasks nicht verdrängen. Windows hat Prio. 0; 1 bis 255 sind Real-Time-Tasks. DPC hat keinen Einfluss.
  • Bei Bestrebungen, das Echtzeitverhalten (deutlich) zu verbessern, hilft nur der Dedicated Mode, also das exklusive Betreiben von einem oder mehreren CPU-Kernen mit Echtzeit. Ohne Windows-Einfluss liegt das maximale Jitter bei unter 1 us.