Chciałbym monitorować procesy z powłoki cygwin, używając top lub variant. Powodem tego jest raportowanie w czasie rzeczywistym i ciągłe aktualizacje. Jednak w cygwin top nie będzie raportował procesów Windows.
Fora, które poleciłem ps -W
jako alternatywę, ale oczywiście mają tę wadę, że nie dają mi już informacji w czasie rzeczywistym, a jedynie statyczną migawkę za każdym razem, gdy wpisuję polecenie.
Czy jest jakiś sposób na top
rozpoczęcie pracy w cygwin, aby wyświetlić wszystkie moje procesy, a nie tylko procesy cygwins?
top
), wypróbuj Process ExplorerOdpowiedzi:
Z powłoki bash możesz monitorować wszystkie procesy systemu Windows za pomocą tego wiersza poleceń:
Aby zobaczyć wszystkie procesy Java, na przykład:
Zauważ, że „ps -W” wymienia zarówno procesy cygwin, jak i procesy inne niż cygwin.
źródło
ps -W
albops --windows
praca, patrzps --help
Musisz zainstalować bibliotekę procps dla cygwin, obejmuje to najlepszy program, jednak będzie to tylko lista procesów uruchomionych w cygwin. Jeśli chcesz zobaczyć wszystkie procesy działające w systemie Windows, zapoznaj się z tą odpowiedzią: /programming/3503681/cygwin-top-command-see-processes-for-all-users
źródło
Wygląda na to, że możesz zrobić coś takiego:
Czasy trybu użytkownika i jądra wydają się być wyrażone w 1/10 000 000 sekundy.
Powinieneś być w stanie przetworzyć dane wyjściowe, aby uzyskać zużycie procesora na sekundę.
Tutaj używając cygwina
perl
:Wyprowadza coś takiego:
każda sekunda.
Zauważ, że jeśli proces bezczynności systemu pokazuje prawie 800% w bezczynnym systemie, dzieje się tak dlatego, że twój system ma 8 rdzeni procesora (co najmniej 8 wątków), ponieważ odlicza czas procesora wszystkich procesorów.
Zauważ też, że
EVERY:1
powyższe jest kłamstwem.wmic
nie wydaje się dawać takiej mocy co sekundę. Bardziej prawdopodobne, że śpi około 1 sekundy między każdym raportem i nie rekompensuje czasu potrzebnego na obliczenie raportu. Tak więc w praktyce będzie on działał co 1 sekundę i trochę, co oznacza, że te wartości procentowe nie są bardzo dokładne i nieco zawyżone.źródło