#!/bin/bash # # adp.sh -- run ADP's stress test on /proc/[0-9]*/cmdline # # usage() { cat << EOF usage: $0 options This script runs ADP's stress test on /proc/[0-0]*/cmdline. OPTIONS -h display this message and exit -d delay for top, in seconds -n number of iterations for top EOF } checkvar() { VAR=$1 eval VALUE='$'$VAR if [ "x$VALUE" = "x" ]; then echo "`basename $0`: $VAR is not set." return 1 else return 0 fi } while getopts hd:n: OPTION do case $OPTION in h) usage exit 1 ;; d) delay=$OPTARG ;; n) iterations=$OPTARG ;; ?) usage exit 1 ;; esac done #check all vars checkvar delay && checkvar iterations || { usage exit 2 } echo "-------------------------------------------------------------------------" date echo "Starting tests..." for i in 1 2 3 4 5 do ./adp_children.sh & done echo "Stressing /proc/[0-9]*/cmdline..." for i in 1 2 3 4 5 do ./adp_test.sh & done echo "Starting 'top', redirecting output to 'adp.log'..." top -b -d $delay -n $iterations > adp.log & echo "LTP ADP Test done. Killing processes..." killall adp_test.sh killall adp_children.sh echo "Done. Please check adp.log." date echo "-------------------------------------------------------------------------"