Posted: January 24th, 2009 | Author: TnT Admin | Filed under: Concepts | Tags: processor, Windows | No Comments »
The Processor Queue Length counter in the System object is an extremely important indicator of processor performance. It is an instantaneous peek at the number of Ready threads that are currently waiting to run. Even though reporting processor utilization is much more popular, the Processor Queue Length is actually a more important indicator of a processor bottleneck. It shows that work is being delayed, and the delay is directly proportional to the length of the queue. Read the rest of this entry »
Posted: January 21st, 2009 | Author: TnT Admin | Filed under: Concepts | Tags: processor, Windows | No Comments »
Think of priority scheduling as the set of rules for ordering the Ready Queue, which is the internal data, structure that points to the threads that are ready to execute. A ready tread (from IE or any other application) transitions directly to the running state, where it executes if no other higher-priority threads are running or waiting. If there is another thread, the Windows Scheduler selects the highest-priority thread in the Ready Queue to run. Read the rest of this entry »
Posted: January 16th, 2009 | Author: TnT Admin | Filed under: Concepts | Tags: processor, Windows | No Comments »
Interrupts are subjected to priority. The interrupt priority scheme is hardware-determined, but in the interest of portability it is abstracted by the Windows HAL. During interrupt processing, interrupts from lower-priority interrupts are masked so that they remain pending until the current interrupt processing completes. Following interrupt processing during which interrupts themselves are disabled, the operation system returns to its normal operating mode with the processor reset once more to receive interrupt signals. The processor is once again enabled for interrupts.
Read the rest of this entry »
Posted: January 10th, 2009 | Author: TnT Admin | Filed under: Concepts | Tags: processor, Windows | 5 Comments »
Processor utilization can be further broken down into time spent executing in user mode (Intel Ring 3) or in privileged mode (Ring 0), two mutually exclusive states. Applications typically run in the more restricted user mode, while operating system functions run in privileged mode. Whenever, an application implicitly or explicitly calls an OS service (e.g. to allocate or free memory, or perform some operation on a file), a context switch occurs as the system transitions from user to privileged mode and back again. The portion of time that a tread is executing in user mode is captured as % User Time; privileged mode execution time is captured in the % Privileged Time counter. Read the rest of this entry »
Posted: January 5th, 2009 | Author: TnT Admin | Filed under: Concepts | Tags: processor, Windows | No Comments »
Windows is a multiprogramming OS, which means that it manages and selects among multiple programs that can all be active in various stages of execution at the same time. The displaceable unit in Windows, representing the application or system code to be executed, is the thread. The Scheduler running inside the Windows OS kernel keeps track of each thread in the system and points the processor hardware to threads that are ready to run. Read the rest of this entry »