[發明專利]增強嵌入式系統健壯性的一種方法在審
| 申請號: | 202010057336.7 | 申請日: | 2020-01-19 |
| 公開(公告)號: | CN110865900A | 公開(公告)日: | 2020-03-06 |
| 發明(設計)人: | 張毓;魏天鴻 | 申請(專利權)人: | 南京火零信息科技有限公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07;G06F11/14 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 210046 江蘇省南京市棲霞區*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 增強 嵌入式 系統 健壯性 一種 方法 | ||
增強嵌入式系統健壯性的一種方法,涉及嵌入式系統,尤其是嵌入式操作系統中用戶任務和守護進程的健壯性。嵌入式系統因為常用于物聯網領域的無人值守場景,從而對其可靠性,尤其是用戶任務的健壯性提出了很高的要求。通常是要求系統能夠持續運行,即使由于系統內或系統外的原因導致程序死機,也能自動重啟運行。對被監控的用戶進程采用多個守護進程,多個守護進程既監聽用戶進程,又互相監聽,并被硬件看門狗所監聽。從而,在硬件看門狗和守護進程兩個層面上最終保證了用戶進程不會跑飛或停止,這樣的效果好于單純的一個守護進程或看門狗。
技術領域
本發明涉及嵌入式系統,尤其是嵌入式操作系統中用戶任務和守護進程的健壯性。
背景技術
嵌入式系統因為常用于物聯網領域的無人值守場景,從而對其可靠性,尤其是用戶任務的健壯性提出了很高的要求。在很多情況下,往往不允許或沒有條件像普通個人電腦和手持設備一樣隨時由操作者發現問題并重啟。在其應用場景下,更多的是要求能夠持續運行,即使由于系統內或系統外的原因導致程序死機,也能自動重啟運行。
在嵌入式系統中,一般的用戶任務是在操作系統上以用戶進程的方式運行。通常為了保證運行的健壯性,會為其提供一個守護進程來監控用戶進程的狀態、判斷任務運行異常或者已經退出,根據需要重啟該任務。另一種更為底層的方法是,使用硬件看門狗,即若用戶進程不能及時喂狗則由看門狗重啟設備。
在物聯網所用的嵌入式系統中,由于硬件資源的限制及軟硬件的緊密耦合,上述兩種方式都有一定的局限性。對第一種方式,由于守護進程本身也是有可能出問題的(盡管其可能性比用戶進程小),在無人值守的場景下這種小概率事件也是災難性的,因為沒有人可以手動去“重啟”一下程序或設備。對第二種方式,硬件看門狗重啟設備,往往會影響其它進程或任務,所以應該盡可能避免不必要的重啟設備。
發明內容
本發明針對上述情況,有機結合了進程重啟與設備重啟,對被監控的用戶進程采用多個(典型值為兩個)守護進程。多個守護進程既監聽用戶進程,又互相監聽,并被硬件看門狗所監聽。請參考圖1。其有益效果是:
1、守護進程至少有兩個,他們之間互相監聽,互為備份,以防守護進程出現意外;
2、硬件看門狗從系統層面進一步保證了守護進程的健壯性;
3、整體上,從硬件看門狗和守護進程兩個層面上最終保證了用戶進程不會跑飛或停止;這樣的效果遠好于單純的一個守護進程或看門狗;
4、本方法中硬件看門狗只是監控守護進程,而沒有直接監控用戶進程,這沒有增加對用戶進程的額外負擔或干擾;
5、本方法中雖然有多個守護進程,但是可以只使用其中一個守護進程來直接監控用戶進程,這樣也沒有增加對用戶進程的額外負擔或干擾。
相應的方法內容如下(參見圖1):
該方法包括:
(1)用戶進程C(Customer),執行特定的用戶任務;
(2)守護進程A,監控C;
(3)守護進程B,與A互相監控;
(4)硬件看門狗D(watchDog),監控B。
其進一步的功能描述如下:
當A監控到C出現運行異常或停止,則重啟C。
A監控C的每一次消息處理過程,當A檢測到C的阻塞時間超過設定閾值Tc,則判定C處于運行異常狀態。
當A監控到C不存在,則判定C已停止。
當A監控到B出現異常或終止時,則重啟B;當B監控到A出現異常或終止時,則重啟A。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京火零信息科技有限公司,未經南京火零信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010057336.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:臥式組合收放卷設備及其使用方法
- 下一篇:一種多功能有軌搬運穿梭車





