新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 看門狗watchdog的理解

        看門狗watchdog的理解

        作者: 時間:2013-12-27 來源:網絡 收藏

        1.什么是?

        ,中文名稱叫做“”,全稱 timer,從字面上我們可以知道其實它屬于一種。然而它與我們平常所接觸的在作用上又有所不同。普通的一般起記時作用,記時超時(Timer Out)則引起一個中斷,例如觸發一個系統時鐘中斷。熟悉windows開發的朋友應該用過windows的Timer,windows Timer的作用與方才所討論的定時器在功能上是相同的,只是windows Timer屬于軟件定時器,當windows Timer記時超時則引起App向System發送一條消息從而觸發某個事件的發生。我們從以上的描述可知不論軟件定時器或硬件定時器他們的作用都是在某個時間點上引起一個事件的發生,對于硬件定時器來說這個事件可能是通過中斷的形式得以表現,對于軟件定時器,這個事件則可以是以系統消息的形式得以表現。正如本文開頭所講的,watchdog本質上是一種定時器,那么普通定時器所擁有的特征它也應該具備,是的,當它記時超時時也會引起事件的發生,只是這個事件除了可以是系統中斷外,它也可以是一個系統重起信號(Reset Signal),可以這么說吧,能發送系統重起信號的定時器我們就叫它watchdog.

        2.watchdog的工作描述

        當一個硬件系統開啟了watchdog 功能,那么運行在這個硬件系統之上的軟件必須在規定的時間間隔內向watchdog發送一個信號.這個行為簡稱為"喂狗"(feed dog),以免watchdog記時超時引發系統重起。

        3.watchdog存在的意義是什么?

        你可能會問watchdog存在的意義是什么?開啟了watchdog之后軟件必須定時向它發信息,這不是麻煩又耗費資源的行為嗎?其實這個行為很重要,這個行為是軟件向硬件報告自身運行狀態的一中手法。一個軟件運行良好,那么它應該可以在規定的時間間隔內向watchdog發送信息,這等同于軟件每隔一段時間就告訴硬件:“嘿,哥們,我在好好的跑著呢,你放心吧。”,若軟件由于某個不當的操作而進入死循環(也就是俗稱的死機),則他無法向watchdog發送信息了,watchdog將發生記時超時,從而引起硬件重起。如果沒有watchdog的存在,程序已經死掉了,但我們的用戶還一頭霧水,以為系統正在進行大規模的運算而進行耐心的等待。。。這一等可就是天荒地老啊。。。-_-!!



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 全椒县| 左权县| 井研县| 分宜县| 合肥市| 河曲县| 勐海县| 天津市| 天峨县| 贺兰县| 上饶县| 博罗县| 昌都县| 射洪县| 综艺| 杭锦后旗| 阜宁县| 怀远县| 东港市| 马边| 读书| 金秀| 琼海市| 乳山市| 沂水县| 鄂托克旗| 民勤县| 通江县| 尚志市| 子长县| 津市市| 维西| 枣庄市| 平罗县| 翁牛特旗| 淮阳县| 临泽县| 罗城| 黔东| 吉木萨尔县| 宜州市|