I have the following issue with my process. Why can private bytes value be less than managed heaps? Feel free to consider scenarios with any complexity of inter-process interaction. This reproduces for a child process of an enterprise software application.
How I do the measurements:
Private bytes counter is used from Process category
Heaps are: Gen 0 heap size+ Gen 1 heap size+ Gen 2 heap size+Large object heap size counters or #Bytes in all heaps+ Gen 0 heap size witch gives us the same result.
I exclude mistakes like wrong instance name for a category. There is no process with the same name in the system.
Also this is not an update lag, because this issue stroke the application in a stable state and values stay the same for a long period.
I used perfmon along with manually created counters. It gave me the same result.