From a7d149ae75c8fe9c67707e333ba0d4f0adf9ca91 Mon Sep 17 00:00:00 2001 From: Simone Margaritelli <evilsocket@turing.local> Date: Thu, 26 Sep 2019 11:23:40 +0200 Subject: [PATCH] added cpuusage and memusage scripts --- sdcard/rootfs/usr/bin/cpuusage | 51 ++++++++++++++++++++++++++++++++++ sdcard/rootfs/usr/bin/memusage | 1 + 2 files changed, 52 insertions(+) create mode 100755 sdcard/rootfs/usr/bin/cpuusage create mode 100755 sdcard/rootfs/usr/bin/memusage diff --git a/sdcard/rootfs/usr/bin/cpuusage b/sdcard/rootfs/usr/bin/cpuusage new file mode 100755 index 0000000..ea9e63a --- /dev/null +++ b/sdcard/rootfs/usr/bin/cpuusage @@ -0,0 +1,51 @@ +#!/usr/bin/gawk -f +#------------------------------------------------------------------------------- +# ~/bin/cpustat : display cpu utilization +# +# usage : normally used as a GNU/screen backtick +# +# notes : 1. Works on the assumption that /proc/stat's first line +# : has the total "jiffies" since boot up used by the +# : different types of tasks in the system. See the +# : filesystems/proc.txt document in kernel source tree +# : +# : 2. Displays a total CPU% (user+system+nice) as well as +# : user CPU% system CPU% and nice CPU% +#------------------------------------------------------------------------------- +BEGIN { + file = "/proc/stat" + while (getline < file) { # read first line + # extract jiffies: + user=$2-user_saved; # . user + nice=$3-nice_saved; # . nice user + syst=$4-syst_saved; # . system + idle=$5-idle_saved; # . idle + wait=$6-wait_saved; # . iowait + irqs=$7-irqs_saved; # . irq + sirq=$8-sirq_saved; # . softirq + + cact=user+syst+nice; # what counts + ctot=user+nice+syst+idle+wait+irqs+sirq; # total activity + + tcpu=cact/ctot*100; # total % cpu utilization + ucpu=user/ctot*100; # user % cpu utilization + scpu=syst/ctot*100; # system % cpu utilization + ncpu=nice/ctot*100; # nice % cpu utilization + + printf "%.1f %%\n",tcpu + + + user_saved=$2; # save the current jiffies + nice_saved=$3; # values for the next loop + syst_saved=$4; + idle_saved=$5; + wait_saved=$6; + irqs_saved=$7; + sirq_saved=$8; + + close(file) # re-read file + + system("sleep 3") + } +} + diff --git a/sdcard/rootfs/usr/bin/memusage b/sdcard/rootfs/usr/bin/memusage new file mode 100755 index 0000000..14efdb1 --- /dev/null +++ b/sdcard/rootfs/usr/bin/memusage @@ -0,0 +1 @@ +free -m | grep Mem | awk {'printf( "%.1f %", $3 / $2 * 100 )'}