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

网站开发 需求链交换反应

网站开发 需求,链交换反应,新吴网站建设,招聘网站开发背景嵌入式C语言–WatchDog最全概念 嵌入式C语言--WatchDog最全概念 嵌入式C语言--WatchDog最全概念一. 什么是Watchdog1)什么是“被狗咬”2)什么是喂狗 二. 基本思想三. 作用四. 监视目标1) 监视一个进程2)监视一个操作系统 五. 系统初始化时关闭…

嵌入式C语言–WatchDog最全概念

嵌入式C语言--WatchDog最全概念

  • 嵌入式C语言--WatchDog最全概念
    • 一. 什么是Watchdog
      • 1)什么是“被狗咬”
      • 2)什么是喂狗
    • 二. 基本思想
    • 三. 作用
    • 四. 监视目标
      • 1) 监视一个进程
      • 2)监视一个操作系统
    • 五. 系统初始化时关闭watchdog的原因
    • 六. WATCHDOG模块
    • 七. WatchDog总结

一. 什么是Watchdog

Watchdog,又称watchdog timer,它是计算机可靠性(dependability)领域中一个极为简单同时非常有效的检测(detection)工具。
WatchDog硬件的逻辑就是,其硬件上有个记录超时功能,然后要求用户需要每隔一段时间(此时间可以根据自己需求而配置)去对其进行一定操作,比如往里面写一些固定的值,俗称“喂狗”,发现超时了,即过了这么长时间还不给狗喂食,那么偶就认为你系统是死机了,出问题了,狗狗就帮你重启系统。说白了就是弄个看家狗Dog,你要定期给它喂食,如果超时不喂食,那么狗就认为你,他的主人,你的系统,死机了,就帮你reset重启系统。
Softwere Watchdog Timeout,顾名思义就是软件超时监控狗。

1)什么是“被狗咬”

当看门狗启动后,计数器开始自动计数,经过一定时间,如果没有被复位,计数器溢出就会对CPU产生一个复位信号使系统重启。
简单理解就是当不喂狗时,狗就要来咬你了,这个时候就系统重启了。

2)什么是喂狗

系统正常运行时,需要在看门狗允许的时间间隔内对看门狗计数器清零,从而不让复位信号产生。
如果系统不出问题,程序保证按时“喂狗”,一旦程序跑飞,没有“喂狗”,系统“被咬”复位。
这就好比你的身边有一只时刻饥饿的狗,你不按时给它肉吃,它就会吃你的肉,被狗咬…然后挂了,投胎转世,彻底重新做人。

二. 基本思想

WatchDog的基本思想是针对被监视的目标设置一个计数器和一个阈值,WatchDog会自己增加计数值,并等待被监视的目标周期性地重置计数值。一旦目标发生错误,没来得及重置计数值,watchdog会检测到计数值溢出,并采取恢复措施(通常情况下是重启)。
总结一下就是计数——溢出——触发。
一个正常运行的系统,它的执行流应该是可预测的,因此可以在它正常执行路径上设置一些周期性重置watchdog的点;但如果系统发生故障,它可能执行不到下一个重置watchdog的点,此时故障将被watchdog捕捉到。看到这儿,您应该知道watchdog对于检测死循环或死锁这类故障非常有效。

三. 作用

watchdog 一般是一个硬件模块(也可以软件实现),其作用是在嵌入式操作系统中,很多应用情况是系统长期运行且无人看守,所以难免或者怕万一出现系统死机,那就狗屁了,这时,watchdog就会自动帮你重启系统来完成初始化。
它的工作方式是事件触发的,它可以对任何合理的事件计数(如CPU指令)。其中时间事件(timeout)最常使用,这也是为什么watchdog又叫做watchdog timer。Watchdog系统起到非常重要的作用,相当于系统警察,当系统发生严重错误(如程序进入死循环等)不能恢复的时候,WatchDog能够让系统重启。WatchDog的应用主要是在嵌入式操作系统中,避免了系统在无人干预时长时间挂起的情况。
总结:保证系统在出现不可恢复错误时,能够自动让系统重启。

四. 监视目标

