Difficulty: Medium
Correct Answer: Add the NTVDM 1 and NTVDM #2 instances to the Processor Time counter for the Process object
Explanation:
Introduction / Context:
On Windows NT/2000, 16-bit Windows applications execute within NTVDM (NT Virtual DOS Machine) processes. If 16-bit apps are configured to run in separate memory spaces, each app gets its own NTVDM process. For accurate performance baselines, counters must target the actual processes consuming CPU cycles.
Given Data / Assumptions:
Concept / Approach:
16-bit executables do not appear as independent Process object instances under their own names. Instead, their execution is encapsulated by ntvdm.exe instances. With separate memory spaces, PerfMon exposes distinct “NTVDM,” “NTVDM #1,” “NTVDM #2,” etc. You must select those individual NTVDM instances to capture CPU usage per 16-bit application.
Step-by-Step Solution:
Open System Monitor and select the Process object.Choose the % Processor Time counter.Add the two distinct NTVDM instances (e.g., NTVDM 1 and NTVDM #2) corresponding to APP1 and APP2.Optionally, rename display labels for clarity to map each NTVDM instance to its app.
Verification / Alternative check:
Use Task Manager or Process Explorer to confirm two separate ntvdm.exe processes exist while each 16-bit app is running. Temporarily close one app and observe the corresponding NTVDM instance's CPU dropping to validate mapping.
Why Other Options Are Wrong:
Adding APP1/APP2 directly: Their names do not appear as Process instances; they execute inside NTVDM.
Common Pitfalls:
Assuming 16-bit apps show as unique processes, or misinterpreting a single NTVDM when apps run in a shared memory space.
Final Answer:
Add the NTVDM 1 and NTVDM #2 instances to the Processor Time counter for the Process object
Discussion & Comments