ps的PM(K)得到负值时意味着什么?


0

执行时,我得到了以下负PM(进程正在使用的可分页内存量,以千字节为单位) ps 命令。价值观为负时意味着什么?

PS H:\> ps sqlservr

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
   5947    4145 -1218888    1537304   981 ...50.77   8344 sqlservr


PS H:\> ps sqlservr

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
   6060    4172 -1218876    1537316   981 ...52.08   8344 sqlservr


PS H:\> ps sqlservr

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
   6481    4258 -1218832    1537376   981 ...56.55   8344 sqlservr

Answers:


0

PM字段是32位数字,其中的值来自32位系统调用。可容纳32位字段的最大数字是4GB。

看来sqlservr使用的分页内存大于4GB。

但这并不重要,因为事实证明Process对象也包含64位属性。你可以改用它们。要获取分页内存,请执行以下操作:

(ps sqlservr).PagedMemorySize64

要获取KB的值(如“PM(K)”字段),请执行以下操作:

(ps sqlservr).PagedMemorySize64 / 1kb
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.