在linux中,我们有ps
和top
命令,它们可以非常详细地说明进程的CPU利用率以及运行在哪些内核上。
我们在Windows中是否有类似的东西可以为进程及其线程提供CPU使用率,以及它在命令行上运行在哪个Core上?
我查看了tasklist
,wmic
,但都没有给出进程在哪个内核上运行。还有另一个名为 Xperf 的工具,但是似乎有些复杂,因为它与另一个工具一起提供给GUI,以便我们在其中寻找内核。
有什么简单的方法吗?
答案 0 :(得分:0)
当然,每个操作系统都不同,因此需要调整期望值。
对于这种事情,没有特定的单个独立cmdlet。因此,不,您必须编写所需的内容。 Windows上的进程类中的任何内容都没有CPU属性,但没有Cores属性。
即使您追求什么,它也位于不同的对象中。
Get-WmiObject -Class Win32_Process | Select-Object -Property * -First 1
Get-WmiObject -Class Win32_Processor | Select-Object -Property *
Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property *
全部,如果您要复制ps和top之类的Linux。您将必须查看MSDN,Pinvoke等上的较低级别的API。
自从这不是第一次提出这个问题以来,尽管有很多流派。请参阅此处概述的信息:
PowerShell Problem Solver: Getting Process Details