Fix macos free_memory calculate by using vm_stat (#1396)
diff --git a/hugegraph-dist/src/assembly/static/bin/util.sh b/hugegraph-dist/src/assembly/static/bin/util.sh
index 173c22e..188d4bb 100755
--- a/hugegraph-dist/src/assembly/static/bin/util.sh
+++ b/hugegraph-dist/src/assembly/static/bin/util.sh
@@ -154,8 +154,10 @@
free=`expr $mem_free + $mem_buffer + $mem_cached`
free=`expr $free / 1024`
elif [ "$os" == "Darwin" ]; then
- free=`top -l 1 | head -n 10 | grep PhysMem | awk -F',' '{print $2}' \
- | awk -F'M' '{print $1}' | tr -d " "`
+ local pages_free=`vm_stat | awk '/Pages free/{print $0}' | awk -F'[:.]+' '{print $2}' | tr -d " "`
+ local pages_inactive=`vm_stat | awk '/Pages inactive/{print $0}' | awk -F'[:.]+' '{print $2}' | tr -d " "`
+ local pages_available=`expr $pages_free + $pages_inactive`
+ free=`expr $pages_available \* 4096 / 1024 / 1024`
else
echo "Unsupported operating system $os"
exit 1