2 # Functions for parsing Windows process.exe command output
6 local($pcmd, $line, $i, %pidmap, @plist);
7 open(PS, "process -t -c |");
10 if (/^\s*(\S+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\S+)\s+(\S+)/) {
11 local $proc = { 'pid' => $2,
18 'size' => "Unknown" };
19 $pidmap{$proc->{'pid'}} = $proc;
24 open(PS, "process -v |");
28 if (/^\s*(\S+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(.*)/ &&
29 ($proc = $pidmap{$2})) {
31 $user = "Unknown" if ($user =~ /^Error/);
32 $proc->{'user'} = $user;
38 local %want = map { $_, 1 } @_;
39 @plist = grep { $want{$_->{'pid'}} } @plist;
44 # renice_proc(pid, nice)
47 return undef if (&is_readonly_mode());
48 local $out = &backquote_logged("process -p $_[0] $_[1] 2>&1");
49 if ($?) { return $out; }
53 %info_arg_map=( "_threads", $text{'windows_threads'} );
55 @nice_range = ( 0 .. 20 );
57 $has_fuser_command = 0;
59 sub os_supported_signals
61 return ("KILL", "TERM", "STOP", "CONT");