Watchdog是一种检测手段,它监视的目标可以是一个进程也可以是整个操作系统。

1) 监视一个进程

如果监视目标只是一个进程,那么利用操作系统提供的定时功能即可实现一个Watchdog。

2)监视一个操作系统

如果要监视操作系统,就得使用操作系统之外的工具,通常是一个附加的计数器。现代Intel CPU都包含的performance counter也可以提供这样的功能,从而不需要额外的设备就能实现监视操作系统的watchdog。

五. 系统初始化时关闭watchdog的原因

如果不禁用watchdog,那么就要单独写程序去定期“喂狗”。bootloader的作用是初始化必要的硬件资源和系统资源,保证产品软件能够正常启动。bootloader不必长期留在内存中,所以用不到这个watchdog的机制。

六. WATCHDOG模块

在比较高档的嵌入式硬件都有一个WATCHDOG模块。如果在MCUMPU是没有集成WATCHDOG,一般会在此嵌入式系统中加一个专门的WATCHDOG芯片来实现WATCHDOG机制。
此模块主要的功能包括:

  1. 提供WATCHDOG控制寄存器和配置寄存器,供软件开发人员根据系统需要进行灵活配置。
  2. 提供一接口,使应用软件能够定时给WATCHDOG“喂狗”。
  3. 提供WATCHDOG机制,当系统进入不可恢复错误时,能产生一个不可屏蔽中断来通知系统自动重启(一般这样,也有改变为其他处理方式的),只有相应的复位信号才能清除它。

七. WatchDog总结

  1. 看门狗 (Watch Dog)在嵌入式系统中很常见,常用于保证系统的可靠性。看门狗有软件与硬件两种,有的MCU,本身有看门狗定时器,可以借助【外部独立的看门狗芯片】,实现程序【监控】功能。
  2. 看门狗是一个独立的【定时器模块】,有独立的定时器控制器,程序可以设置定时器的超时时间,时间到了,会进入看门狗定时器中断,并触发系统【复位】
  3. 当系统异常,如程序跑飞后,由于无法确保按时【喂狗】,也就是不能及时的【重置看门狗定时器】,造成看门狗超时,触发系统【复位】而重新运行程序
  4. 使用看门狗完成重启能够解决大部分的嵌入式系统的问题。因为出现错误重启系统,能够解决大部分的问题。
http://www.zhongyajixie.com/news/2213.html

相关文章:

  • h5网站开发用什么软件制作百度指数在线查询
  • 企业网络推广情况介绍如何做网站推广及优化
  • 做公司网站需要注意什么网站如何做seo推广
  • 帮网贷做网站会判刑吗百度网站推广排名
  • 做营销型网站的教程sem专员
  • 如何做免费网站推广网站关键词
  • 网站运营专员月薪多少苏州关键词优化搜索排名
  • 网站怎么做端口映射长尾关键词挖掘词工具
  • wordpress函数手册领硕网站seo优化
  • 广告设计与制作专业毕业论文洛阳网站建设优化
  • 广州专业做网页的公司seo建站公司推荐
  • 长春网站推广方式网络营销中的seo是指
  • 政府网站建设 托管百度一下浏览器下载安装
  • wordpress ie前端优化
  • 友汇网 做公司网站搭建一个网站需要多少钱
  • 简单项目计划书seo小白入门
  • 网站如何做下拉菜单谷歌seo课程
  • 网站建设佰首选金手指四线下广告投放渠道都有哪些
  • 手机网站怎么布局seo首页排名优化
  • 农庄网站模板查关键词
  • 做课程的网站网络公司网络推广服务
  • 模板网站禁止右键腾讯云域名注册
  • 大连旅游网站建设大概多钱长沙百度首页优化排名
  • wordpress完整教程 pdf网站优化方案案例
  • 三亚网站建设.com百度站长工具怎么用
  • wordpress清空缓存关键词推广优化排名如何
  • photoshop免费版汕头seo
  • 大气简洁企业通用网站模板企业官网推广
  • wordpress publisherseo页面优化技术
  • 网站建设现在主要做些什么推广方案怎么写模板