1pid=$$ 2 3# Warm up 4unset t 5t=111111111111111111111111111111111111111111111111111111111111111111111111 6export t 7unset t 8t=111111111111111111111111111111111111111111111111111111111111111111111111 9export t 10unset t 11t=111111111111111111111111111111111111111111111111111111111111111111111111 12export t 13unset t 14t=111111111111111111111111111111111111111111111111111111111111111111111111 15export t 16unset t 17t=111111111111111111111111111111111111111111111111111111111111111111111111 18export t 19i=1 20if test $i = 1111111111111111111111111111111111111111111111; then i=2; fi 21beg=`ps -o pid,vsz | grep "^ *$pid "` 22 23echo "Measuring memory leak..." 24beg=`ps -o pid,vsz | grep "^ *$pid "` 25i=1 26while test $i != X; do 27 unset t 28 t=111111111111111111111111111111111111111111111111111111111111111111111111 29 export t 30 unset t 31 t=111111111111111111111111111111111111111111111111111111111111111111111111 32 export t 33 unset t 34 t=111111111111111111111111111111111111111111111111111111111111111111111111 35 export t 36 unset t 37 t=111111111111111111111111111111111111111111111111111111111111111111111111 38 export t 39 unset t 40 t=111111111111111111111111111111111111111111111111111111111111111111111111 41 export t 42 i=1$i 43 if test $i = 1111111111111111111111111111111111111111111111; then i=2; fi 44 if test $i = 1111111111111111111111111111111111111111111112; then i=3; fi 45 if test $i = 1111111111111111111111111111111111111111111113; then i=4; fi 46 if test $i = 1111111111111111111111111111111111111111111114; then i=5; fi 47 if test $i = 1111111111111111111111111111111111111111111115; then i=6; fi 48 if test $i = 1111111111111111111111111111111111111111111116; then i=7; fi 49 if test $i = 1111111111111111111111111111111111111111111117; then i=8; fi 50 if test $i = 1111111111111111111111111111111111111111111118; then i=9; fi 51 if test $i = 1111111111111111111111111111111111111111111119; then i=a; fi 52 if test $i = 111111111111111111111111111111111111111111111a; then i=b; fi 53 if test $i = 111111111111111111111111111111111111111111111b; then i=c; fi 54 if test $i = 111111111111111111111111111111111111111111111c; then i=d; fi 55 if test $i = 111111111111111111111111111111111111111111111d; then i=e; fi 56 if test $i = 111111111111111111111111111111111111111111111e; then i=f; fi 57 if test $i = 111111111111111111111111111111111111111111111f; then i=g; fi 58 if test $i = 111111111111111111111111111111111111111111111g; then i=h; fi 59 if test $i = 111111111111111111111111111111111111111111111h; then i=i; fi 60 if test $i = 111111111111111111111111111111111111111111111i; then i=j; fi 61 if test $i = 111111111111111111111111111111111111111111111j; then i=X; fi 62done 63end=`ps -o pid,vsz | grep "^ *$pid "` 64 65if test "$beg" != "$end"; then 66 echo "vsz grows: $beg -> $end" 67else 68 echo "vsz does not grow" 69fi 70