本發(fā)明涉及計(jì)算機(jī)檢測(cè)領(lǐng)域,特別涉及一種電腦故障檢測(cè)方法及裝置。
背景技術(shù):
在電腦(包括臺(tái)式計(jì)算機(jī)和筆記本電腦)研發(fā)或者消費(fèi)者使用階段,常常會(huì)出現(xiàn)系統(tǒng)死機(jī)的情況,此時(shí)往往會(huì)無(wú)法準(zhǔn)確判斷其具體情況是由于硬件死機(jī)還是由于軟件死機(jī),以至于解決死機(jī)問(wèn)題的大方向出現(xiàn)偏差,不能很快定位和解決故障所在。因?yàn)楫?dāng)電腦的系統(tǒng)出現(xiàn)死機(jī)狀況時(shí)從表面呈現(xiàn)形式來(lái)看都是一樣的,例如鼠標(biāo)不能動(dòng),caps lock燈沒(méi)反應(yīng),屏幕不更新等。所以上述問(wèn)題給研發(fā)人員和消費(fèi)者短時(shí)間的準(zhǔn)確判斷和消除故障造成困擾。
一般來(lái)說(shuō),由于硬件而死機(jī)都是因?yàn)殡娔X的硬件設(shè)備出現(xiàn)問(wèn)題,比如:時(shí)鐘,電壓,電源相關(guān)的功能出現(xiàn)錯(cuò)誤,這個(gè)時(shí)候就需要對(duì)硬件設(shè)備逐一關(guān)閉和排除。而由于軟件而死機(jī)通常都是由某個(gè)安裝的軟件或驅(qū)動(dòng)引起,需要對(duì)軟件逐一排除和澄清。對(duì)于上述兩種情況解決故障問(wèn)題的思路會(huì)不同,這個(gè)時(shí)候判斷到底是由于硬件而死機(jī)還是由于軟件而死機(jī)就顯得非常重要。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例的目的在于提供一種電腦故障檢測(cè)方法及裝置,該方法及裝置能夠簡(jiǎn)單準(zhǔn)確地檢測(cè)出電腦出現(xiàn)故障的原因,特別是能夠快速檢測(cè)出是由于軟件原因還是硬件原因引起的故障,以便為用戶快速解決故障創(chuàng)造條件。
為了實(shí)現(xiàn)上述目的,在本發(fā)明的一個(gè)實(shí)施例中,提供了一種電腦故障檢測(cè)方法,包括以下步驟:
S1,發(fā)送系統(tǒng)管理中斷信號(hào)至所述電腦的處理器,處理器接收到所述系統(tǒng)管理中斷信號(hào)后進(jìn)入系統(tǒng)管理模式,其中所述系統(tǒng)管理模式獨(dú)立于所述電腦的操作系統(tǒng);
S2,所述處理器執(zhí)行所述系統(tǒng)管理模式下的預(yù)置的檢測(cè)命令以生成相應(yīng)的檢測(cè)信號(hào),根據(jù)所述檢測(cè)信號(hào)判斷所述電腦出現(xiàn)故障的原因。
作為優(yōu)選,步驟S1進(jìn)一步包括:
S11,所述電腦的嵌入式控制器偵測(cè)所述電腦是否被觸發(fā),如果被觸發(fā)則生成相應(yīng)的控制信號(hào)并發(fā)送至所述電腦的主板的總線擴(kuò)展器;
S12,所述總線擴(kuò)展器根據(jù)所述控制信號(hào)生成所述系統(tǒng)管理中斷信號(hào);
S13,所述處理器接收并執(zhí)行所述系統(tǒng)管理中斷信號(hào)后進(jìn)入系統(tǒng)管理模式。
作為優(yōu)選,步驟S2進(jìn)一步包括:
S21,所述處理器執(zhí)行存儲(chǔ)于所述電腦的基本輸入輸出系統(tǒng)中的所述檢測(cè)命令,其中所述檢測(cè)命令能夠被改寫(xiě);
S22,根據(jù)所述檢測(cè)命令生成所述檢測(cè)信號(hào)并發(fā)送至所述電腦的主板,所述主板或主板上的部件根據(jù)所述檢測(cè)信號(hào)判斷所述電腦的故障。
作為優(yōu)選,當(dāng)所述電腦死機(jī)時(shí),執(zhí)行所述檢測(cè)命令后所述電腦做出聲和/或光反應(yīng),則所述電腦具有軟件故障;當(dāng)所述電腦死機(jī)時(shí),執(zhí)行所述檢測(cè)命令后所述電腦沒(méi)有做出聲和/或光反應(yīng),則所述電腦具有硬件故障。
作為優(yōu)選,所述電腦包括筆記本電腦、臺(tái)式電腦和平板電腦。
本發(fā)明的實(shí)施例還提供了一種電腦故障檢測(cè)裝置,包括安裝在所述電腦上的處理器和總線擴(kuò)展器;
所述總線擴(kuò)展器與所述處理器電連接,所述總線擴(kuò)展器配置為發(fā)送系統(tǒng)管理中斷信號(hào)至所述處理器,所述處理器接收所述系統(tǒng)管理中斷信號(hào)并進(jìn)入系統(tǒng)管理模式,其中所述系統(tǒng)管理模式獨(dú)立于所述電腦的操作系統(tǒng);
所述處理器配置為在所述系統(tǒng)管理模式下執(zhí)行檢測(cè)命令以生成相應(yīng)的檢測(cè)信號(hào);
所述電腦根據(jù)所述檢測(cè)信號(hào)判斷其出現(xiàn)故障的原因。
作為優(yōu)選,還包括相互電連接的嵌入式控制器和輸入設(shè)備,其中,
所述輸入設(shè)備配置為觸發(fā)所述嵌入式控制器以使其生成控制信號(hào),所述嵌入式控制器配置為將所述控制信號(hào)發(fā)送至設(shè)置在所述電腦的主板上的總線擴(kuò)展器;
所述總線擴(kuò)展器進(jìn)一步配置為根據(jù)所述控制信號(hào)生成所述系統(tǒng)管理中斷信號(hào)并將其發(fā)送至所述處理器;
所述處理器進(jìn)一步配置為接收并執(zhí)行所述系統(tǒng)管理中斷信號(hào)進(jìn)入系統(tǒng)管理模式。
作為優(yōu)選,所述檢測(cè)命令存儲(chǔ)于所述電腦的基本輸入輸出系統(tǒng)中,并且所述檢測(cè)命令能夠被改寫(xiě);所述處理器根據(jù)所述檢測(cè)命令生成所述檢測(cè)信號(hào)并發(fā)送至所述電腦的主板,所述主板或主板上的部件根據(jù)所述檢測(cè)信號(hào)判斷所述電腦的故障。
作為優(yōu)選,所述處理器配置為當(dāng)所述電腦死機(jī)時(shí),執(zhí)行所述檢測(cè)命令,以使所述主板做出聲和/或光反應(yīng)并判斷出所述電腦具有軟件故障;所述處理器進(jìn)一步配置為當(dāng)所述電腦死機(jī)時(shí),執(zhí)行所述檢測(cè)命令,以使所述主板做出聲和/或光反應(yīng)并判斷出所述電腦具有硬件故障。
作為優(yōu)選,所述電腦包括筆記本電腦、臺(tái)式電腦和平板電腦。
本發(fā)明實(shí)施例的有益效果在于:對(duì)于出現(xiàn)死機(jī)故障的電腦,本方法和裝置能夠準(zhǔn)確判斷該故障是屬于軟件引起的死機(jī)還是硬件引起的死機(jī),從而方便用戶快速準(zhǔn)確的查找和解決電腦的死機(jī)故障。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例的電腦故障檢測(cè)方法的流程圖;
圖2為本發(fā)明實(shí)施例的電腦故障檢測(cè)方法的步驟S1的流程圖;
圖3為本發(fā)明實(shí)施例的電腦故障檢測(cè)方法的步驟S2的流程圖;
圖4為本發(fā)明實(shí)施例的電腦故障檢測(cè)方法的詳細(xì)流程圖;
圖5為本發(fā)明實(shí)施例的電腦故障檢測(cè)裝置的結(jié)構(gòu)框圖。
附圖標(biāo)記說(shuō)明
1-輸入設(shè)備 2-嵌入式控制器 3-總線擴(kuò)展器
4-處理器 5-基本輸入輸出系統(tǒng) 6-主板
7-蜂鳴器 8-LED燈
具體實(shí)施方式
為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明,下面參照附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。
本發(fā)明實(shí)施例的一種電腦故障檢測(cè)方法,如圖1和圖4所示,并結(jié)合圖5,包括以下步驟:
S1,發(fā)送系統(tǒng)管理中斷信號(hào)至電腦的處理器4,處理器4接收到系統(tǒng)管理中斷信號(hào)(SMI)后進(jìn)入系統(tǒng)管理模式(SMM),系統(tǒng)管理模式獨(dú)立于電腦的操作系統(tǒng),該模式對(duì)于電腦的操作系統(tǒng)是透明的,不依賴于操作系統(tǒng),因此在該模式下處理器4可以在操作系統(tǒng)及其軟件發(fā)生故障而不能運(yùn)行時(shí)仍舊可以做其它操作。
S2,處理器4執(zhí)行系統(tǒng)管理模式下的預(yù)置的檢測(cè)命令以生成相應(yīng)的檢測(cè)信號(hào),再根據(jù)檢測(cè)信號(hào)判斷電腦出現(xiàn)故障的原因。該檢測(cè)命令可以預(yù)先保存在某一位置以供處理器4調(diào)用和執(zhí)行,例如當(dāng)電腦為筆記本電腦時(shí)可以存儲(chǔ)在BIOS中或獨(dú)立的寄存器中,在本實(shí)施例中,該檢測(cè)命令預(yù)先保持在BIOS中,當(dāng)處理器4進(jìn)入系統(tǒng)管理模式后不會(huì)受電腦的操作系統(tǒng)的影響,能夠調(diào)用預(yù)先存儲(chǔ)在BIOS中的檢測(cè)命令并生成相應(yīng)的檢測(cè)信號(hào)。該檢測(cè)信號(hào)可以發(fā)送到電腦的一個(gè)部件也可以發(fā)送到多個(gè)不同的部件(每個(gè)部件可以判斷相應(yīng)的故障),上述部件能夠根據(jù)檢測(cè)信號(hào)判斷電腦出現(xiàn)故障的原因,還可以通過(guò)聲音或光電等形式表達(dá)出來(lái)。
在本發(fā)明的一個(gè)實(shí)施例中,請(qǐng)結(jié)合圖2和圖4,步驟S1進(jìn)一步包括以下步驟:
S11,電腦的嵌入式控制器2偵測(cè)電腦是否被觸發(fā),如果被觸發(fā)則生成相應(yīng)的控制信號(hào)并發(fā)送至電腦的主板6的總線擴(kuò)展器3。在觸發(fā)階段可以首先通過(guò)預(yù)置的快捷方式(例如通過(guò)預(yù)置的快捷鍵或組合快捷鍵)發(fā)出觸發(fā)信號(hào),嵌入式控制器2(例如筆記本電腦中的EC)偵測(cè)到該觸發(fā)信號(hào)后生成控制信號(hào),并發(fā)送至電腦的主板6的總線擴(kuò)展器3(GPIO),總線擴(kuò)展器3能夠提供額外的控制和監(jiān)視功能,能夠提供特殊的獨(dú)立于電腦其他設(shè)備的信號(hào)。
S12,總線擴(kuò)展器3根據(jù)上述控制信號(hào)生成系統(tǒng)管理中斷信號(hào),并將其發(fā)送至處理器4。
S13,處理器4接收并執(zhí)行系統(tǒng)管理中斷信號(hào)后進(jìn)入系統(tǒng)管理模式。系統(tǒng)管理模式對(duì)處理器4具有統(tǒng)一的標(biāo)準(zhǔn)體系結(jié)構(gòu)特性,這個(gè)模式為操作系統(tǒng)實(shí)現(xiàn)平臺(tái)指定的功能(比如電源管理或系統(tǒng)安全)提供了一種透明的機(jī)制。當(dāng)外部的SMM interrupt pin(SMI#)被激活或者收到一個(gè)系統(tǒng)管理中斷信號(hào)(SMI),處理器4將進(jìn)入系統(tǒng)管理模式(SMM)。在系統(tǒng)管理模式下,當(dāng)保存正在運(yùn)行程序的整個(gè)上下文時(shí),處理器4切換到一個(gè)分離的地址空間,然后系統(tǒng)管理模式指定的代碼可以被透明的執(zhí)行。當(dāng)從系統(tǒng)管理模式返回時(shí),處理器4將回到被系統(tǒng)管理中斷之前的狀態(tài)。
在本發(fā)明的一個(gè)實(shí)施例中,如圖3所示,步驟S2進(jìn)一步包括:
S21,處理器4執(zhí)行存儲(chǔ)于電腦的基本輸入輸出系統(tǒng)5(BIOS)中的檢測(cè)命令,當(dāng)然檢測(cè)命令還可以存儲(chǔ)在其他的分離的地址空間中,該地址空間獨(dú)立于電腦的操作系統(tǒng),其中檢測(cè)命令可以根據(jù)檢測(cè)故障方法的不同被改寫(xiě),以使處理器4根據(jù)電腦的不同故障而執(zhí)行相適應(yīng)的檢測(cè)命令。
S22,根據(jù)檢測(cè)命令生成檢測(cè)信號(hào)并發(fā)送至電腦的主板6,該檢測(cè)信號(hào)蘊(yùn)含了電腦故障原因,也就是說(shuō)能夠從該檢測(cè)信號(hào)中獲取故障原因,作為優(yōu)選,主板6根據(jù)檢測(cè)信號(hào)判斷電腦的故障,具體來(lái)說(shuō)主板6本身或連接在主板6上的其他元器件會(huì)對(duì)檢測(cè)信號(hào)做出相應(yīng)的反應(yīng),根據(jù)該反應(yīng)可以獲取電腦的故障原因。
在本發(fā)明的一個(gè)實(shí)施例中,結(jié)合圖4所示,當(dāng)電腦死機(jī)時(shí),執(zhí)行檢測(cè)命令后電腦做出聲和/或光反應(yīng)(例如安裝在主板6上的蜂鳴器7發(fā)聲或安裝在主板6上的LED燈8閃爍),說(shuō)明處理器4等硬件設(shè)備還可以執(zhí)行檢測(cè)命令,表明硬件設(shè)備沒(méi)有損壞,則說(shuō)明電腦具有軟件故障,是由軟件(包括操作系統(tǒng))引起的電腦死機(jī);當(dāng)電腦死機(jī)時(shí),執(zhí)行檢測(cè)命令后電腦沒(méi)有做出聲和/或光反應(yīng)(例如激發(fā)了安裝在主板6上的蜂鳴器7或LED燈8,但其并沒(méi)有發(fā)聲或閃爍),說(shuō)明處理器4等硬件設(shè)備已經(jīng)損害而不能執(zhí)行檢測(cè)命令,則電腦具有硬件故障。上述檢測(cè)方法直接有效,能夠快速判斷電腦的故障是由軟件引起還是由硬件引起,準(zhǔn)確度高,為用戶快速排除故障打好基礎(chǔ)。
需要說(shuō)明的是,上述的電腦包括筆記本電腦、臺(tái)式電腦和平板電腦。
本發(fā)明的實(shí)施例還提供了一種電腦故障檢測(cè)裝置,包括安裝在電腦上的處理器4和總線擴(kuò)展器3;
總線擴(kuò)展器3與所述處理器4電連接,總線擴(kuò)展器3配置為發(fā)送系統(tǒng)管理中斷信號(hào)至所述處理器4,處理器4接收系統(tǒng)管理中斷信號(hào)并進(jìn)入系統(tǒng)管理模式,其中系統(tǒng)管理模式獨(dú)立于電腦的操作系統(tǒng),該模式對(duì)于電腦的操作系統(tǒng)是透明的,不依賴于操作系統(tǒng),因此在該模式下處理器4可以在操作系統(tǒng)及其軟件發(fā)生故障而不能運(yùn)行時(shí)仍舊可以做其它操作。
處理器4配置為在系統(tǒng)管理模式下執(zhí)行檢測(cè)命令以生成相應(yīng)的檢測(cè)信號(hào),電腦根據(jù)檢測(cè)信號(hào)判斷其出現(xiàn)故障的原因。該檢測(cè)命令可以預(yù)先保存在某一位置以供處理器4調(diào)用和執(zhí)行,例如當(dāng)電腦為筆記本電腦時(shí)可以存儲(chǔ)在基本輸入輸出系統(tǒng)5(BIOS)中或獨(dú)立的寄存器中,當(dāng)處理器4進(jìn)入系統(tǒng)管理模式后不會(huì)受電腦的操作系統(tǒng)的影響,能夠調(diào)用預(yù)先存儲(chǔ)在BIOS中的檢測(cè)命令并生成相應(yīng)的檢測(cè)信號(hào)。該檢測(cè)信號(hào)可以發(fā)送到電腦的一個(gè)部件也可以發(fā)送到多個(gè)不同的部件(每個(gè)部件可以判斷相應(yīng)的故障),上述部件能夠根據(jù)檢測(cè)信號(hào)判斷電腦出現(xiàn)故障的原因,還可以通過(guò)聲音或光電等形式表達(dá)出來(lái)。
本發(fā)明的實(shí)施例的電腦故障檢測(cè)裝置還包括相互電連接的嵌入式控制器2和輸入設(shè)備1,其中,
輸入設(shè)備1(例如鍵盤(pán))配置為觸發(fā)嵌入式控制器2以使其生成控制信號(hào),嵌入式控制器2配置為將控制信號(hào)發(fā)送至設(shè)置在電腦的主板6上的總線擴(kuò)展器3。在觸發(fā)階段可以首先通過(guò)預(yù)置的快捷方式(例如通過(guò)預(yù)置的快捷鍵或組合快捷鍵)發(fā)出觸發(fā)信號(hào),嵌入式控制器2(例如筆記本電腦中的EC)偵測(cè)到該觸發(fā)信號(hào)后生成控制信號(hào),并發(fā)送至電腦的主板6的總線擴(kuò)展器3(GPIO),總線擴(kuò)展器3能夠提供額外的控制和監(jiān)視功能,能夠提供特殊的獨(dú)立于電腦其他設(shè)備的信號(hào)。
總線擴(kuò)展器3與處理器4電連接,總線擴(kuò)展器3進(jìn)一步配置為根據(jù)控制信號(hào)生成系統(tǒng)管理中斷信號(hào)并將其發(fā)送至處理器4。
處理器4進(jìn)一步配置為接收并執(zhí)行系統(tǒng)管理中斷信號(hào)進(jìn)入系統(tǒng)管理模式。系統(tǒng)管理模式對(duì)處理器4具有統(tǒng)一的標(biāo)準(zhǔn)體系結(jié)構(gòu)特性,這個(gè)模式為操作系統(tǒng)實(shí)現(xiàn)平臺(tái)指定的功能(比如電源管理或系統(tǒng)安全)提供了一種透明的機(jī)制。當(dāng)外部的SMM interrupt pin(SMI#)被激活或者收到一個(gè)系統(tǒng)管理中斷信號(hào)(SMI),處理器4將進(jìn)入系統(tǒng)管理模式(SMM)。在系統(tǒng)管理模式下,當(dāng)保存正在運(yùn)行程序的整個(gè)上下文時(shí),處理器4切換到一個(gè)分離的地址空間,然后系統(tǒng)管理模式指定的代碼可以被透明的執(zhí)行。當(dāng)從系統(tǒng)管理模式返回時(shí),處理器4將回到被系統(tǒng)管理中斷之前的狀態(tài)。
在本發(fā)明的一個(gè)實(shí)施例中,檢測(cè)命令存儲(chǔ)于電腦的基本輸入輸出系統(tǒng)5中,當(dāng)然檢測(cè)命令還可以存儲(chǔ)在其他的分離的地址空間中,該地址空間獨(dú)立于電腦的操作系統(tǒng),其中檢測(cè)命令可以根據(jù)檢測(cè)故障方法的不同被改寫(xiě),以使處理器4根據(jù)電腦的不同故障而執(zhí)行相適應(yīng)的檢測(cè)命令。處理器4根據(jù)檢測(cè)命令生成檢測(cè)信號(hào)并發(fā)送至電腦的主板6,該檢測(cè)信號(hào)蘊(yùn)含了電腦故障原因,也就是說(shuō)能夠從該檢測(cè)信號(hào)中獲取故障原因,作為優(yōu)選主板6根據(jù)檢測(cè)信號(hào)判斷電腦的故障,具體來(lái)說(shuō)主板6本身或連接在主板6上的其他元器件會(huì)對(duì)檢測(cè)信號(hào)做出相應(yīng)的反應(yīng),根據(jù)該反應(yīng)可以獲取電腦的故障原因。
在本發(fā)明的一個(gè)實(shí)施例中,當(dāng)電腦死機(jī)時(shí),執(zhí)行檢測(cè)命令后電腦做出聲和/或光反應(yīng)(例如安裝在主板6上的蜂鳴器7發(fā)聲或安裝在主板6上的LED燈8閃爍),說(shuō)明處理器4等硬件設(shè)備還可以執(zhí)行檢測(cè)命令,表明硬件設(shè)備沒(méi)有損壞,則說(shuō)明電腦具有軟件故障,是由軟件(包括操作系統(tǒng))引起的電腦死機(jī);當(dāng)電腦死機(jī)時(shí),執(zhí)行檢測(cè)命令后電腦沒(méi)有做出聲和/或光反應(yīng)(例如激發(fā)了安裝在主板6上的蜂鳴器7或LED燈8,但其并沒(méi)有發(fā)聲或閃爍),說(shuō)明處理器4等硬件設(shè)備已經(jīng)損害而不能執(zhí)行檢測(cè)命令,則電腦具有硬件故障。上述檢測(cè)方法直接有效,能夠快速判斷電腦的故障是由軟件引起還是由硬件引起,準(zhǔn)確度高,為用戶快速排除故障打好基礎(chǔ)。
需要說(shuō)明的是,上述的電腦包括筆記本電腦、臺(tái)式電腦和平板電腦。
以上實(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)。