新四季網

嵌入式系統餵狗的方法、裝置及單板的製作方法

2023-07-04 14:23:26

專利名稱:嵌入式系統餵狗的方法、裝置及單板的製作方法
技術領域:
本發明涉及通信技術領域,尤其涉及一種嵌入式系統餵狗的方法、裝置及單板。
背景技術:
看門狗是一種防止程 序跑飛,陷入死循環的技術,廣泛應用於嵌入式系統中,其在系統自動復位方面有著不可替代的作用。嵌入式系統在上電開機後,需要先後經歷引導(Boot loader)程序運行、內核(Kernel)程序運行以及應用程式運行幾個階段。在此期間當系統沒有按時餵狗時,看門狗電路對系統進行復位,系統重新運行相應開機程序。目前,主要通過三種方式對看門狗電路進行餵狗1)硬體餵狗2)軟體餵狗3)軟硬體結合餵狗。具體的,I)硬體餵狗通過一個包含計數器的物化電路板,定時向嵌入式系統輸入高/低電平,從而達到定時餵狗防止系統復位的目的。2)軟體餵狗通過在運行的程序中設置定時餵狗規則,從而達到定時餵狗防止系統復位的目的。3)軟硬體結合餵狗在系統引導程序啟動階段使用硬體餵狗,在內核正常運行之後使用軟體餵狗。現有涉及軟體餵狗的餵狗方式,需要建立線程執行餵狗動作,高頻率的餵狗動作會增加中央處理器(Central Processing Unit,簡稱CPU)的負載,耗費線程資源。當CPU負載過大時,會延時建立餵狗的線程,容易丟失餵狗動作,導致系統誤復位。

發明內容
本發明的實施例提供一種嵌入式系統餵狗的方法、裝置及單板,能夠降低CPU的負載,節省線程資源,同時解決由於CPU負載過高導致的系統誤復位的問題。一方面,本發明實施例提供了一種嵌入式系統餵狗的方法,包括判斷是否到達使能餵狗時刻值;當到達所述使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息。另一方面,本發明實施例還提供了一種嵌入式系統餵狗的方法,包括接收中央處理器發送的餵狗使能消息;根據所述餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向所述中央處理器發送餵狗信號。另一方面,本發明實施例提供了一種中央處理器,包括處理器,用於判斷是否到達使能餵狗時刻值;發送器,用於當所述處理器判斷到達所述使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息;另一方面,本發明實施例還提供了一種餵狗裝置,包括接收器,用於接收中央處理器發送的餵狗使能消息;發送器,用於根據所述接收器接收的所述餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向所述中央處理器發送餵狗信號。
另一方面,本發明實施例提供了一種嵌入式系統餵狗的單板,包括中央處理器和餵狗裝置,所述中央處理器和所述餵狗裝置之間具有數據交互能力。本發明實施例提供的嵌入式系統餵狗的方法、裝置及單板,能夠由中央處理器定時向餵狗裝置發送餵狗使能信息,在每次發送餵狗使能信息後由餵狗裝置完成多次餵狗動作。與現有技術中由中央處理器完成餵狗動作相比,能夠將高頻率的餵狗動作轉移給餵狗裝置處理,可以減少中央處理器的資源開銷,避免由於中央處理器負載過高導致的餵狗動作丟失的問題。


