亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

軟件升級(jí)方法及升級(jí)裝置的制作方法

文檔序號(hào):7745353閱讀:114來源:國(guó)知局
專利名稱:軟件升級(jí)方法及升級(jí)裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及軟件升級(jí)方法及升級(jí)裝置,具體地說,是涉及一種通過網(wǎng)絡(luò)進(jìn)行軟件 升級(jí)的方法和裝置。
背景技術(shù)
目前,數(shù)字機(jī)頂盒、手機(jī)等嵌入式設(shè)備進(jìn)行軟件升級(jí)時(shí),大都通過串口來升級(jí)或采 用0TA(0ver the Air,空中下載)方式來進(jìn)行。不管是通過串口還是采用OTA方式升級(jí)軟 件,都存在著接收升級(jí)文件數(shù)據(jù)速度較慢的問題,一個(gè)升級(jí)文件可能得需要長(zhǎng)達(dá)幾分鐘的 時(shí)間才能接收完。接收數(shù)據(jù)所需的時(shí)間越長(zhǎng),機(jī)頂盒等設(shè)備斷電和出錯(cuò)的概率就越大,越容 易產(chǎn)生升級(jí)失敗的問題。尤其是隨著設(shè)備軟件功能的不斷增加,程序代碼越來越多,升級(jí)文 件數(shù)據(jù)越來越大,如果仍采用傳統(tǒng)速度較慢的升級(jí)方式來接收數(shù)據(jù)進(jìn)行軟件升級(jí),則發(fā)生 升級(jí)失敗的問題將尤為突出,嚴(yán)重影響了設(shè)備的正常運(yùn)行。

