一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法及裝置,涉及嵌入式技術(shù),所述方法包括:嵌入式系統(tǒng)獲取適用于特定客戶的配置參數(shù),并保存至嵌入式系統(tǒng)的定制參數(shù)分區(qū);嵌入式系統(tǒng)獲取適用于不同客戶的通用軟件版本,并保存至嵌入式系統(tǒng)的通用分區(qū);嵌入式系統(tǒng)讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。本發(fā)明實(shí)現(xiàn)一個(gè)軟件版本適用于不同客戶定制的情形。
【專利說明】—種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及嵌入式技術(shù),特別涉及一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法及相關(guān)
>J-U ρ?α裝直。
【背景技術(shù)】
[0002]嵌入式系統(tǒng)是指用于執(zhí)行獨(dú)立功能的專用計(jì)算機(jī)系統(tǒng)。它包括微處理器、定時(shí)器、微控制器、存儲(chǔ)器、傳感器等一系列微電子芯片與器件,以及嵌入在存儲(chǔ)器中的微型操作系統(tǒng)、控制應(yīng)用軟件,實(shí)現(xiàn)諸如實(shí)時(shí)控制、監(jiān)視、管理、移動(dòng)計(jì)算、數(shù)據(jù)處理等各種自動(dòng)化處理任務(wù)。
[0003]嵌入式系統(tǒng)以應(yīng)用為中心,以微電子技術(shù)、控制技術(shù)、計(jì)算機(jī)技術(shù)和通訊技術(shù)為基礎(chǔ),強(qiáng)調(diào)硬件軟件的協(xié)同性與整合性,軟件與硬件可剪裁,以滿足系統(tǒng)對(duì)功能、成本、體積和功耗等要求。
[0004]嵌入式軟件廣泛應(yīng)用于國防、工控、家用、商用、辦公、醫(yī)療等領(lǐng)域,如常見的移動(dòng)電話、掌上電腦、數(shù)碼相機(jī)、機(jī)頂盒、MP3等都是用嵌入式軟件技術(shù)對(duì)傳統(tǒng)產(chǎn)品進(jìn)行智能化改造的結(jié)果。
[0005]在具體實(shí)施過程中,嵌入式系統(tǒng)經(jīng)常需要根據(jù)不同客戶的需求進(jìn)行定制,主要涉及了參數(shù)配置以及資源文件和各應(yīng)用與服務(wù)的安裝,但普遍的定制方式都是通過代碼區(qū)另Ij,需要通過獨(dú)立編譯版本完成。這種方式主要存在以下幾個(gè)問題:
[0006]1、需要獨(dú)立編譯軟件版本;
[0007]2、因軟件版本不同,版本差異之處不清晰,因而需要全面測試;
[0008]3、因上述兩個(gè)問題的存在,需要引入的項(xiàng)目管理/需求/軟件研發(fā)/測試/生產(chǎn)等各環(huán)節(jié)的工作,無法快速的完成產(chǎn)品設(shè)計(jì)。
【發(fā)明內(nèi)容】
[0009]本發(fā)明的目的在于提供一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法及裝置,能更好地解決嵌入式應(yīng)用的快速實(shí)現(xiàn)問題。
[0010]根據(jù)本發(fā)明的一個(gè)方面,提供了一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法,包括:
[0011]嵌入式系統(tǒng)獲取適用于特定客戶的配置參數(shù),并保存至嵌入式系統(tǒng)的定制參數(shù)分區(qū);
[0012]嵌入式系統(tǒng)獲取適用于不同客戶的通用軟件版本,并保存至嵌入式系統(tǒng)的通用分區(qū);
[0013]嵌入式系統(tǒng)讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。
[0014]優(yōu)選地,嵌入式系統(tǒng)將配置參數(shù)分別寫入到通用軟件版本的相應(yīng)子程序中,使相應(yīng)子程序完成參數(shù)配置。
[0015]優(yōu)選地,當(dāng)所述相應(yīng)子程序完成參數(shù)配置后,所述嵌入式系統(tǒng)生成并保存用于指示配置參數(shù)已完成配置的標(biāo)志位。
[0016]優(yōu)選地,所述嵌入式系統(tǒng)通過讀取所述用于指示配置參數(shù)已配置完成的標(biāo)志位,啟動(dòng)相應(yīng)子程序,使相應(yīng)子程序的特性按照所述配置參數(shù)生效。
[0017]優(yōu)選地,若所述嵌入式系統(tǒng)未讀取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位,則讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并通過把所讀取的配置參數(shù)寫入相應(yīng)子程序,完成參數(shù)配置,以生成用于指示配置參數(shù)已配置完成的標(biāo)志位。
[0018]優(yōu)選地,當(dāng)所述通用軟件版本包括多個(gè)子程序時(shí),每個(gè)子程序在完成相應(yīng)的參數(shù)配置后,所述嵌入式系統(tǒng)生成并保存用于指示該子程序的配置參數(shù)已完成配置的標(biāo)志位。
[0019]根據(jù)本發(fā)明的另一方面,提供了一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)裝置,包括:
[0020]應(yīng)用獲取單元,用于獲取適用于特定客戶的配置參數(shù),并保存至定制參數(shù)分區(qū),獲取適用于不同客戶的通用軟件版本,并保存至通用分區(qū);
[0021]特性生效單元,用于讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。
[0022]優(yōu)選地,所述特性生效單元將配置參數(shù)分別寫入到通用軟件版本的相應(yīng)子程序中,使相應(yīng)子程序完成參數(shù)配置。
[0023]優(yōu)選地,還包括:
[0024]標(biāo)志位生成單元,用于當(dāng)所述相應(yīng)子程序完成參數(shù)配置后,生成并保存用于指示配置參數(shù)已完成配置的標(biāo)志位。
[0025]優(yōu)選地,所述特性生效單元通過讀取所述用于指示配置參數(shù)已配置完成的標(biāo)志位,啟動(dòng)相應(yīng)子程序,使相應(yīng)子程序的特性按照所述配置參數(shù)生效,并在未讀取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位時(shí),讀取所述定制參數(shù)分區(qū)中的配置參數(shù),通過把所讀取的配置參數(shù)寫入相應(yīng)子程序,完成參數(shù)配置,以生成用于指示配置參數(shù)已配置完成的標(biāo)志位。
[0026]與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于:
[0027]本發(fā)明實(shí)現(xiàn)了通過在嵌入式系統(tǒng)的運(yùn)行階段,在通用軟件版本中配置特定客戶的配置參數(shù),滿足特定客戶的定制需求,從而快速實(shí)現(xiàn)了嵌入式應(yīng)用。
【專利附圖】
【附圖說明】
[0028]圖1是本發(fā)明實(shí)施例提供的可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法原理框圖;
[0029]圖2是本發(fā)明實(shí)施例提供的配置參數(shù)的存在方式示意圖;
[0030]圖3是本發(fā)明實(shí)施例提供的嵌入式應(yīng)用的版本構(gòu)成示意圖;
[0031]圖4是本發(fā)明實(shí)施例提供的可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)裝置結(jié)構(gòu)圖;
[0032]圖5是本發(fā)明實(shí)施例提供的參數(shù)準(zhǔn)備過程示意圖;
[0033]圖6是本發(fā)明實(shí)施例提供的定制參數(shù)分區(qū)內(nèi)容的可替換性示意圖;
[0034]圖7是本發(fā)明實(shí)施例提供的開機(jī)過程中配置參數(shù)讀取并生效至通用軟件版本的對(duì)應(yīng)模塊的示意圖;
[0035]圖8是本發(fā)明實(shí)施例提供的開機(jī)過程的參數(shù)生效流程圖;
[0036]圖9是本發(fā)明實(shí)施例提供的在軟件開發(fā)流程上形成的效率提升流程圖。
【具體實(shí)施方式】
[0037]以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
[0038]圖1是本發(fā)明實(shí)施例提供的可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法原理框圖,如圖1所示,步驟包括:
[0039]步驟101、嵌入式系統(tǒng)獲取適用于特定客戶的配置參數(shù),并保存至嵌入式系統(tǒng)的定制參數(shù)分區(qū)。
[0040]步驟102、嵌入式系統(tǒng)獲取適用于不同客戶的通用軟件版本,并保存至嵌入式系統(tǒng)的通用分區(qū)。
[0041]在開發(fā)適用于特定客戶的配置參數(shù)和適用于不同客戶的通用軟件版本之前,需要做好如下準(zhǔn)備工作:
[0042]1、收集和整理客戶需求,并進(jìn)行特性歸納。
[0043]不同客戶的需求原本是零散的,通過收集可以匯總需求,得到需要面對(duì)的所有客戶的需求的集合。
[0044]通過整理和歸納,發(fā)掘出不同客戶需求的異同。對(duì)多個(gè)客戶的需求,進(jìn)行整理和歸納時(shí),可按特性來歸納這些需求,比如A客戶要求瀏覽器主頁是www.A.com,而B客戶要求瀏覽器主頁是www.B.com,則可以歸納到瀏覽器主頁特性。
[0045]2、按照歸納的特性,將需求進(jìn)行參數(shù)化表征,并設(shè)計(jì)可配置特性功能模塊或子程序。
[0046]在特性歸納后,按特性將客戶需求進(jìn)行參數(shù)化表征。具體地說,如果客戶需求是某個(gè)具體特性的值的不同,則可以直接將這個(gè)值認(rèn)定為參數(shù),比如上面提及的瀏覽器主頁,每個(gè)客戶是不一樣的,瀏覽器主頁可以作為字符串形式的參數(shù),從而完成參數(shù)化表征。如果客戶需求是和某方面相關(guān)的某個(gè)特性要求,但無法體現(xiàn)為某個(gè)特性的值,則可以設(shè)計(jì)用值來表征這個(gè)參數(shù),比如是否允許網(wǎng)絡(luò)漫游,可以設(shè)計(jì)一個(gè)變量,用I表示允許,用O表示不允許,從而完成參數(shù)化表征。
[0047]完成特性的參數(shù)化表征后,對(duì)特性所對(duì)應(yīng)的模塊或子程序進(jìn)行改造,即改造為可按參數(shù)配置的可配置特性功能模塊或子程序,從而能夠完好地處理這些配置參數(shù)。有些模塊或子程序的特性原本就是按參數(shù)配置實(shí)現(xiàn)的,也就是說,從特定區(qū)域讀取的。如果從特定區(qū)域讀取,且對(duì)此區(qū)域無其它設(shè)計(jì)意見,則不需要改造。比如瀏覽器主頁總是從特定配置區(qū)域讀取,形式上可能是注冊(cè)表,可能是數(shù)據(jù)庫,可能是文件等,但位置固定,即特定配置區(qū)域,所以不需要繼續(xù)改造,除非對(duì)這個(gè)區(qū)域不滿意,則可以繼續(xù)改造。有些模塊或子程序的特性原本就不是按參數(shù)配置實(shí)現(xiàn)的,可能是固化的某種實(shí)現(xiàn)方式,比如是否允許網(wǎng)絡(luò)漫游,則可能是軟件設(shè)計(jì)實(shí)現(xiàn)中已經(jīng)固化了的流程,現(xiàn)在因?yàn)榇嬖诖颂匦孕枰磪?shù)進(jìn)行配置的要求,于是需要進(jìn)行改造,若遇到所述配置參數(shù)是“ I ”,則允許網(wǎng)絡(luò)漫游,若遇到所述配置參數(shù)是“ O ”,則不允許網(wǎng)絡(luò)漫游。
[0048]3、按客戶,歸納對(duì)應(yīng)特性的參數(shù),得到對(duì)應(yīng)于特定客戶的參數(shù)集,以便得到所述特定客戶的配置參數(shù)。
[0049]4、將上述可配置特性功能模塊或子程序集成為通用軟件版本。
[0050]5、所述配置參數(shù)可以通過網(wǎng)絡(luò)源下載至嵌入式終端,例如服務(wù)器數(shù)據(jù)庫,如圖2(a)所示,可以從SD卡源中拷貝至嵌入式終端,如圖2 (b)所示,可以通過PC源將參數(shù)寫入嵌入式終端,如圖2 (c)所示。所述網(wǎng)絡(luò)源、SD卡源、PC源等都可能帶來時(shí)間和效率上的消耗,數(shù)據(jù)源的穩(wěn)定性也可能有變化。優(yōu)選地,所述配置參數(shù)可以以分區(qū)形式存在于嵌入式終端,如圖2 (d)所示,例如手機(jī)flash,這樣能夠確保數(shù)據(jù)源的穩(wěn)定性,并提高正確性,也就是說,配置參數(shù)具備數(shù)據(jù)源穩(wěn)定的特點(diǎn)。
[0051]進(jìn)一步說,本發(fā)明為了實(shí)現(xiàn)一個(gè)軟件版本能夠適用于多個(gè)客戶定制的情形,對(duì)系統(tǒng)分區(qū)進(jìn)行改造,即將存儲(chǔ)程序的flash區(qū)域劃分為通用分區(qū)(Boot/system/userdata/fat Partit1n)和定制參數(shù)分區(qū)(customizat1n partit1n),如圖3所不。換句話說,相比普通的嵌入式軟件,本發(fā)明專門設(shè)置了用于存儲(chǔ)定制化參數(shù)的定制參數(shù)分區(qū),使得通用軟件版本使用類似Boot/system/userdata/fat Partit1n的分區(qū),而這個(gè)專門的customizat1n partit1n用于存儲(chǔ)配置參數(shù)。
[0052]步驟103、嵌入式系統(tǒng)讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。
[0053]嵌入式系統(tǒng)將配置參數(shù)分別寫入到通用軟件版本的相應(yīng)子程序中,使相應(yīng)子程序完成參數(shù)配置,然后,生成并保存用于指示配置參數(shù)已完成配置的標(biāo)志位。所述嵌入式系統(tǒng)通過讀取所述用于指示配置參數(shù)已配置完成的標(biāo)志位,啟動(dòng)相應(yīng)子程序,使相應(yīng)子程序的特性按照所述配置參數(shù)生效。若所述嵌入式系統(tǒng)未讀取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位,則讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并通過把所讀取的配置參數(shù)寫入相應(yīng)子程序,完成參數(shù)配置,以生成用于指示配置參數(shù)已配置完成的標(biāo)志位。進(jìn)一步說,在嵌入式系統(tǒng)啟動(dòng)期間,嵌入式系統(tǒng)獲取位于定制參數(shù)分區(qū)或通用分區(qū)中的用于指示參數(shù)配置情況的標(biāo)志位,并根據(jù)所述標(biāo)志位,判斷是否進(jìn)行參數(shù)配置。當(dāng)需要進(jìn)行參數(shù)配置時(shí),嵌入式系統(tǒng)按照不同啟動(dòng)階段,從所述定制參數(shù)分區(qū)中依次讀取相應(yīng)的配置參數(shù),然后將所讀取的配置參數(shù)寫入所述通用軟件版本中對(duì)應(yīng)的可配置特性功能模塊或子程序。
[0054]進(jìn)一步地,當(dāng)所述通用軟件版本包括多個(gè)子程序時(shí),每個(gè)子程序在完成相應(yīng)的參數(shù)配置后,所述嵌入式系統(tǒng)可以生成并保存用于指示該子程序的配置參數(shù)已完成配置的標(biāo)志位,這樣,通過每個(gè)子程序的標(biāo)志位,既能夠快速定位未完成參數(shù)配置的子程序,又在該子程序?qū)?yīng)的配置參數(shù)進(jìn)行更新時(shí),僅更新該子程序的配置參數(shù)即可,而無需對(duì)全部子程序進(jìn)行配置參數(shù)的更新,節(jié)省了參數(shù)配置的時(shí)間。
[0055]圖4是本發(fā)明實(shí)施例提供的可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)裝置結(jié)構(gòu)圖,如圖4所示,包括應(yīng)用獲取單元、特性生效單元、標(biāo)志位生成單元,其中:
[0056]所述應(yīng)用獲取單元用于獲取適用于特定客戶的配置參數(shù),并保存至定制參數(shù)分區(qū),獲取適用于不同客戶的通用軟件版本,并保存至通用分區(qū)。
[0057]配置參數(shù)準(zhǔn)備過程以如圖5為例進(jìn)行說明,如圖5所示,通過對(duì)零散客戶的需求進(jìn)行收集、按特性歸納客戶的需求、按特性進(jìn)行客戶需求的參數(shù)化表征、將參數(shù)歸整為特定客戶的參數(shù)集、按可配置特性集成為通用軟件版本等準(zhǔn)備工作。在完成準(zhǔn)備工作后,能夠得到通用軟件版本需要集成的各個(gè)可配置特性功能模塊或子程序的實(shí)現(xiàn)依據(jù),將這些特性對(duì)應(yīng)的各個(gè)可配置特性功能模塊或子程序都實(shí)現(xiàn),并按如圖3所示的分區(qū)劃分結(jié)果,進(jìn)行軟件編譯,生成通用軟件版本,也就是boot/Boot/system/userdata/fat分區(qū)的內(nèi)容;同時(shí)根據(jù)準(zhǔn)備工作后得到的按客戶規(guī)整的參數(shù)集,參數(shù)集可以為xml/數(shù)據(jù)庫/配置文件等各種形式,將這些參數(shù)集按如圖3所示的分區(qū)劃分結(jié)果,通過軟件編譯,得到customizat1npartit1n 的內(nèi)容。
[0058]準(zhǔn)備工作結(jié)束后,最終得到一個(gè)通用軟件版本,以及多個(gè)客戶的定制參數(shù)分區(qū)文件,如圖6所示,該圖說明了 Customizat1n Parti1n內(nèi)容的可替換性。所有版本都公用Boot/system/userdata/fat Partit1n,這是通用軟件的內(nèi)容。針對(duì)不同的客戶的版本構(gòu)成方式,可以看到不同的客戶擁有不同的Customizat1n Partit1n的內(nèi)容,分別是各個(gè)客戶自己的配置參數(shù)。一個(gè)完整的版本包括通用分區(qū)和定制參數(shù)分區(qū)。
[0059]接著,通過利用下載工具等手段,可以將通用分區(qū)內(nèi)容和定制參數(shù)分區(qū)內(nèi)容下載到例如手機(jī)等嵌入式終端中。本發(fā)明中客戶的配置參數(shù)存儲(chǔ)在獨(dú)立的分區(qū)中,為替換提供了可行性和便捷行,因而可以為不同的客戶可通過制作不同的定制參數(shù)分區(qū),然后將配置參數(shù)導(dǎo)入嵌入式終端的定制參數(shù)分區(qū),從而提高嵌入式應(yīng)用的實(shí)施效率。
[0060]所述特性生效單元用于讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。
[0061]所述特性生效單元將配置參數(shù)分別寫入到通用軟件版本的相應(yīng)子程序中,使相應(yīng)子程序完成參數(shù)配置。
[0062]所述標(biāo)志位生成單元用于當(dāng)所述相應(yīng)子程序完成參數(shù)配置后,生成并保存用于指示配置參數(shù)已完成配置的標(biāo)志位,進(jìn)一步地,當(dāng)所述通用軟件版本包括多個(gè)子程序時(shí),每個(gè)子程序在完成相應(yīng)的參數(shù)配置后,所述標(biāo)志位生成單元可以生成并保存用于指示該子程序的配置參數(shù)已完成配置的標(biāo)志位,從而快速定位未完成參數(shù)配置的子程序,并節(jié)省參數(shù)配置的時(shí)間。
[0063]所述特性生效單元通過讀取所述用于指示配置參數(shù)已配置完成的標(biāo)志位,啟動(dòng)相應(yīng)子程序,使相應(yīng)子程序的特性按照所述配置參數(shù)生效,并在未讀取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位時(shí),讀取所述定制參數(shù)分區(qū)中的配置參數(shù),通過把所讀取的配置參數(shù)寫入相應(yīng)子程序,完成參數(shù)配置,以生成用于指示配置參數(shù)已配置完成的標(biāo)志位。
[0064]本發(fā)明在嵌入式系統(tǒng)初始化過程中,從定制參數(shù)分區(qū)讀取配置參數(shù),然后寫入到版本軟件中的對(duì)應(yīng)特性的各個(gè)可配置特性功能模塊或子程序中,完成參數(shù)配置生效工作。這個(gè)過程采用的如圖7所示的方式。由圖7可以看到,首先從客戶的定制參數(shù)分區(qū)讀取某個(gè)特性的配置參數(shù),然后依據(jù)圖5中提供的通用軟件版本各個(gè)可配置特性功能模塊或子程序的軟件設(shè)計(jì)原理,找到該特性對(duì)應(yīng)的可配置特性功能模塊或子程序,最后將所述配置參數(shù)寫入所找到的可配置特性功能模塊或子程序所使用的參數(shù)位置。
[0065]客戶可以使用多種方式觸發(fā)客戶的配置參數(shù)更新到通用軟件版本,比如通過操作終端上的菜單觸發(fā),比如通過終端連接PC,由PC發(fā)送命令觸發(fā)等。考慮到終端更新參數(shù)是必須的,且一次完成后后續(xù)改動(dòng)可能性不大,所以設(shè)計(jì)在開機(jī)流程里進(jìn)行更新,通過標(biāo)志位控制是否更新。圖8是本發(fā)明實(shí)施例提供的開機(jī)過程的參數(shù)生效流程圖,如圖8所示,步驟包括:
[0066]步驟1、按電源鍵,進(jìn)行開機(jī),執(zhí)行開機(jī)啟動(dòng)過程。
[0067]步驟2、操作系統(tǒng)做準(zhǔn)備過程。
[0068]步驟3、讀取用于確定配置參數(shù)是否完成配置的標(biāo)志位,這個(gè)標(biāo)志位的存儲(chǔ)位置可以為通用分區(qū),也可以為定制參數(shù)分區(qū)。
[0069]步驟4、如果所述標(biāo)志位為真,即獲取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位,則執(zhí)行步驟8,如果為假,即未獲取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位,則執(zhí)行步驟5。
[0070]步驟5、從參數(shù)定制分區(qū)讀取配置參數(shù),將所述配置參數(shù)寫入通用軟件版本對(duì)應(yīng)特性的模塊或子程序中。
[0071]步驟6、寫入完成后,將所述標(biāo)志位更改為真。
[0072]步驟7、觸發(fā)重新啟動(dòng),該步驟也可省略,直接執(zhí)行步驟8。
[0073]步驟8、各個(gè)可配置特性功能模塊或子程序的特性已完成參數(shù)配置,按特性生效方式,啟動(dòng)相應(yīng)可配置特性功能模塊或子程序,進(jìn)行模塊特性的生效,即使相應(yīng)子程序的特性按照所述配置參數(shù)生效。
[0074]步驟9、開機(jī)完畢。
[0075]從上面流程可以看到,依據(jù)標(biāo)志位,判定是否需要將配置參數(shù)從定制參數(shù)分區(qū)讀取生效到通用軟件版本中。具體地說,利用所述標(biāo)志位,控制并實(shí)現(xiàn)一次參數(shù)配置后,其后的開機(jī)不再進(jìn)行多次配置,而是直接利用已配置好的參數(shù)進(jìn)行生效,提高了開機(jī)效率。
[0076]如果客戶需要使用新的配置參數(shù),只需要更改所述標(biāo)志位為O就可以觸發(fā)新一輪的參數(shù)配置過程。在使用開機(jī)流程更新配置參數(shù)的前提下,客戶觸發(fā)更改所述標(biāo)志位為O的方式,也可以有多種方式,比如通過提供客戶界面菜單,讓客戶自行操作的方式,比如通過嵌入式設(shè)備連接PC的方式,在PC端更改,不限于這幾種方式。本實(shí)施例中,在定制參數(shù)分區(qū)中默認(rèn)這個(gè)標(biāo)志是0,因而如果重新下載一個(gè)新的配置參數(shù)也能通過開機(jī)立即生效。
[0077]本發(fā)明能夠針對(duì)某個(gè)硬件配置下的項(xiàng)目開發(fā)通用軟件版本,通過分區(qū)來配置參數(shù),實(shí)現(xiàn)一個(gè)通用軟件版本針對(duì)多個(gè)客戶定制,具體步驟包括:
[0078]步驟1、設(shè)計(jì)嵌入式終端的分區(qū),主要是根據(jù)實(shí)際需要設(shè)定Customizat1nPartit1n分區(qū)的大小。
[0079]步驟2、進(jìn)行需求收集、特性歸納、參數(shù)表征、參數(shù)歸整、特性集成等準(zhǔn)備工作,得到各客戶的參數(shù)集和通用軟件版本的各個(gè)可配置特性功能模塊或子程序設(shè)計(jì)。
[0080]步驟3、依據(jù)步驟2得到的通用軟件版本各模塊或子程序設(shè)計(jì),開發(fā)通用軟件版本,并存放在步驟I設(shè)計(jì)得到的Boot/system/userdata/fat Partit1n分區(qū)里,確保通用軟件版本的基本質(zhì)量,需要全面測試所有的基本功能。通用軟件版本的版本功能具備配置參數(shù)可從Customizat1n Partit1n分區(qū)生效的能力。
[0081]步驟4、依據(jù)步驟2得到的參數(shù)集制作得到各具體客戶的配置參數(shù),并存放在步驟I 得到的 Customizat1n Partit1n 分區(qū)里。
[0082]步驟5、依據(jù)步驟2得到的通用軟件版本的各個(gè)可配置特性功能模塊或子程序的特性,設(shè)計(jì)專門的測試用例,以便覆蓋所有與配置參數(shù)相關(guān)的功能。
[0083]步驟6、根據(jù)步驟3和步驟4的結(jié)果,得到一個(gè)完整版本,并測試,重點(diǎn)針對(duì)步驟5的結(jié)果,測試參數(shù)配置相關(guān)的定制內(nèi)容。若發(fā)現(xiàn)問題,則進(jìn)行軟件修改,以確認(rèn)通用軟件版本的可配置特性滿足要求,并且保障版本質(zhì)量。
[0084]步驟7、有新的客戶定制需求后,整理得到新客戶的參數(shù)集。取步驟5中的成熟的通用軟件版本,發(fā)布完整版本進(jìn)行測試,僅需要確認(rèn)步驟5中的各個(gè)用例都良好執(zhí)行,沒有問題,且參數(shù)配置的結(jié)果和原始需求描述一致即可。
[0085]多次執(zhí)行以上步驟7,能夠減少軟件版本發(fā)布制作環(huán)節(jié),減輕測試環(huán)節(jié)負(fù)擔(dān),這兩個(gè)環(huán)節(jié)能夠明顯地減少人力和資源的消耗。
[0086]圖9是本發(fā)明實(shí)施例提供的在軟件開發(fā)流程上形成的效率提升流程圖,如圖9(a)所示,原本每個(gè)客戶版本都需要全面測試基本功能和定制需求功能,而使用本方案后,只要統(tǒng)一一次測試確認(rèn)基本版本的版本質(zhì)量,而后僅針對(duì)定制需求進(jìn)行測試即可,如圖9 (b)所示。本發(fā)明通過多個(gè)客戶統(tǒng)一立項(xiàng)來減少項(xiàng)目立項(xiàng)個(gè)數(shù),通過歸納整理多個(gè)客戶之間的需求差異得到規(guī)范化的需求規(guī)格書的填寫內(nèi)容,加速了需求開發(fā)過程。
[0087]其中,本發(fā)明在產(chǎn)品生產(chǎn)過程,多個(gè)客戶的定制項(xiàng)目可以使用同一通用軟件版本,確保硬件質(zhì)量,而后再更新客戶的定制參數(shù)分區(qū),通過重新啟動(dòng)就能得到客戶需要的版本。
[0088]其中,本發(fā)明在測試用例設(shè)計(jì)過程中,各項(xiàng)目差異點(diǎn)明確而統(tǒng)一,所需要經(jīng)歷的測試重點(diǎn)十分清晰,根據(jù)配置參數(shù)分析影響面,設(shè)計(jì)測試用例,即針對(duì)所有可配置的參數(shù)項(xiàng),設(shè)計(jì)具體的測試用例。由于定制參數(shù)非常明確,因而便于得到完整的定制需求測試用例,這些用例能足以涵蓋這些參數(shù)項(xiàng)可能帶來的影響,在新增一個(gè)客戶的時(shí)候,項(xiàng)目的測試環(huán)節(jié)的消耗會(huì)很少,僅需要對(duì)配置參數(shù)相關(guān)的定制用例進(jìn)行獨(dú)立測試。
[0089]綜上所述,本發(fā)明具有以下技術(shù)效果:
[0090]1、本發(fā)明將客戶的配置參數(shù)存儲(chǔ)在獨(dú)立的定制參數(shù)分區(qū)中,為替換提供了可行性和便捷行,因而針對(duì)不同客戶的需求,可通過制作不同的定制參數(shù)分區(qū)內(nèi)容,而后導(dǎo)入嵌入式終端的方法來實(shí)現(xiàn),具有更高的實(shí)施效率。
[0091]2、本發(fā)明將客戶的配置參數(shù)存儲(chǔ)在獨(dú)立的定制參數(shù)分區(qū)中,保證了分區(qū)的數(shù)據(jù)源的穩(wěn)定性,相比從網(wǎng)絡(luò)導(dǎo)入和從Sd或是PC端拷貝到嵌入式終端,具有數(shù)據(jù)源穩(wěn)定,不易出錯(cuò)的優(yōu)點(diǎn)。
[0092]3、本發(fā)明的通用分區(qū)和定制參數(shù)分區(qū)分別存在,可以獨(dú)立發(fā)布通用軟件版本,確保通用軟件版本的質(zhì)量,單獨(dú)發(fā)布配置參數(shù),按分區(qū)下載后進(jìn)行使用,只需保障通用軟件版本的產(chǎn)品質(zhì)量,比以往分別保障各個(gè)軟件版本的質(zhì)量節(jié)省了項(xiàng)目管理的精力。
[0093]4、本發(fā)明明確了差異化的配置參數(shù)放置在定制參數(shù)分區(qū),從而使各個(gè)客戶的需求差異清晰化,因而針對(duì)這些差異,在項(xiàng)目運(yùn)作過程中,促進(jìn)了測試資源的節(jié)約,保障了軟件質(zhì)量。
[0094]5、本發(fā)明在軟件開發(fā)過程中,避免了頻繁的版本修改過程,避免了頻繁的版本制作和發(fā)布流程。
[0095]6、本發(fā)明在軟件自測過程中,軟件實(shí)現(xiàn)能清晰各項(xiàng)目的差異點(diǎn),即參數(shù),因而軟件自測和復(fù)測可以一起進(jìn)行,能夠雙重確保項(xiàng)目的功能完好。
[0096]7、本發(fā)明在軟件測試過程中,因良好地設(shè)計(jì)了測試用例,因此最終在新增定制項(xiàng)目的情況下僅執(zhí)行定制需求的測試就能完好保障整體產(chǎn)品質(zhì)量,測試人力等資源消耗就很少。
[0097]盡管上文對(duì)本發(fā)明進(jìn)行了詳細(xì)說明,但是本發(fā)明不限于此,本【技術(shù)領(lǐng)域】技術(shù)人員可以根據(jù)本發(fā)明的原理進(jìn)行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應(yīng)當(dāng)理解為落入本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)方法,其特征在于,包括: 嵌入式系統(tǒng)獲取適用于特定客戶的配置參數(shù),并保存至嵌入式系統(tǒng)的定制參數(shù)分區(qū); 嵌入式系統(tǒng)獲取適用于不同客戶的通用軟件版本,并保存至嵌入式系統(tǒng)的通用分區(qū); 嵌入式系統(tǒng)讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,嵌入式系統(tǒng)將配置參數(shù)分別寫入到通用軟件版本的相應(yīng)子程序中,使相應(yīng)子程序完成參數(shù)配置。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,當(dāng)所述相應(yīng)子程序完成參數(shù)配置后,所述嵌入式系統(tǒng)生成并保存用于指示配置參數(shù)已完成配置的標(biāo)志位。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述嵌入式系統(tǒng)通過讀取所述用于指示配置參數(shù)已配置完成的標(biāo)志位,啟動(dòng)相應(yīng)子程序,使相應(yīng)子程序的特性按照所述配置參數(shù)生效。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,若所述嵌入式系統(tǒng)未讀取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位,則讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并通過把所讀取的配置參數(shù)寫入相應(yīng)子程序,完成參數(shù)配置,以生成用于指示配置參數(shù)已配置完成的標(biāo)志位。
6.根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)所述通用軟件版本包括多個(gè)子程序時(shí),每個(gè)子程序在完成相應(yīng)的參數(shù)配置后,所述嵌入式系統(tǒng)生成并保存用于指示該子程序的配置參數(shù)已完成配置的標(biāo)志位。
7.—種可配置參數(shù)的嵌入式應(yīng)用實(shí)現(xiàn)裝置,其特征在于,包括: 應(yīng)用獲取單元,用于獲取適用于特定客戶的配置參數(shù),并保存至定制參數(shù)分區(qū),獲取適用于不同客戶的通用軟件版本,并保存至通用分區(qū); 特性生效單元,用于讀取所述定制參數(shù)分區(qū)中的配置參數(shù),并將所讀取的配置參數(shù)寫入所述通用分區(qū)中的通用軟件版本。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述特性生效單元將配置參數(shù)分別寫入到通用軟件版本的相應(yīng)子程序中,使相應(yīng)子程序完成參數(shù)配置。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,還包括: 標(biāo)志位生成單元,用于當(dāng)所述相應(yīng)子程序完成參數(shù)配置后,生成并保存用于指示配置參數(shù)已完成配置的標(biāo)志位。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述特性生效單元通過讀取所述用于指示配置參數(shù)已配置完成的標(biāo)志位,啟動(dòng)相應(yīng)子程序,使相應(yīng)子程序的特性按照所述配置參數(shù)生效,并在未讀取到所述用于指示配置參數(shù)已配置完成的標(biāo)志位時(shí),讀取所述定制參數(shù)分區(qū)中的配置參數(shù),通過把所讀取的配置參數(shù)寫入相應(yīng)子程序,完成參數(shù)配置,以生成用于指示配置參數(shù)已配置完成的標(biāo)志位。
【文檔編號(hào)】G06F9/44GK104252342SQ201310261228
【公開日】2014年12月31日 申請(qǐng)日期:2013年6月27日 優(yōu)先權(quán)日:2013年6月27日
【發(fā)明者】陳喜, 孫毅軍, 李虎軍 申請(qǐng)人:中興通訊股份有限公司