背景技術(shù):
1、刷機是指通過一定的方法將鏡像文件(包括文件、軟件、操作系統(tǒng)等)刷寫到嵌入式設(shè)備的存儲介質(zhì)中。通俗來講,刷機就是給嵌入式設(shè)備重裝系統(tǒng)。在研發(fā)過程中,反復(fù)將鏡像文件刷寫到嵌入式設(shè)備中進行調(diào)試、驗證工作,需要大量的刷機工作。
2、現(xiàn)階段常規(guī)的刷機方案,是先將刷機所需的軟件工具,開發(fā)成上位機軟件,然后將刷機軟件安裝到上位機,再配合斷電、修改工作模式、重啟等操作,使嵌入式設(shè)備進入“刷機工作”模式,最后在上位機的刷機軟件中啟動刷機任務(wù),將鏡像文件寫入嵌入式設(shè)備。刷機結(jié)束后再次調(diào)整電源、修改工作模式,使設(shè)備恢復(fù)“正常工作”模式。
3、然而,使用安裝在上位機上的軟件刷機,嵌入式設(shè)備需要一直與上位機保持連接,上位機硬件端口被正在刷機的設(shè)備占用,無法進行其他工作。
技術(shù)實現(xiàn)思路
1、本技術(shù)旨在至少解決現(xiàn)有技術(shù)中存在的技術(shù)問題之一。為此,本技術(shù)提出一種設(shè)備刷機方法、裝置、電子設(shè)備及存儲介質(zhì),降低刷機的復(fù)雜度,提高刷機操作效率。
2、第一方面,本技術(shù)提供了一種設(shè)備刷機方法,包括:
3、響應(yīng)于上位機發(fā)來的刷機指令,判斷待刷機設(shè)備是否正在執(zhí)行刷機工作;
4、在所述待刷機設(shè)備未執(zhí)行刷機工作的情況下,控制所述待刷機設(shè)備進入刷機工作模式;
5、在所述待刷機設(shè)備成功進入刷機工作模式的情況下,根據(jù)鏡像文件對所述待刷機設(shè)備進行刷機。
6、根據(jù)本技術(shù)的設(shè)備刷機方法,通過響應(yīng)于上位機發(fā)來的刷機指令,判斷待刷機設(shè)備是否正在執(zhí)行刷機工作;在所述待刷機設(shè)備未執(zhí)行刷機工作的情況下,控制所述待刷機設(shè)備進入刷機工作模式;在所述待刷機設(shè)備成功進入刷機工作模式的情況下,根據(jù)鏡像文件對所述待刷機設(shè)備進行刷機。本技術(shù)實施例通過在接收到上位機發(fā)送的刷機指令的情況下,對待刷機設(shè)備的當(dāng)前狀態(tài)進行評估,確保只有在待刷機設(shè)備未進行刷機工作時才會觸發(fā)刷機流程,在待刷機設(shè)備未進行刷機工作時,能夠自動控制設(shè)備進入刷機模式,減少了人工干預(yù)的需要,并在刷機模式下利用鏡像文件進行刷機,而非在上位機中安裝刷機程序,減小了現(xiàn)有的刷機過程中過于依賴上位機的問題,降低了刷機的復(fù)雜度,提高了刷機操作效率。
7、根據(jù)本技術(shù)的一個實施例,所述控制所述待刷機設(shè)備進入刷機工作模式,包括:
8、控制繼電器斷開,以斷開所述待刷機設(shè)備的電源;
9、在斷開所述待刷機設(shè)備的電源的情況下,將gpio引腳的電平狀態(tài)調(diào)整為刷機工作模式對應(yīng)的第一目標(biāo)狀態(tài);
10、在所述gpio引腳的電平狀態(tài)處于第一目標(biāo)狀態(tài)的情況下,控制所述繼電器閉合,以對所述待刷機設(shè)備供電,以使所述待刷機設(shè)備的模式引腳響應(yīng)于所述gpio引腳的電平狀態(tài)處于第一目標(biāo)狀態(tài),控制所述待刷機設(shè)備進入刷機工作模式。
11、在該實施例中,通過繼電器斷開來控制刷機設(shè)備的電源也斷開,在斷開所述刷機設(shè)備電源情況下通過gpio引腳控制電平為刷機工作模式對應(yīng)的第一目標(biāo)狀態(tài),為待刷機設(shè)備提供了一個明確的工作模式轉(zhuǎn)換信號,再控制繼電器閉合給所述刷機設(shè)備供電,進而使得待刷機設(shè)備的模式引腳能夠接收到gpio引腳電平狀態(tài)的變化,從而控制待刷機設(shè)備進入刷機工作模式,避免人工調(diào)節(jié)所述刷機設(shè)備工作模式的情況,降低人工干預(yù),使刷機過程復(fù)雜度降低。
12、根據(jù)本技術(shù)的一個實施例,所述根據(jù)鏡像文件對所述待刷機設(shè)備進行刷機,包括:
13、使用losetup工具將鏡像文件虛擬成磁盤設(shè)備;
14、使用partclone工具備份所述磁盤設(shè)備中的鏡像數(shù)據(jù);所述鏡像數(shù)據(jù)為所述鏡像文件中的有效數(shù)據(jù);
15、將集成有partclone工具最小系統(tǒng)鏡像發(fā)送至所述待刷機設(shè)備,以使所述待刷機設(shè)備基于所述最小系統(tǒng)格式化存儲介質(zhì);
16、在所述待刷機設(shè)備格式化存儲介質(zhì)完成后,將所述鏡像數(shù)據(jù)發(fā)送至所述待刷機設(shè)備,以使所述待刷機設(shè)備基于所述最小系統(tǒng)中的partclone工具將所述鏡像數(shù)據(jù)還原到所述存儲介質(zhì)中。
17、在該實施例中,通過losetup工具將鏡像文件虛擬成磁盤設(shè)備,使得鏡像文件可以像物理磁盤一樣被系統(tǒng)識別和操作,由于partclone工具能夠識別和處理磁盤或分區(qū)上的文件系統(tǒng)結(jié)構(gòu),通過partclone工具能夠備份磁盤中的有效數(shù)據(jù),避免了鏡像文件中存在較多空白數(shù)據(jù)時,將鏡像文件全部刷寫到待刷機設(shè)備的存儲介質(zhì)的過程中,刷寫空白數(shù)據(jù)浪費大量時間。
18、根據(jù)本技術(shù)的一個實施例,所述方法還包括:
19、在所述待刷機設(shè)備刷機完成的情況下,控制繼電器斷開,以斷開所述待刷機設(shè)備的電源;
20、在斷開所述待刷機設(shè)備的電源的情況下,將gpio引腳的電平狀態(tài)調(diào)整為正常工作模式對應(yīng)的第二目標(biāo)狀態(tài);
21、在所述gpio引腳的電平狀態(tài)處于第二目標(biāo)狀態(tài)的情況下,控制所述繼電器閉合,以對所述待刷機設(shè)備供電,以使所述待刷機設(shè)備的模式引腳響應(yīng)于所述gpio引腳的電平狀態(tài)處于第二目標(biāo)狀態(tài),控制所述待刷機設(shè)備進入正常工作模式。
22、在該實施例中,通過繼電器斷開來控制刷機設(shè)備的電源也斷開,在斷開所述刷機設(shè)備電源情況下通過gpio引腳控制電平為正常工作模式對應(yīng)的第二目標(biāo)狀態(tài),為待刷機設(shè)備提供了一個明確的工作模式轉(zhuǎn)換信號,再控制繼電器閉合給所述刷機設(shè)備供電,進而使得代刷機設(shè)備的模式引腳能夠接收到gpio引腳電平狀態(tài)的變化,從而控制待刷機設(shè)備進入正常工作模式,能夠避免人工調(diào)節(jié)所述刷機設(shè)備工作模式的情況,降低人工干預(yù),使刷機過程復(fù)雜度降低。
23、根據(jù)本技術(shù)的一個實施例,所述方法還包括:
24、響應(yīng)于上位機發(fā)來的結(jié)果指令,判斷所述待刷機設(shè)備是否正在執(zhí)行刷機工作;
25、在所述待刷機設(shè)備未執(zhí)行刷機工作的情況下,將上一次刷機結(jié)果反饋至所述上位機。
26、根據(jù)本技術(shù)的一個實施例,所述方法還包括:
27、在所述待刷機設(shè)備正在執(zhí)行刷機工作的情況下,將所述待刷機設(shè)備的當(dāng)前刷機進度返回至所述上位機。
28、在該實施例中,該方案通過為上位機提供對刷機狀態(tài)的監(jiān)控和反饋機制,顯著增強了刷機過程的透明度和可控性。首先,在接收到上位機的結(jié)果指令的情況下,通過判斷待刷機設(shè)備是否正處于刷機狀態(tài),當(dāng)設(shè)備未執(zhí)行刷機工作時,能夠?qū)⑸弦淮嗡C的結(jié)果反饋至上位機,為上位機提供了重要的歷史信息,有助于進行故障排查或確認(rèn)上次操作的成功性;進一步地,如果設(shè)備正在執(zhí)行刷機工作,能夠返回當(dāng)前的刷機進度至上位機,增強了刷機過程的交互性,并為刷機過程的穩(wěn)定性和成功率提供了有力保障。
29、第二方面,本技術(shù)提供了一種設(shè)備刷機裝置,包括:
30、判斷模塊,用于響應(yīng)于上位機發(fā)來的刷機指令,判斷待刷機設(shè)備是否正在執(zhí)行刷機工作;
31、控制模塊,用于在所述待刷機設(shè)備未執(zhí)行刷機工作的情況下,控制所述待刷機設(shè)備進入刷機工作模式;
32、刷機模塊,用于在所述待刷機設(shè)備成功進入刷機工作模式的情況下,根據(jù)鏡像文件對所述待刷機設(shè)備進行刷機。
33、根據(jù)本技術(shù)的設(shè)備刷機方法,通過響應(yīng)于上位機發(fā)來的刷機指令,判斷待刷機設(shè)備是否正在執(zhí)行刷機工作;在所述待刷機設(shè)備未執(zhí)行刷機工作的情況下,控制所述待刷機設(shè)備進入刷機工作模式;在所述待刷機設(shè)備成功進入刷機工作模式的情況下,根據(jù)鏡像文件對所述待刷機設(shè)備進行刷機。本技術(shù)實施例通過在接收到上位機發(fā)送的刷機指令的情況下,對待刷機設(shè)備的當(dāng)前狀態(tài)進行評估,確保只有在待刷機設(shè)備未進行刷機工作時才會觸發(fā)刷機流程,在待刷機設(shè)備未進行刷機工作時,能夠自動控制設(shè)備進入刷機模式,減少了人工干預(yù)的需要,并在刷機模式下利用鏡像文件進行刷機,而非在上位機中安裝刷機程序,減小了現(xiàn)有的刷機過程中過于依賴上位機的問題,降低了刷機的復(fù)雜度,提高了刷機操作效率。
34、第三方面,本技術(shù)提供了一種電子設(shè)備,所述電子設(shè)備包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執(zhí)行所述程序時實現(xiàn)如上述第一方面所述的法
35、第四方面,本技術(shù)提供了一種非暫態(tài)計算機可讀存儲介質(zhì),存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述第一方面所述的設(shè)備刷機方法。
36、第五方面,本技術(shù)提供了一種計算機程序產(chǎn)品,包括計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述第一方面所述的設(shè)備刷機方法。
37、本技術(shù)實施例中的上述一個或多個技術(shù)方案,至少具有如下技術(shù)效果之一:
38、根據(jù)本技術(shù)的設(shè)備刷機方法,通過響應(yīng)于上位機發(fā)來的刷機指令,判斷待刷機設(shè)備是否正在執(zhí)行刷機工作;在所述待刷機設(shè)備未執(zhí)行刷機工作的情況下,控制所述待刷機設(shè)備進入刷機工作模式;在所述待刷機設(shè)備成功進入刷機工作模式的情況下,根據(jù)鏡像文件對所述待刷機設(shè)備進行刷機。本技術(shù)實施例通過在接收到上位機發(fā)送的刷機指令的情況下,對待刷機設(shè)備的當(dāng)前狀態(tài)進行評估,確保只有在待刷機設(shè)備未進行刷機工作時才會觸發(fā)刷機流程,在待刷機設(shè)備未進行刷機工作時,能夠自動控制設(shè)備進入刷機模式,減少了人工干預(yù)的需要,并在刷機模式下利用鏡像文件進行刷機,而非在上位機中安裝刷機程序,減小了現(xiàn)有的刷機過程中過于依賴上位機的問題,降低了刷機的復(fù)雜度,提高了刷機操作效率。
39、進一步的,在一些實施例中,通過繼電器斷開來控制刷機設(shè)備的電源也斷開,在斷開所述刷機設(shè)備電源情況下通過gpio引腳控制電平為刷機工作模式對應(yīng)的第一目標(biāo)狀態(tài),為待刷機設(shè)備提供了一個明確的工作模式轉(zhuǎn)換信號,再控制繼電器閉合給所述刷機設(shè)備供電,進而使得待刷機設(shè)備的模式引腳能夠接收到gpio引腳電平狀態(tài)的變化,從而控制待刷機設(shè)備進入刷機工作模式,避免人工調(diào)節(jié)所述刷機設(shè)備工作模式的情況,降低人工干預(yù),使刷機過程復(fù)雜度降低。
40、更進一步的,在一些實施例中,在該實施例中,通過losetup工具將鏡像文件虛擬成磁盤設(shè)備,使得鏡像文件可以像物理磁盤一樣被系統(tǒng)識別和操作,由于partclone工具能夠識別和處理磁盤或分區(qū)上的文件系統(tǒng)結(jié)構(gòu),通過partclone工具能夠備份磁盤中的有效數(shù)據(jù),避免了鏡像文件中存在較多空白數(shù)據(jù)時,將鏡像文件全部刷寫到待刷機設(shè)備的存儲介質(zhì)的過程中,刷寫空白數(shù)據(jù)浪費大量時間。
41、更進一步的,在一些實施例中,通過繼電器斷開來控制刷機設(shè)備的電源也斷開,在斷開所述刷機設(shè)備電源情況下通過gpio引腳控制電平為正常工作模式對應(yīng)的第二目標(biāo)狀態(tài),為待刷機設(shè)備提供了一個明確的工作模式轉(zhuǎn)換信號,再控制繼電器閉合給所述刷機設(shè)備供電,進而使得代刷機設(shè)備的模式引腳能夠接收到gpio引腳電平狀態(tài)的變化,從而控制待刷機設(shè)備進入正常工作模式,能夠避免人工調(diào)節(jié)所述刷機設(shè)備工作模式的情況,降低人工干預(yù),使刷機過程復(fù)雜度降低。
42、更進一步的,在一些實施例中,通過為上位機提供對刷機狀態(tài)的監(jiān)控和反饋機制,顯著增強了刷機過程的透明度和可控性。首先,在接收到上位機的結(jié)果指令的情況下,通過判斷待刷機設(shè)備是否正處于刷機狀態(tài),當(dāng)設(shè)備未執(zhí)行刷機工作時,能夠?qū)⑸弦淮嗡C的結(jié)果反饋至上位機,為上位機提供了重要的歷史信息,有助于進行故障排查或確認(rèn)上次操作的成功性;進一步地,如果設(shè)備正在執(zhí)行刷機工作,能夠返回當(dāng)前的刷機進度至上位機,增強了刷機過程的交互性,并為刷機過程的穩(wěn)定性和成功率提供了有力保障。
43、本技術(shù)的附加方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本技術(shù)的實踐了解到。