發(fā)明內(nèi)容
本發(fā)明的目的之一是提供一種軟件升級(jí)方法,該方法基于socket編程,將待升級(jí) 設(shè)備作為客戶端,實(shí)現(xiàn)多個(gè)客戶端通過網(wǎng)絡(luò)進(jìn)行軟件升級(jí),提高了軟件升級(jí)的效率。本發(fā)明的目的之二是提供一種軟件升級(jí)裝置,利用該升級(jí)裝置對(duì)設(shè)備進(jìn)行軟件升 級(jí),能夠提高升級(jí)速度和效率,有效避免升級(jí)失敗的問題。為實(shí)現(xiàn)上述發(fā)明目的之一,本發(fā)明提供下述技術(shù)方案的軟件升級(jí)方法一種軟件升級(jí)方法,所述方法包括待升級(jí)設(shè)備作為客戶端,PC機(jī)作為服務(wù)端,在所述待升級(jí)設(shè)備與所述PC機(jī)之間建 立基于socket的網(wǎng)絡(luò)鏈接;所述PC機(jī)將升級(jí)文件通過所述基于socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè)備;所述待升級(jí)設(shè)備接收所述升級(jí)文件,并更新其程序存儲(chǔ)器。根據(jù)本發(fā)明所述的軟件升級(jí)方法,為滿足局域網(wǎng)內(nèi)多臺(tái)待升級(jí)設(shè)備同時(shí)進(jìn)行網(wǎng) 絡(luò)升級(jí),所述PC機(jī)具有m個(gè)軟件升級(jí)用端口,所述待升級(jí)設(shè)備與所述PC機(jī)之間建立基于 socket的網(wǎng)絡(luò)鏈接的具體過程為所述PC機(jī)開辟m個(gè)線程,每個(gè)線程創(chuàng)建一個(gè)socket,每 個(gè)socket分別綁定一個(gè)軟件升級(jí)用端口,用于監(jiān)聽所綁定端口的鏈接請(qǐng)求;所述待升級(jí)設(shè) 備測(cè)試所述PC機(jī)的軟件升級(jí)用端口,并在測(cè)試到空閑端口時(shí)向該空閑端口發(fā)出鏈接請(qǐng)求, 所述PC機(jī)接受鏈接請(qǐng)求,與所述待升級(jí)設(shè)備建立基于socket的網(wǎng)絡(luò)鏈接。為避免局域網(wǎng)內(nèi)多個(gè)待升級(jí)設(shè)備集中測(cè)試并鏈接所述PC機(jī)的軟件升級(jí)用端口而 降低鏈接效率,所述待升級(jí)設(shè)備采用下述方法測(cè)試所述PC機(jī)的軟件升級(jí)用端口,以獲得空 閑端口 將待升級(jí)設(shè)備的啟動(dòng)時(shí)間作為隨機(jī)數(shù)種子,利用所述隨機(jī)數(shù)種子產(chǎn)生隨機(jī)數(shù),并 使得所述隨機(jī)數(shù)對(duì)應(yīng)于所述PC機(jī)的軟件升級(jí)用端口的端口號(hào);測(cè)試所述隨機(jī)數(shù)所對(duì)應(yīng)的PC機(jī)的軟件升級(jí)用端口,并判斷該端口是否空閑;
若該端口空閑,直接向該空閑端口發(fā)出鏈接請(qǐng)求;若該端口非空閑,則循環(huán)測(cè)試下 一個(gè)軟件升級(jí)用端口,直至測(cè)試到空閑端口。為保證待升級(jí)設(shè)備正確升級(jí),PC機(jī)將升級(jí)文件傳輸至所述待升級(jí)設(shè)備之前,先提取所述升級(jí)文件中的版本信息,并將所述版本信息通過所述基于socket的網(wǎng)絡(luò)鏈接傳 輸至所述待升級(jí)設(shè)備;所述待升級(jí)設(shè)備驗(yàn)證所述版本信息是否正確;在所述版本信息正確 時(shí),所述PC機(jī)再將升級(jí)文件通過所述基于socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè)備。所述PC機(jī)將升級(jí)文件分解為多個(gè)數(shù)據(jù)包,然后將多個(gè)數(shù)據(jù)包分別通過所述基于 socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè)備,以避免整個(gè)數(shù)據(jù)包傳輸時(shí)因數(shù)據(jù)較大而容易產(chǎn) 生傳輸錯(cuò)誤。為實(shí)現(xiàn)上述發(fā)明目的之二,本發(fā)明提供下述技術(shù)方案的軟件升級(jí)裝置一種軟件升級(jí)裝置,所述裝置包括設(shè)置在待升級(jí)設(shè)備中的客戶端通訊模塊及設(shè)置在PC機(jī)中的服務(wù)端通訊模塊,所 述客戶端通訊模塊與所述服務(wù)端通訊模塊之間建立基于socket的網(wǎng)絡(luò)鏈接;所述服務(wù)端通訊模塊通過基于socket的網(wǎng)絡(luò)鏈接將所述PC機(jī)中的升級(jí)文件傳輸 至待升級(jí)設(shè)備;所述待升級(jí)設(shè)備通過其客戶端通訊模塊接收所述升級(jí)文件,并利用更新模 塊更新其程序存儲(chǔ)器。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)和積極效果是本發(fā)明所述的軟件升級(jí)方法及升 級(jí)裝置基于socket網(wǎng)絡(luò)傳輸,配合PC機(jī)軟件,可以實(shí)現(xiàn)多臺(tái)待升級(jí)設(shè)備同時(shí)進(jìn)行網(wǎng)絡(luò)升 級(jí),升級(jí)軟件傳輸速度快,解決了傳統(tǒng)串口升級(jí)方法和OTA升級(jí)方法存在的數(shù)據(jù)接收速度 慢、容易導(dǎo)致升級(jí)失敗的問題,提高了設(shè)備升級(jí)的速度和效率;且本發(fā)明所述的軟件升級(jí)方 法不需要使用任何收費(fèi)的網(wǎng)絡(luò)協(xié)議,成本較低,通用性較強(qiáng),可普遍應(yīng)用于數(shù)字機(jī)頂盒、手 機(jī)等嵌入式設(shè)備的軟件升級(jí)。


