專利名稱:一種電視機閃存恢復方法
技術領域:
本發明涉及數據恢復技術,尤其涉及一種電視機閃存恢復方法。
背景技術:
隨著網絡電視(IPTV)技術的發展,現有的電視機已經開始內置IPTV模塊,以實現 IPTV功能,目前,IPTV的功能模塊很多,這些功能都是基于一個開發計劃逐步實現,新開發出的產品都會通過網絡升級的方式展現給老的用戶,那么隨著功能的增加,那么在升級過程中,我們需要對電視機的閃存(Nandflash)做刪除和復制的動作。基于Nandflash的特性和現實中的現象,在對Nandflash進行數據刪除和復制操作的過程中可能會造成NandFlash損壞,而導致升級失敗的情況產生,針對這樣的現象,客戶可能會投訴產品質量或者要求售后服務,直接影響產品形象和增加售后成本。鑒于上述問題,有必要提供一種電視機Nandfash恢復方法,使用戶可以自行恢復電視機的閃存,既解決了閃存損壞導致用戶無法升級的問題,也減少了售后上門的次數,直接節約了售后服務的成本。
發明內容
本發明的目的在于提供一種電視閃存恢復方法,能夠根據用戶需要對電視機閃存進行恢復,避免由閃存損壞導致升級失敗或售后服務成本的增加。本發明的技術方案如下一種電視閃存恢復方法,包括以下步驟A.內存中的監控程序監聽電視機串口,等待恢復指令;B.監控程序根據接收到的恢復指令調用閃存中的恢復模塊;C.閃存中的恢復模塊進行恢復操作,對閃存進行恢復;D.閃存恢復完成后通過電視機的屏幕顯示模塊顯示恢復完成信息。所述的電視閃存恢復方法,其中,所述步驟A具體包括Al.在電視機的閃存中劃分出新的備份分區,在備份分區中存放出廠程序、系統文件和恢復模塊;A2.在電視機內存中存放監控程序;A3.監控程序監聽電視機的串口,直至有恢復指令輸入。所述的電視閃存恢復方法,其中,所述步驟C具體包括Cl.閃存中的恢復模塊被監控程序調用后,通過主應用程序發送消息到屏幕顯示模塊,提示恢復操作準備開始;C2.恢復模塊對閃存進行初始化,卸載分區、刪除分區、重新分區以及掛載分區;C3.恢復模塊通過主應用程序發送消息到屏幕顯示模塊,提示恢復操作開始進行;C4.恢復模塊將閃存中備份模塊中的程序拷貝到相應的目錄下,完成恢復操作。
所述的電視閃存恢復方法,其中,在所述步驟Cl中,恢復模塊接收到屏幕顯示模塊發出的響應信號后再繼續執行下一步。所述的電視閃存恢復方法,其中,在所述步驟C3中,恢復模塊接收到屏幕顯示模塊發出的響應信號后再繼續執行下一步。所述的電視閃存恢復方法,其中,在所述步驟Cl或C3中,恢復模塊未接收到屏幕顯示模塊發出的響應信號時,發送指令到屏幕顯示模塊,提示重新開始恢復操作。以上方法允許用戶通過一鍵操作的方式對電視機的Nandflash進行恢復操作,避免在電視機進行在線升級時由于Nandflash損壞造成的不便。
圖1為本發明電視閃存恢復方法較佳實施方式的流程圖。
具體實施例方式為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。在本發明中首先對Nandflash的結構進行修改,增加一個新的備份分區用于存放出廠程序、系統文件和NandFlash的恢復模塊,然后在串口內存(spi rom)中增加一個監控程序,當監控程序監控到NandFlash出現錯誤使應用程序無法啟動或者無法升級的情況下,用戶可以通過一組鍵值來啟動NandFlash的恢復模塊,恢復模塊會將NandFlash重新分區、格式化,并且將在出廠時備份的程序重新拷貝到指定目錄下,這樣既解決了用戶無法升級的問題,也減少了售后上門的次數,直接節約了售后的成本。參考圖1,本發明電視閃存恢復方法較佳實施方式包括步驟Sl、系統啟動,串口初始化;S2、spi rom中的監控程序監聽串口,判斷串口是否接收到特定的指令,是則進入步驟S4,否則進入步驟S3 ;S3、阻塞等待,保持串口監控,直至接收到特定的指令;S4、調用Nandflash中的恢復模塊,準備開始Nandflash恢復;S5、進行界面初始化,恢復模塊發送消息到主應用程序(APP)報告其準備開始初始化,主應用程序發送指令到電視機的屏幕顯示(OSD)模塊,使OSD模塊進行界面初始化即在電視機上通過屏幕內容顯示Nandfash準備開始初始化,OSD模塊初始化后發送響應信號給主應用程序報告界面初始化完成,再由主應用程序反饋給恢復模塊;S6、恢復模塊判斷是否收到來自OSD模塊的響應,即通過是否接收到OSD反饋的信號判斷OSD模塊是否完成界面初始化,是則進入步驟S7,否則進入步驟S12 ;S7、恢復模塊開始Nandflash恢復,對Nandflash進行初始化,卸載分區、刪除分區、重新分區、掛載分區,在進行上述初始化動作時不對備份分區進行操作;S8、界面提示恢復開始,由恢復模塊通過主應用程序轉發消息給電視機的OSD模塊,報告Nandflash已經開始初始化,電視機的OSD模塊通過屏幕內容顯示Nandflash已經開始初始化,并通過主應用程序反饋響應信號給恢復模塊;
4
S9、恢復模塊判斷是否收到來自OSD模塊的響應,是則進入步驟S10,否則進入步驟 S12 ;S10、恢復模塊將備份分區中的程序拷貝到Nandflash相應的目錄下,完成程序拷貝;S11、恢復模塊通過主應用程序向OSD模塊發送消息,報告Nandflash恢復完成,由 OSD模塊通過屏幕顯示恢復完成請重新啟動;S12、界面提示重新發送恢復指令,由恢復模塊發送指令到OSD模塊,在屏幕上顯示請重新按某鍵開始恢復。上述步驟具體描述如下當打開電視機電源時,電視機spi room中的驅動程序 (u-boot)會啟動spi room中的監控程序和Nandflash的系統內核(kernal),當用戶發現需要對Nandflash進行恢復時,可以通過操作遙控器或電視機上的某一按鍵或按鍵組合,產生恢復指令給電視機的串口,當監控程序監聽串口發現接收到恢復指令時,調用Nandflash 的恢復模塊,準備開始Nandflash恢復,此時恢復模塊通過主應用程序向電視機的OSD模塊發送消息,在屏幕上顯示Nandf Iash準備開始初始化,在收到OSD完成內容顯示的響應信息后,恢復模塊開始卸載原有分區、刪除所有分區、重新分區,并將新分區都掛載到具體的目錄上,在進行上述初始化動作時不對備份分區進行操作,然后再通過OSD模塊進行屏幕顯示,提示恢復開始進行,獲得OSD的響應信息后繼續完成備份分區的內容拷貝,完成恢復操作,最后通過屏幕顯示通知用戶恢復完成,重新啟動電視。在上述方法中,監控程序存放在spi room中而不在Nandflash中,是為了避免由于Nandflash損壞而造成監控程序不能啟動,無法正常調用恢復模塊;上述的步驟S6和S9 中通過屏幕顯示的方式將恢復操作的執行情況報告給用戶,方便用戶了解電視機的當前工作狀態,此時需要用戶在OSD菜單中選擇確認恢復操作繼續執行。以上方法允許用戶通過一鍵操作的方式對電視機的Nandflash進行恢復操作,避免在電視機進行在線升級時由于Nandflash損壞造成升級失敗或售后服務成本的增加。應當理解的是,對本領域普通技術人員來說,可以根據上述說明加以改進或變換, 而所有這些改進和變換都應屬于本發明所附權利要求的保護范圍。
權利要求
1.一種電視閃存恢復方法,包括以下步驟A.內存中的監控程序監聽電視機串口,等待恢復指令;B.監控程序根據接收到的恢復指令調用閃存中的恢復模塊;C.閃存中的恢復模塊進行恢復操作,對閃存進行恢復;D.閃存恢復完成后通過電視機的屏幕顯示模塊顯示恢復完成信息。
2.根據權利要求1所述的電視閃存恢復方法,其特征在于所述步驟A具體包括 Al.在電視機的閃存中劃分出新的備份分區,在備份分區中存放出廠程序、系統文件和恢復模塊;A2.在電視機內存中存放監控程序;A3.監控程序監聽電視機的串口,直至有恢復指令輸入。
3.根據權利要求1所述的電視閃存恢復方法,其特征在于所述步驟C具體包括 Cl.閃存中的恢復模塊被監控程序調用后,通過主應用程序發送消息到屏幕顯示模塊,提示恢復操作準備開始;C2.恢復模塊對閃存進行初始化,卸載分區、刪除分區、重新分區以及掛載分區; C3.恢復模塊通過主應用程序發送消息到屏幕顯示模塊,提示恢復操作開始進行; C4.恢復模塊將閃存中備份模塊中的程序拷貝到相應的目錄下,完成恢復操作。
4.根據權利要求3所述的電視閃存恢復方法,其特征在于在所述步驟Cl中,恢復模塊接收到屏幕顯示模塊發出的響應信號后再繼續執行下一步。
5.根據權利要求3所述的電視閃存恢復方法,其特征在于在所述步驟C3中,恢復模塊接收到屏幕顯示模塊發出的響應信號后再繼續執行下一步。
6.根據權利要求4或5所述的電視閃存恢復方法,其特征在于在所述步驟Cl或C3 中,恢復模塊未接收到屏幕顯示模塊發出的響應信號時,發送指令到屏幕顯示模塊,提示重新開始恢復操作。
全文摘要
本發明提供一種電視閃存恢復方法,包括以下步驟A.內存中的監控程序監聽電視機串口,等待恢復指令;B.監控程序根據接收到的恢復指令調用閃存中的恢復模塊;C.閃存中的恢復模塊進行恢復操作,對閃存進行恢復;D.閃存恢復完成后通過電視機的屏幕顯示模塊顯示恢復完成信息。以上方法允許用戶通過一鍵操作的方式對電視機的Nandflash進行恢復操作,避免在電視機進行在線升級時由于Nandflash損壞造成升級失敗或售后服務成本的增加。
文檔編號H04N21/442GK102375748SQ20101026288
公開日2012年3月14日 申請日期2010年8月25日 優先權日2010年8月25日
發明者安彥成 申請人:Tcl集團股份有限公司, 深圳Tcl新技術有限公司