一種硬件診斷修復(fù)方法及裝置的制造方法
【專利摘要】本發(fā)明公開了一種硬件診斷修復(fù)方法及裝置,該方法包括:當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試;獲取待測硬件的各功能模塊的故障率;當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊。本發(fā)明實現(xiàn)了移動終端硬件故障的自我診斷及修復(fù),可便捷地解決移動終端使用中的故障問題,節(jié)省維修成本。
【專利說明】
一種硬件診斷修復(fù)方法及裝置
技術(shù)領(lǐng)域
[0001 ]本發(fā)明屬于移動終端技術(shù)領(lǐng)域,尤其涉及一種硬件診斷修復(fù)方法及裝置。
【背景技術(shù)】
[0002]隨著計算機(jī)技術(shù)的發(fā)展,人們對移動終端的需求及依賴程度越來越高,手機(jī)、平板電腦等移動終端逐漸成為人們工作、生活中必不可少的一部分,一旦在使用過程中出現(xiàn)了故障,將會直接影響人們的正常工作和生活。然而,由于移動終端屬于高精密機(jī)器,故障排除及維修需要較高的專業(yè)知識,目前業(yè)界還沒有讓存在故障的移動終端自動進(jìn)行自我硬件診斷及修復(fù)的辦法,普通使用者在移動終端出現(xiàn)故障時只能將機(jī)器交給代理商返回工廠維修,維修周期較長且需要花費一定的維修成本。
【發(fā)明內(nèi)容】
[0003]本發(fā)明提供一種硬件診斷修復(fù)方法及裝置,旨在解決現(xiàn)有技術(shù)中存在的移動終端無法自動進(jìn)行自我硬件診斷及修復(fù)的問題,實現(xiàn)了移動終端硬件故障的自我診斷及修復(fù),可便捷地解決移動終端使用中的故障問題,節(jié)省維修成本。
[0004]本發(fā)明實施例提供一種硬件診斷修復(fù)方法,包括:當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,以對所述待測硬件的各功能模塊進(jìn)行故障診斷;獲取所述待測硬件的各功能模塊的故障率;當(dāng)所述故障率小于預(yù)置比率時,屏蔽所述待測硬件中發(fā)生故障的功能模塊。
[0005]進(jìn)一步的,所述待測硬件包括:存儲裝置,則所述按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試包括:
[0006]將所述存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元;
[0007]按照所述測試規(guī)則,分別對各所述測試單元進(jìn)行故障測試,獲取測試結(jié)果;
[0008]根據(jù)所述測試結(jié)果,將未通過所述故障測試的測試單元作為所述存儲裝置中發(fā)生故障的功能t吳塊。
[0009]進(jìn)一步的,所述待測硬件包括:存儲裝置,則所述按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試包括:
[0010]將所述存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元;
[0011 ]按照所述測試規(guī)則,分別對各所述測試單元進(jìn)行故障測試,獲取測試結(jié)果;
[0012]根據(jù)所述測試結(jié)果,將未通過所述故障測試的測試單元作為所述存儲裝置中發(fā)生故障的功能t吳塊。
[0013]進(jìn)一步的,所述屏蔽所述待測硬件中發(fā)生故障的功能模塊包括:
[0014]獲取所述待測硬件中發(fā)生故障的功能模塊的描述信息,并記錄在指定位置;
[0015]重啟所述移動終端,檢測所述指定位置是否存儲有所述描述信息;
[0016]若存儲有所述描述信息,則根據(jù)所述描述信息,屏蔽所述待測硬件中發(fā)生故障的功能t吳塊。
[0017]進(jìn)一步的,所述描述信息包括所述待測硬件中發(fā)生故障的功能模塊的地址信息,所述根據(jù)所述描述信息,屏蔽所述待測硬件中發(fā)生故障的功能模塊包括:
[0018]根據(jù)所述地址信息,對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行著色,按照預(yù)置的標(biāo)記算法對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行標(biāo)記,以便對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行屏蔽。
[0019]進(jìn)一步的,所述按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試之前,包括:
[0020]重啟所述移動終端,并在所述移動終端啟動后加載維持所述移動終端正常運行所必須的基礎(chǔ)硬件。
[0021]本發(fā)明實施例提供一種硬件診斷修復(fù)裝置,包括:檢測模塊,用于檢測硬件診斷修復(fù)任務(wù)是否被觸發(fā);診斷模塊,用于當(dāng)所述檢測模塊檢測到所述硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,以對所述待測硬件的各功能模塊進(jìn)行故障診斷;獲取模塊,用于獲取所述待測硬件的各功能模塊的故障率;判斷模塊,用于判斷所述故障率是否小于預(yù)置比率;修復(fù)模塊,用于當(dāng)所述判斷模塊判斷所述故障率小于所述預(yù)置比率時,屏蔽所述待測硬件中發(fā)生故障的功能模塊。
[0022]進(jìn)一步的,所述待測硬件包括:存儲裝置,則所述診斷模塊包括:
[0023]劃分子模塊,用于將所述存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元;
[0024]測試子模塊,用于按照所述測試規(guī)則,分別對各所述測試單元進(jìn)行故障測試,獲取測試結(jié)果,根據(jù)所述測試結(jié)果,將未通過所述故障測試的測試單元作為所述存儲裝置中發(fā)生故障的功能t吳塊。
[0025]進(jìn)一步的,所述測試子模塊,具體用于依次對各所述測試單元進(jìn)行讀寫測試,比較一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)是否一致,并判斷寫入/讀出的時間是否超過預(yù)置時長,以及若一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)不一致,或者,寫入/讀出的時間超過預(yù)置時長,則確認(rèn)對應(yīng)的測試單元未通過所述故障測試。
[0026]進(jìn)一步的,所述修復(fù)模塊包括:
[0027]記錄子模塊,用于獲取所述待測硬件中發(fā)生故障的功能模塊的描述信息,并記錄在指定位置;
[0028]檢測子模塊,用于重啟所述移動終端,檢測所述指定位置是否存儲有所述描述信息;
[0029]屏蔽子模塊,用于若檢測子模塊檢測所述指定位置存儲有所述描述信息,則根據(jù)所述描述信息,屏蔽所述待測硬件中發(fā)生故障的功能模塊。
[0030]進(jìn)一步的,所述描述信息包括所述待測硬件中發(fā)生故障的功能模塊的地址信息,則所述屏蔽子模塊,具體用于根據(jù)所述地址信息,對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行著色,按照預(yù)置的標(biāo)記算法對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行標(biāo)記,以便對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行屏蔽。
[0031]進(jìn)一步的,所述裝置還包括:
[0032]加載模塊,用于重啟所述移動終端,并在所述移動終端啟動后加載維持所述移動終端正常運行所必須的基礎(chǔ)硬件。
[0033]從上述本發(fā)明實施例可知,通過當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,獲取待測硬件的各功能模塊的故障率,當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊,相較于現(xiàn)有技術(shù),本發(fā)明通過智能識別故障率小于預(yù)置比率的可以自我修復(fù)的硬件故障,并自動執(zhí)行修復(fù)操作,可便捷地解決移動終端使用中的故障問題,使得一些可以在用戶手里修復(fù)的機(jī)器無需再返回工廠維修,大大減少了用戶送修機(jī)器的損失,節(jié)省了消費者及廠家雙方由此帶來的額外開支,降低了維修成本,并減少了個人資料泄露的可能性。
【附圖說明】
[0034]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0035]圖1是本發(fā)明第一實施例提供的一種硬件診斷修復(fù)方法的實現(xiàn)流程示意圖;
[0036]圖2是本發(fā)明第二實施例提供的一種硬件診斷修復(fù)方法的實現(xiàn)流程示意圖;
[0037]圖3是本發(fā)明第三實施例提供的一種硬件診斷修復(fù)裝置的結(jié)構(gòu)示意圖;
[0038]圖4是本發(fā)明第四實施例提供的一種硬件診斷修復(fù)裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0039]為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部實施例。基于本發(fā)明中的實施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
[0040]請參閱圖1,圖1為本發(fā)明第一實施例提供的一種硬件診斷修復(fù)方法的實現(xiàn)流程示意圖。本實施例提供的硬件診斷修復(fù)方法可應(yīng)用于智能手機(jī)、平板電腦、智能穿戴設(shè)備等移動終端,如圖1所示,該方法主要包括以下步驟:
[0041 ] SlOl、當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,以對待測硬件的各功能模塊進(jìn)行故障診斷;
[0042]移動終端可在檢測到操作系統(tǒng)無法正常啟動時,自動觸發(fā)硬件診斷修復(fù)任務(wù),或者,根據(jù)用戶執(zhí)行的觸發(fā)硬件診斷修復(fù)任務(wù)的預(yù)置操作,例如用戶在預(yù)置的硬件診斷修復(fù)界面進(jìn)行的點擊用于觸發(fā)任務(wù)的按鈕的操作,按壓預(yù)置的用于觸發(fā)硬件診斷修復(fù)任務(wù)的快捷物理鍵的操作等,觸發(fā)硬件診斷修復(fù)任務(wù)。
[0043]當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,執(zhí)行預(yù)置的測試程序,按照預(yù)置的測試規(guī)貝1J,逐一對移動終端中待測硬件的各功能模塊進(jìn)行故障測試,診斷其是否發(fā)生了故障。待測硬件可以但不限于包括:移動終端的存儲裝置、射頻模塊、各種傳感器等等。當(dāng)執(zhí)行硬件診斷修復(fù)任務(wù),待測硬件的具體范圍可根據(jù)需要預(yù)先設(shè)置,例如,可以根據(jù)操作系統(tǒng)的啟動日志,在執(zhí)行硬件診斷修復(fù)任務(wù)前,將操作系統(tǒng)啟動過程中未正確加載的硬件預(yù)置為待測硬件;或者,根據(jù)硬件診斷修復(fù)任務(wù)觸發(fā)前的系統(tǒng)日志,將系統(tǒng)日志中涉及的硬件預(yù)置為待測硬件;或者,將所有的硬件均預(yù)置為待測硬件。
[0044]通過執(zhí)行預(yù)置的測試程序,對待測硬件的各功能模塊進(jìn)行故障測試,其中根據(jù)不同類型的硬件所具有的特性或結(jié)構(gòu),不同類型的硬件對應(yīng)的功能模塊劃分方式也有所不同。如:射頻模塊對應(yīng)的功能模塊可以包括信號發(fā)射模塊及信號接收模塊,則對射頻模塊的各功能模塊進(jìn)行故障測試,即逐一測試射頻模塊的信號發(fā)射模塊與信號接收模塊的發(fā)、收功能是否正常;內(nèi)存卡之類存儲裝置對應(yīng)的功能模塊則是構(gòu)成該存儲裝置的存儲空間整體的各個存儲單元,其中每一個存儲單元可定義為該存儲裝置的一個功能模塊,舉例來說,假設(shè)存儲裝置有IG的存儲空間,按照預(yù)置的大小將這IG的存儲空間劃分為1024個存儲單元,則該存儲裝置具有1024個存儲功能模塊,對該存儲裝置的各功能模塊進(jìn)行故障測試,即分別測試該存儲裝置的1024個存儲單元的讀寫功能是否正常。
[0045]進(jìn)一步地,在進(jìn)行硬件診斷時,為了減少不必要的錯誤和進(jìn)行更精準(zhǔn)的故障定位,優(yōu)選地,在按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試之前,先重啟移動終端,啟動后只運行一個非常精簡的基本系統(tǒng),在該系統(tǒng)中只最低限度地加載維持移動終端正常運行所必須的基礎(chǔ)硬件,然后再按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試。
[0046]S102、獲取待測硬件的各功能模塊的故障率;
[0047]待測硬件的各功能模塊的故障率,即待測硬件的所有功能模塊中發(fā)生故障的功能模塊占所有功能模塊的比率,仍以上述存儲裝置為例,若1024個存儲單元中有4個存儲單元發(fā)生讀寫故障,則該存儲裝置的各功能模塊的故障率為4/1024*100% ?0.4%。
[0048]S103、當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊。
[0049]當(dāng)故障率小于預(yù)置比率時,確認(rèn)對應(yīng)的待測硬件的故障較小,可以進(jìn)行自我修復(fù),則將待測硬件中發(fā)生故障的功能模塊進(jìn)行記錄,并重啟移動終端,根據(jù)上述記錄,屏蔽待測硬件中發(fā)生故障的功能模塊,從而保證待測硬件的其他功能的正常實現(xiàn),使得移動終端恢復(fù)正常運行,避免因待測硬件的部分功能損壞,導(dǎo)致移動終端系統(tǒng)異常,影響整體使用,例如,當(dāng)內(nèi)存卡出現(xiàn)部分壞道時,通過執(zhí)行上述硬件診斷修復(fù)方法,由于該部分壞道在重啟后被屏蔽,移動終端會自動跳過該壞道,從而避免出現(xiàn)因無法讀取該壞道中的數(shù)據(jù)而造成的系統(tǒng)故障,影響移動終端的正常使用。
[0050]進(jìn)一步地,可將待測硬件中發(fā)生故障的功能模塊的相關(guān)信息記錄在指定位置的特殊記錄區(qū),移動終端在重啟后先讀取該特殊記錄區(qū)中的數(shù)據(jù),如果該特殊記錄區(qū)中有相應(yīng)的記錄,則讀取該記錄,并根據(jù)該記錄,對待測硬件中發(fā)生故障的功能模塊進(jìn)行著色,并按照預(yù)置的標(biāo)記算法對待測硬件中發(fā)生故障的功能模塊進(jìn)行標(biāo)記,以便對待測硬件中發(fā)生故障的功能模塊進(jìn)行屏蔽,最后在內(nèi)核(kernel)啟動后將不會使用這些發(fā)生故障的功能模塊,從而達(dá)到正常使用機(jī)器的目的。
[0051]本發(fā)明實施例提供的一種硬件診斷修復(fù)方法,通過當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,獲取待測硬件的各功能模塊的故障率,當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊,相較于現(xiàn)有技術(shù),本發(fā)明通過智能識別故障率小于預(yù)置比率的可以自我修復(fù)的硬件故障,并自動執(zhí)行修復(fù)操作,可便捷地解決移動終端使用中的故障問題,使得一些可以在用戶手里修復(fù)的機(jī)器無需再返回工廠維修,大大減少了用戶送修機(jī)器的損失,節(jié)省了消費者及廠家雙方由此帶來的額外開支,降低了維修成本,并減少了個人資料泄露的可能性。
[0052]請參閱圖2,圖2為本發(fā)明第二實施例提供的一種硬件診斷修復(fù)方法的實現(xiàn)流程示意圖。本實施例提供的硬件診斷修復(fù)方法可應(yīng)用于智能手機(jī)、平板電腦、智能穿戴設(shè)備等移動終端。本實施例中的待測硬件包括存儲裝置,如圖2所示,該方法主要包括以下步驟:
[0053]S201、當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,將存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元;
[0054]移動終端可在檢測到操作系統(tǒng)無法正常啟動時,自動觸發(fā)硬件診斷修復(fù)任務(wù),或者,根據(jù)用戶執(zhí)行的觸發(fā)硬件診斷修復(fù)任務(wù)的預(yù)置操作,例如用戶在預(yù)置的硬件診斷修復(fù)界面進(jìn)行的點擊用于觸發(fā)任務(wù)的按鈕的操作,按壓預(yù)置的用于觸發(fā)硬件診斷修復(fù)任務(wù)的快捷物理鍵的操作等,觸發(fā)硬件診斷修復(fù)任務(wù)。
[0055]當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,將存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個存儲單元作為測試單元,其中每一個測試單元即對應(yīng)存儲裝置的一個存儲功能,可將其定義為該存儲裝置的一個功能模塊。
[0056]進(jìn)一步地,在進(jìn)行硬件診斷時,為了減少不必要的錯誤和進(jìn)行更精準(zhǔn)的故障定位,優(yōu)選地,將存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元之前,先重啟移動終端,啟動后只運行一個非常精簡的基本系統(tǒng),在該系統(tǒng)中只最低限度地加載維持移動終端正常運行所必須的基礎(chǔ)硬件。
[0057]S202、按照預(yù)置的測試規(guī)則,分別對各測試單元進(jìn)行故障測試,獲取測試結(jié)果;
[0058]按照預(yù)置的測試規(guī)則,依次對各測試單元進(jìn)行讀寫測試,比較一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)是否一致,并判斷寫入/讀出的時間是否超過預(yù)置時長;若一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)不一致,或者,寫入/讀出的時間超過預(yù)置時長,則確認(rèn)對應(yīng)的測試單元未通過故障測試。
[0059]具體地,首先,對測試單元執(zhí)行測試數(shù)據(jù)寫入操作,判斷寫入的時間是否超時,SP判斷是否超過預(yù)置時長仍然未成功將預(yù)置的測試數(shù)據(jù)寫入該測試單元,若寫入的時間超時,則確認(rèn)該測試單元未通過故障測試;若寫入的時間未超時,則對該測試單元執(zhí)行測試數(shù)據(jù)讀出操作,判斷讀出的時間是否超時,即判斷是否超過預(yù)置時長仍然未從該測試單元成功讀取到數(shù)據(jù),若讀出的時間超時,則確認(rèn)該測試單元未通過故障測試;若讀出的時間未超時,則判斷讀出的數(shù)據(jù)是否與寫入的測試數(shù)據(jù)一致,若不一致,則確認(rèn)該測試單元未通過故障測試,存在故障問題;若一致,則確認(rèn)該測試單元通過故障測試,不存在故障問題。
[0060]S203、根據(jù)測試結(jié)果,將未通過故障測試的測試單元作為存儲裝置中發(fā)生故障的功能t吳塊;
[0061 ] S204、獲取存儲裝置的各功能模塊的故障率;
[0062]根據(jù)測試結(jié)果,對存儲裝置中發(fā)生故障的測試單元(S卩,功能模塊)的數(shù)量進(jìn)行統(tǒng)計,將統(tǒng)計出的數(shù)量與該存儲裝置中包含的所有測試單元的數(shù)量進(jìn)行比較,得到該存儲裝置的各測試單元的故障率。舉例來說,假設(shè)存儲裝置有IG的存儲空間,按照預(yù)置的大小將這IG的存儲空間劃分為1024個測試單元,若其中有4個測試單元未通過讀寫測試,則該存儲裝置的各功能模塊的故障率為4/1024*100% ?0.4%。
[0063]S205、當(dāng)故障率小于預(yù)置比率時,獲取存儲裝置中發(fā)生故障的功能模塊的描述信息,并記錄在指定位置;
[0064]預(yù)置比率優(yōu)選為1%。于其他實施例中,該預(yù)置比率還可根據(jù)用戶輸入的數(shù)值自定義。描述信息包括未通過故障測試的測試單元的起始地址和結(jié)束地址的信息,此處的地址可以為邏輯地址或物理地址。通過該描述信息可以確定該未通過故障測試的測試單元在存儲裝置中的具體位置。獲取存儲裝置中所有未通過故障測試的測試單元的起始地址和結(jié)束地址的信息,并將獲取的信息按照預(yù)置的格式記錄在指定位置,例如:內(nèi)存卡的特定區(qū)域,該指定位置專門用于存儲獲取到的發(fā)生故障的功能模塊的描述信息。
[0065]S206、重啟移動終端,檢測指定位置是否存儲有描述信息;
[0066]重啟移動終端,讀取指定位置存儲的信息數(shù)據(jù),判斷該信息數(shù)據(jù)的格式是否為預(yù)置的格式,若是,則確認(rèn)該指定位置存儲有描述信息。
[0067]進(jìn)一步地,于本發(fā)明其他實施例中,為提高硬件診斷修復(fù)的靈活性,在重啟移動終端前,也可向用戶展示提示信息,以提示用戶存儲裝置的某些功能模塊存在故障,是否確認(rèn)對發(fā)生故障的功能模塊執(zhí)行屏蔽操作;然后根據(jù)用戶的確認(rèn)操作,在重啟移動終端后,檢測指定位置是否存儲有描述信息;或者根據(jù)用戶的拒絕操作,在重啟移動終端后,不再檢測指定位置是否存儲有描述信息,而是按照普通的啟動流程,啟動移動終端的操作系統(tǒng),此時發(fā)生故障的功能模塊將不會被屏蔽。
[0068]S207、若存儲有描述信息,則根據(jù)描述信息,屏蔽存儲裝置中發(fā)生故障的功能模塊。
[0069]若指定位置存儲有描述信息,則根據(jù)描述信息中的未通過故障測試的測試單元的起始地址和結(jié)束地址的信息,對該描述信息指向的測試單元進(jìn)行著色,并按照預(yù)置的標(biāo)記算法,對該描述信息指向的測試單元進(jìn)行標(biāo)記,以便在Kernel啟動后屏蔽該測試單元,從而使得該測試單元將不會被使用,從而達(dá)到正常使用機(jī)器的目的。若指定位置未存儲有描述信息,則繼續(xù)按照通常的啟動方式,啟動操作系統(tǒng)。
[0070]進(jìn)一步地,在操作系統(tǒng)完全啟動后,還可向用戶提供硬件診斷修復(fù)報告,以便用戶通過該硬件診斷修復(fù)報告了解被修復(fù)的待測硬件及待測硬件中被屏蔽發(fā)生故障的功能模塊的具體情況。
[0071]本發(fā)明實施例提供的一種硬件診斷修復(fù)方法,通過當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,獲取待測硬件的各功能模塊的故障率,當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊,相較于現(xiàn)有技術(shù),本發(fā)明通過智能識別故障率小于預(yù)置比率的可以自我修復(fù)的硬件故障,并自動執(zhí)行修復(fù)操作,可便捷地解決移動終端使用中的故障問題,使得一些可以在用戶手里修復(fù)的機(jī)器無需再返回工廠維修,大大減少了用戶送修機(jī)器的損失,節(jié)省了消費者及廠家雙方由此帶來的額外開支,降低了維修成本,并減少了個人資料泄露的可能性。
[0072]請參閱圖3,圖3是本發(fā)明第三實施例提供的一種硬件診斷修復(fù)裝置的結(jié)構(gòu)示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。圖3示例的硬件診斷修復(fù)裝置可以是前述第一實施例提供的一種硬件診斷修復(fù)方法的執(zhí)行主體,其可以是移動終端或者移動終端中的一個功能模塊。圖3示例的硬件診斷修復(fù)裝置,主要包括:檢測模塊301、診斷模塊302、獲取模塊303、判斷模塊304以及修復(fù)模塊305。各功能模塊詳細(xì)說明如下:
[0073]檢測模塊301,用于檢測硬件診斷修復(fù)任務(wù)是否被觸發(fā);
[0074]診斷模塊302,用于當(dāng)檢測模塊301檢測到該硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,以對該待測硬件的各功能模塊進(jìn)行故障診斷;
[0075]獲取模塊303,用于獲取該待測硬件的各功能模塊的故障率;
[0076]判斷模塊304,用于判斷該故障率是否小于預(yù)置比率;
[0077]修復(fù)模塊305,用于當(dāng)判斷模塊304判斷該故障率小于該預(yù)置比率時,屏蔽該待測硬件中發(fā)生故障的功能模塊。
[0078]上述模塊實現(xiàn)各自功能的具體過程可參考圖1所示第一實施例的相關(guān)內(nèi)容,此處不再贅述。
[0079]需要說明的是,上述圖3示例的硬件診斷修復(fù)裝置的實施方式中,各功能模塊的劃分僅是舉例說明,實際應(yīng)用中可以根據(jù)需要,例如相應(yīng)硬件的配置要求或者軟件的實現(xiàn)的便利考慮,而將上述功能分配由不同的功能模塊完成,即將該裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。而且,實際應(yīng)用中,本實施例中的相應(yīng)的功能模塊可以是由相應(yīng)的硬件實現(xiàn),也可以由相應(yīng)的硬件執(zhí)行相應(yīng)的軟件完成(本說明書提供的各個實施例都可應(yīng)用上述描述原則,以下不再贅述)。
[0080]本發(fā)明實施例提供的一種硬件診斷修復(fù)裝置,通過當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,獲取待測硬件的各功能模塊的故障率,當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊,相較于現(xiàn)有技術(shù),本發(fā)明通過智能識別故障率小于預(yù)置比率的可以自我修復(fù)的硬件故障,并自動執(zhí)行修復(fù)操作,可便捷地解決移動終端使用中的故障問題,使得一些可以在用戶手里修復(fù)的機(jī)器無需再返回工廠維修,大大減少了用戶送修機(jī)器的損失,節(jié)省了消費者及廠家雙方由此帶來的額外開支,降低了維修成本,并減少了個人資料泄露的可能性。
[0081]請參閱圖4,圖4是本發(fā)明第四實施例提供的一種硬件診斷修復(fù)裝置的結(jié)構(gòu)示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。與圖3所示本發(fā)明第三實施例提供的一種硬件診斷修復(fù)裝置不同的是,在本實施例中:
[0082]進(jìn)一步地,該待測硬件包括:存儲裝置,則診斷模塊302包括:
[0083]劃分子模塊3021,用于將該存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元;
[0084]測試子模塊3022,用于按照該測試規(guī)則,分別對各該測試單元進(jìn)行故障測試,獲取測試結(jié)果,根據(jù)該測試結(jié)果,將未通過該故障測試的測試單元作為該存儲裝置中發(fā)生故障的功能t吳塊。
[0085]進(jìn)一步地,測試子模塊3022,具體用于依次對各該測試單元進(jìn)行讀寫測試,比較一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)是否一致,并判斷寫入/讀出的時間是否超過預(yù)置時長,以及若一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)不一致,或者,寫入/讀出的時間超過預(yù)置時長,則確認(rèn)對應(yīng)的測試單元未通過該故障測試。
[0086]進(jìn)一步地,修復(fù)模塊305包括:
[0087]記錄子模塊3051,用于獲取該待測硬件中發(fā)生故障的功能模塊的描述信息,并記錄在指定位置;
[0088]檢測子模塊3052,用于重啟該移動終端,檢測該指定位置是否存儲有該描述信息;
[0089]屏蔽子模塊3053,用于若檢測子模塊檢測該指定位置存儲有該描述信息,則根據(jù)該描述信息,屏蔽該待測硬件中發(fā)生故障的功能模塊。
[0090]進(jìn)一步地,該描述信息包括該待測硬件中發(fā)生故障的功能模塊的地址信息,則屏蔽子模塊3053,具體用于根據(jù)該地址信息,對該待測硬件中發(fā)生故障的功能模塊進(jìn)行著色,按照預(yù)置的標(biāo)記算法對該待測硬件中發(fā)生故障的功能模塊進(jìn)行標(biāo)記,以便對該待測硬件中發(fā)生故障的功能模塊進(jìn)行屏蔽。
[0091 ] 進(jìn)一步地,該裝置還包括:
[0092]加載模塊401,用于重啟該移動終端,并在該移動終端啟動后加載維持該移動終端正常運行所必須的基礎(chǔ)硬件。
[0093]上述模塊實現(xiàn)各自功能的具體過程可參考圖1所示第一實施例和圖2所示第二實施例的相關(guān)內(nèi)容,此處不再贅述。
[0094]本發(fā)明實施例提供的一種硬件診斷修復(fù)裝置,通過當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,獲取待測硬件的各功能模塊的故障率,當(dāng)故障率小于預(yù)置比率時,屏蔽待測硬件中發(fā)生故障的功能模塊,相較于現(xiàn)有技術(shù),本發(fā)明通過智能識別故障率小于預(yù)置比率的可以自我修復(fù)的硬件故障,并自動執(zhí)行修復(fù)操作,可便捷地解決移動終端使用中的故障問題,使得一些可以在用戶手里修復(fù)的機(jī)器無需再返回工廠維修,大大減少了用戶送修機(jī)器的損失,節(jié)省了消費者及廠家雙方由此帶來的額外開支,降低了維修成本,并減少了個人資料泄露的可能性。
[0095]在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個模塊或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或模塊的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
[0096]所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)模塊上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。
[0097]另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一個處理模塊中,也可以是各個模塊單獨物理存在,也可以兩個或兩個以上模塊集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。
[0098]所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機(jī)設(shè)備(可以是個人計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-OnlyMemory)、隨機(jī)存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0099]需要說明的是,對于前述的各方法實施例,為了簡便描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其它順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定都是本發(fā)明所必須的。
[0100]在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其它實施例的相關(guān)描述。
[0101]以上為對本發(fā)明所提供的一種硬件診斷修復(fù)方法及裝置的描述,對于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明實施例的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【主權(quán)項】
1.一種硬件診斷修復(fù)方法,其特征在于,所述方法包括: 當(dāng)檢測到硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,以對所述待測硬件的各功能模塊進(jìn)行故障診斷; 獲取所述待測硬件的各功能模塊的故障率; 當(dāng)所述故障率小于預(yù)置比率時,屏蔽所述待測硬件中發(fā)生故障的功能模塊。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述待測硬件包括:存儲裝置,則所述按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試包括: 將所述存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元; 按照所述測試規(guī)則,分別對各所述測試單元進(jìn)行故障測試,獲取測試結(jié)果; 根據(jù)所述測試結(jié)果,將未通過所述故障測試的測試單元作為所述存儲裝置中發(fā)生故障的功能t吳塊。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述按照所述測試規(guī)則,分別對各所述測試單元進(jìn)行故障測試包括: 依次對各所述測試單元進(jìn)行讀寫測試,比較一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)是否一致,并判斷寫入/讀出的時間是否超過預(yù)置時長; 若一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)不一致,或者,寫入/讀出的時間超過預(yù)置時長,則確認(rèn)對應(yīng)的測試單元未通過所述故障測試。4.根據(jù)權(quán)利要求1至3任意一項所述的方法,其特征在于,所述屏蔽所述待測硬件中發(fā)生故障的功能模塊包括: 獲取所述待測硬件中發(fā)生故障的功能模塊的描述信息,并記錄在指定位置; 重啟所述移動終端,檢測所述指定位置是否存儲有所述描述信息; 若存儲有所述描述信息,則根據(jù)所述描述信息,屏蔽所述待測硬件中發(fā)生故障的功能豐旲塊。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述描述信息包括所述待測硬件中發(fā)生故障的功能模塊的地址信息,所述根據(jù)所述描述信息,屏蔽所述待測硬件中發(fā)生故障的功能豐吳塊包括: 根據(jù)所述地址信息,對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行著色,按照預(yù)置的標(biāo)記算法對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行標(biāo)記,以便對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行屏蔽。6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試之前,包括: 重啟所述移動終端,并在所述移動終端啟動后加載維持所述移動終端正常運行所必須的基礎(chǔ)硬件。7.一種硬件診斷修復(fù)裝置,其特征在于,所述裝置包括: 檢測模塊,用于檢測硬件診斷修復(fù)任務(wù)是否被觸發(fā); 診斷模塊,用于當(dāng)所述檢測模塊檢測到所述硬件診斷修復(fù)任務(wù)被觸發(fā)時,按照預(yù)置的測試規(guī)則對移動終端中的待測硬件的各功能模塊進(jìn)行故障測試,以對所述待測硬件的各功能模塊進(jìn)行故障診斷; 獲取模塊,用于獲取所述待測硬件的各功能模塊的故障率; 判斷模塊,用于判斷所述故障率是否小于預(yù)置比率; 修復(fù)模塊,用于當(dāng)所述判斷模塊判斷所述故障率小于所述預(yù)置比率時,屏蔽所述待測硬件中發(fā)生故障的功能模塊。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述待測硬件包括:存儲裝置,則所述診斷豐吳塊包括: 劃分子模塊,用于將所述存儲裝置的存儲空間按照預(yù)置的大小劃分為若干個測試單元; 測試子模塊,用于按照所述測試規(guī)則,分別對各所述測試單元進(jìn)行故障測試,獲取測試結(jié)果,根據(jù)所述測試結(jié)果,將未通過所述故障測試的測試單元作為所述存儲裝置中發(fā)生故障的功能t吳塊。9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述測試子模塊,具體用于依次對各所述測試單元進(jìn)行讀寫測試,比較一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)是否一致,并判斷寫入/讀出的時間是否超過預(yù)置時長,以及若一次測試中寫入的數(shù)據(jù)與讀出的數(shù)據(jù)不一致,或者,寫入/讀出的時間超過預(yù)置時長,則確認(rèn)對應(yīng)的測試單元未通過所述故障測試。10.根據(jù)權(quán)利要求7至9任意一項所述的裝置,其特征在于,所述修復(fù)模塊包括: 記錄子模塊,用于獲取所述待測硬件中發(fā)生故障的功能模塊的描述信息,并記錄在指定位置; 檢測子模塊,用于重啟所述移動終端,檢測所述指定位置是否存儲有所述描述信息; 屏蔽子模塊,用于若檢測子模塊檢測所述指定位置存儲有所述描述信息,則根據(jù)所述描述信息,屏蔽所述待測硬件中發(fā)生故障的功能模塊。11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述描述信息包括所述待測硬件中發(fā)生故障的功能模塊的地址信息,則所述屏蔽子模塊,具體用于根據(jù)所述地址信息,對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行著色,按照預(yù)置的標(biāo)記算法對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行標(biāo)記,以便對所述待測硬件中發(fā)生故障的功能模塊進(jìn)行屏蔽。12.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 加載模塊,用于重啟所述移動終端,并在所述移動終端啟動后加載維持所述移動終端正常運行所必須的基礎(chǔ)硬件。
【文檔編號】G06F11/22GK105824730SQ201610149670
【公開日】2016年8月3日
【申請日】2016年3月16日
【發(fā)明人】胡專門
【申請人】北京珠穆朗瑪移動通信有限公司