pctcpu now works properly on FreeBSD
git-svn-id: svn://127.0.0.1/Perl/Proc-ProcessTable-Colorizer/trunk@971 0c1c3402-1be1-de11-8092-0022686faf23
This commit is contained in:
parent
9a60a648b0
commit
9b0dc4d810
|
@ -171,9 +171,19 @@ sub colorize{
|
|||
($^O =~ /bsd/) &&
|
||||
( $field =~ /pctcpu/ )
|
||||
){
|
||||
|
||||
|
||||
my $bproc=BSD::Process::info( $proc->pid );
|
||||
$values{pctcpu}=$bproc->{pctcpu};
|
||||
my $pctcpu=$bproc->{pctcpu};
|
||||
|
||||
if ( ! defined( $pctcpu ) ){
|
||||
$values{pctcpu}=0
|
||||
}else{
|
||||
my $fscale=`/sbin/sysctl -a kern.fscale`;
|
||||
$fscale=~s/^.*\: //;
|
||||
chomp($fscale);
|
||||
|
||||
$values{pctcpu}= 100 * ( $pctcpu / $fscale );
|
||||
}
|
||||
}elsif(
|
||||
($^O =~ /bsd/) &&
|
||||
( $field =~ /pctmem/ )
|
||||
|
@ -182,7 +192,7 @@ sub colorize{
|
|||
my $bproc=BSD::Process::info( $proc->pid );
|
||||
my $rss=$bproc->{rssize};
|
||||
if ( defined( $rss ) ){
|
||||
$rss=$rss*1024;
|
||||
$rss=$rss*1024*4;
|
||||
|
||||
my $physmem=`/sbin/sysctl -a hw.physmem`;
|
||||
chomp($physmem);
|
||||
|
@ -196,18 +206,19 @@ sub colorize{
|
|||
($^O =~ /bsd/) &&
|
||||
( $field =~ /size/ )
|
||||
){
|
||||
|
||||
|
||||
my $bproc=BSD::Process::info( $proc->pid );
|
||||
$values{size}=$bproc->{size};
|
||||
}elsif(
|
||||
($^O =~ /bsd/) &&
|
||||
( $field =~ /rss/ )
|
||||
){
|
||||
|
||||
my $bproc=BSD::Process::info( $proc->pid );
|
||||
$values{rss}=$bproc->{rssize};
|
||||
$values{rss}=$proc->{rssize};
|
||||
if (!defined $values{rss} ){
|
||||
$values{rss}=0;
|
||||
}else{
|
||||
#not sure why this needs done :/
|
||||
$values{rss}=$values{rss}*4;
|
||||
}
|
||||
}elsif(
|
||||
$field eq 'proc'
|
||||
|
@ -288,10 +299,8 @@ sub colorize{
|
|||
$values{size} = 0;
|
||||
}
|
||||
|
||||
$values{pctcpu}=$values{pctcpu}/20;
|
||||
|
||||
$values{pctmem}=sprintf('%.1f', $values{pctmem});
|
||||
$values{pctcpu}=sprintf('%.1f', $values{pctcpu});
|
||||
$values{pctmem}=sprintf('%.2f', $values{pctmem});
|
||||
$values{pctcpu}=sprintf('%.2f', $values{pctcpu});
|
||||
|
||||
$values{size}=$values{size}/1024;
|
||||
|
||||
|
|
Loading…
Reference in New Issue