service

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 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; in Windows sind jedoch die Sperrzeiten begrenzt, meist nur Treiber verantwortlich; in dem Fall muss die zugehörige Hardware oder der Treiber getauscht werden; ist schwierig zu ermitteln, nur in unserem Hause möglich mit Kostenberechnung).

- WBINVD-Befehl zum Flushen der gesamten internen Caches

(wird erfahrungsgemäß ausschließlich von Nvidia-Grafiktreibern benutzt; dort sehr häufig zu finden; an sich unverständlich; Nvidia-Programmierer überfordert? nur Tausch gegen ATI-Grafik (AMD) möglich, dann alles OK).

- 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..255 sind RealTime-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 < 1 us.