Das Scheduler-Zeitintervall wird nicht direkt von der Timerauflösung beeinflusst. Für die meisten Prozesse auf den Client-SKUs sind es 20 ms. Für einen Prozess, dem das Vordergrundfenster gehört, sind es 60 ms. Diese Werte betragen in der Regel 120 ms für Server-SKUs.
Diese Werte sind unabhängig davon, was Sie mit NtSetTimerResolution tun. Unabhängig von der Timerauflösung wird eine geeignete Anzahl von Timer-Taktinterrupts gezählt, bevor ein 20-ms-Intervall erkannt wird und der Scheduler den "Quantenzähler" des aktuellen Threads usw. dekrementiert.
Wenn Sie die Zeitgeberauflösung auf 100 usec verbessern, hat dies keine Auswirkungen auf die Thread-Planung. Es wird jedoch zusätzlicher Overhead erzeugt, was bei 5x der vorherigen Anzahl von Aufrufen der Routine, die prüft, ob Timer abgelaufen sind, besteht.
Es gibt keine Registrierung oder andere Änderungen, um dies zu ändern.
Es gibt einen Registry-Hack, der verwendet werden kann, um die "Timelice-Dehnung", die auf Client-SKUs auftritt, zu unterdrücken, oder um ein Serversystem dazu zu bringen, sich wie ein Client zu verhalten, und umgekehrt, was die Timelice-Länge angeht. Und manchmal (aufgrund eines kleinen Fadens von Thread-> Quantum, wenn ein Thread aus dem Warten kommt) sind die Zeitfenster möglicherweise etwas kürzer, als es "hätte" sollen. Es gibt jedoch keine Möglichkeit, die Zeitscheibe auf weniger als 20 ms oder auf ein Vielfaches von 20 ms einzustellen, und es sind nicht viele verschiedene Vielfache verfügbar.
Beachten Sie, dass das Scheduler-Zeitintervall keinen Einfluss auf die Vorbelegung hat. Wenn die Wartezeit eines Threads behoben ist und die Priorität des Threads höher ist als die des aktuell ausgeführten Threads auf dem idealen Prozessor des neuen Threads, wird der letztere Thread sofort verdrängt . Es darf nicht bis zum Ende seiner Zeitscheibe laufen, bevor es gemimpt wird. Zeitscheiben sind nur wichtig, wenn mehrere Threads mit derselben Priorität konkurrieren.
Quelle: Das meiste davon findet sich in Windows Internals von Solomon, Russinovich et al .