為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖I為本發明實施例中嵌入式系統餵狗的方法的流程圖;圖2為本發明實施例中另一個嵌入式系統餵狗的方法的流程圖;圖3為本發明實施例中嵌入式系統餵狗的示意圖;圖4為本發明實施例中另一個嵌入式系統餵狗的示意圖;圖5為本發明實施例中再一個嵌入式系統餵狗的方法的流程圖;圖6為本發明實施例中又一個嵌入式系統餵狗的方法的流程圖;圖7為本發明實施例中中央處理器的結構示意圖;圖8為本發明實施例中另一個中央處理器的結構示意圖;圖9為本發明實施例中再一個中央處理器的結構示意圖;圖10為本發明實施例中餵狗裝置的結構示意圖;圖11為本發明實施例中另一個餵狗裝置的結構示意圖;圖12為本發明實施例中嵌入式系統餵狗的單板的結構示意圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。本發明實施例提供了一種嵌入式系統餵狗的方法,如圖I所示,所述方法包括如下步驟101、判斷是否到達使能餵狗時刻值。所述使能餵狗時刻值具有周期性,在每次到達使能餵狗時刻值時,中央處理器向餵狗裝置發送餵狗使能消息。102、當到達使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息。餵狗裝置根據該餵狗使能消息,在接收到該餵狗使能消息到接收到下一次餵狗使能消息期間,向中央處理器多次發送餵狗信號。本發明實施例提供的嵌入式系統餵狗的方法,能夠由中央處理器定時向餵狗裝置發送餵狗使能信息,在每次發送餵狗使能信息後由餵狗裝置完成多次餵狗動作。與現有技術中由中央處理器完成餵狗動作相比,能夠將高頻率的餵狗動作轉移給餵狗裝置處理,可以節省中央處理器的線程資源,避免由於中央處理器負載過高導致的餵狗動作丟失的問題。進一 步的,本發明實施例還提供了一種嵌入式系統餵狗的方法,所述方法是對圖I所示方法的進一步擴展,如圖2所示,所述方法包括如下步驟201、設置餵狗持續時間、餵狗時長以及使能餵狗時刻值。所述餵狗持續時間大於所述餵狗時長。例如可以設置餵狗持續時間為IOOOs (秒)、餵狗時長為200s,從初始餵狗時刻起,每間隔195s的時刻值為使能餵狗時刻值。所述餵狗持續時間為嵌入式系統從上電開機時刻到應用程式穩定運行時刻之間的時長,實際應用中,餵狗持續時間應稍長於該時長。需要說明的是,所述餵狗持續時間和所述餵狗時長是相對時間段,所述使能餵狗時刻值是絕對時間點。所述使能餵狗時刻值可以以中央處理器中的時鐘為時序進行設置,本發明實施例對此不做限制。202、判斷是否到達使能餵狗時刻值。203、當到達使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息。所述餵狗使能消息為餵狗指示或者餵狗時長消息。當餵狗使能消息為餵狗指示時,餵狗裝置在接收到餵狗使能消息後,在預設的餵狗時長內向中央處理器發送餵狗信號,當餵狗使能消息為餵狗時長消息時,餵狗裝置在接收到餵狗使能消息後,在餵狗時長消息中的餵狗時長內向中央處理器發送餵狗信號,此時可以不以預設的餵狗時長為準。具體的,如圖3所示,在系統上電開機時到達第一次使能餵狗時刻值(Os),此時向餵狗裝置發送餵狗使能消息,該信息中餵狗時長為200s。當到達第二次使能餵狗時刻值(195s)時,再次向餵狗裝置發送餵狗時長消息(200s),該信息用於指示餵狗裝置在第200s到第400s之間繼續向中央處理器發送餵狗信號。當到達第三次使能餵狗時刻值(390s)時,第三次向餵狗裝置發送餵狗時長消息(200s),該信息用於指示餵狗裝置在第400s到第600s之間繼續向中央處理器發送餵狗信號,以此類推之。餵狗裝置在餵狗時長內按照預設的餵狗間隔(或稱為餵狗頻率)向中央處理器發送餵狗信號。如果餵狗間隔為50ms(毫秒),則在一個餵狗時長內餵狗裝置發送4000次餵狗信號。在現有技術中,軟體餵狗的方式是通過建立線程(包內核線程和應用線程)進行餵狗,發送一次餵狗信號需要建立一個餵狗線程。在圖3所示的事例中在一段餵狗持續時間內(1000s),需要建立20000次餵狗線程。而本發明實施例中,在一段餵狗持續時間內只需為發送5次餵狗使能消息建立5次線程,而將發送餵狗信號的動作轉移給了餵狗裝置執行。由於餵狗裝置獨立於中央處理器,所以其發送餵狗信號不會增加中央處理器的負載。相對於現有技術而言,本發明實施例可以減少19995次線程的建立,能夠大大減小中央處理器的負載,節省線程資源。此外,當中央處理器的負載過大時,會延遲建立餵狗線程,當延遲的時間超過一個餵狗間隔時,就會發生餵狗動作遺漏的情況,從而導致中央處理器對系統進行錯誤復位。由於本發明實施例能夠減小中央處理器的負載,所以還可以避免由於中央處理器負載過大導致的餵狗動作丟失的問題。可選的,在發送餵狗使能消息之前,還可以判斷餵狗持續時間是否結束,當餵狗持續時間結束時,停止向餵狗裝置發送餵狗使能消息。餵狗裝置在完成最後一個餵狗時長內的餵狗動作後,不再發送餵狗信號。進一步的,可以在每次向餵狗裝置發送餵狗時長之前,可以設置該餵狗時長,即在同一餵狗持續時間內的多個餵狗時長可以不相同。本發明實施例是以從系統上電開機到應用程式穩定運行為餵狗持續時間進行說明的,此外還可以將嵌入式系統上電開機開始之後的時間劃分為多個階段,根據每個階段 的運行特點設置相應階段的餵狗持續時間、餵狗時長以及使能餵狗時刻值。例如,可以順序劃分為如下多個階段引導(boot)啟動階段、boot運行階段、boot調試階段、內核(kernel)引導階段、內核工作階段、應用啟動階段以及應用運行階段。所述根據每個階段的運行特點設置相應階段的餵狗持續時間、餵狗時長以及使能餵狗時刻值可以是根據每個階段的運行時間設置相應階段的餵狗持續時間、餵狗時長以及使能餵狗時刻值。其中,餵狗持續時間應稍長於該階段的運行時間,餵狗時長應小於對應的餵狗持續時間。各個階段餵狗的實現方式可以參照圖2所示的實現方式,並結合各階段的時長特點進行實現,本發明實施例對此不再一一贅述。進一步的,在應用運行階段,還可以接收應用程式發送的高級餵狗使能消息並根據該高級餵狗使能消息向餵狗裝置發送餵狗使能消息,從而實現餵狗裝置監視內核線程、內核線程監視應用程式線程的目的。所述高級餵狗使能消息可以為餵狗指示或餵狗時長,當接收到高級餵狗使能消息後,向餵狗裝置發送餵狗使能消息,該餵狗使能消息與圖2中所述的餵狗使能消息以及後續實現方式相同,此處不再贅述。再進一步的,在應用運行階段,餵狗信號還可以由應用程式直接發送給內核,由此保證內核監視應用程式的正常運行。更進一步的,在應用程式處理階段(包括應用程式啟動階段和應用程式運行階段),如果到達接收餵狗信號時刻卻未接收到餵狗信號,則在對系統進行復位時,可以復位到應用程式啟動階段,由此可以節省從運行上電開機到內核工作階段之間多個運行階段重複運行的時間和資源。在本發明實施例的一個應用場景中,針對系統不同階段的運行特點,採用了軟硬體相結合的方式進行餵狗,具體的,如圖4所示l)boot啟動階段該階段是指系統上電後,中央處理器內部固化的代碼自動加載flash中boot映像的過程。該階段的特點是執行時間較短且執行時長基本固定(即flash讀操作的時間)。根據該階段的特點,採用硬體餵狗的方式,即餵狗裝置發送餵狗信號,餵狗持續時間稍大於boot啟動時間,當中央處理器未在接收時刻接收到餵狗信號時,對系統重新上電復位。2)boot運行階段該階段是指boot映像加載後啟動運行的時間段。在該階段boot程序已經正常運行,特別是中斷服務函數已經可以正常使用。根據該階段的特點,採用軟體餵狗的方式,即boot程序按照預定的定時間隔向中央處理器發送中斷服務函數(相當於餵狗信號),由此實現監視boot程序的運行情況,當boot運行異常時對系統重新上電復位。
3)boot調試階段該階段是指boot程序進入調試模式,其特點與boot運行階段相同,故餵狗方式也採用boot運行階段的餵狗方式,此處不再贅述。4)內核引導階段該階段是指boot程序將內核映像拷貝到內存,以及內核映像開始運行到內核各項服務沒有初始化之間的過程。該階段中boot程序逐步退出運行,而內核也沒有完全運行起來,結合其特點,採用圖2所述的軟硬體結合的方式餵狗,同時,確保餵狗持續時間大於內核加載與啟動的時間之和。由此實現監視內核運行情況,當該階段出現異常時,對系統重新上電復位。5)內核工作階段內核正常運行後至應用程式啟動之間的過程。該過程中內核中各項服務可以正常使用。該階段的餵狗方式與圖2所示的餵狗方式相同,此處不再贅述。 6)應用程式啟動階段該階段是指內核正常運行後至啟動應用程式的過程。應用程式啟動過程中需要做大量的監測工作以及初始化工作,耗時較長。該階段的餵狗方式為硬體餵狗,即餵狗裝置按照預設的餵狗持續時間、餵狗間隔發送餵狗信號。7)應用程式運行階段應用程式運行階段是指應用程式正常運行後的階段。該階段中,應用程式會啟動一個線程專門負責看門狗事務處理,該線程主要負責向內核發送高級餵狗使能消息,並由內核根據該高級餵狗使能消息向餵狗裝置發送餵狗使能消息,此後的實現方式與圖2所示的實現方式相同。該餵狗方式可以實現餵狗裝置監視內核線程,內核線程監視應用程式線程的作用。當應用程式出現異常時,復位對象為應用程式本身,即復位到應用程式啟動階段重新運行。圖4所示的餵狗方式,能夠將系統上電後的階段劃分為多個子階段,根據每個子階段的特點,採取不同的餵狗方式。在節省了線程資源的同時,能夠更加正確的監視系統運行情況。此外,圖4所示的餵狗方式能夠監視系統啟動的所有階段,系統在任何一個階段僵死均可以被發現並復位。進一步的,還可以將嵌入式系統上電開機後的階段劃分為更加精細的子階段是,並針對每個階段的特點進行餵狗,本發明實施例對此不做限制。需要說明的是,本發明實施例中所述內核可以等同理解為中央處理器,但中央處理器不應被等同理解為內核,這是由於在boot處理階段,內核還未開始運行,此時接收餵狗信號以及復位系統的執行主體表述為中央處理器。本發明實施例提供的嵌入式系統餵狗的方法,可以減少內核和應用程式的線程,降低線程資源的消耗,從而達到減小中央處理器負載的目的。同時,由於餵狗使能消息來自於內核或應用程式,所以與硬體餵狗的方式相比,軟硬體結合的餵狗方式能夠更加準確的監視程序運行的異常。此外,本發明實施例提供的嵌入式系統餵狗的方法,還可以將系統復位到應用程式處理階段之前,由此節省當應用程式異常時重新運行boot和內核處理階段所消耗的時間和線程資源。本發明實施例中的嵌入式系統包括但不僅限於基板管理控制器(BaseboardManagement Controller,簡稱BMC)系統,本發明實施例對此不做限制。本發明實施例提供了一種嵌入式系統餵狗的方法,如圖5所示,所述方法包括如下步驟501、接收中央處理器發送的餵狗使能消息。在餵狗持續時間內,多次接收餵狗使能消息。
502、根據餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向中央處理器發送餵狗信號。當接收到餵狗使能消息後,在預設的餵狗時長內,根據預設的餵狗間隔向中央處理器多次發送餵狗信號。
當餵狗使能消息中含有餵狗時長消息時,在該餵狗時長內,根據預設的餵狗間隔向中央處理器多次發送餵狗信號。本發明實施例提供的嵌入式系統餵狗的方法,能夠定時接收餵狗使能信息,在接收到餵狗使能信息後完成多次餵狗動作。與現有技術中由中央處理器完成餵狗動作相比,將高頻率的餵狗動作轉移給餵狗裝置處理,可以節省中央處理器的線程資源,避免由於中央處理器負載過高導致的餵狗動作丟失的問題。進一步的,本發明實施例還提供了一種是嵌入式系統餵狗的方法,所述方法是對圖5所示方法的進一步擴展,如圖6所示,所述方法包括如下步驟601、設置餵狗持續時間以及餵狗間隔。所述餵狗持續時間可以設置為1000s,所述餵狗間隔可以設置為50ms。進一步的,還可以根據嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間以及餵狗間隔。所述階段可以順序為引導(boot)啟動階段、boot運行階段、boot調試階段、內核(kernel)引導階段、內核工作階段、應用啟動階段以及應用運行階段。所述根據每個階段的運行特點設置相應階段的餵狗持續時間以及餵狗間隔可以是根據每個階段的運行時間設置相應階段的餵狗持續時間以及餵狗間隔。其中,餵狗持續時間應稍長於階段的運行時間。602、接收中央處理器發送的餵狗使能消息。在餵狗持續時間內,可以多次接收中央處理器發送的餵狗使能消息。603、根據餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向中央處理器發送餵狗信號。當餵狗使能消息為餵狗指示時,根據餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向中央處理器發送餵狗信號。當餵狗使能消息為餵狗時長消息時,根據餵狗使能消息中預設的餵狗時長消息以及預設的餵狗間隔,向中央處理器發送餵狗信號。具體的,仍如圖3所示,在系統上電開機時到達第一次使能餵狗時刻值(Os),此時接收餵狗使能消息,該消息中餵狗時長為200s。當到達第二次使能餵狗時刻值(195s)時,再次接收餵狗使能消息,該信息用於指示餵狗裝置在第200s到第400s之間繼續向中央處理器發送餵狗信號。當到達第三次使能餵狗時刻值(390s)時,第三次接收餵狗使能消息,該信息用於指示餵狗裝置在第400s到第600s之間繼續向中央處理器發送餵狗信號,以此類推之。餵狗裝置在餵狗時長內按照預設的餵狗間隔(或稱為餵狗頻率)向中央處理器發送餵狗信號。如果餵狗間隔為50ms,則在一個餵狗時長內餵狗裝置發送4000次餵狗信號。在現有技術中,軟體餵狗的方式是通過建立線程(包內核線程和應用線程)進行餵狗,發送一次餵狗信號需要建立一個餵狗線程。在圖3所示的事例中在一段餵狗持續時間內(1000s),需要建立20000次餵狗線程。而本發明實施例中,在一段餵狗持續時間內只需為發送5次餵狗使能消息建立5次線程,而將發送餵狗信號的動作轉移給了餵狗裝置執行。由於餵狗裝置獨立於中央處理器,所以其發送餵狗信號不會增加中央處理器的負載。相對於現有技術而言,本發明實施例可以減少19995次線程的建立,能夠大大減小中央處理器的負載,節省線程資源。此外,當中央處理器的負載過大時,會延遲建立餵狗線程,當延遲的時間超過一個餵狗間隔時,就會發生餵狗遺漏的情況,從而導致中央處理器對系統進行錯誤復位。由於本發明實施例能夠減小中央處理器的負載,所以還可以避免由於中央處理器負載過大導致的餵狗信號丟失的問題。在本發明實施例的一個應用場景中,從嵌入式系統上電開機起劃分為引導(boot)啟動階段、boot運行階段、boot調試階段、內核(kernel)引導階段、內核工作階段、應用啟動階段以及應用運行階段。可以針對嵌入式系統上電後各個運行階段的特點進行餵狗,其實現方式可以參考圖6所示的實現方式並結合各階段的特點進行實現,本發明實施例對此不再贅述。在本發明實施例的另一個應用場景中,針對系統不同階段的運行特點,採用了軟硬體相結合的方式進行餵狗,具體的,與圖4所示的實現方式相同,此處一併不再贅述。進一步的,當餵狗持續時間結束時,停止發送餵狗信號。當餵狗持續時間未結束時,如果餵狗時長結束並且沒有再次接收到餵狗使能消息時,同樣停止向發送餵狗信號。此外還可以手動停止餵狗動作,在本發明實施例的一個應用場景中,當對某一個階段進行軟體餵狗時,需要關閉上一個階段的餵狗裝置,由此避免當系統僵死時,雖然軟體餵狗動作停止,但上餵狗裝置仍然進行餵狗導致的無法復位系統的問題。本發明實施例提供的嵌入式系統餵狗的方法,可以減少內核和應用程式的線程,降低線程資源的消耗,從而達到減小中央處理器負載的目的。同時,由於餵狗使能消息來自於內核或應用程式,所以與硬體餵狗的方式相比,軟硬體結合的餵狗方式能夠更加準確的監視程序運行的異常。本發明實施例中的嵌入式系統包括但不僅限於BMC系統,本發明實施例對此不做限制。參考圖2所示方法實施例的實現,本發明實施例提供了一種中央處理器,如圖7所示,用以實現圖2所示的方法實施例,所述中央處理器包括處理器71、發送器72以及接收器73,其中,所述處理器71,用於判斷是否到達使能餵狗時刻值。所述使能餵狗時刻值具有周期性,在每次到達使能餵狗時刻值時,所述發送器72向餵狗裝置發送餵狗使能消息。所述發送器72,用於當所述處理器71判斷到達使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息。餵狗裝置根據該餵狗使能消息,在接收到該餵狗使能消息到接收到下一次餵狗使能消息期間,向中央處理器多次發送餵狗信號。所述接收器73,用於接收餵狗信號。進一步的,如圖8所示,所述發送器72包括第一發送單元81,用於向餵狗裝置發送餵狗指示。第二發送單元82,用於向餵狗裝置發送餵狗時長消息。所述餵狗使能消息為餵狗指示或者餵狗時長消息。當餵狗使能消息為餵狗指示、時,餵狗裝置在預設的餵狗時長內向中央處理器發送餵狗信號,當餵狗使能消息為餵狗時長消息時,餵狗裝置在餵狗時長消息中的餵狗時長內向中央處理器發送餵狗信號,此時可以不以預設的餵狗時長為準。進一步的,所述處理器71還用於判斷餵狗持續時間是否結束。當所述處理器71判斷餵狗持續時間結束時,所述發送器72還用於停止向餵狗裝置發送餵狗使能消息。在發送餵狗使能消息之前,還可以判斷餵狗持續時間是否結束,當餵狗持續時間結束時,停止向餵狗裝置發送餵狗使能消息。餵狗裝置在完成最後一個餵狗時長內的餵狗動作後,不再發送餵狗信號。進一步的,如圖9所示,所述中央處理器還包括配置器91,用於根據嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間、餵狗時長以及使能餵狗時刻值,其中餵狗持續時間大於餵狗時長。所述餵狗持續時間大於所述餵狗時長。例如可以設置餵狗持續時間為IOOOs (秒)、餵狗時長為200s,從開始餵狗時刻起,每間隔195s的時刻值為使能餵狗時刻值。所述餵狗持續時間為嵌入式系統從上電開機時刻到應用程式穩定運行時刻之間的時長,實際應用中,餵狗持續時間應稍長於該時長。需要說明的是,所述餵狗持續時間和所述餵狗時長是相對時間段,所述使能餵狗時刻值是絕對時間點。所述使能餵狗時刻值可以以中央處理器中的時鐘為時序進行設置,本發明實施例對此不做限制。進一步的,所述接收器73還用於接收應用線程發送的高級餵狗使能消息。所述發送器72還用於根據所述接收器73接收的高級餵狗使能消息向餵狗裝置發送餵狗使能消息。在應用運行階段,還可以接收應用程式發送的高級餵狗使能消息並根據該高級餵狗使能消息向餵狗裝置發送餵狗使能消息,從而實現餵狗裝置監視內核線程、內核線程監視應用程式線程的目的。所述高級餵狗使能消息可以為餵狗指示或者餵狗時長,當接收到高級餵狗使能消息時,向餵狗裝置發送餵狗使能消息。所述接收器73用於接收應用線程發送的餵狗信號。在應用運行階段,還可以直接接收應用程式發送的餵狗信號,由此保證內核監視應用程式的正常運行。進一步的,所述處理器71還用於在應用程式處理階段,當所述接收器73未按照預設餵狗間隔接收到餵狗信號時,將所述嵌入式系統復位到應用程式啟動階段。在應用程式處理階段(包括應用程式啟動階段和應用程式運行階段),當到達接收餵狗信號時刻時,如果未接收到餵狗信號,在對系統進行復位時,可以復位到應用程式啟動階段,由此可以節省從上電開機到內核工作階段之間,多個運行階段重複運行的時間和資源。
本發明實施例提供的中央處理器,可以減少內核和應用程式的線程,降低線程資源的消耗,從而達到減小中央處理器負載的目的。同時,由於餵狗使能消息來自於內核或應用程式,所以與硬體餵狗的方式相比,軟硬體結合的餵狗方式能夠更加準確的監視程序運行的異常。
此外,本發明實施例提供的中央處理器,還可以將系統復位到應用程式處理階段之前,由此節省當應用程式異常時重新運行boot和內核處理階段所消耗的時間和線程資源。本發明實施例中的嵌入式系統包括但不僅限於BMC系統,本發明實施例對此不做限制。參考圖6所示的方法實施 例,本發明實施例提供了一種餵狗裝置,如圖10所示,用以實現圖6所示的方法實施例,所述餵狗裝置包括接收器1001以及發送器1002,其中,所述接收器1001,用於接收中央處理器發送的餵狗使能消息。在餵狗持續時間內,所述接收器1001可以多次接收中央處理器發送的餵狗使能消息。所述發送器1002,用於根據所述接收器1001接收的餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向中央處理器發送餵狗信號。進一步的,所述發送器1002具體用於根據餵狗使能消息以及預設的餵狗間隔,向中央處理器發送餵狗信號。當餵狗使能消息為餵狗指示時,所述發送器1002根據餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向中央處理器發送餵狗信號。當餵狗使能消息為餵狗時長消息時,所述發送器1002根據餵狗使能消息中預設的餵狗時長消息以及預設的餵狗間隔,向中央處理器發送餵狗信號。進一步的,如圖11所示,所述餵狗裝置還包括配置器1101,用於根據嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間以及餵狗間隔。所述餵狗持續時間可以設置為1000s,所述餵狗間隔可以設置為50ms。進一步的,還可以根據嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間以及餵狗間隔。所述階段順序為引導(boot)啟動階段、boot運行階段、boot調試階段、內核(kernel)引導階段、內核工作階段、應用啟動階段以及應用運行階段。所述根據每個階段的運行特點設置相應階段的餵狗持續時間以及餵狗間隔可以是根據每個階段的運行時間設置相應階段的餵狗持續時間以及餵狗間隔。其中,餵狗持續時間應稍長於階段的運行時間。進一步的,所述發送器1002還用於當餵狗持續時間結束時,停止向中央處理器發送餵狗信號;或者當餵狗時長結束並且所述接收器1001沒有接收到中央處理器發送的餵狗使能消息時,停止向中央處理器發送餵狗信號。如果餵狗持續時間已結束,則停止發送餵狗信號,如果餵狗時長結束並且沒有再次接收到餵狗使能消息時,同樣停止向發送餵狗信號。本發明實施例提供的餵狗裝置,可以減少內核和應用程式的線程,降低線程資源的消耗,從而達到減小中央處理器負載的目的。同時,由於餵狗使能消息來自於內核或應用程式,所以與硬體餵狗的方式相比,軟硬體結合的餵狗方式能夠更加準確的監視程序運行的異常。本發明實施例中的嵌入式系統包括但不僅限於BMC系統,本發明實施例對此不做限制。
進一步的,參考上述圖7至圖11所述的實施例,本發明實施例提供了一種嵌入式系統餵狗的單板,如圖12所示,所述單板包括中央處理器1201以及餵狗裝置1202,其中,所述中央處理器1201為上述圖7至圖9中任意一幅圖所示的中央處理器,所述餵狗裝置1202為圖10或圖11所示的餵狗裝置。所述中央處理器1201和餵狗裝置1202相連,能夠進行數據交互。本發明實施例提供的嵌入式系統餵狗的單板,可以減少內核和應用程式的線程,降低線程資源的消耗,從而達到減小中央處理器負載的目的。同時,由於餵狗使能消息來自於內核或應用程式,所以與硬體餵狗的方式相比,軟硬體結合的餵狗方式能夠更加準確的監視程序運行的異常。通過以上的實施方式的描述,所屬領域的技術人員可以清楚地了解到本發明可藉助軟體加必需的通用硬體的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部 分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在可讀取的存儲介質中,如計算機的軟盤,硬碟或光碟等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,伺服器,或者網絡設備等)執行本發明各個實施例所述的方法。以上所述,僅為本發明的具體實施方式
,但本發明的保護範圍並不局限於此,任何熟悉本技術領域的技術人員在本發明揭露的技術範圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護範圍之內。因此,本發明的保護範圍應所述以權利要求的保護範圍為準。
權利要求
1.ー種嵌入式系統餵狗的方法,其特徵在於,包括 判斷是否到達使能餵狗時刻值; 當到達所述使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息。
2.根據權利要求I所述的方法,其特徵在於,所述向餵狗裝置發送餵狗使能消息,包括 向所述餵狗裝置發送餵狗指示;或者, 向所述餵狗裝置發送餵狗時長消息。
3.根據權利要求2所述的方法,其特徵在於,所述方法還包括 判斷餵狗持續時間是否結束; 當所述餵狗持續時間結束時,停止向所述餵狗裝置發送餵狗使能消息。
4.根據權利要求3所述的方法,其特徵在於,在所述判斷是否到達使能餵狗時刻值之前,所述方法還包括 根據所述嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間、餵狗時長以及使能餵狗時刻值,所述餵狗持續時間大於所述餵狗時長。
5.根據權利要求4所述的方法,其特徵在於,所述方法還包括 接收應用線程發送的高級餵狗使能消息; 根據所述高級餵狗使能消息向所述餵狗裝置發送餵狗使能消息;或者, 接收所述應用線程發送的餵狗信號。
6.根據權利要求I至5中任意一項所述的方法,其特徵在於,所述方法還包括 在應用程式處理階段,當未按照預設餵狗間隔接收到餵狗信號吋,將所述嵌入式系統復位到應用程式啟動階段。
7.ー種嵌入式系統餵狗的方法,其特徵在於,包括 接收中央處理器發送的餵狗使能消息; 根據所述餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向所述中央處理器發送餵狗信號。
8.根據權利要求7所述的方法,其特徵在幹,當所述餵狗使能消息為餵狗時長消息吋,所述根據所述餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向所述中央處理器發送餵狗信號,包括 根據所述餵狗使能消息以及所述預設的餵狗間隔,向所述中央處理器發送餵狗信號。
9.根據權利要求8所述的方法,其特徵在於,所述方法還包括 根據所述嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間以及餵狗間隔。
10.根據權利要求9所述的方法,其特徵在於,當所述餵狗持續時間結束時,停止向所述中央處理器發送餵狗信號;或者, 當所述餵狗時長結束並且沒有接收到所述中央處理器發送的餵狗使能消息時,停止向所述中央處理器發送餵狗信號。
11.ー種中央處理器,其特徵在於,包括 處理器,用於判斷是否到達使能餵狗時刻值; 發送器,用於當所述處理器判斷到達所述使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息; 接收器,用於接收餵狗信號。
12.根據權利要求11所述的中央處理器,其特徵在於,所述發送器包括 第一發送單元,用於向所述餵狗裝置發送餵狗指示; 第二發送單元,用於向所述餵狗裝置發送餵狗時長消息。
13.根據權利要求12所述的中央處理器,其特徵在於,所述處理器還用於判斷餵狗持續時間是否結束; 當所述處理器判斷所述餵狗持續時間結束時,所述發送器還用於停止向所述餵狗裝置發送餵狗使能消息。
14.根據權利要求13所述的中央處理器,其特徵在於,所述中央處理器還包括 配置器,用於根據所述嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間、餵狗時長以及使能餵狗時刻值,所述餵狗持續時間大於所述餵狗時長。
15.根據權利要求14所述的中央處理器,其特徵在於,所述接收器還用於接收應用線程發送的高級餵狗使能消息; 所述發送器還用於根據所述接收器接收的所述高級餵狗使能消息向所述餵狗裝置發送餵狗使能消息; 所述接收器用於接收所述應用線程發送的餵狗信號。
16.根據權利要求11至15中任意一項所述的中央處理器,其特徵在於,所述處理器還用於在應用程式處理階段,當所述接收器未按照預設餵狗間隔接收到餵狗信號吋,將所述嵌入式系統復位到應用程式啟動階段。
17.—種餵狗裝置,其特徵在於,包括 接收器,用於接收中央處理器發送的餵狗使能消息; 發送器,用於根據所述接收器接收的所述餵狗使能消息、預設的餵狗時長以及預設的餵狗間隔,向所述中央處理器發送餵狗信號。
18.根據權利要求17所述的餵狗裝置,其特徵在於,所述發送器具體用於根據所述餵狗使能消息以及所述預設的餵狗間隔,向所述中央處理器發送餵狗信號。
19.根據權利要求18所述的餵狗裝置,其特徵在於,所述餵狗裝置還包括 配置器,用於根據所述嵌入式系統上電後各個運行階段的特點設置對應各個階段的餵狗持續時間以及餵狗間隔。
20.根據權利要求19所述的餵狗裝置,其特徵在於,所述發送器還用於當所述餵狗持續時間結束時,停止向所述中央處理器發送餵狗信號;或者, 當所述餵狗時長結束並且所述接收器沒有接收到所述中央處理器發送的餵狗使能消息時,停止向所述中央處理器發送餵狗信號。
21.—種嵌入式系統餵狗的單板,其特徵在於,所述單板包括如權利要求11至16中任意一項所述的中央處理器,以及如權利要求17至20中任意一項所述的餵狗裝置,其中所述中央處理器和所述餵狗裝置之間具有數據交互能力。
全文摘要
本發明公開了一種嵌入式系統餵狗的方法、裝置及單板,涉及通信技術領域,為降低CPU負載,節省線程資源,同時解決由於CPU負載過高導致的系統誤復位的問題而發明。所述方法包括判斷是否到達使能餵狗時刻值;當到達所述使能餵狗時刻值時,向餵狗裝置發送餵狗使能消息。本發明主要應用於嵌入式系統的異常檢測。
文檔編號G06F11/00GK102637139SQ20121010895
公開日2012年8月15日 申請日期2012年4月13日 優先權日2012年4月13日
發明者劉洪廣, 廖義祥, 張羽 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