my $buf = "\0" x 64;
syscall(&SYS_sysinfo, $buf) == 0 or die "$!\n";
my ($uptime, $load1, $load5, $load15, $totalram, $freeram,
$sharedram, $bufferram, $totalswap, $freeswap, $procs)
= unpack "l L9 S", $buf;
print <<EOT;
${\(int $uptime / 86400)} days uptime
$totalram RAM, $freeram free (${\(int $freeram/$totalram*100)}%)
$totalswap swap, $freeswap free (${\(int $freeswap/$totalswap*100)}%)
EOT
|