[發(fā)明專利]一種程序復(fù)位系統(tǒng)、方法、裝置及計算機(jī)可讀存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 202010300201.9 | 申請日: | 2020-04-16 |
| 公開(公告)號: | CN111475344B | 公開(公告)日: | 2022-08-02 |
| 發(fā)明(設(shè)計)人: | 王軍;耿官煒 | 申請(專利權(quán))人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14 |
| 代理公司: | 北京集佳知識產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 劉新雷 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 程序 復(fù)位 系統(tǒng) 方法 裝置 計算機(jī) 可讀 存儲 介質(zhì) | ||
本申請公開了一種程序復(fù)位系統(tǒng)、方法、裝置及計算機(jī)可讀存儲介質(zhì),包括:復(fù)位申請接收模塊,用于接收復(fù)位申請;關(guān)鍵動作判斷模塊,用于根據(jù)復(fù)位申請,判斷當(dāng)前是否有正在執(zhí)行的關(guān)鍵動作;復(fù)位待命模塊,用于如果關(guān)鍵動作判斷模塊判定有正在執(zhí)行的關(guān)鍵動作,則不執(zhí)行復(fù)位操作,直至無正在執(zhí)行的關(guān)鍵動作;復(fù)位動作模塊,用于如果關(guān)鍵動作判斷模塊判定無正在執(zhí)行的關(guān)鍵動作,則進(jìn)行與復(fù)位申請對應(yīng)的復(fù)位操作;本申請在接收到復(fù)位申請后,不直接執(zhí)行復(fù)位操作,而是首選判斷當(dāng)前是否有正在運(yùn)行的影響復(fù)位前后系統(tǒng)一致性的關(guān)鍵動作,在確保沒有關(guān)鍵動作后,再進(jìn)行復(fù)位操作,在提高了系統(tǒng)的可靠性的情況下,還仍然能夠確保復(fù)位操作能夠穩(wěn)定運(yùn)行。
技術(shù)領(lǐng)域
本發(fā)明涉及存儲系統(tǒng)領(lǐng)域,特別涉及一種程序復(fù)位系統(tǒng)、方法、裝置及計算機(jī)可讀存儲介質(zhì)。
背景技術(shù)
現(xiàn)有技術(shù)中,計算機(jī)設(shè)備在運(yùn)行時,根據(jù)應(yīng)用場景,需要對程序進(jìn)行重啟復(fù)位;復(fù)位的場景,列舉如下:用戶主動發(fā)起的復(fù)位操作、通過串口CLI(Command Line Interface,命令行接口)直接執(zhí)行復(fù)位指令、本端主程序下發(fā)的復(fù)位指令、對端主程序下發(fā)給對端SES程序(SES,SCSI enclosure service,SCSI機(jī)箱服務(wù),SCSI,Small Computer SystemInterface,小型計算機(jī)系統(tǒng)接口),經(jīng)過交互通道傳遞過來的復(fù)位指令、固件升級后重啟生效、當(dāng)檢測到機(jī)箱外圍某個異常條件,需要重啟或者掉電保護(hù)等、程序編碼不完善,導(dǎo)致觸發(fā)看門狗超時復(fù)位、程序內(nèi)部運(yùn)行出現(xiàn)嚴(yán)重錯誤,如內(nèi)存溢出等復(fù)位、拔電源線后系統(tǒng)掉電,下一次重新上電重啟復(fù)位;有很多種復(fù)位,除了最后兩條無法被程序掌控以外,其它的復(fù)位方式都是軟件可以識別的復(fù)位類型,并做好記錄的。
由于復(fù)位動作可能是異步的,可能檢測到需要異常復(fù)位的時候,程序正在運(yùn)行某個重要功能,例如:正在執(zhí)行主程序下發(fā)的控制指令,還沒有返回響應(yīng)狀態(tài)、主程序在下發(fā)查詢,而還沒有返回查詢結(jié)果、正在執(zhí)行VPD寫入動作(VPD,vital product data,關(guān)鍵生產(chǎn)數(shù)據(jù))、與對端程序正在進(jìn)行交互、正在讀寫某個臨界區(qū)資源、正在執(zhí)行某個i2c讀寫;上述多種情況下,如果程序運(yùn)行到中途進(jìn)行復(fù)位,很可能造成系統(tǒng)復(fù)位前后數(shù)據(jù)不一致,導(dǎo)致系統(tǒng)出錯,造成嚴(yán)重后果,影響系統(tǒng)可靠性,其中,正在執(zhí)行VPD寫入動作時,如果沒寫完就復(fù)位,會導(dǎo)致寫入數(shù)據(jù)不完整,出現(xiàn)VPD數(shù)據(jù)不匹配,影響下次啟動配置,正在讀寫某個臨界區(qū)資源時,如果操作沒完成就復(fù)位,可能會導(dǎo)致共用數(shù)據(jù)不完整,致使臨界區(qū)資源數(shù)據(jù)不一致,正在執(zhí)行某個i2c讀寫時,如果一次讀寫時序沒有發(fā)送完就復(fù)位,可能會導(dǎo)致i2c掛死。
為此,需要一種能夠保證系統(tǒng)運(yùn)行可靠性的復(fù)位方法。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種程序復(fù)位系統(tǒng)、方法、裝置及計算機(jī)可讀存儲介質(zhì),提高系統(tǒng)的可靠性。其具體方案如下:
一種程序復(fù)位系統(tǒng),包括:
復(fù)位申請接收模塊,用于接收復(fù)位申請;
關(guān)鍵動作判斷模塊,用于根據(jù)所述復(fù)位申請,判斷當(dāng)前是否有正在執(zhí)行的關(guān)鍵動作;
復(fù)位待命模塊,用于如果所述關(guān)鍵動作判斷模塊判定有正在執(zhí)行的關(guān)鍵動作,則不執(zhí)行復(fù)位操作,直至無正在執(zhí)行的關(guān)鍵動作;
復(fù)位動作模塊,用于如果所述關(guān)鍵動作判斷模塊判定無正在執(zhí)行的關(guān)鍵動作,則進(jìn)行與所述復(fù)位申請對應(yīng)的復(fù)位操作;
其中,關(guān)鍵動為預(yù)先統(tǒng)計出的影響復(fù)位前后系統(tǒng)一致性的動作。
可選的,所述關(guān)鍵動作判斷模塊,具體用于根據(jù)所述復(fù)位申請,判斷關(guān)鍵動作執(zhí)行標(biāo)識位是否為允許復(fù)位狀態(tài);
其中,允許復(fù)位狀態(tài)為用于計數(shù)正在執(zhí)行的關(guān)鍵動作數(shù)量的關(guān)鍵動作執(zhí)行數(shù)為0時的狀態(tài)。
可選的,還包括:
動作執(zhí)行請求模塊,用于接收關(guān)鍵動作執(zhí)行請求;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于蘇州浪潮智能科技有限公司,未經(jīng)蘇州浪潮智能科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010300201.9/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





