本發(fā)明涉及軟件管理技術(shù)領(lǐng)域,尤其涉及一種軟件模塊的管理方法及系統(tǒng)。
背景技術(shù):
隨著國內(nèi)電子支付市場和支付技術(shù)的發(fā)展,支付終端的軟件系統(tǒng)也日益復(fù)雜。目前的支付終端,大都使用了基于Linux甚至Android的復(fù)雜操作系統(tǒng),并支持包括IC卡、磁卡、射頻卡、各種通訊方式等多種外設(shè)驅(qū)動,并實現(xiàn)了GUI、設(shè)備服務(wù)、管理以及多應(yīng)用等多種軟件功能。各種軟件的發(fā)展,使得軟件管理也成為了急需解決的問題。
公開號為CN 103746840 A的中國專利提出了一種網(wǎng)絡(luò)設(shè)備軟件版本信息自動核對方法,包括:將被測設(shè)備和主控計算機通過以太網(wǎng)相連,并在主控計算機上運行主控程序;被測設(shè)備運行設(shè)備發(fā)現(xiàn)模塊客戶端,掃描本機基本信息并上報主控程序;主控程序解析被測設(shè)備上報的本機基本信息、針對每個被測設(shè)備生成創(chuàng)建待校驗設(shè)備對象,接受用戶輸入的標準軟件版本信息;主控計算機根據(jù)用戶自定義的配置文件生成校驗策略,獲取被測設(shè)備軟件版本信息并與用戶輸入的標準軟件版本信息進行比對,生成校驗報告。該方案雖然實現(xiàn)了對軟件版本信息的檢測,但其需要與主控計算機通通訊連接,操作十分不便。另外,該方案是針對整個系統(tǒng)軟件的管理,而一般情況下,各種軟件功能由于涉及不同開發(fā)部門,升級頻率也不同,所以難以統(tǒng)一管理。基于這個特性,通常把相關(guān)一類軟件做成軟件模塊統(tǒng)一管理。比如:打印驅(qū)動、IC卡驅(qū)動等。常用的維護軟件模塊的方式是將各軟件模塊做成軟件包,比如:ipkg格式的軟件包。這些軟件包通過版本信息進行維護。這樣就實現(xiàn)了以軟件模塊為單位對軟件進行維護。
對每個軟件模塊單獨管理維護之后,可以通過升級某個或幾個軟件模塊實現(xiàn)終端上的軟件更新,而不是升級整個系統(tǒng)的軟件。這樣減少了軟件升級的數(shù)據(jù)量,方便了維護。然而軟件維護單位變小也帶了了管理上的問題,一旦在客戶手中的機器出問題時,必須要讓客戶或客服人員將所有軟件模塊的版本信息回送回來,才能進行相應(yīng)分析。而支付終端上有幾十個甚至上百個軟件模塊,這樣給客戶或客服人員造成了許多不便。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:提供一種軟件模塊的管理方法及系統(tǒng),能夠獲取一個終端各軟件模塊實際的版本信息。
為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
一種軟件模塊的管理方法,包括:
上傳系統(tǒng)軟件的數(shù)據(jù)包,所述系統(tǒng)軟件包括至少兩個的軟件模塊,所述數(shù)據(jù)包包括各所述軟件模塊的軟件包、系統(tǒng)軟件的版本信息、比對文件以及校驗比對程序,所述比對文件包括各所述軟件模塊的名稱以及對應(yīng)的版本號,所述校驗比對程序用于比對文件上的軟件模塊和終端上的軟件模塊是否匹配;
終端獲取所述數(shù)據(jù)包;
終端依據(jù)所述數(shù)據(jù)包中的軟件包進行更新以及安裝所述校驗比對程序;
運行所述校驗比對程序,將比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號進行比對;
若比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號一一匹配,則獲取所述系統(tǒng)軟件的版本信息;
若比對文件中軟件模塊的版本與終端上軟件模塊的版本不匹配,則獲取所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和所述軟件模塊在終端上的版本號。
本發(fā)明提供的另一個技術(shù)方案為:
一種軟件模塊的管理系統(tǒng),包括:
數(shù)據(jù)模塊,用于上傳系統(tǒng)軟件的數(shù)據(jù)包,所述系統(tǒng)軟件包括至少兩個的軟件模塊,所述數(shù)據(jù)包包括各所述軟件模塊的軟件包、系統(tǒng)軟件的版本信息、比對文件以及校驗比對程序,所述比對文件包括各所述軟件模塊的名稱以及對應(yīng)的版本號,所述校驗比對程序用于比對文件上的軟件模塊和終端上的軟件模塊是否匹配;
第一獲取模塊,用于終端獲取所述數(shù)據(jù)包;
更新模塊,用于終端依據(jù)所述數(shù)據(jù)包中的軟件包進行更新以及安裝所述校驗比對程序;
校驗?zāi)K,用于運行所述校驗比對程序,將比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號進行比對;
若比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號一一匹配,則獲取所述系統(tǒng)軟件的版本信息;
若比對文件中軟件模塊的版本與終端上軟件模塊的版本不匹配,則獲取所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和所述軟件模塊在終端上的版本號。
本發(fā)明的有益效果在于:通過在整體軟件的數(shù)據(jù)包中設(shè)置比對文件和校驗比對程序,從而終端進行更新的同時安裝該校驗比對程序。需要對終端上的軟件模塊進行校驗時,運行該校驗比對程序,比對終端上各軟件模塊的版本號與比對文件中各軟件模塊的版本號是否一致,一致則說明該終端所有軟件模塊的版本都符合該系統(tǒng)軟件所要求的版本信息,因此直接獲取系統(tǒng)軟件的版本信息即可,不一致則說明終端上存在與系統(tǒng)軟件的版本不符的軟件模塊,因此除了獲取系統(tǒng)軟件的版本信息,還獲取終端上所有不一致的軟件模塊的名稱和版本號,從而實現(xiàn)快速確定終端上所有軟件模塊信息的功能。
附圖說明
圖1為本發(fā)明實施例的軟件模塊的管理方法的流程圖;
圖2為本發(fā)明實施例的軟件模塊的管理系統(tǒng)的結(jié)構(gòu)示意圖;
圖3為本發(fā)明實施例一的軟件模塊的管理方法的流程圖;
圖4為本發(fā)明實施例二的軟件模塊的管理系統(tǒng)的結(jié)構(gòu)示意圖。
標號說明:
1、數(shù)據(jù)模塊;2、第一獲取模塊;3、更新模塊;4、校驗?zāi)K;41、列表生成模塊;42、第二獲取模塊;43、比對模塊;44、顯示模塊;5、發(fā)送模塊。
具體實施方式
為詳細說明本發(fā)明的技術(shù)內(nèi)容、所實現(xiàn)目的及效果,以下結(jié)合實施方式并配合附圖予以說明。
本發(fā)明最關(guān)鍵的構(gòu)思在于:系統(tǒng)軟件的更新數(shù)據(jù)包中包括比對文件和校驗比對程序,終端更新系統(tǒng)軟件時安裝校驗比對程序,需要校驗時運行校驗比對程序比較判斷終端上的軟件模塊和比對文件上的軟件模塊是否一致,不一致則獲取系統(tǒng)軟件版本信息和不一致的軟件模塊的版本信息。
請參照圖1,本發(fā)明提供:
一種軟件模塊的管理方法,包括:
上傳系統(tǒng)軟件的數(shù)據(jù)包,所述系統(tǒng)軟件包括至少兩個的軟件模塊,所述數(shù)據(jù)包包括各所述軟件模塊的軟件包、系統(tǒng)軟件的版本信息、比對文件以及校驗比對程序,所述比對文件包括各所述軟件模塊的名稱以及對應(yīng)的版本號,所述校驗比對程序用于比對文件上的軟件模塊和終端上的軟件模塊是否匹配;
終端獲取所述數(shù)據(jù)包;
終端依據(jù)所述數(shù)據(jù)包中的軟件包進行更新以及安裝所述校驗比對程序;
運行所述校驗比對程序,將比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號進行比對;
若比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號一一匹配,則獲取所述系統(tǒng)軟件的版本信息;
若比對文件中軟件模塊的版本號與終端上軟件模塊的版本號不匹配,則獲取所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和所述軟件模塊在終端上的版本號。
進一步的,所述比對文件還包括各軟件模塊的發(fā)布日期,各軟件模塊的名稱、版本號和發(fā)布日期對應(yīng)。
從上述描述可知,比對文件除了軟件模塊的名稱和版本號,還包括發(fā)布日期,進一步提高了比對的準確性。在保證效率的情況下,比對文件還可包括其他的能夠?qū)崿F(xiàn)比對確定功能的信息。
進一步的,安裝所述校驗比對程序之后的步驟具體為:
獲取比對文件,生成與所述系統(tǒng)軟件匹配的軟件模塊列表,所述軟件模塊列表包括所述系統(tǒng)軟件包含的各軟件模塊的名稱、版本號和發(fā)布日期;
依據(jù)所述軟件模塊列表,獲取終端上與所述列表中名稱相同的軟件模塊的版本號和發(fā)布日期;
依據(jù)軟件模塊的名稱比較軟件模塊列表中的軟件模塊和終端上的軟件模塊的版本號及發(fā)布日期是否一致;
若一致,則顯示所述系統(tǒng)軟件的版本信息;
若不一致,則顯示終端上所有不一致的軟件模塊的名稱、版本號以及發(fā)布日期。
從上述描述可知,通過生成包含系統(tǒng)軟件所有軟件模塊的軟件模塊列表,再根據(jù)列表一一比對軟件模塊列表上各軟件模塊的信息和終端上軟件模塊的信息,從而能夠得出軟件模塊列表的軟件模塊和終端上的軟件模塊是否一致,進而根據(jù)不同的比對結(jié)果顯示不同的信息。上述比對過程中,比對的是版本號和發(fā)布日期,這樣能夠提高比對結(jié)果的準確性,也可以只比對版本號,即只需要生成包括軟件模塊的名稱和版本號的軟件模塊列表,比對時依據(jù)軟件模塊列表按上述方法一一比對軟件模塊列表中各軟件模塊的版本號和終端上軟件模塊的版本號,這樣能夠加快比對速度。
進一步的,獲取所述系統(tǒng)軟件的版本信息之后,發(fā)送所述系統(tǒng)軟件的版本信息至后臺維護系統(tǒng);獲取所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和所述軟件模塊在終端上的版本號之后,發(fā)送所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和在終端上的版本號至后臺維護系統(tǒng)。
從上述描述可知,得到終端上的軟件模塊信息后,可以直接發(fā)送至后臺維護系統(tǒng),該后臺維護系統(tǒng)一般為生產(chǎn)廠商的維護系統(tǒng),也可以為其他后臺系統(tǒng)。也可以采用非自動化的形式,即人工抄讀該軟件模塊信息。
請參照圖2,本發(fā)明的另一個技術(shù)方案為:
一種軟件模塊的管理系統(tǒng),包括:
數(shù)據(jù)模塊1,用于上傳系統(tǒng)軟件的數(shù)據(jù)包,所述系統(tǒng)軟件包括至少兩個的軟件模塊,所述數(shù)據(jù)包包括各所述軟件模塊的軟件包、系統(tǒng)軟件的版本信息、比對文件以及校驗比對程序,所述比對文件包括各所述軟件模塊的名稱以及對應(yīng)的版本號,所述校驗比對程序用于比對文件上的軟件模塊和終端上的軟件模塊是否匹配;
第一獲取模塊2,用于終端獲取所述數(shù)據(jù)包;
更新模塊3,用于終端依據(jù)所述數(shù)據(jù)包中的軟件包進行更新以及安裝所述校驗比對程序;
校驗?zāi)K4,用于運行所述校驗比對程序,將比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號進行比對;
若比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號一一匹配,則獲取所述系統(tǒng)軟件的版本信息;
若比對文件中軟件模塊的版本號與終端上軟件模塊的版本號不匹配,則獲取所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和所述軟件模塊在終端上的版本號。
進一步的,所述比對文件還包括各軟件模塊的發(fā)布日期,各軟件模塊的名稱、版本號和發(fā)布日期對應(yīng)。
進一步的,所述校驗?zāi)K4包括:
列表生成模塊41,用于獲取比對文件,生成與所述系統(tǒng)軟件匹配的軟件模塊列表,所述軟件模塊列表包括所述系統(tǒng)軟件包含的各軟件模塊的名稱、版本號和發(fā)布日期;
第二獲取模塊42,用于依據(jù)所述軟件模塊列表,獲取終端上與所述列表中名稱相同的軟件模塊的版本號和發(fā)布日期;
比對模塊43,用于依據(jù)軟件模塊的名稱比較軟件模塊列表中的軟件模塊和終端上的軟件模塊的版本號及發(fā)布日期是否一致;
顯示模塊44,用于若一致,則顯示所述系統(tǒng)軟件的版本信息;
若不一致,則顯示終端上所有不一致的軟件模塊的名稱、版本號以及發(fā)布日期。
進一步的,還包括:發(fā)送模塊5,用于獲取所述系統(tǒng)軟件的版本信息之后,發(fā)送所述系統(tǒng)軟件的版本信息至后臺維護系統(tǒng);獲取所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和所述軟件模塊在終端上的版本號之后,發(fā)送所述系統(tǒng)軟件的版本信息以及不匹配的軟件模塊的名稱和在終端上的版本號至后臺維護系統(tǒng)。
請參照圖3,本發(fā)明的實施例一為:
一種軟件模塊的管理方法,包括:
上傳系統(tǒng)軟件的數(shù)據(jù)包,所述系統(tǒng)軟件包括至少兩個的軟件模塊,所述數(shù)據(jù)包包括各所述軟件模塊的軟件包、系統(tǒng)軟件的版本信息、比對文件以及校驗比對程序,所述比對文件包括各所述軟件模塊的名稱、版本號以及發(fā)布日期,所述軟件模塊的名稱、版本號以及發(fā)布日期一一對應(yīng),所述校驗比對程序用于比對文件上的軟件模塊和終端上的軟件模塊是否匹配;例如,比對文件中打印模塊和射頻卡模塊的格式如下:
printer
1.1.5
2015-04-30 15:46
rfcard
1.0.5
2015-04-30 14:52
終端獲取所述數(shù)據(jù)包;
終端依據(jù)所述數(shù)據(jù)包中的軟件包進行更新以及安裝所述校驗比對程序;
運行所述校驗比對程序,獲取比對文件,生成與所述系統(tǒng)軟件匹配的軟件模塊列表,所述軟件模塊列表包括所述系統(tǒng)軟件包含的所有軟件模塊的名稱、版本號和發(fā)布日期;
依據(jù)所述軟件模塊列表,獲取終端上與所述列表中名稱相同的軟件模塊的版本號和發(fā)布日期;
依據(jù)軟件模塊的名稱比較軟件模塊列表中的軟件模塊和終端上的軟件模塊的版本號及發(fā)布日期是否一致;
若一致,則顯示所述系統(tǒng)軟件的版本信息;并發(fā)送所述系統(tǒng)軟件的版本信息至后臺維護系統(tǒng);
若不一致,則顯示終端上所有不一致的軟件模塊的名稱、版本號以及發(fā)布日期;并發(fā)送所述系統(tǒng)軟件的版本信息以及終端上所有不一致的軟件模塊的名稱、版本號和發(fā)布日期至后臺維護系統(tǒng);
例如:系統(tǒng)軟件的版本信息為3,終端上打印模塊和射頻卡模塊的信息如下:
printer
1.2
2016-01-01 14:00
rfcard
1.1.2
2016-03-05 15:00。
與上述比對文件的舉例不一樣,則顯示上述終端上打印模塊和射頻卡模塊的信息,以及系統(tǒng)軟件的版本信息3。這樣,客戶或客服人員只要運行校驗比對程序,就可以獲得終端上所有軟件模塊的信息。如果校驗比對通過,及比對結(jié)果為一致時,只需要告訴廠商系統(tǒng)軟件的版本信息,即系統(tǒng)版本號即可。如果校驗比對不通過,則除了告知廠商系統(tǒng)版本號外,只需要把不匹配的所有軟件模塊版本信息提供給廠商即可,而不需要把所有軟件模塊的信息都提供給廠商。
請參照圖4,本發(fā)明的實施例二為:
一種基于軟件模塊化的軟件包管理系統(tǒng),包括:
數(shù)據(jù)模塊1,用于上傳系統(tǒng)軟件的數(shù)據(jù)包,所述系統(tǒng)軟件包括至少兩個的軟件模塊,所述數(shù)據(jù)包包括各所述軟件模塊的軟件包、系統(tǒng)軟件的版本信息、比對文件以及校驗比對程序,所述比對文件包括各所述軟件模塊的名稱、版本號以及發(fā)布日期,各軟件模塊的名稱、版本號和發(fā)布日期一一對應(yīng),所述校驗比對程序用于比對文件上的軟件模塊和終端上的軟件模塊是否匹配;
第一獲取模塊2,用于終端獲取所述數(shù)據(jù)包;
更新模塊3,用于終端依據(jù)所述數(shù)據(jù)包進行更新以及安裝所述校驗比對程序;
校驗?zāi)K4,用于運行所述校驗比對程序,將比對文件中各軟件模塊的版本號與終端上所有軟件模塊的版本號進行比對;具體的,所述校驗?zāi)K4包括:列表生成模塊41,用于獲取比對文件,生成與所述系統(tǒng)軟件匹配的軟件模塊列表,所述軟件模塊列表包括所述系統(tǒng)軟件包含的所有軟件模塊的名稱、版本號和發(fā)布日期;第二獲取模塊42,用于依據(jù)所述軟件模塊列表,獲取終端上與所述列表中名稱相同的軟件模塊的版本號和發(fā)布日期;比對模塊43,用于依據(jù)軟件模塊的名稱比較軟件模塊列表中的軟件模塊和終端上的軟件模塊的版本號及發(fā)布日期是否一致;顯示模塊44,用于若比對模塊43比對的結(jié)果為一致,則獲取并顯示所述系統(tǒng)軟件的版本信息;若比對模塊43比對的結(jié)果為不一致,則獲取并顯示終端上所有不一致的軟件模塊的名稱、版本號以及發(fā)布日期。
發(fā)送模塊5,用于比對模塊43比對的結(jié)果為一致,則發(fā)送所述系統(tǒng)軟件的版本信息至研發(fā)廠商的后臺維護系統(tǒng),若比對模塊43比對的結(jié)果為一致,則發(fā)送所述系統(tǒng)軟件的版本信息、終端上所有不一致的軟件模塊的名稱、版本號以及發(fā)布日期至所述后臺維護系統(tǒng)。
綜上所述,本發(fā)明提供的軟件模塊的管理方法及系統(tǒng),所有能夠快速確定終端上所有軟件模塊的信息,且不需要將終端上所有軟件模塊的版本信息都回送給廠商,減少了相關(guān)負責人員的工作量。
以上所述僅為本發(fā)明的實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等同變換,或直接或間接運用在相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。