新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 為什么arm上電要關(guān)閉watchdog

為什么arm上電要關(guān)閉watchdog

作者: 時(shí)間:2016-11-21 來(lái)源:網(wǎng)絡(luò) 收藏
1.這件事情發(fā)生在uboot初始化過程中

2.

本文引用地址:http://butianyuan.cn/article/201611/319254.htm

watchdog一般是一個(gè)硬件模塊,其作用是,在嵌入式操作系統(tǒng)中,很多應(yīng)用情況是系統(tǒng)長(zhǎng)期運(yùn)行且無(wú)人看守,所以難免或者怕萬(wàn)一出現(xiàn)系統(tǒng)死機(jī),那就杯具了,這時(shí),watchdog就會(huì)自動(dòng)幫你重啟系統(tǒng)。

那么其是如何實(shí)現(xiàn)此功能的呢?那么就要簡(jiǎn)單解釋一下其實(shí)現(xiàn)原理了。

watchdog硬件的邏輯就是,其硬件上有個(gè)記錄超時(shí)功能,然后要求用戶需要每隔一段時(shí)間(此時(shí)間可以根據(jù)自己需求而配置)去對(duì)其進(jìn)行一定操作,比如往里面寫一些固定的值,俗稱“喂狗”,那么我發(fā)現(xiàn)超時(shí)了,即過了這么長(zhǎng)時(shí)間你還不給偶喂食,那么偶就認(rèn)為你系統(tǒng)是死機(jī)了,出問題了,偶就幫你重啟系統(tǒng)。說白了就是弄個(gè)看家狗dog,你要定期給其喂食,如果超時(shí)不喂食,那么狗就認(rèn)為你,他的主人,你的系統(tǒng),死機(jī)了,就幫你reset重啟系統(tǒng)。

3.

了解了watchdog的原理后,此問題就很容易理解了。

如果不禁用watchdog,那么就要單獨(dú)寫程序去定期“喂狗”,那多麻煩,多無(wú)聊啊。

畢竟咱此處只是去用uboot初始化必要的硬件資源和系統(tǒng)資源而已,完全用不到這個(gè)watchdog的機(jī)制。需要用到,那也是你linux內(nèi)核跑起來(lái)了,是你系統(tǒng)關(guān)心的事情,和我uboot沒啥關(guān)系的,所以肯定此處要去關(guān)閉watchdog(的reset功能)了。



關(guān)鍵詞: arm上電watchdo

評(píng)論


技術(shù)專區(qū)

關(guān)閉