当前位置: 首页 > news >正文

8 狗监控的封装

概述

        为了保证嵌入式程序能够长时间稳定地运行,需要加入狗监控机制。狗监控的原理为:应用程序需要每隔一段时间来喂狗或保活,如果应用程序崩溃或者内核崩溃,导致长时间无法喂狗,则狗将超时,会自动重启系统。部分IPC芯片提供了硬件狗,对于没有硬件狗的,需要自行实现软件狗。

        Linux内核自带了一个软件狗的实现,用于监控系统的运行情况。内核软件狗模块通过/dev/watchdog这个设备与用户空间程序进行通信,用户空间程序一旦打开/dev/watchdog设备,就会导致在内核中启动一个定时器。此后,用户空间程序需要定时向这个设备写入数据(也叫做喂狗),每次写操作会导致定时器重置。如果用户空间程序在一定时间内没有进行写操作,定时器会超时,并进而导致系统重启。

        以君正T31芯片为例,在内核配置Watchdog后,即可使用标准的Linux接口控制软件狗。具体的配置方式可参考下图:

狗监控接口类

        狗监控接口类比较简单,只有三个接口,分别是:

        1、初始化接口,主要用于配置超时时间。应用层调用初始化接口后,会自动开启狗监控。

        2、启用接口,启用后,狗监控开始工作。

        3、禁用接口,禁用后,狗监控停止工作。

        狗监控接口类的头文件如下&#

http://www.lryc.cn/news/14053.html

相关文章:

  • 基于卷积神经网络图像风格迁移系统的设计与实现(flask系统)
  • 【1】linux命令每日分享——mkdir
  • 实例2:树莓派GPIO控制外部LED灯闪烁
  • 详解可变形注意力模块(Deformable Attention Module)
  • Java数据结构中链表分割及链表排序使用快速排序、归并排序、集合排序、迭代、递归,刷题的重点总结
  • 音视频基础之音频编码原理简介
  • 【Python--XML文件读写】XML文件读写详解
  • GNU make 中文手册 第一二章 概述与介绍
  • 真的了解HashMap、HashSet吗?做一道测试题试试!
  • 树莓派下安装OpenEuler
  • VSCode Remote-SSH配置免密登录踩坑
  • 【Python语言基础】——Python NumPy 数组拆分
  • 虹科资讯| 虹科AR荣获汽车后市场“20佳”维修工具评委会提名奖!
  • Mysql架构与内部模块
  • 从技术上来看,互联网技术开始衍生和蜕变出更多的新技术
  • 最长不含重复字符的子字符串
  • git中git push origin master推送远程操作失败,报错解决方案
  • 服务器部署流程与经验记录
  • 超火的情感视频短视频账号,赚钱的路子有多野?
  • Linux系列 linux 常用命令(笔记)
  • Cosmos 基础教程(二)-- Run a Node, API, and CLI
  • C# 读写xml文件总结 [详细]
  • 【Java基础】IO流
  • Boolean,Array,Object数据类型(回顾)
  • Python常见的数据类型
  • 欠缺知识点罗列
  • 基于springboot+vue的校园社团管理系统(前后端分离)
  • 你了解互联网APP推荐的背后逻辑么(下)?
  • 总是跳转到国内版(cn.bing.com)?New Bing使用全攻略
  • 神经网络的基本骨架—nn.Module使用