圖1是本發(fā)明所述軟件升級(jí)方法一個(gè)實(shí)施例的基本流程圖;圖2是圖1實(shí)施例中升級(jí)文件傳輸?shù)木唧w流程圖;圖3是本發(fā)明所述軟件升級(jí)裝置一個(gè)實(shí)施例的結(jié)構(gòu)框圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步詳細(xì)的說明。圖1所示為本發(fā)明所述軟件升級(jí)方法一個(gè)實(shí)施例的基本流程圖。該實(shí)施例以機(jī)頂 盒作為待升級(jí)設(shè)備,通過PC機(jī)對(duì)機(jī)頂盒進(jìn)行軟件升級(jí)的基本流程如下SlOl 將機(jī)頂盒作為客戶端、PC機(jī)作為服務(wù)端,在機(jī)頂盒與PC機(jī)之間建立基于 socket的網(wǎng)絡(luò)鏈接。S102 =PC機(jī)將升級(jí)文件通過基于socket的網(wǎng)絡(luò)鏈接傳輸至機(jī)頂盒。S103 機(jī)頂盒接收升級(jí)文件,更新其程序存儲(chǔ)器。上述實(shí)施例中升級(jí)文件傳輸?shù)木唧w流程如圖2所示。下面以作為服務(wù)端的PC機(jī) 和作為客戶端的機(jī)頂盒為例,詳細(xì)描述升級(jí)文件的具體傳輸過程。首先,在PC機(jī)和機(jī)頂盒之間建立基于socket的網(wǎng)絡(luò)鏈接。
為實(shí)現(xiàn)局域網(wǎng)內(nèi)多臺(tái)機(jī)頂盒能同時(shí)通過網(wǎng)絡(luò)進(jìn)行升級(jí),作為服務(wù)端的PC機(jī)存在有多個(gè)軟件升級(jí)用端口。假設(shè)局域網(wǎng)內(nèi)最多可能存在的機(jī)頂盒為m個(gè),PC機(jī)為升級(jí)功能開 辟的端口為m個(gè),且這m個(gè)端口的端口號(hào)從k到k+m。PC機(jī)軟件啟動(dòng)后,首先開辟m個(gè)線程,每個(gè)線程創(chuàng)建一個(gè)socket,共創(chuàng)建socketO 到socketm共m個(gè)。每個(gè)socket分別綁定一個(gè)軟件升級(jí)用端口,例如,socketO與端口號(hào) 為k的軟件升級(jí)用端口綁定,socketl與端口號(hào)為k+Ι的軟件升級(jí)用端口綁定,以此類推。 每個(gè)socket負(fù)責(zé)監(jiān)聽各自綁定的端口號(hào)的端口的鏈接請(qǐng)求和數(shù)據(jù)請(qǐng)求,當(dāng)監(jiān)聽到相關(guān)請(qǐng) 求后,開始建立鏈接,并進(jìn)行數(shù)據(jù)通訊。在建立完socket后,PC機(jī)讀取升級(jí)文件,并監(jiān)聽機(jī) 頂盒的鏈接請(qǐng)求。作為客戶端的機(jī)頂盒等待用戶進(jìn)行軟件升級(jí)的按鍵確認(rèn),在用戶確認(rèn)進(jìn)行軟件升 級(jí)后,將測(cè)試空閑端口,并在測(cè)試到空閑端口時(shí),向該端口發(fā)送鏈接請(qǐng)求。由于機(jī)頂盒只能知道PC機(jī)的IP地址,而不知道PC機(jī)的哪個(gè)端口被占用,所以需 要通過對(duì)PC機(jī)的軟件升級(jí)用端口進(jìn)行測(cè)試,以獲得空閑端口。如果局域網(wǎng)內(nèi)多臺(tái)機(jī)頂盒都采用順序方法測(cè)試PC機(jī)的軟件升級(jí)用端口,可能會(huì) 出現(xiàn)一個(gè)端口被集中嘗試鏈接的情況,增加了多個(gè)機(jī)頂盒對(duì)空閑端口的競(jìng)爭(zhēng),從而增加了 每個(gè)機(jī)頂盒測(cè)試鏈接的次數(shù)。為避免局域網(wǎng)內(nèi)多個(gè)機(jī)頂盒集中測(cè)試并鏈接所述PC機(jī)的軟 件升級(jí)用端口而降低鏈接效率,機(jī)頂盒采用下述方法測(cè)試PC機(jī)的軟件升級(jí)用端口,以獲得 空閑端口 將機(jī)頂盒的啟動(dòng)時(shí)間作為隨機(jī)數(shù)種子,利用所述隨機(jī)數(shù)種子產(chǎn)生隨機(jī)數(shù),并使得 所述隨機(jī)數(shù)對(duì)應(yīng)于所述PC機(jī)的軟件升級(jí)用端口的端口號(hào),即所產(chǎn)生的隨機(jī)數(shù)在k到k+m之 間??梢酝ㄟ^用隨機(jī)數(shù)對(duì)m取余然后再加上k的方法,使得最終獲得的隨機(jī)數(shù)的值在k到 k+m之間。然后測(cè)試所述隨機(jī)數(shù)所對(duì)應(yīng)的PC機(jī)的軟件升級(jí)用端口,并判斷該端口是否空閑; 若該端口空閑,直接向該空閑端口發(fā)出鏈接請(qǐng)求;若該端口非空閑,則循環(huán)測(cè)試下一個(gè)軟件 升級(jí)用端口,直至測(cè)試到空閑端口。在循環(huán)測(cè)試下一個(gè)軟件升級(jí)用端口時(shí),若測(cè)試到最后一個(gè)k+m端口仍未獲得空閑 端口,則從第k個(gè)端口開始重新進(jìn)行循環(huán)測(cè)試。由于每臺(tái)機(jī)頂盒啟動(dòng)的時(shí)間總會(huì)存在差別,不同的啟動(dòng)時(shí)間對(duì)應(yīng)不同的隨機(jī)數(shù)種 子,而不同的隨機(jī)數(shù)種子對(duì)應(yīng)不同的隨機(jī)數(shù),從而極大地分散了多臺(tái)機(jī)頂盒嘗試鏈接的PC 機(jī)的端口號(hào),提高了鏈接效率。機(jī)頂盒在測(cè)試到空閑端口時(shí),則向該空閑端口發(fā)出鏈接請(qǐng)求。其次,執(zhí)行升級(jí)文件版本信息及升級(jí)文件的傳輸和校驗(yàn)。PC機(jī)在監(jiān)聽到機(jī)頂盒發(fā)出的鏈接請(qǐng)求后,將與機(jī)頂盒建立基于socket的網(wǎng)絡(luò)鏈 接。同時(shí),為保證機(jī)頂盒能夠正確升級(jí),PC機(jī)首先讀取升級(jí)文件的版本信息,并將版本信息 發(fā)送至機(jī)頂盒。版本信息包括有升級(jí)文件對(duì)應(yīng)的軟件版本、硬件版本、廠商版本及發(fā)布日期 等信息。機(jī)頂盒接收到PC機(jī)發(fā)來的版本信息后,對(duì)版本信息進(jìn)行校驗(yàn),以決定本機(jī)是否需 要升級(jí)。若機(jī)頂盒需要升級(jí),則發(fā)送一個(gè)關(guān)鍵字節(jié)至PC機(jī),以請(qǐng)求PC機(jī)發(fā)送升級(jí)文件。若 根據(jù)版本信息判斷不需要升級(jí),則退出升級(jí)過程,升級(jí)結(jié)束。PC機(jī)判斷是否接收到機(jī)頂盒反饋的關(guān)鍵字節(jié)。若接收到關(guān)鍵字節(jié),則發(fā)送升級(jí)文件;若沒有接收到關(guān)鍵字節(jié),則放棄對(duì)該機(jī)頂盒的升級(jí)過程,重新監(jiān)聽鏈接請(qǐng)求。PC機(jī)在發(fā)送升級(jí)文件時(shí),將升級(jí)文件的數(shù)據(jù)內(nèi)容分成合適長(zhǎng)度的多份數(shù)據(jù)包,如分為4M或512K,分別發(fā)送至機(jī)頂盒客戶端。在發(fā)送完畢所有升級(jí)文件后,PC機(jī)將重新監(jiān)聽 鏈接請(qǐng)求。機(jī)頂盒通過基于socket的網(wǎng)絡(luò)鏈接接收升級(jí)文件,并將文件數(shù)據(jù)整合。為保證程 序的安全性,在升級(jí)文件制作過程中對(duì)升級(jí)文件進(jìn)行了加密處理;而為防止文件在傳輸中 出現(xiàn)錯(cuò)誤,在制作升級(jí)文件時(shí),對(duì)加密前的文件數(shù)據(jù)進(jìn)行了 CRC校驗(yàn)和運(yùn)算,并附加在升級(jí) 文件之后。因此,機(jī)頂盒在接收完所有升級(jí)文件后,需要對(duì)升級(jí)文件數(shù)據(jù)解密,并進(jìn)行CRC 校驗(yàn)。在升級(jí)文件數(shù)據(jù)校驗(yàn)正確后,將數(shù)據(jù)存儲(chǔ)至機(jī)頂盒的FLASH程序存儲(chǔ)器中,實(shí)現(xiàn)機(jī)頂 盒的軟件更新。若數(shù)據(jù)校驗(yàn)錯(cuò)誤,則不進(jìn)行升級(jí),升級(jí)結(jié)束。圖3是本發(fā)明所述軟件升級(jí)裝置一個(gè)實(shí)施例的結(jié)構(gòu)框圖,該實(shí)施例以機(jī)頂盒作為 待升級(jí)設(shè)備為例,機(jī)頂盒作為客戶端,配合PC機(jī)實(shí)現(xiàn)軟件升級(jí),PC機(jī)作為服務(wù)端。如圖3所示,軟件升級(jí)裝置包括設(shè)置在機(jī)頂盒中的客戶端通訊模塊及設(shè)置在PC 機(jī)中的服務(wù)端通訊模塊,所述客戶端通訊模塊和所述服務(wù)端通訊模塊之間建立基于socket 的網(wǎng)絡(luò)鏈接。所述升級(jí)裝置還包括設(shè)置在機(jī)頂盒中的測(cè)試模塊、隨機(jī)數(shù)生成模塊、版本驗(yàn)證模 塊及更新模塊;以及設(shè)置在PC機(jī)中的監(jiān)聽模塊和版本提取模塊。所述隨機(jī)數(shù)生成模塊以機(jī)頂盒的啟動(dòng)時(shí)間作為隨機(jī)數(shù)種子,利用所述隨機(jī)數(shù)種子 產(chǎn)生隨機(jī)數(shù),并使得所述隨機(jī)數(shù)對(duì)應(yīng)于所述PC機(jī)的軟件升級(jí)用端口的端口號(hào)。所述測(cè)試模 塊測(cè)試所述隨時(shí)數(shù)生成模塊所生成的隨機(jī)數(shù)所對(duì)應(yīng)的PC機(jī)的軟件升級(jí)用端口,并判斷該 端口是否空閑。在測(cè)試到空閑端口時(shí),通過所述客戶端通訊模塊向該空閑端口發(fā)出鏈接請(qǐng) 求。所述PC機(jī)中的監(jiān)聽模塊包括有與PC機(jī)的軟件升級(jí)用端口個(gè)數(shù)相同的線程,每個(gè) 線程創(chuàng)建有一個(gè)socket,每個(gè)socket分別綁定一個(gè)PC機(jī)的軟件升級(jí)用端口,用于監(jiān)聽所綁 定端口的鏈接請(qǐng)求。所述監(jiān)聽模塊在監(jiān)聽到所述機(jī)頂盒發(fā)出的鏈接請(qǐng)求時(shí),通過所述服務(wù) 端通訊模塊接受鏈接請(qǐng)求,并與所述機(jī)頂盒中的客戶端通訊模塊建立基于socket的網(wǎng)絡(luò) 鏈接。然后所述服務(wù)端通訊模塊通過基于socket的網(wǎng)絡(luò)鏈接將所述PC機(jī)中的升級(jí)文件傳 輸至機(jī)頂盒;所述機(jī)頂盒通過其客戶端通訊模塊接收所述升級(jí)文件,并利用所述更新模塊 對(duì)升級(jí)文件進(jìn)行解密、校驗(yàn)等處理,并在校驗(yàn)正確后更新機(jī)頂盒的程序存儲(chǔ)器。為保證機(jī)頂盒能夠正確升級(jí),所述PC機(jī)在傳輸升級(jí)文件之前,先利用所述版本提 取模塊提取升級(jí)文件中的版本信息,并通過所述服務(wù)端通訊模塊將所述版本信息傳輸至所 述機(jī)頂盒。所述機(jī)頂盒中的客戶端通訊模塊接收所述版本信息,并傳輸至所述版本驗(yàn)證模 塊,通過所述版本驗(yàn)證模塊驗(yàn)證所述版本信息是否正確。所述版本驗(yàn)證模塊將驗(yàn)證結(jié)果通 知所述客戶端通訊模塊,并在驗(yàn)證正確時(shí)通過所述客戶端通訊模塊發(fā)送關(guān)鍵字節(jié)反饋至所 述PC機(jī),以請(qǐng)求PC機(jī)發(fā)送升級(jí)文件。上述軟件升級(jí)方法及升級(jí)裝置中的待升級(jí)設(shè)備為機(jī)頂盒,但并不局限于此,也可 以是手機(jī)等其他嵌入式設(shè)備。以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其進(jìn)行限制;盡管參照前述實(shí) 施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,依然可以對(duì)前述實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明所要求保護(hù)的技術(shù)方案的精神和范圍。
權(quán)利要求
一種軟件升級(jí)方法,其特征在于,所述方法包括待升級(jí)設(shè)備作為客戶端,PC機(jī)作為服務(wù)端,在所述待升級(jí)設(shè)備與所述PC機(jī)之間建立基于socket的網(wǎng)絡(luò)鏈接;所述PC機(jī)將升級(jí)文件通過所述基于socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè)備;所述待升級(jí)設(shè)備接收所述升級(jí)文件,并更新其程序存儲(chǔ)器。
2.根據(jù)權(quán)利要求1所述的軟件升級(jí)方法,其特征在于,所述PC機(jī)具有m個(gè)軟件升級(jí)用 端口,所述待升級(jí)設(shè)備與所述PC機(jī)之間建立基于socket的網(wǎng)絡(luò)鏈接的具體過程為所述 PC機(jī)開辟m個(gè)線程,每個(gè)線程創(chuàng)建一個(gè)socket,每個(gè)socket分別綁定一個(gè)軟件升級(jí)用端 口,用于監(jiān)聽所綁定端口的鏈接請(qǐng)求;所述待升級(jí)設(shè)備測(cè)試所述PC機(jī)的軟件升級(jí)用端口, 并在測(cè)試到空閑端口時(shí)向該空閑端口發(fā)出鏈接請(qǐng)求,所述PC機(jī)接受鏈接請(qǐng)求,與所述待升 級(jí)設(shè)備建立基于socket的網(wǎng)絡(luò)鏈接。
3.根據(jù)權(quán)利要求2所述的軟件升級(jí)方法,其特征在于,所述待升級(jí)設(shè)備采用下述方法 測(cè)試所述PC機(jī)的軟件升級(jí)用端口,以獲得空閑端口 將待升級(jí)設(shè)備的啟動(dòng)時(shí)間作為隨機(jī)數(shù)種子,利用所述隨機(jī)數(shù)種子產(chǎn)生隨機(jī)數(shù),并使得 所述隨機(jī)數(shù)對(duì)應(yīng)于所述PC機(jī)的軟件升級(jí)用端口的端口號(hào);測(cè)試所述隨機(jī)數(shù)所對(duì)應(yīng)的PC機(jī)的軟件升級(jí)用端口,并判斷該端口是否空閑;若該端口空閑,直接向該空閑端口發(fā)出鏈接請(qǐng)求;若該端口非空閑,則循環(huán)測(cè)試下一個(gè)軟件升級(jí)用端口,直至測(cè)試到空閑端口。
4.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的軟件升級(jí)方法,其特征在于,PC機(jī)將升級(jí)文件 傳輸至所述待升級(jí)設(shè)備之前,先提取所述升級(jí)文件中的版本信息,并將所述版本信息通過 所述基于socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè)備;所述待升級(jí)設(shè)備驗(yàn)證所述版本信息 是否正確;在所述版本信息正確時(shí),所述PC機(jī)再將升級(jí)文件通過所述基于socket的網(wǎng)絡(luò)鏈 接傳輸至所述待升級(jí)設(shè)備。
5.根據(jù)權(quán)利要求4所述的軟件升級(jí)方法,其特征在于,所述PC機(jī)將升級(jí)文件分解為多 個(gè)數(shù)據(jù)包,然后將多個(gè)數(shù)據(jù)包分別通過所述基于socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè) 備。
6.一種軟件升級(jí)裝置,其特征在于,所述裝置包括設(shè)置在待升級(jí)設(shè)備中的客戶端通訊模塊及設(shè)置在PC機(jī)中的服務(wù)端通訊模塊,所述客 戶端通訊模塊與所述服務(wù)端通訊模塊之間建立基于socket的網(wǎng)絡(luò)鏈接;所述服務(wù)端通訊模塊通過基于socket的網(wǎng)絡(luò)鏈接將所述PC機(jī)中的升級(jí)文件傳輸至待 升級(jí)設(shè)備;所述待升級(jí)設(shè)備通過其客戶端通訊模塊接收所述升級(jí)文件,并利用更新模塊更 新其程序存儲(chǔ)器。
7.根據(jù)權(quán)利要求6所述的軟件升級(jí)裝置,其特征在于,所述裝置還包括設(shè)置在所述PC 機(jī)中的監(jiān)聽模塊及設(shè)置在所述待升級(jí)設(shè)備中的測(cè)試模塊;所述監(jiān)聽模塊包括有與PC機(jī)的軟件升級(jí)用端口個(gè)數(shù)相同的線程,每個(gè)線程創(chuàng)建有一 個(gè)socket,每個(gè)socket分別綁定一個(gè)PC機(jī)的軟件升級(jí)用端口,用于監(jiān)聽所綁定端口的鏈接 請(qǐng)求;所述測(cè)試模塊測(cè)試所述PC機(jī)的軟件升級(jí)用端口,并在測(cè)試到空閑端口時(shí),通過所述客 戶端通訊模塊向該空閑端口發(fā)出鏈接請(qǐng)求;所述監(jiān)聽模塊在監(jiān)聽到所述待升級(jí)設(shè)備發(fā)出的鏈接請(qǐng)求時(shí),通過所述服務(wù)端通訊模塊 接受鏈接請(qǐng)求,并與所述待升級(jí)設(shè)備建立基于socket的網(wǎng)絡(luò)鏈接。
8.根據(jù)權(quán)利要求7所述的軟件升級(jí)裝置,其特征在于,還包括設(shè)置在所述待升級(jí)設(shè)備 中的隨機(jī)數(shù)生成模塊,所述隨機(jī)數(shù)生成模塊以待升級(jí)設(shè)備的啟動(dòng)時(shí)間作為隨機(jī)數(shù)種子,利 用所述隨機(jī)數(shù)種子產(chǎn)生隨機(jī)數(shù),并使得所述隨機(jī)數(shù)對(duì)應(yīng)于所述PC機(jī)的軟件升級(jí)用端口的 端口號(hào);所述測(cè)試模塊測(cè)試所述隨時(shí)數(shù)生成模塊所生成的隨機(jī)數(shù)所對(duì)應(yīng)的PC機(jī)的軟件升 級(jí)用端口,并判斷該端口是否空閑。
9.根據(jù)權(quán)利要求6至8中任一項(xiàng)所述的軟件升級(jí)裝置,其特征在于,還包括設(shè)置在所 述PC機(jī)中的版本提取模塊及設(shè)置在所述待升級(jí)設(shè)備中的版本驗(yàn)證模塊;所述版本提取模 塊用于提取所述升級(jí)文件中的版本信息,并通過所述服務(wù)端通訊模塊將所述版本信息傳輸 至所述待升級(jí)設(shè)備;所述版本驗(yàn)證模塊用于驗(yàn)證所述版本信息是否正確。
10.根據(jù)權(quán)利要求9所述的軟件升級(jí)裝置,其特征在于,所述服務(wù)端通訊模塊傳輸升級(jí) 文件時(shí),將所述升級(jí)文件分解為多個(gè)數(shù)據(jù)包分別傳輸。
全文摘要
本發(fā)明公開了一種軟件升級(jí)方法及升級(jí)裝置,所述方法包括待升級(jí)設(shè)備作為客戶端,PC機(jī)作為服務(wù)端,在所述待升級(jí)設(shè)備與所述PC機(jī)之間建立基于socket的網(wǎng)絡(luò)鏈接;所述PC機(jī)將升級(jí)文件通過所述基于socket的網(wǎng)絡(luò)鏈接傳輸至所述待升級(jí)設(shè)備;所述待升級(jí)設(shè)備接收所述升級(jí)文件,并更新其程序存儲(chǔ)器。本發(fā)明所述軟件升級(jí)方法基于socket編程,將待升級(jí)設(shè)備作為客戶端,實(shí)現(xiàn)多個(gè)客戶端通過網(wǎng)絡(luò)進(jìn)行軟件升級(jí),提高了軟件升級(jí)的效率。
文檔編號(hào)H04L29/08GK101820447SQ20101014031
公開日2010年9月1日 申請(qǐng)日期2010年3月31日 優(yōu)先權(quán)日2010年3月31日
發(fā)明者李鐵柱 申請(qǐng)人:青島海信寬帶多媒體技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1