本發(fā)明實(shí)施例涉及電子設(shè)備領(lǐng)域,特別涉及一種檢測(cè)軟件宕機(jī)的方法和電子設(shè)備。
背景技術(shù):
目前,計(jì)算機(jī)操作系統(tǒng)在工作過(guò)程中,由于軟件和硬件的異常,會(huì)導(dǎo)致操作系統(tǒng)出現(xiàn)死機(jī)或宕機(jī)的情況。而在這種情況下,用戶(hù)一般都采用手動(dòng)操作強(qiáng)制重啟的方式來(lái)判斷是由于軟件運(yùn)行故障引起的宕機(jī)還是由于硬件設(shè)備的故障引起的硬件宕機(jī)。這種方式較為麻煩且用戶(hù)體驗(yàn)不好。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種能夠方便地檢測(cè)軟件宕機(jī)的檢測(cè)軟件宕機(jī)的方法和電子設(shè)備。
為了解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了如下的技術(shù)方案:
一種檢測(cè)軟件宕機(jī)的方法,其包括:
監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令;
基于所述中斷指令執(zhí)行用于檢測(cè)軟件宕機(jī)的中斷,所述中斷包括運(yùn)行一可執(zhí)行程序的第一中斷;
監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在監(jiān)測(cè)到所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生軟件宕機(jī)。
作為優(yōu)選實(shí)施例,所述中斷還包括優(yōu)先級(jí)高于所述第一中斷的第二中斷;并且所述監(jiān)測(cè)所述中斷的執(zhí)行情況,并在監(jiān)測(cè)到所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生軟件宕機(jī)包括:
基于所述第二中斷監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在監(jiān)測(cè)到所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生軟件宕機(jī)。
作為優(yōu)選實(shí)施例,所述監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令包括:
檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作或觸發(fā)信號(hào);
在檢測(cè)到所述觸發(fā)操作或觸發(fā)信號(hào)時(shí)判斷為監(jiān)測(cè)到關(guān)于檢測(cè)軟件宕機(jī)的中斷指令。
作為優(yōu)選實(shí)施例,所述檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作包括:
通過(guò)檢測(cè)預(yù)設(shè)按鍵的觸發(fā)來(lái)檢測(cè)所述觸發(fā)操作。
作為優(yōu)選實(shí)施例,所述第二中斷包括觸發(fā)計(jì)時(shí)器按照預(yù)設(shè)時(shí)間計(jì)時(shí)的程序。
作為優(yōu)選實(shí)施例,所述基于所述第二中斷監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在監(jiān)測(cè)到所述第一中斷執(zhí)行異常時(shí)判斷為發(fā)生軟件宕機(jī)包括:
判斷在所述預(yù)設(shè)時(shí)間內(nèi)所述第一中斷是否被執(zhí)行或者是否完成執(zhí)行;
若所述第一中斷未被執(zhí)行或未完成執(zhí)行則確定所述第一中斷執(zhí)行異常,且判斷為發(fā)生軟件宕機(jī)。
作為優(yōu)選實(shí)施例,所述方法還包括:
輸出關(guān)于軟件宕機(jī)的檢測(cè)結(jié)果。
作為優(yōu)選實(shí)施例,所述方法還包括:
在判斷出軟件宕機(jī)時(shí)重啟電子設(shè)備。
本發(fā)明實(shí)施例還提供了一種電子設(shè)備,其應(yīng)用如上述實(shí)施例所述的檢測(cè)軟件宕機(jī)的方法;并且,包括:
處理器,其配置為監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令,并基于所述中斷指令執(zhí)行用于檢測(cè)軟件宕機(jī)的中斷,以及監(jiān)測(cè)所述中斷中的運(yùn)行一可執(zhí)行程序的第一中斷的執(zhí)行情況,并在監(jiān)測(cè)到所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生軟件宕機(jī)。
作為優(yōu)選實(shí)施例,所述中斷還包括優(yōu)先級(jí)高于所述第一中斷的第二中斷,并且
所述處理器進(jìn)一步配置為基于所述第二中斷監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生為軟件宕機(jī)。
與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例的有益效果在于:
通過(guò)本發(fā)明實(shí)施例的上述配置,可以方便的檢測(cè)軟件宕機(jī)的情況,方便用戶(hù)的操作,提高了用戶(hù)體驗(yàn)效果。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例中的一種檢測(cè)軟件宕機(jī)的方法的原理流程圖;
圖2為本發(fā)明實(shí)施例中的監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令的原理流程圖;
圖3為本發(fā)明實(shí)施例中在所述第一中斷執(zhí)行異常時(shí)判斷為發(fā)生軟件宕機(jī)的原理流程圖;
圖4為本發(fā)明實(shí)施例中的一種電子設(shè)備的原理結(jié)構(gòu)圖。
具體實(shí)施方式
下面,結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施例進(jìn)行詳細(xì)的描述,但不作為本發(fā)明的限定。
應(yīng)理解的是,可以對(duì)此處公開(kāi)的實(shí)施例做出各種修改。因此,上述說(shuō)明書(shū)不應(yīng)該視為限制,而僅是作為實(shí)施例的范例。本領(lǐng)域的技術(shù)人員將想到在本公開(kāi)的范圍和精神內(nèi)的其他修改。
包含在說(shuō)明書(shū)中并構(gòu)成說(shuō)明書(shū)的一部分的附圖示出了本公開(kāi)的實(shí)施例,并且與上面給出的對(duì)本公開(kāi)的大致描述以及下面給出的對(duì)實(shí)施例的詳細(xì)描述一起用于解釋本公開(kāi)的原理。
通過(guò)下面參照附圖對(duì)給定為非限制性實(shí)例的實(shí)施例的優(yōu)選形式的描述,本發(fā)明的這些和其它特性將會(huì)變得顯而易見(jiàn)。
還應(yīng)當(dāng)理解,盡管已經(jīng)參照一些具體實(shí)例對(duì)本發(fā)明進(jìn)行了描述,但本領(lǐng)域技術(shù)人員能夠確定地實(shí)現(xiàn)本發(fā)明的很多其它等效形式,它們具有如權(quán)利要求所述的特征并因此都位于借此所限定的保護(hù)范圍內(nèi)。
當(dāng)結(jié)合附圖時(shí),鑒于以下詳細(xì)說(shuō)明,本公開(kāi)的上述和其他方面、特征和優(yōu)勢(shì)將變得更為顯而易見(jiàn)。
此后參照附圖描述本公開(kāi)的具體實(shí)施例;然而,應(yīng)當(dāng)理解,所公開(kāi)的實(shí)施例僅僅是本公開(kāi)的實(shí)例,其可采用多種方式實(shí)施。熟知和/或重復(fù)的功能和結(jié)構(gòu)并未詳細(xì)描述以避免不必要或多余的細(xì)節(jié)使得本公開(kāi)模糊不清。因此,本文所公開(kāi)的具體的結(jié)構(gòu)性和功能性細(xì)節(jié)并非意在限定,而是僅僅作為權(quán)利要求的基礎(chǔ)和代表性基礎(chǔ)用于教導(dǎo)本領(lǐng)域技術(shù)人員以實(shí)質(zhì)上任意合適的詳細(xì)結(jié)構(gòu)多樣地使用本公開(kāi)。
本說(shuō)明書(shū)可使用詞組“在一種實(shí)施例中”、“在另一個(gè)實(shí)施例中”、“在又一實(shí)施例中”或“在其他實(shí)施例中”,其均可指代根據(jù)本公開(kāi)的相同或不同實(shí)施例中的一個(gè)或多個(gè)。
下面,結(jié)合附圖詳細(xì)的說(shuō)明本發(fā)明實(shí)施例,本發(fā)明實(shí)施例提供了一種軟件宕機(jī)的方法,該方法可以無(wú)需強(qiáng)制關(guān)機(jī),也無(wú)需使用其他額外的監(jiān)控設(shè)備,即可以通過(guò)電子設(shè)備自身的配置來(lái)方便的檢測(cè)軟件宕機(jī),具有使用方便的效果。
如圖1所示,為本發(fā)明實(shí)施例中的檢測(cè)軟件宕機(jī)的方法的原理流程圖。其中本發(fā)明實(shí)施例中的該方法可以包括:
監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令;
基于所述中斷指令執(zhí)行用于檢測(cè)軟件宕機(jī)的中斷,所述中斷包括運(yùn)行一可執(zhí)行程序的第一中斷;
監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生為軟件宕機(jī)。
本發(fā)明實(shí)施例所提供的用于檢測(cè)軟件宕機(jī)的方法可以應(yīng)用在電子設(shè)備中,該電子設(shè)備可以是用于信息處理的信息處理設(shè)備,其可以包括筆記本電腦、pad、臺(tái)式機(jī)、音頻處理設(shè)備、手機(jī)或者其他的智能終端。但本發(fā)明實(shí)施例并不限于此。
本發(fā)明實(shí)施例中,電子設(shè)備可以實(shí)時(shí)的監(jiān)測(cè)用于檢測(cè)軟件宕機(jī)的中斷指令,并可以在監(jiān)測(cè)到該中斷指令時(shí)執(zhí)行該中斷指令對(duì)應(yīng)的中斷,并在判斷中斷中的第一中斷發(fā)生異常時(shí),判斷為電子設(shè)備發(fā)生軟件宕機(jī)。
具體的,本發(fā)明實(shí)施例中用于檢測(cè)軟件宕機(jī)的中斷可以包括第一中斷,該第一中斷包括運(yùn)行一可執(zhí)行程序,即在本發(fā)明實(shí)施例中該第一中斷可以為軟件中斷。在用戶(hù)懷疑電子設(shè)備可能發(fā)生軟件宕機(jī)時(shí),可以控制電子設(shè)備執(zhí)行軟件宕機(jī)的檢測(cè),而電子設(shè)備可以基于該控制生成關(guān)于檢測(cè)軟件宕機(jī)的中斷指令,同時(shí)電子設(shè)備中的例如處理器的裝置在檢測(cè)到該中斷的中斷指令時(shí),可以執(zhí)行該中斷指令對(duì)應(yīng)的中斷程序,例如本發(fā)明實(shí)施例中可以通過(guò)第一中斷來(lái)判斷軟件宕機(jī)的情況,該第一中斷包括運(yùn)行一可執(zhí)行程序,即為軟件中斷,電子設(shè)備通過(guò)檢測(cè)該軟件中斷的運(yùn)行情況來(lái)判斷當(dāng)前的電子設(shè)備是否發(fā)生了軟件宕機(jī)。其中本發(fā)明實(shí)施例中的軟件中斷可以用于調(diào)用電子設(shè)備的軟件程序(即上述可執(zhí)行程序);例如:biosrom中的各種外部設(shè)備管理中斷服務(wù)程序(鍵盤(pán)管理中斷、顯示器管理中斷、打印機(jī)管理中斷等,)以及dos的系統(tǒng)功能調(diào)用(int21h)等都是軟件中斷。
如上所述,電子設(shè)備中的處理器可以通過(guò)檢測(cè)該第一中斷的執(zhí)行情況來(lái)判斷是否發(fā)生了軟件宕機(jī)。具體的,可以通過(guò)判斷該第一中斷是否被執(zhí)行或者是否執(zhí)行完成了判斷電子設(shè)備是否發(fā)生軟件宕機(jī)。;例如可以通過(guò)檢測(cè)操作系統(tǒng)是否返回對(duì)應(yīng)的數(shù)據(jù)來(lái)檢測(cè)第一中斷是否被執(zhí)行或者是否完成執(zhí)行。
例如,本發(fā)明實(shí)施例中,在判斷第一中斷未被執(zhí)行或者執(zhí)行未完成,則可以判斷電子設(shè)備發(fā)生了軟件宕機(jī)。而在判斷第一中斷完成成功時(shí),則可以判斷為未發(fā)生軟件宕機(jī)。
進(jìn)一步地,本發(fā)明實(shí)施例還可以輸出顯示關(guān)于軟件宕機(jī)的檢測(cè)結(jié)果,例如,在判斷電子設(shè)備發(fā)生軟件宕機(jī)時(shí),可以過(guò)處理器觸發(fā)電子設(shè)備藍(lán)屏,并將當(dāng)前系統(tǒng)的內(nèi)存數(shù)據(jù)保存到轉(zhuǎn)儲(chǔ)文件中,并重啟計(jì)算機(jī)系統(tǒng),從而達(dá)到保留log文件并重置系統(tǒng)的目的。而在檢測(cè)出未發(fā)生軟件宕機(jī)時(shí),通過(guò)處理器控制觸發(fā)執(zhí)行報(bào)警,例如蜂鳴報(bào)警,還可以重置背光顯示,從而提示用戶(hù)工作正常。通過(guò)該配置可以實(shí)現(xiàn)電子設(shè)備的軟件宕機(jī)的自動(dòng)檢測(cè),以及電子設(shè)備的重置,方便了用戶(hù)的操作。
而且,本發(fā)明實(shí)施例可以實(shí)現(xiàn)在接收到中斷指令時(shí)才執(zhí)行對(duì)于軟件中斷的執(zhí)行情況的監(jiān)測(cè),而且優(yōu)選設(shè)置為使得電子設(shè)備的處理器只在預(yù)設(shè)時(shí)間內(nèi)執(zhí)行對(duì)于軟件中斷的監(jiān)控,如果在該預(yù)設(shè)時(shí)間內(nèi)判斷該軟件中斷未被執(zhí)行或未執(zhí)行完成則判斷發(fā)生了軟件宕機(jī)。從而可以保證處理器無(wú)需時(shí)刻運(yùn)行,減小處理器的功率消耗和運(yùn)行壓力。
另外,在本發(fā)明如圖2所示的優(yōu)選實(shí)施例中,所述監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令包括:
檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作或觸發(fā)信號(hào);以及
在檢測(cè)到所述觸發(fā)操作或觸發(fā)信號(hào)時(shí)判斷為監(jiān)測(cè)到關(guān)于檢測(cè)軟件宕機(jī)的中斷指令。
在本發(fā)明實(shí)施例中,電子設(shè)備可以實(shí)時(shí)地檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作或者觸發(fā)信號(hào),上述檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作可以包括檢測(cè)預(yù)設(shè)快捷按鍵的輸入,或者預(yù)設(shè)開(kāi)關(guān)的切換等。也即電子設(shè)備中可以預(yù)先配置有用于控制執(zhí)行軟件宕機(jī)的檢測(cè)的快捷按鍵或者切換開(kāi)關(guān),用戶(hù)可以通過(guò)觸發(fā)該預(yù)設(shè)的快捷按鍵或者切換開(kāi)關(guān)來(lái)控制執(zhí)行軟件宕機(jī)的檢測(cè),而電子設(shè)備在檢測(cè)到該快捷按鍵的觸發(fā)或者切換開(kāi)關(guān)切換到對(duì)應(yīng)的狀態(tài)時(shí),即可以判斷檢測(cè)到用于檢測(cè)軟件宕機(jī)的中斷指令。而上述檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)信號(hào)可以是檢測(cè)到由于上述觸發(fā)按鍵的觸發(fā)或者切花開(kāi)關(guān)的切換而生成的觸發(fā)信號(hào),也可以是檢測(cè)到電子設(shè)備接收到的用于執(zhí)行軟件宕機(jī)檢測(cè)的觸發(fā)信號(hào)。即電子設(shè)備也可以接收來(lái)自其他設(shè)備的關(guān)于執(zhí)行軟件宕機(jī)檢測(cè)的觸發(fā)信號(hào),從而執(zhí)行軟件宕機(jī)的檢測(cè)。
另外,電子設(shè)備在檢測(cè)到上述觸發(fā)操作或者觸發(fā)信號(hào)時(shí),即判斷為監(jiān)測(cè)到關(guān)于軟件宕機(jī)的中斷指令,對(duì)應(yīng)的電子設(shè)備中的處理器還可以基于該中斷指令獲取與觸發(fā)操作或觸發(fā)信號(hào)對(duì)應(yīng)的中斷程序的信息,例如中斷程序的程序函數(shù)名、參數(shù)、或者地址等信息,通過(guò)該獲取的中斷程序的信息可以執(zhí)行對(duì)應(yīng)的中斷。在本發(fā)明實(shí)施例中,可以通過(guò)電子設(shè)備的處理器來(lái)獲取對(duì)應(yīng)的中斷程序的信息,并控制相應(yīng)的軟件中斷執(zhí)行對(duì)象(下述執(zhí)行中斷器件)來(lái)執(zhí)行軟件中斷。即,在電子設(shè)備監(jiān)測(cè)到中斷指令時(shí),可以獲取該中斷指令對(duì)應(yīng)的中斷程序的信息,例如上述第一中斷的信息,以及下述第二中斷的信息。
另外,在本發(fā)明實(shí)施例中,在判斷是否發(fā)生軟件宕機(jī)后,還可以通過(guò)不同的顯示方式來(lái)執(zhí)行判斷結(jié)果的反饋。
具體的,例如,可以在判斷發(fā)生軟件宕機(jī)時(shí),一方面可以通過(guò)電子設(shè)備的重啟來(lái)提醒用戶(hù)發(fā)生了軟件宕機(jī),并及時(shí)的重置電子設(shè)備,無(wú)需用戶(hù)手動(dòng)操作;另一方面還可以通過(guò)電子設(shè)備的提醒單元進(jìn)行提醒,該提醒單元可以包括蜂鳴器、振動(dòng)器或者顯示器。在通過(guò)提醒單元進(jìn)行提醒時(shí),可以控制在蜂鳴器按照預(yù)設(shè)時(shí)間執(zhí)行蜂鳴,或者控制振動(dòng)器按照預(yù)設(shè)時(shí)間執(zhí)行振動(dòng)操作,或者也可以控制顯示器按照預(yù)設(shè)時(shí)間顯示軟件宕機(jī)消息,或者也可以控制顯示器按照預(yù)設(shè)時(shí)間為藍(lán)屏狀態(tài),并將電子設(shè)備的內(nèi)存數(shù)據(jù)進(jìn)行轉(zhuǎn)存?zhèn)浞荩扇罩疚募?,以便查看?duì)應(yīng)的內(nèi)存文件和宕機(jī)記錄。另外,還可以在執(zhí)行上述提醒操作后再控制執(zhí)行電子設(shè)備的重啟操作,進(jìn)一步提高用戶(hù)體驗(yàn)。
通過(guò)本發(fā)明實(shí)施例的上述配置,可以方便的檢測(cè)軟件宕機(jī)的情況,方便用戶(hù)的操作,提高了用戶(hù)體驗(yàn)效果。
另外,在本發(fā)明的另一實(shí)施例中,本發(fā)明實(shí)施例中用于檢測(cè)軟件宕機(jī)的中斷還可以包括第二中斷,并且,該第二中斷的優(yōu)先級(jí)高于軟件中斷,優(yōu)選地,第二中斷為執(zhí)行中斷中優(yōu)先級(jí)最高的中斷。
其中,所述監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在所述第一中斷執(zhí)行異常時(shí)判斷為發(fā)生軟件宕機(jī)包括:基于所述第二中斷監(jiān)測(cè)所述軟件中斷的執(zhí)行情況,并在所述第二中斷執(zhí)行異常時(shí)判斷發(fā)生為軟件宕機(jī)。
在本發(fā)明實(shí)施例中,在電子設(shè)備監(jiān)測(cè)到中斷指令并執(zhí)行中斷指令對(duì)應(yīng)的中斷程序時(shí),會(huì)根據(jù)中斷程序的優(yōu)先級(jí)來(lái)執(zhí)行,其中本發(fā)明實(shí)施例中的第二中斷優(yōu)先級(jí)高于第一中斷,因此,會(huì)首先執(zhí)行第二中斷。而本發(fā)明實(shí)施例中的第二中斷可以包括觸發(fā)計(jì)時(shí)器按照預(yù)設(shè)時(shí)間計(jì)時(shí),以及在預(yù)設(shè)時(shí)間內(nèi)監(jiān)測(cè)軟件中斷的運(yùn)行。從而可以在電子設(shè)備內(nèi)需要執(zhí)行的中斷程序過(guò)多時(shí),可以通過(guò)高優(yōu)先級(jí)的第二中斷來(lái)觸發(fā)第一中斷的監(jiān)測(cè),從而避免第一中斷由于優(yōu)先級(jí)過(guò)低而未被執(zhí)行,導(dǎo)致軟件宕機(jī)的誤判斷,進(jìn)一步地提高了軟件宕機(jī)的檢測(cè)的精確度。本發(fā)明實(shí)施例中的第二中斷可以包括硬件中斷。該硬件中斷程序的優(yōu)先級(jí)要高于軟件中斷程序。
如圖3所示,本發(fā)明實(shí)施例中基于所述第二中斷監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在所述第一中斷執(zhí)行異常時(shí)判斷為發(fā)生軟件宕機(jī)包括:
判斷在所述預(yù)設(shè)時(shí)間內(nèi)第一中斷是否被執(zhí)行或者是否完成執(zhí)行;
若所述第一中斷未被執(zhí)行時(shí)確定所述第一中斷執(zhí)行異常,且判斷為發(fā)生軟件宕機(jī)。
在本發(fā)明的實(shí)施例中,上述第一中斷也可以包括觸發(fā)計(jì)時(shí)器按照預(yù)設(shè)設(shè)時(shí)間計(jì)時(shí)的第一程序,以及觸發(fā)執(zhí)行第一中斷的執(zhí)行的第二程序,并包括檢測(cè)該計(jì)時(shí)器按照預(yù)設(shè)時(shí)間計(jì)時(shí)完成時(shí)第一中斷的執(zhí)行情況,如果判斷第一中斷異常,則判斷為發(fā)生了軟件宕機(jī);否則判斷為未發(fā)生軟件宕機(jī)。上述判斷第一中斷執(zhí)行異??梢园ㄔ谒鲱A(yù)設(shè)時(shí)間內(nèi)所述第一中斷未被執(zhí)行或者是未完成執(zhí)行的情況。
通過(guò)本發(fā)明實(shí)施例的上述配置,可以避免由于軟件中斷的優(yōu)先級(jí)過(guò)低而導(dǎo)致誤判斷的情況,提高了軟件宕機(jī)的檢測(cè)精度。
另外,本發(fā)明實(shí)施例還可以提供一種電子設(shè)備,該電子設(shè)備可以應(yīng)用如上述實(shí)施例中所述的軟件宕機(jī)的檢測(cè)方法,從而方便的實(shí)現(xiàn)電子設(shè)備的軟件宕機(jī)的檢測(cè)。本發(fā)明實(shí)施例所提供的用于檢測(cè)軟件宕機(jī)的方法可以應(yīng)用在電子設(shè)備中,該電子設(shè)備可以是用于信息處理的信息處理設(shè)備,其可以包括筆記本電腦、pad、臺(tái)式機(jī)、音頻處理設(shè)備、手機(jī)或者其他的智能終端。但本發(fā)明實(shí)施例并不限于此。
如圖4所示為本發(fā)明實(shí)施例中的一種電子設(shè)備的原理結(jié)構(gòu)圖,其中該電子設(shè)備可以包括:處理器100,該處理器可以在監(jiān)測(cè)關(guān)于檢測(cè)軟件宕機(jī)的中斷指令,并基于所述中斷指令執(zhí)行執(zhí)行用于檢測(cè)軟件宕機(jī)的中斷,以及監(jiān)測(cè)所述中斷中的運(yùn)行一可執(zhí)行程序的第一中斷的執(zhí)行情況,并在所述第一中斷執(zhí)行異常時(shí)判斷發(fā)生為軟件宕機(jī);其中用于檢測(cè)宕機(jī)的中斷可以包括運(yùn)行一可執(zhí)行程序的第一中斷。
本發(fā)明實(shí)施例中,電子設(shè)備中的處理器100可以實(shí)時(shí)的監(jiān)測(cè)用于檢測(cè)軟件宕機(jī)的中斷指令,并可以在監(jiān)測(cè)到該中斷指令時(shí)執(zhí)行該中斷指令對(duì)應(yīng)的中斷,以及監(jiān)控該中斷中的第一中斷的執(zhí)行情況,并在判斷第一中斷發(fā)生異常時(shí),判斷為電子設(shè)備發(fā)生軟件宕機(jī)。
具體的,本發(fā)明實(shí)施例中用于檢測(cè)軟件宕機(jī)的中斷可以包括第一中斷;該第一中斷包括運(yùn)行一可執(zhí)行程序,即在本發(fā)明實(shí)施例中該第一中斷可以為軟件中斷。在用戶(hù)懷疑電子設(shè)備可能發(fā)生軟件宕機(jī)時(shí),可以控制電子設(shè)備執(zhí)行軟件宕機(jī)的檢測(cè),而電子設(shè)備可以基于該控制生成關(guān)于檢測(cè)軟件宕機(jī)的中斷指令,同時(shí)電子設(shè)備中的處理器100在檢測(cè)到該中斷對(duì)應(yīng)的中斷指令時(shí),可以執(zhí)行該中斷,例如本發(fā)明實(shí)施例中可以通過(guò)第一中斷來(lái)判斷軟件宕機(jī)的情況,該第一中斷包括運(yùn)行一可執(zhí)行程序,即為軟件中斷,電子設(shè)備通過(guò)檢測(cè)該軟件中斷的運(yùn)行情況來(lái)判斷當(dāng)前的電子設(shè)備是否發(fā)生了軟件中斷。其中本發(fā)明實(shí)施例中的軟件中斷可以用于調(diào)用電子設(shè)備的軟件程序(即上述可執(zhí)行程序);例如:rombios中的各種外部設(shè)備管理中斷服務(wù)程序(鍵盤(pán)管理中斷、顯示器管理中斷、打印機(jī)管理中斷等,)以及dos的系統(tǒng)功能調(diào)用(int21h)等都是軟件中斷。本發(fā)明實(shí)施例將上述被控制來(lái)執(zhí)行中斷程序的裝置統(tǒng)稱(chēng)為中斷執(zhí)行器件200,該中斷執(zhí)行器件200可以基于處理器100的控制而對(duì)應(yīng)的執(zhí)行軟件中斷。例如該中斷執(zhí)行器件200可以包括鍵盤(pán)管理中斷器、顯示器管理中斷器或者打印機(jī)管理中斷器等,但本發(fā)明并不限于此。
如上所述,,電子設(shè)備中的處理器100還可以通過(guò)檢測(cè)該第一中斷的執(zhí)行情況來(lái)判斷是否發(fā)生了軟件宕機(jī)。具體的,處理器100可以通過(guò)判斷中斷執(zhí)行器件200是否執(zhí)行了第一中斷或者是否執(zhí)行完成了該第一中斷程序來(lái)判斷電子設(shè)備是否發(fā)生軟件宕機(jī)。
例如,本發(fā)明實(shí)施例中,處理器100在判斷第一中斷未被執(zhí)行或者執(zhí)行未完成,則可以判斷電子設(shè)備發(fā)生了軟件宕機(jī);而在判斷第一中斷完成成功時(shí),則可以判斷為未發(fā)生軟件宕機(jī)。
進(jìn)一步地,本發(fā)明實(shí)施例中在判斷電子設(shè)備發(fā)生軟件宕機(jī)時(shí),處理器100還可以控制執(zhí)行電子設(shè)備的重啟。例如,處理器100還可以與電子設(shè)備的電源管理器300連接,該電源管理器300可以用于控制電子設(shè)備的開(kāi)機(jī)、關(guān)機(jī)、重啟、休眠或者睡眠的操作,而處理器100可以在判斷發(fā)生軟件宕機(jī)時(shí)控制電源管理器300執(zhí)行設(shè)備的重啟操作,從而可以實(shí)現(xiàn)電子設(shè)備的軟件宕機(jī)的自動(dòng)檢測(cè),以及電子設(shè)備的重置,方便了用戶(hù)的操作。
另外,在本發(fā)明實(shí)施例中,上述中斷指令可以是基于一觸發(fā)操作而生成的,也可以是接收自外部的其他電子設(shè)備,
具體的,本發(fā)明實(shí)施例中的處理器100可以檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作或觸發(fā)信號(hào),以及在檢測(cè)到所述觸發(fā)操作或觸發(fā)信號(hào)時(shí)判斷為監(jiān)測(cè)到關(guān)于檢測(cè)軟件宕機(jī)的中斷指令。
在本發(fā)明實(shí)施例中,處理器100可以實(shí)時(shí)地檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作或者觸發(fā)信號(hào),上述檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)操作可以包括檢測(cè)預(yù)設(shè)快捷按鍵的輸入,或者預(yù)設(shè)開(kāi)關(guān)的切換等。也即電子設(shè)備中可以預(yù)先配置有用于控制執(zhí)行軟件宕機(jī)的檢測(cè)的快捷按鍵或者切換開(kāi)關(guān),用戶(hù)可以通過(guò)觸發(fā)該預(yù)設(shè)的快捷按鍵或者切換開(kāi)關(guān)來(lái)控制執(zhí)行軟件宕機(jī)的檢測(cè),而處理器100可以與鍵盤(pán)設(shè)備和切換開(kāi)關(guān)連接,并在檢測(cè)到預(yù)設(shè)的快捷按鍵的觸發(fā)或者切換開(kāi)關(guān)切換到對(duì)應(yīng)的狀態(tài)時(shí),即可以判斷檢測(cè)到用于檢測(cè)軟件宕機(jī)的中斷指令。而上述檢測(cè)用于檢測(cè)軟件宕機(jī)的觸發(fā)信號(hào)可以是檢測(cè)到由于上述觸發(fā)按鍵的觸發(fā)或者切花開(kāi)關(guān)的切換而生成的觸發(fā)信號(hào),也可以是檢測(cè)到電子設(shè)備接收到的用于執(zhí)行軟件宕機(jī)檢測(cè)的觸發(fā)信號(hào)。即電子設(shè)備中的處理器100也可以接收來(lái)自其他設(shè)備的關(guān)于執(zhí)行軟件宕機(jī)檢測(cè)的觸發(fā)信號(hào),從而執(zhí)行軟件宕機(jī)的檢測(cè)。
另外,電子設(shè)備中的處理器100在檢測(cè)到上述觸發(fā)操作或者觸發(fā)信號(hào)時(shí),即判斷為監(jiān)測(cè)到關(guān)于軟件宕機(jī)的中斷指令,對(duì)應(yīng)的電子設(shè)備中的處理器100還可以基于該中斷指令獲取與觸發(fā)操作或觸發(fā)信號(hào)對(duì)應(yīng)的中斷程序的信息,例如中斷程序的程序函數(shù)名、參數(shù)、或者地址等信息,通過(guò)該獲取的中斷程序的信息可以執(zhí)行對(duì)應(yīng)的中斷。在本發(fā)明實(shí)施例中,可以通過(guò)電子設(shè)備的處理器100來(lái)獲取對(duì)應(yīng)的中斷程序的信息,并控制相應(yīng)的軟件執(zhí)行中斷器件200來(lái)執(zhí)行對(duì)應(yīng)的可執(zhí)行程序。即,在處理器100監(jiān)測(cè)到中斷指令時(shí),可以獲取該中斷指令對(duì)應(yīng)的中斷程序的信息,例如上述第一中斷的信息,以及下述第二中斷的信息。
另外,在本發(fā)明實(shí)施例中,在判斷是否發(fā)生軟件宕機(jī)后,處理器100還可以通過(guò)控制不同的顯示方式來(lái)執(zhí)行判斷結(jié)果的反饋。
具體的,例如,可以在判斷發(fā)生軟件宕機(jī)時(shí),一方面可以通過(guò)電源管理器300的重啟操作來(lái)提醒用戶(hù)發(fā)生了軟件宕機(jī),并及時(shí)的重置電子設(shè)備,無(wú)需用戶(hù)手動(dòng)操作;另一方面還可以通過(guò)電子設(shè)備的提醒單元400進(jìn)行提醒,該提醒單元400可以包括蜂鳴器、振動(dòng)器或者顯示器。在處理器100通過(guò)控制提醒單元400進(jìn)行提醒時(shí),可以控制在蜂鳴器按照預(yù)設(shè)時(shí)間執(zhí)行蜂鳴,或者控制振動(dòng)器按照預(yù)設(shè)時(shí)間執(zhí)行振動(dòng)操作,或者也可以控制顯示器按照預(yù)設(shè)時(shí)間顯示軟件宕機(jī)消息,或者也可以控制顯示器按照預(yù)設(shè)時(shí)間為藍(lán)屏狀態(tài),另外,還可以在控制執(zhí)行上述提醒操作后再控制執(zhí)行電子設(shè)備的重啟操作,進(jìn)一步提高用戶(hù)體驗(yàn)。
通過(guò)本發(fā)明實(shí)施例的上述配置,可以方便的檢測(cè)軟件宕機(jī)的情況,方便用戶(hù)的操作,提高了用戶(hù)體驗(yàn)效果。
另外,在本發(fā)明的另一實(shí)施例中,由于上述觸發(fā)操作或者觸發(fā)信號(hào)所生成的中斷信號(hào)還可以包括第二中斷,并且,該第二中斷優(yōu)先級(jí)高于第一中斷;,優(yōu)選地,第二中斷為執(zhí)行中斷中優(yōu)先級(jí)最高的中斷。
其中,進(jìn)一步地,處理器100還可以基于第二中斷監(jiān)測(cè)所述第一中斷的執(zhí)行情況,并在第一中斷執(zhí)行異常時(shí)判斷發(fā)生為軟件宕機(jī)。
在本發(fā)明實(shí)施例中,在處理器100監(jiān)測(cè)到中斷信號(hào)并控制中斷執(zhí)行器件200執(zhí)行中斷信號(hào)對(duì)應(yīng)的中斷程序時(shí),中斷執(zhí)行器件200會(huì)根據(jù)中斷程序的優(yōu)先級(jí)來(lái)執(zhí)行,其中本發(fā)明實(shí)施例中的第二中斷優(yōu)先級(jí)高于第一硬件中斷,因此,會(huì)首先執(zhí)行第二中斷。而本發(fā)明實(shí)施例中的第二中斷可以包括觸發(fā)第一中斷,并監(jiān)測(cè)第一中斷的執(zhí)行情況。從而可以在電子設(shè)備內(nèi)需要執(zhí)行的中斷程序過(guò)多時(shí),可以通過(guò)高優(yōu)先級(jí)的第二中斷來(lái)觸發(fā)第一中斷的執(zhí)行,并檢測(cè)第一中斷的運(yùn)行情況,從而避免第一中斷由于優(yōu)先級(jí)過(guò)低而未被執(zhí)行,導(dǎo)致軟件宕機(jī)的誤判斷,進(jìn)一步地提高了軟件宕機(jī)的檢測(cè)的精確度。本發(fā)明實(shí)施例中的第二中斷可以包括硬件中斷程序。該硬件中斷程序的優(yōu)先級(jí)要高于軟件中斷程序。
具體的,處理器100還可以判斷在所述預(yù)設(shè)時(shí)間內(nèi)軟件中斷是否被執(zhí)行或者是否完成執(zhí)行;若軟件中斷未被執(zhí)行時(shí)確定所述軟件中斷執(zhí)行異常,且判斷為發(fā)生軟件宕機(jī)。
在本發(fā)明的實(shí)施例中,上述第二中斷也可以包括觸發(fā)計(jì)時(shí)器按照預(yù)設(shè)時(shí)間計(jì)時(shí)的第一程序,以及觸發(fā)執(zhí)行第一中斷的執(zhí)行的第二程序,并包括檢測(cè)該計(jì)時(shí)器按照預(yù)設(shè)時(shí)間計(jì)時(shí)完成時(shí)第一中斷的執(zhí)行情況,如果判斷第一中斷異常,則判斷為發(fā)生了軟件宕機(jī);否則判斷為未發(fā)生軟件宕機(jī)。上述判斷第一中斷執(zhí)行異常可以包括在所述預(yù)設(shè)時(shí)間內(nèi)所述第一中斷未被執(zhí)行或者是未完成執(zhí)行的情況。
通過(guò)本發(fā)明實(shí)施例的上述配置,可以避免由于第一中斷的優(yōu)先級(jí)過(guò)低而導(dǎo)致誤判斷的情況,提高了軟件宕機(jī)的檢測(cè)精度。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的數(shù)據(jù)處理方法所應(yīng)用于的電子設(shè)備,可以參考前述產(chǎn)品實(shí)施例中的對(duì)應(yīng)描述,在此不再贅述。
以上實(shí)施例僅為本發(fā)明的示例性實(shí)施例,不用于限制本發(fā)明,本發(fā)明的保護(hù)范圍由權(quán)利要求書(shū)限定。本領(lǐng)域技術(shù)人員可以在本發(fā)明的實(shí)質(zhì)和保護(hù)范圍內(nèi),對(duì)本發(fā)明做出各種修改或等同替換,這種修改或等同替換也應(yīng)視為落在本發(fā)明的保護(hù)范圍內(nèi)。