shell实现嵌入式软件看门狗

长时间运行的嵌入式程序,有时会因为莫名其妙的原因挂掉,这时就需要有其他的程序来一直监控我们的程序。由于监控程序属于软件层面,因此这种程序被称为“软件看门狗”。

这里用一个shell脚本实现该功能,这个脚本会一直监控后台的名为“XXX”的程序,如果程序挂掉,就会重启设备。设备启动时,会自动开启程序和这个脚本。代码如下:

#!/bin/sh
while :
do
  stillRunning=$(ps |grep "XXX" |grep -v "grep")
  if [ "$stillRunning" ] ; then
    echo "test service was already started by another way" 
  else
    echo "Starting service ..." 
    reboot
  fi
  sleep 5

done
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