看門(mén)狗--喂狗
看門(mén)狗----喂狗
看門(mén)狗(watchingdog)本質(zhì)上是一種定時(shí)器(timer).
定時(shí)器有軟件定時(shí)器和硬件的定時(shí)器,軟件定時(shí)器的一般的操作方法是在一定的時(shí)間內(nèi)向操作系統(tǒng)發(fā)送消息,一定時(shí)間一般又體現(xiàn)為時(shí)間遞減的形式,例如時(shí)間在2000毫秒時(shí)向操作系統(tǒng)發(fā)送一個(gè)window消息,適合于window這樣的消息驅(qū)動(dòng)的機(jī)制;硬件上的定時(shí)器是一個(gè)硬件的模塊,在一定時(shí)間內(nèi)發(fā)出中斷,出發(fā)中斷服務(wù)函數(shù)響應(yīng)。
看門(mén)狗是一種硬件上的定時(shí)器,我們可以制定它在到達(dá)時(shí)間內(nèi)reset控制器,它與普通定時(shí)器的不同之處就在于他可以reset。使用看門(mén)狗功能的器件要定時(shí)的向它發(fā)送消息,以用來(lái)表示自己在正常工作著,也就是我們所說(shuō)的“喂狗”,當(dāng)該器件不再“喂狗”時(shí),看門(mén)狗則認(rèn)為該器件發(fā)生了異常,從而在時(shí)間到達(dá)的時(shí)候reset整個(gè)微控制器。
原理小故事:
向槍?xiě)?zhàn)片的清醒,人A帶著狗B一起潛入一個(gè)地方,A進(jìn)去,B在門(mén)口接應(yīng),A走的時(shí)候告訴B,如果我安全的話我會(huì)在每10分鐘給你發(fā)出信號(hào)來(lái)證明我沒(méi)有事情,如果沒(méi)有收到我的消息的話證明我在里面有所不測(cè),那么你就沖進(jìn)來(lái)營(yíng)救我。在嵌入式控制器里面的這只狗就稱(chēng)之為看門(mén)狗。
擴(kuò)展閱讀:MSP430單片機(jī)中的WDT研究