Powershell-Unstimmigkeiten bei Get-Process und Task Manager


3

Ich erstelle ein PowerShell-Skript, um den ersten 10 Prozess zu ermitteln, der Speicher verbraucht, basierend auf dem Arbeitssatz (WS) des Get-Process-Werts. Ich führe die folgende Zeile aus und erhalte die Ergebnisse, sieht großartig aus, aber wenn ich den Task-Manager einchecke, bekomme ich nicht die gleichen Werte. Sogar die Reihenfolge ist anders.

Get-Process | Sort WS -Descending | Select Name,WS -First 10

Das bekommen:

PowerShell

Dann hat der Task-Manager folgendes:

Task Manager

Muss ich andere Berechnungen machen? Jeder könnte das erklären?

Danke im Rat.

PS: OS ist auf Portugiesisch.

Antworten:


4

Ok, ich habe gerade realisiert, was passiert ist. Die Dafault-Spalte "Speicher" im Task-Manager stellt tatsächlich den privaten Arbeitssatz dar, nicht den Arbeitssatz von Powershell, der privaten und gemeinsam genutzten Speicher für andere Prozesse darstellt. Aktivieren Sie einfach die Spalte "Arbeitsspeicher" im Task-Manager und sie stimmt überein.

Task Manager

Offensichtlich sind die Werte in Powershell in Byte und müssen in Mb berechnet werden.

Diese Seite war auch hilfreich:

http://windows.microsoft.com/en-us/windows/what-task-manager-memory-columns-mean#1TC=windows-7


Um in MB zu berechnen, können Sie Folgendes tun: (Get-Process -Id 1234).WS/1MB (Ersetzen Sie 1234 durch die PID für den Prozess, an dem Sie interessiert sind.) Es scheint auch, dass es in den von Get-Process zurückgegebenen Objekten keine "Private Working Set" -Eigenschaft gibt.
Iszi

Das Arbeitssatz in PowerShell befindet sich standardmäßig in KB (zumindest auf meinem System) - nicht in Byte.
Iszi

Wenn du Ja wirklich Wenn Sie ein privates Arbeitsset in PowerShell wünschen, sieht es so aus, als ob jemand eine Lösung veröffentlicht hat Paketüberfluss . stackoverflow.com/q/13878927/477682
Iszi

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.