軟件兼容性預(yù)先測(cè)試方法與其系統(tǒng)的制作方法
【專利摘要】一種軟件兼容性預(yù)先測(cè)試方法及其系統(tǒng),該軟件兼容性預(yù)先測(cè)試方法包括以下步驟:提取操作系統(tǒng)的系統(tǒng)與軟件信息;于檢測(cè)到操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試;于判斷進(jìn)行兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中第一復(fù)制系統(tǒng)根據(jù)系統(tǒng)與軟件信息而產(chǎn)生;將更新文件或新軟件安裝于第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng);對(duì)第二復(fù)制系統(tǒng)進(jìn)行兼容性測(cè)試;以及依據(jù)兼容性測(cè)試的結(jié)果來決定是否安裝更新文件或新軟件至操作系統(tǒng),或者切換至第二復(fù)制系統(tǒng)。
【專利說明】軟件兼容性預(yù)先測(cè)試方法與其系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明提供一種軟件兼容性測(cè)試方法,且特別是涉及一種軟件兼容性預(yù)先測(cè)試方法與其系統(tǒng)。
【背景技術(shù)】
[0002]隨著科技的進(jìn)步,目前信息產(chǎn)業(yè)蓬勃發(fā)展。人們?nèi)粘I钪谐3?huì)使用計(jì)算機(jī)裝置或者云端主機(jī),且計(jì)算機(jī)裝置或云端主機(jī)會(huì)具有操作系統(tǒng),以供使用者進(jìn)行通過操作系統(tǒng)操作。然而,在使用者安裝新的軟件至操作系統(tǒng),或者對(duì)操作系統(tǒng)本身或其安裝的軟件進(jìn)行更新后,偶爾會(huì)發(fā)生不兼容的問題,導(dǎo)致部分軟件或操作系統(tǒng)本身產(chǎn)生錯(cuò)誤。
[0003]為了避免上述部分軟件或操作系統(tǒng)本身因?yàn)闆_突不兼容的問題產(chǎn)生錯(cuò)誤,目前的其中一種作法是在安裝新軟件或更新操作系統(tǒng)或軟件的各階段進(jìn)行備份,以在部分軟件或操作系統(tǒng)本身發(fā)生錯(cuò)誤時(shí),可以通過備份的數(shù)據(jù)來還原操作系統(tǒng)。
[0004]全系統(tǒng)快照(snapshot)是一種可以對(duì)整個(gè)操作系統(tǒng)(含安裝于其中的軟件)進(jìn)行系統(tǒng)映像的備份與還原的技術(shù)。然而,隨著備份的次數(shù)增加以及組織備份的數(shù)量增加,全系統(tǒng)快照會(huì)造成儲(chǔ)存空間大量地耗用。
[0005]另外,目前還有一種作法是通過使用者回報(bào)軟件安裝、軟件更新或操作系統(tǒng)更新運(yùn)行時(shí)的相關(guān)信息給相應(yīng)的軟件公司,再由軟件公司進(jìn)行相關(guān)處理。然而,此種作法被動(dòng)地等待問題發(fā)生時(shí),才進(jìn)行數(shù)據(jù)整合,其并未主動(dòng)地發(fā)掘不兼容的問題。
[0006]在信息安全稽核方面,操作系統(tǒng)或者軟件有時(shí)必須更新,以維持信息安全并避免信息安全的隱憂。然而,倘若使用上述全系統(tǒng)快照的方式定期備份,或者于軟件安裝、軟件更新或操作系統(tǒng)更新時(shí)進(jìn)行備份,則將造成儲(chǔ)存空間的耗用隨著時(shí)間成長(zhǎng)。另一方面,倘若不檢測(cè)兼容性,則當(dāng)部分軟件或操作系統(tǒng)發(fā)生錯(cuò)誤時(shí),又會(huì)造成使用者的不便與工作的停擺。
[0007]除此之外,若多個(gè)計(jì)算機(jī)裝置或云端主機(jī)須進(jìn)行軟件安裝、軟件更新或操作系統(tǒng)更新,則信息人員僅能在對(duì)每一個(gè)計(jì)算機(jī)裝置或云端主機(jī)進(jìn)行軟件安裝、軟件更新或操作系統(tǒng)后,才可以得知是否有不兼容的問題。倘若有不兼容的問題,則信息人員還需要通過全系統(tǒng)快照的備份還原操作系統(tǒng),或者通過相關(guān)信息給相應(yīng)的軟件公司,請(qǐng)求軟件公司進(jìn)行處理。因此,當(dāng)多個(gè)計(jì)算機(jī)裝置或云端主機(jī)須進(jìn)行軟件安裝、軟件更新或操作系統(tǒng)更新,此軟件安裝、軟件更新或操作系統(tǒng)更新的工作對(duì)信息人員來說是一個(gè)很大的負(fù)擔(dān)。
【發(fā)明內(nèi)容】
[0008]本發(fā)明實(shí)施例提供一種軟件兼容性預(yù)先測(cè)試方法,此軟件兼容性預(yù)先測(cè)試方法包括:提取(extracting)操作系統(tǒng)的系統(tǒng)與軟件信息;于檢測(cè)到操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試;于判斷進(jìn)行兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中第一復(fù)制系統(tǒng)根據(jù)系統(tǒng)與軟件信息產(chǎn)生;將更新文件或新軟件安裝于第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng);對(duì)第二復(fù)制系統(tǒng)進(jìn)行兼容性測(cè)試;以及依據(jù)兼容性測(cè)試的結(jié)果,決定是否安裝更新文件或新軟件至操作系統(tǒng),或者切換至第二復(fù)制系統(tǒng)。
[0009]本發(fā)明實(shí)施例提供一種軟件兼容性測(cè)試系統(tǒng),此軟件兼容性測(cè)試系統(tǒng)包括計(jì)算機(jī)裝置。計(jì)算機(jī)裝置提取操作系統(tǒng)的系統(tǒng)與軟件信息。計(jì)算機(jī)裝置于檢測(cè)到操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試。計(jì)算機(jī)裝置于判斷進(jìn)行兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中第一復(fù)制系統(tǒng)根據(jù)系統(tǒng)與軟件信息產(chǎn)生。計(jì)算機(jī)裝置將更新文件或新軟件安裝于第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng)。計(jì)算機(jī)裝置對(duì)第二復(fù)制系統(tǒng)進(jìn)行兼容性測(cè)試。計(jì)算機(jī)裝置依據(jù)兼容性測(cè)試的結(jié)果,決定是否安裝更新文件或新軟件至操作系統(tǒng)。
[0010]本發(fā)明實(shí)施例提供一種軟件兼容性測(cè)試系統(tǒng),此軟件兼容性測(cè)試系統(tǒng)包括云端主機(jī)系統(tǒng)。云端主機(jī)系統(tǒng)提取運(yùn)作其上的第一虛擬機(jī)器操作系統(tǒng)的系統(tǒng)與軟件信息。云端主機(jī)系統(tǒng)于檢測(cè)到運(yùn)作其上的第一虛擬機(jī)器的操作系統(tǒng)需要安裝一更新文件或一新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試。云端主機(jī)系統(tǒng)于判斷進(jìn)行兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的第二虛擬機(jī)器,其中第一復(fù)制系統(tǒng)根據(jù)系統(tǒng)與軟件信息產(chǎn)生。云端主機(jī)系統(tǒng)將更新文件或新軟件安裝于第二虛擬機(jī)器的第一復(fù)制系統(tǒng),以產(chǎn)生具有第二復(fù)制系統(tǒng)的第二虛擬機(jī)器。云端主機(jī)系統(tǒng)對(duì)第二復(fù)制系統(tǒng)進(jìn)行兼容性測(cè)試。云端主機(jī)依據(jù)兼容性測(cè)試的結(jié)果,決定是否安裝更新文件或新軟件至第一虛擬機(jī)器的虛擬機(jī)器操作系統(tǒng),或者決定切換至具有第二復(fù)制系統(tǒng)第二虛擬機(jī)器。
[0011]本發(fā)明實(shí)施例提供一種軟件兼容性測(cè)試系統(tǒng),此軟件兼容性測(cè)試系統(tǒng)包括計(jì)算機(jī)裝置與云端主機(jī)系統(tǒng),且云端主機(jī)系統(tǒng)通過因特網(wǎng)連接計(jì)算機(jī)裝置。計(jì)算機(jī)裝置提取操作系統(tǒng)的系統(tǒng)與軟件信息至云端主機(jī)系統(tǒng)。計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)于檢測(cè)到操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試。計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)于判斷進(jìn)行兼容性測(cè)試時(shí),云端主機(jī)系統(tǒng)產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中第一復(fù)制系統(tǒng)根據(jù)計(jì)算機(jī)裝置的系統(tǒng)與軟件信息產(chǎn)生。云端主機(jī)將更新文件或新軟件安裝于第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng)。云端主機(jī)系統(tǒng)對(duì)第二復(fù)制系統(tǒng)進(jìn)行兼容性測(cè)試。計(jì)算機(jī)裝置依據(jù)兼容性測(cè)試的結(jié)果,決定是否安裝更新文件或新軟件至計(jì)算機(jī)裝置的操作系統(tǒng)。
[0012]綜合上所述,本發(fā)明多個(gè)實(shí)施例提供了軟件兼容性預(yù)先測(cè)試方法與其系統(tǒng),其可以在安裝新軟件或更新文件之前預(yù)先地檢測(cè)安裝新軟件或更新文件對(duì)于目前操作系統(tǒng)的兼容性,從而避免在產(chǎn)生不兼容問題后,還要將操作系統(tǒng)進(jìn)行還原的麻煩以及系統(tǒng)無法還原恢復(fù)實(shí)造成的重大損失。
[0013]為使能更進(jìn)一步了解本發(fā)明的特征及技術(shù)內(nèi)容,請(qǐng)參閱以下有關(guān)本發(fā)明的詳細(xì)說明與附圖,但是此等說明與所附圖式僅用來說明本發(fā)明,而非對(duì)本發(fā)明的權(quán)利要求范圍作任何的限制。
【專利附圖】
【附圖說明】
[0014]圖1是本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的流程圖。
[0015]圖2A是本發(fā)明實(shí)施例的計(jì)算機(jī)裝置的方塊圖。
[0016]圖2B是本發(fā)明實(shí)施例的云端主機(jī)系統(tǒng)的方塊圖。
[0017]圖3A與圖3B是本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的示意圖。
[0018]圖4A與圖4B是本發(fā)明另一實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的示意圖。
[0019]圖5是本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試系統(tǒng)的示意圖。
[0020]圖6A與圖6B是本發(fā)明另一實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的示意圖。
[0021]【符號(hào)說明】
[0022]SlOl ?SI 13、S301 ?S306、S401 ?S406、S601 ?S606:步驟流程
[0023]2:計(jì)算機(jī)裝置
[0024]21、211’:處理單元
[0025]22、212’:存儲(chǔ)單元
[0026]23、213’:儲(chǔ)存單元
[0027]24、214’:輸出/輸入單元
[0028]25、215’:通信單元
[0029]2’:云端主機(jī)系統(tǒng)
[0030]21’、451、452:底層監(jiān)控操作系統(tǒng)
[0031]22’、23’:虛擬機(jī)器
[0032]221’:虛擬處理單元
[0033]222’:虛擬存儲(chǔ)單元
[0034]223’:虛擬儲(chǔ)存單元
[0035]224’:虛擬輸出/輸入單元
[0036]225’:虛擬通信單元
[0037]311、312、411、412、611、612:操作系統(tǒng)
[0038]321、421、621:組態(tài)數(shù)據(jù)庫
[0039]331、431、631:資源庫
[0040]341 ?344、441、442、641 ?644:復(fù)制系統(tǒng)
[0041]5:軟件兼容性預(yù)先測(cè)試系統(tǒng)
[0042]51:計(jì)算機(jī)裝置
[0043]52:因特網(wǎng)
[0044]53:云端主機(jī)系統(tǒng)
【具體實(shí)施方式】
[0045]在下文將參看隨附圖式更充分地描述各種例示性實(shí)施例,在隨附圖式中展示一些例示性實(shí)施例。然而,本發(fā)明概念可能以許多不同形式來體現(xiàn),且不應(yīng)解釋為限于本文中所闡述的例示性實(shí)施例。確切而言,提供此等例示性實(shí)施例使得本發(fā)明將為詳盡且完整,且將向本領(lǐng)域的普通技術(shù)人員充分傳達(dá)本發(fā)明概念的范疇。在諸圖式中,可為了清楚而夸示層及區(qū)的大小及相對(duì)大小。類似數(shù)字始終指示類似元件。
[0046]應(yīng)理解,雖然本文中可能使用術(shù)語第一、第二、第三等來描述各種元件,但此等元件不應(yīng)受此等術(shù)語限制。此等術(shù)語乃用以區(qū)分一元件與另一元件。因此,下文論述的第一元件可稱為第二元件而不偏離本發(fā)明概念的教示。如本文中所使用,術(shù)語“或”視實(shí)際情況可能包括相關(guān)聯(lián)的列出項(xiàng)目中的任一者或者多者的所有組合。
[0047]本發(fā)明實(shí)施例提供了一種軟件兼容性預(yù)先測(cè)試方法,此軟件兼容性預(yù)先測(cè)試方法可以自動(dòng)化地預(yù)先檢查在對(duì)目前操作系統(tǒng)安裝新軟件或更新文件后,操作系統(tǒng)與安裝于其中的軟件是否有不兼容的問題,也即可以預(yù)先檢測(cè)新軟件或更新文件對(duì)于目前操作系統(tǒng)的兼容性。通過軟件兼容性預(yù)先測(cè)試方法預(yù)先地檢測(cè)兼容性,信息人員可以依據(jù)檢測(cè)的結(jié)果進(jìn)一步地決定是否安裝新軟件或更新文件。如此,將可以有效地減少用以備份所造成的儲(chǔ)存空間的耗用,以及減輕信息人員對(duì)操作系統(tǒng)進(jìn)行新軟件或更新文件安裝的工作的負(fù)擔(dān)。另外,基于上述的軟件兼容性預(yù)先測(cè)試方法,本發(fā)明實(shí)施例還提供了一種執(zhí)行軟件兼容性預(yù)先測(cè)試方法的軟件兼容性預(yù)先測(cè)試系統(tǒng)。
[0048]請(qǐng)參閱圖1,圖1是本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的流程圖。本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法執(zhí)行于軟件兼容性預(yù)先測(cè)試系統(tǒng),所述軟件兼容性預(yù)先測(cè)試系統(tǒng)可以單純地由計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)實(shí)現(xiàn),或者由計(jì)算機(jī)裝置與云端主機(jī)系統(tǒng)所形成的系統(tǒng)所實(shí)現(xiàn)。
[0049]首先,在步驟SlOl中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)(Hypervisor)判斷是否提取系統(tǒng)與軟件信息,其中系統(tǒng)信息例如是系統(tǒng)版本、系統(tǒng)機(jī)碼、系統(tǒng)相關(guān)設(shè)定信息,而軟件信息例如是應(yīng)用軟件名稱、應(yīng)用軟件版本、應(yīng)用軟件設(shè)定文件等應(yīng)用軟件信息。若判斷要提取系統(tǒng)與軟件信息,則執(zhí)行步驟S102 ;若判斷不要提取系統(tǒng)與軟件信息,則于步驟SlOl等待,等到要提取系統(tǒng)與軟件信息,才執(zhí)行步驟S102。上述是否要提取系統(tǒng)與軟件信息的判斷方式可以通過判斷操作系統(tǒng)的時(shí)間是否到達(dá)特定時(shí)間(也即定時(shí)地提取系統(tǒng)與軟件信息),或者是判斷收到特定指令來提取系統(tǒng)與軟件信息??偠灾景l(fā)明并不限制步驟SlOl的詳細(xì)實(shí)現(xiàn)方式。
[0050]接著,在步驟S102中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)通過軟件代理器(software agent),例如剖析器(parser),提取系統(tǒng)與軟件信息。另外,本發(fā)明并不限制系統(tǒng)與軟件信息的類型。于本發(fā)明實(shí)施例中,系統(tǒng)與軟件信息可以例如包括操作系統(tǒng)版本(例如:Windows7或Android4.1)、操作系統(tǒng)相關(guān)設(shè)定(例如系統(tǒng)設(shè)定文件、登錄文件、登錄機(jī)碼或移動(dòng)裝置的設(shè)定)、應(yīng)用軟件版本(例如文字處理軟件的版本或手機(jī)傳訊程序的版本)、應(yīng)用軟件設(shè)定文件(例如網(wǎng)頁瀏覽器或編輯軟件相關(guān)設(shè)定文件)與操作系統(tǒng)及應(yīng)用軟件安裝更新清單的至少其中之一。
[0051]于本發(fā)明實(shí)施例中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以被設(shè)定定時(shí)地提取系統(tǒng)與軟件信息;或者,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以在計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的虛擬機(jī)器的操作系統(tǒng)或應(yīng)用軟件初始安裝時(shí),提取系統(tǒng)與軟件信息;又或者,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以在使用時(shí)根據(jù)特定事件(例如刪除軟件或更改軟件設(shè)定等行為)的發(fā)生來提取系統(tǒng)與軟件信息??偠灾螘r(shí)讓計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)提取系統(tǒng)與軟件信息的設(shè)計(jì)方式并非用以限制本發(fā)明。
[0052]然后,在步驟S103中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)檢測(cè)操作系統(tǒng)是否須安裝更新文件(例如操作系統(tǒng)或軟件的更新文件,也即更新操作系統(tǒng)或軟件)或新軟件。若檢測(cè)到有新軟件或更新文件要安裝,則執(zhí)行步驟S104,若未檢測(cè)到有新軟件與更新檔要安裝,則執(zhí)行步驟S112。上述是否有新軟件或更新文件要安裝的判斷方式可以是計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)判斷使用者是否點(diǎn)選特定檔案,以執(zhí)行新軟件或更新文件的安裝程序,或者是計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)自動(dòng)地下載更新文件或新軟件的檔案,并于背景自動(dòng)地執(zhí)行更新文件或新軟件的安裝程序。總而言之,本發(fā)明并不限制步驟S103的詳細(xì)實(shí)現(xiàn)方式。
[0053]接著,在步驟S104中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)判斷是否進(jìn)行兼容性測(cè)試。若判斷要進(jìn)行兼容性測(cè)試,則執(zhí)行步驟S105,若判斷不要進(jìn)行兼容性測(cè)試,則執(zhí)行步驟S112。上述是否進(jìn)行兼容性測(cè)試的判斷方式可以是計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)通過判斷使用者或信息人員是否點(diǎn)選同意進(jìn)行兼容性測(cè)試的確認(rèn)方框,或者是計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)判斷目前的環(huán)境資源是否適合進(jìn)行兼容性測(cè)試??偠灾?,本發(fā)明并不限制步驟S104的詳細(xì)實(shí)現(xiàn)方式。
[0054]接著,在步驟S105中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)依據(jù)系統(tǒng)與軟件信息產(chǎn)生具有復(fù)制系統(tǒng)的虛擬機(jī)器。更精確地說,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)先依據(jù)系統(tǒng)與軟件信息中的操作系統(tǒng)版本與操作系統(tǒng)相關(guān)設(shè)定產(chǎn)生一個(gè)干凈的操作系統(tǒng)的虛擬機(jī)器,其中干凈的操作系統(tǒng)系指具有復(fù)制系統(tǒng)的虛擬機(jī)器僅安裝初始的操作系統(tǒng)及所需應(yīng)用軟件,而無多余的系統(tǒng)設(shè)定以及人為操作使用產(chǎn)生的數(shù)據(jù)。接著,再依據(jù)系統(tǒng)與軟件信息中的應(yīng)用軟件版本、應(yīng)用軟件設(shè)定文件與操作系統(tǒng)及應(yīng)用軟件安裝更新清單重現(xiàn)計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的虛擬機(jī)器的操作系統(tǒng)。換言之,虛擬機(jī)器的復(fù)制系統(tǒng)功能上相同或相似于計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的虛擬機(jī)器的操作系統(tǒng)。
[0055]另外,上述步驟S105并非用以限制本發(fā)明。步驟S105也可以其他的方式實(shí)現(xiàn)。舉例來說,為了減少產(chǎn)生復(fù)制系統(tǒng)的時(shí)間,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)儲(chǔ)存有預(yù)先產(chǎn)生的操作系統(tǒng),此預(yù)先產(chǎn)生的操作系統(tǒng)可以具有常用的軟件。接著,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)再依據(jù)系統(tǒng)與軟件信息調(diào)整此預(yù)先產(chǎn)生的操作系統(tǒng)與軟件的設(shè)定,以及增補(bǔ)安裝計(jì)算機(jī)裝置的操作系統(tǒng)有但預(yù)先產(chǎn)生操作系統(tǒng)所沒有的軟件,以重現(xiàn)計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的虛擬機(jī)器的操作系統(tǒng)。
[0056]接著,在步驟S106中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)提取所有數(shù)據(jù)中可用以進(jìn)行兼容性測(cè)試的相應(yīng)數(shù)據(jù),并將相應(yīng)數(shù)據(jù)復(fù)制到虛擬機(jī)器的復(fù)制系統(tǒng)中,也即相應(yīng)數(shù)據(jù)為操作系統(tǒng)中所有數(shù)據(jù)的子集合,且所有數(shù)據(jù)中用以進(jìn)行兼容性測(cè)試所需要使用的數(shù)據(jù)。在此請(qǐng)注意,為了避免相應(yīng)數(shù)據(jù)可能更新,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)系在產(chǎn)生復(fù)制系統(tǒng)的虛擬機(jī)器后,才提取相應(yīng)數(shù)據(jù),并將相應(yīng)數(shù)據(jù)復(fù)制到復(fù)制系統(tǒng)中,以藉此確保兼容性測(cè)試的正確性。然后,在步驟S107中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)將更新文件或新軟件安裝至虛擬機(jī)器的復(fù)制系統(tǒng)中。
[0057]于本發(fā)明實(shí)施例中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以在操作系統(tǒng)或應(yīng)用軟件初始安裝時(shí),進(jìn)行安裝流程或安裝設(shè)定腳本側(cè)錄以產(chǎn)生對(duì)應(yīng)的安裝腳本(script),并使用安裝腳本產(chǎn)生復(fù)制系統(tǒng)的虛擬機(jī)器;或者,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)使用操作系統(tǒng)中定期備份復(fù)制系統(tǒng)與軟件信息時(shí),產(chǎn)生復(fù)制系統(tǒng)的虛擬機(jī)器;又或者,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以在使用時(shí)根據(jù)特定事件(例如刪除軟件或更改軟件設(shè)定等行為)的發(fā)生進(jìn)行備份復(fù)制時(shí),產(chǎn)生復(fù)制系統(tǒng)的虛擬機(jī)器。
[0058]緊接著,在步驟S108中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可通過主動(dòng)式檢測(cè)程序進(jìn)行兼容性測(cè)試。此處的兼容性測(cè)試可以包括對(duì)已安裝更新文件或新軟件的復(fù)制系統(tǒng)的功能進(jìn)行測(cè)試、對(duì)已安裝更新文件或新軟件的復(fù)制系統(tǒng)與操作系統(tǒng)進(jìn)行系統(tǒng)狀態(tài)比對(duì)與對(duì)已安裝更新文件或新軟件的復(fù)制系統(tǒng)與操作系統(tǒng)的使用者經(jīng)驗(yàn)進(jìn)行比對(duì)的至少其中之一。
[0059]更精確地說,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以對(duì)已安裝更新文件或新軟件的復(fù)制系統(tǒng)執(zhí)行特定關(guān)聯(lián)軟件功能的開啟、關(guān)閉與輸入輸出值檢查(例如網(wǎng)頁程序執(zhí)行對(duì)數(shù)據(jù)庫查詢數(shù)據(jù)的動(dòng)作),以對(duì)已安裝更新文件或新軟件的復(fù)制系統(tǒng)的功能進(jìn)行測(cè)試;或者,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)同時(shí)提取操作系統(tǒng)與已安裝更新文件或新軟件的復(fù)制系統(tǒng)執(zhí)行中產(chǎn)生的系統(tǒng)信息(如軟件錯(cuò)誤信息或內(nèi)存信息)進(jìn)行比對(duì),以對(duì)復(fù)制系統(tǒng)與操作系統(tǒng)進(jìn)行系統(tǒng)狀態(tài)比對(duì);又或者,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)于操作系統(tǒng)與已安裝更新文件或新軟件的復(fù)制系統(tǒng)中不斷進(jìn)行切換,并且檢測(cè)使用者或系統(tǒng)中軟件在此兩個(gè)系統(tǒng)切換間的使用狀態(tài)與行為的至少其中之一(例如,使用者是否無法填寫特定字段的數(shù)據(jù),而時(shí)常地開啟特定窗口,或操作系統(tǒng)指令間的延遲時(shí)間)是否有改變,以對(duì)已安裝更新文件或新軟件的復(fù)制系統(tǒng)與操作系統(tǒng)的使用者經(jīng)驗(yàn)進(jìn)行比對(duì)。
[0060]之后,在步驟S109中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)回報(bào)兼容性測(cè)試結(jié)果給使用者或信息人員知悉,例如提供一人機(jī)互動(dòng)接口回報(bào)系統(tǒng)兼容性狀態(tài)或錯(cuò)誤修正建議。值得一提的是,步驟S109于本發(fā)明實(shí)施例中可以被移除,也即可以選擇不將兼容性測(cè)試結(jié)果回報(bào)給使用者知悉。
[0061]然后,在步驟SllO中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)決定是否安裝更新文件或新軟件,或者云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)決定是否切換至新操作系統(tǒng),其中新操作系統(tǒng)為已安裝更新文件或新軟件的復(fù)制系統(tǒng)。若決定安裝更新檔或新軟件,或者決定切換至新操作系統(tǒng),則執(zhí)行步驟Slll ;若決定不安裝更新檔或新軟件,且決定不切換至新操作系統(tǒng),則執(zhí)行步驟S112。上述是否安裝更新文件或新軟件的判斷方式可以是計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)依據(jù)兼容性測(cè)試結(jié)果自動(dòng)地決定是否安裝更新檔或新軟件,也可以是使用者或信息人員依據(jù)兼容性測(cè)試結(jié)果來下達(dá)指令指示計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)決定是否安裝更新文件或新軟件。
[0062]之后,于步驟Slll中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)安裝更新文件或新軟件至計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的虛擬機(jī)器的操作系統(tǒng),或者,將云端主機(jī)系統(tǒng)自具有操作系統(tǒng)的虛擬機(jī)器切換至具有新操作系統(tǒng)(安裝有更新文件或新軟件的復(fù)制系統(tǒng))的虛擬機(jī)器。然后,于步驟S112中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)記錄更新結(jié)果。計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)根據(jù)不同的情況而有不同的更新結(jié)果。
[0063]接著,在步驟S113中,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)依據(jù)更新結(jié)果進(jìn)行相應(yīng)通知。在此請(qǐng)注意,步驟S113的有無并非用以限制本發(fā)明。舉例來說,計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)可以自動(dòng)地排序下一次檢查更新的時(shí)間,而不再另外地進(jìn)行通知使用者或信息人員。
[0064]更詳細(xì)地說,若檢測(cè)操作系統(tǒng)不需安裝更新文件或新軟件,或者判斷不進(jìn)行兼容性測(cè)試,則此處的更新結(jié)果會(huì)記錄未進(jìn)行,且操作系統(tǒng)可周期性地通知使用者或信息人員進(jìn)行兼容性測(cè)試與安裝更新文件或新軟件。若在進(jìn)行兼容性測(cè)試后,安裝更新文件或者已切換至新操作系統(tǒng)使用,則此處的更新結(jié)果會(huì)記錄何項(xiàng)更新文件或何種新軟件已安裝,并通知使用者或信息人員更新文件或新軟件已安裝的信息。若在進(jìn)行兼容性測(cè)試后,未安裝更新文件且未切換至新操作系統(tǒng)使用,則此處的更新結(jié)果會(huì)記錄已診測(cè)更新文件或新軟件,且操作系統(tǒng)可周期性地通知使用者或信息人員是否進(jìn)行更新文件或新軟件的安裝。
[0065]在此請(qǐng)注意,由于本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法在安裝更新文件與新軟件前預(yù)先地測(cè)試其兼容性,故不需要將整個(gè)操作系統(tǒng)與安裝于其中的軟件進(jìn)行全系統(tǒng)快照,而僅是單純地提取系統(tǒng)與軟件信息。如此,相較于全系統(tǒng)快照的技術(shù),本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法可以將儲(chǔ)存空間的耗用量從數(shù)千兆位組降至數(shù)兆字節(jié)。除此之夕卜,圖1的各步驟的順序并非用以限制本發(fā)明,在其他實(shí)施例中,圖1的各步驟的順序可以略微地調(diào)換。舉例來說,不考慮相應(yīng)數(shù)據(jù)是否為最新的相應(yīng)數(shù)據(jù),則步驟S105與S106可以互相調(diào)換;或者,步驟S106與S107可以調(diào)換,也即先安裝更新文件或新軟件至虛擬機(jī)器的復(fù)制系統(tǒng)后,才提取相應(yīng)數(shù)據(jù)至復(fù)制系統(tǒng)中。
[0066]上述軟件兼容性預(yù)先測(cè)試方法執(zhí)行于軟件兼容性預(yù)先測(cè)試系統(tǒng)中,而且如同前面所述軟件兼容性預(yù)先測(cè)試系統(tǒng)可以由計(jì)算機(jī)裝置、云端主機(jī)系統(tǒng)或計(jì)算機(jī)裝置加上云端主機(jī)系統(tǒng)來實(shí)現(xiàn)。請(qǐng)接著參照?qǐng)D2A,圖2A是本發(fā)明實(shí)施例的計(jì)算機(jī)裝置的方塊圖。計(jì)算機(jī)裝置2包括處理單元21、存儲(chǔ)單元22、儲(chǔ)存單元23、輸出/輸入單元24與通信單元25。處理單元21電性連接存儲(chǔ)單元22、儲(chǔ)存單元23、輸出/輸入單元24與通信單元25。處理單元21用以接取存儲(chǔ)單元22與儲(chǔ)存單元23的數(shù)據(jù),且用以控制輸出/輸入單元24與通信單元25。
[0067]于本發(fā)明實(shí)施中,軟件兼容性預(yù)先測(cè)試方法的程序代碼與前述操作系統(tǒng)或安裝的軟件的相應(yīng)數(shù)據(jù)等可以儲(chǔ)存在儲(chǔ)存單元23。存儲(chǔ)單元22用以暫存處理單元21產(chǎn)生的數(shù)值或數(shù)據(jù)。輸出/輸入單元24作為計(jì)算機(jī)裝置2與使用者或信息人員溝通的界面。通信單元25用以讓計(jì)算機(jī)裝置2與其他的計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)進(jìn)行連接。
[0068]請(qǐng)接著參照?qǐng)D2B,圖2B是本發(fā)明實(shí)施例的云端主機(jī)系統(tǒng)的方塊圖。云端主機(jī)系統(tǒng)2’具有底層監(jiān)控操作系統(tǒng)21’與兩個(gè)以上的虛擬機(jī)器22’、23’。在此請(qǐng)注意,虛擬機(jī)器22’、23’與底層監(jiān)控操作系統(tǒng)21’之間并非物理實(shí)體連接,虛擬機(jī)器22’、23’由底層監(jiān)控操作系統(tǒng)21’進(jìn)行資源配置所產(chǎn)生。
[0069]底層監(jiān)控操作系統(tǒng)21’具有處理單元211’、存儲(chǔ)單元212’、儲(chǔ)存單元213’、輸出/輸入單元214’與通信單元215’。處理單元211’電性連接存儲(chǔ)單元212’、儲(chǔ)存單元213’、輸出/輸入單元214’與通信單元215’。處理單元211’用以接取存儲(chǔ)單元212’與儲(chǔ)存單元213’的數(shù)據(jù),且用以控制輸出/輸入單元214’與通信單元215’。
[0070]軟件兼容性預(yù)先測(cè)試方法的程序代碼與前述操作系統(tǒng)或安裝的軟件的相應(yīng)數(shù)據(jù)等可以儲(chǔ)存在儲(chǔ)存單元213’。存儲(chǔ)單元212’用以暫存處理單元211’產(chǎn)生的數(shù)值或數(shù)據(jù)。輸出/輸入單元214’作為底層監(jiān)控操作系統(tǒng)21’與使用者或信息人員溝通的接口。通信單元215’用以讓底層監(jiān)控操作系統(tǒng)21’與其他的計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)進(jìn)行連接。
[0071]底層監(jiān)控操作系統(tǒng)21’將其處理單元211’、存儲(chǔ)單元212’、儲(chǔ)存單元213’、輸出/輸入單元214’與通信單元215’的資源依照虛擬機(jī)器22’、23’的需求進(jìn)行虛擬化配置,以產(chǎn)生虛擬機(jī)器22 ’與23 ’。虛擬機(jī)器22 ’與23包含各自獨(dú)立或相異的操作系統(tǒng)(如Microsoft、Linux、Mac 0SX、Android等操作系統(tǒng),但本發(fā)明并不以此為限)。另外,虛擬機(jī)器22’與23’具有各自獨(dú)立的虛擬處理單元、虛擬儲(chǔ)存單元、虛擬存儲(chǔ)單元、虛擬輸出/輸入單元與虛擬通信單元。
[0072]舉例來說,虛擬機(jī)器22’具有虛擬處理單元221’、虛擬存儲(chǔ)單元222’、虛擬儲(chǔ)存單元223’、虛擬輸出/輸入單元224’與虛擬通信單元225’,其中虛擬處理單元221’邏輯上連接(非物理的實(shí)體連接)虛擬存儲(chǔ)單元222’、虛擬儲(chǔ)存單元223’、虛擬輸出/輸入單元224’與虛擬通信單元225’。虛擬處理單元221’用以接取虛擬存儲(chǔ)單元222’與虛擬儲(chǔ)存單元223’的數(shù)據(jù),且用以控制虛擬輸出/輸入單元224’與虛擬通信單元225’。
[0073]軟件兼容性預(yù)先測(cè)試方法的程序代碼與前述操作系統(tǒng)或安裝的軟件的相應(yīng)數(shù)據(jù)等可以儲(chǔ)存在虛擬儲(chǔ)存單元223’。虛擬存儲(chǔ)單元222’用以暫存虛擬處理單元221’產(chǎn)生的數(shù)值或數(shù)據(jù)。虛擬輸出/輸入單元224’作為虛擬機(jī)器22’與使用者或信息人員溝通的接口。虛擬通信單元225’用以使虛擬機(jī)器22’與其他的計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)進(jìn)行連接。
[0074]然后,請(qǐng)參照?qǐng)D3A與圖3B,圖3A與圖3B是本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的示意圖。于此實(shí)施例中,所述軟件兼容性預(yù)先測(cè)試系統(tǒng)可以僅由一個(gè)計(jì)算機(jī)裝置所構(gòu)成,但本發(fā)明并不限制于此。計(jì)算機(jī)裝置的操作系統(tǒng)311具有數(shù)據(jù)、應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)儲(chǔ)存于計(jì)算機(jī)裝置的儲(chǔ)存單元。另外,儲(chǔ)存單元還有組態(tài)數(shù)據(jù)庫321與資源庫(resource pool )331,其中組態(tài)數(shù)據(jù)庫321用以儲(chǔ)存至少一個(gè)系統(tǒng)組態(tài),而資源庫331存有各應(yīng)用程序的安裝文件與操作系統(tǒng)的系統(tǒng)更新文件。
[0075]于步驟S301中,計(jì)算機(jī)裝置提取操作系統(tǒng)311的應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)(也就是前述的系統(tǒng)與軟件信息)至組態(tài)數(shù)據(jù)庫321中。當(dāng)使用者或信息人員通過使用者接口或系統(tǒng)判斷確認(rèn)測(cè)試軟件兼容性時(shí),步驟S302會(huì)開始執(zhí)行。在步驟S302中,產(chǎn)生具有復(fù)制系統(tǒng)341的虛擬機(jī)器,其中復(fù)制系統(tǒng)341功能上相同或相似于操作系統(tǒng)311。步驟S302的細(xì)節(jié)描述如下。首先,計(jì)算機(jī)裝置依據(jù)組態(tài)數(shù)據(jù)庫321中的系統(tǒng)組態(tài)產(chǎn)生一個(gè)具有干凈的復(fù)制系統(tǒng)的虛擬機(jī)器于計(jì)算機(jī)裝置中。接著,通過自動(dòng)化安裝程序?qū)⑾鄳?yīng)的應(yīng)用程序的安裝文件與操作系統(tǒng)的系統(tǒng)更新文件安裝至干凈的復(fù)制系統(tǒng),并依據(jù)應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)調(diào)整應(yīng)用程序或操作系統(tǒng)的相關(guān)設(shè)定。接著,計(jì)算機(jī)裝置自操作系統(tǒng)311提取相應(yīng)數(shù)據(jù)至復(fù)制系統(tǒng),以產(chǎn)生功能上相同或相似于操作系統(tǒng)311的復(fù)制系統(tǒng)341。
[0076]之后,在步驟S303中,更新文件或新軟件被安裝至復(fù)制系統(tǒng)341中,以產(chǎn)生安裝更新文件或新軟件的復(fù)制系統(tǒng)342。然后,在步驟S304中,將兼容性測(cè)試程序?qū)霃?fù)制系統(tǒng)342的虛擬機(jī)器中,以產(chǎn)生復(fù)制系統(tǒng)343,其中兼容性測(cè)試程序?yàn)樽詣?dòng)化腳本,其用以對(duì)復(fù)制系統(tǒng)342執(zhí)行特定關(guān)聯(lián)軟件功能的開啟、關(guān)閉與輸入輸出值檢查。舉例來說,若特定關(guān)聯(lián)軟件功能的開啟、關(guān)閉與輸入輸出值正常的次數(shù)大于一定的門限值,則可以認(rèn)為更新文件或新軟件通過兼容性測(cè)試。在步驟S305中,計(jì)算機(jī)裝置通過人機(jī)互動(dòng)接口回報(bào)系統(tǒng)兼容性狀態(tài)或錯(cuò)誤修正,于此步驟S305中,復(fù)制系統(tǒng)343的兼容性測(cè)試程序經(jīng)過執(zhí)行后,產(chǎn)生具有系統(tǒng)兼容性狀態(tài)表示更新文件或新軟件通過兼容性測(cè)試的復(fù)制系統(tǒng)344。然后,在步驟S306中,使用者或信息人員通過使用者接口確認(rèn)將更新文件或新軟件安裝至操作系統(tǒng)311,以將操作系統(tǒng)311變?yōu)榘惭b更新文件或新軟件的操作系統(tǒng)312。
[0077]之后,請(qǐng)參照?qǐng)D4A與圖4B,圖4A與圖4B是本發(fā)明另一實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的示意圖。于此實(shí)施例中,所述軟件兼容性預(yù)先測(cè)試系統(tǒng)可以僅由一個(gè)云端主機(jī)系統(tǒng)所構(gòu)成,但本發(fā)明卻不限定于此。云端主機(jī)系統(tǒng)的中運(yùn)行的虛擬機(jī)器的操作系統(tǒng)411具有數(shù)據(jù)、應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)儲(chǔ)存于云端系統(tǒng)主機(jī)的儲(chǔ)存單元。另外,儲(chǔ)存單元還有組態(tài)數(shù)據(jù)庫421與資源庫431,資源庫431存有各應(yīng)用程序的安裝文件與操作系統(tǒng)的系統(tǒng)更新文件。
[0078]于步驟S401中,云端主機(jī)系統(tǒng)提取虛擬機(jī)器的操作系統(tǒng)411的應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)(也就是前述的系統(tǒng)與軟件信息)至組態(tài)數(shù)據(jù)庫421中,其中組態(tài)數(shù)據(jù)庫421用以儲(chǔ)存至少一個(gè)系統(tǒng)組態(tài)。當(dāng)使用者或信息人員通過者接口確認(rèn)測(cè)試軟件兼容性時(shí),步驟S402會(huì)開始執(zhí)行。在步驟S402中,產(chǎn)生功能上相同或相似操作系統(tǒng)411的復(fù)制系統(tǒng)441。步驟S402的細(xì)節(jié)描述如下。首先,云端主機(jī)系統(tǒng)依據(jù)組態(tài)數(shù)據(jù)庫421中的系統(tǒng)組態(tài)產(chǎn)生一個(gè)具有干凈的復(fù)制系統(tǒng)的虛擬機(jī)器于云端主機(jī)系統(tǒng)中。接著,將相應(yīng)的應(yīng)用程序的安裝文件與操作系統(tǒng)的系統(tǒng)更新文件安裝至干凈的復(fù)制系統(tǒng),并依據(jù)應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)調(diào)整應(yīng)用程序或操作系統(tǒng)的相關(guān)設(shè)定。接著,云端主機(jī)系統(tǒng)自其虛擬機(jī)器的操作系統(tǒng)411提取相應(yīng)數(shù)據(jù)至復(fù)制系統(tǒng)441,以產(chǎn)生功能上相同或相似于操作系統(tǒng)411的復(fù)制系統(tǒng)441。
[0079]之后,在步驟S403中,更新文件或新軟件被安裝至復(fù)制系統(tǒng)441中,以產(chǎn)生安裝更新文件或新軟件的復(fù)制系統(tǒng)442。然后,在步驟S404中,云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)451的兼容性測(cè)試程序用以提取操作系統(tǒng)411與已安裝更新文件或新軟件的復(fù)制系統(tǒng)442執(zhí)行中產(chǎn)生的系統(tǒng)信息(如軟件錯(cuò)誤信息或內(nèi)存信息)并進(jìn)行比對(duì),并且兼容性測(cè)試程序在復(fù)制系統(tǒng)442與操作系統(tǒng)411之間切換,檢測(cè)使用者或系統(tǒng)中軟件在此兩個(gè)系統(tǒng)切換間的使用狀態(tài)與行為的至少其中之一是否有改變(例如,使用者是否無法填寫特定字段的數(shù)據(jù),而時(shí)常地開啟特定窗口,或操作系統(tǒng)指令間的延遲時(shí)間)。由于此處的步驟S404需要對(duì)操作系統(tǒng)411與已安裝更新文件或新軟件的復(fù)制系統(tǒng)442進(jìn)行切換,故兼容性測(cè)試程序會(huì)儲(chǔ)存在云端主機(jī)的底層監(jiān)控操作系統(tǒng)451中,且可被底層監(jiān)控操作系統(tǒng)451執(zhí)行。
[0080]舉例來說,若比對(duì)的系統(tǒng)信息相同的數(shù)量大于一定的門坎值,且/或使用狀態(tài)的改變幅度不大,則可以認(rèn)為更新文件或新軟件通過兼容性測(cè)試,以上說明僅作為舉例,不限制本發(fā)明使用范圍使用方法或其結(jié)合的步驟、順序。在步驟S405中,兼容性測(cè)試程序451經(jīng)過執(zhí)行后,產(chǎn)生具有系統(tǒng)兼容性狀態(tài)表示更新文件或新軟件通過兼容性測(cè)試的信息的云端主機(jī)系統(tǒng)的底層監(jiān)控操作系統(tǒng)452。然后,在步驟S406中,使用者或信息人員通過使用者接口確認(rèn)將更新文件或新軟件安裝至虛擬機(jī)器的操作系統(tǒng)411,以將虛擬機(jī)器的操作系統(tǒng)411變?yōu)橐寻惭b更新檔或新軟件的虛擬機(jī)器的操作系統(tǒng)412,或者,使用者或信息人員通過使用者接口確認(rèn)將復(fù)制系統(tǒng)442取代操作系統(tǒng)411,并將虛擬機(jī)器的操作系統(tǒng)411中的剩余數(shù)據(jù)(所有數(shù)據(jù)中除了相應(yīng)數(shù)據(jù)之外的其他數(shù)據(jù))同步復(fù)制轉(zhuǎn)移到復(fù)制系統(tǒng)442。
[0081]在此請(qǐng)注意,步驟S404也可以僅提取操作系統(tǒng)411與已安裝更新文件或新軟件的復(fù)制系統(tǒng)442執(zhí)行中產(chǎn)生的系統(tǒng)信息(如軟件錯(cuò)誤信息或內(nèi)存信息)并進(jìn)行比對(duì),或者僅在復(fù)制系統(tǒng)442與操作系統(tǒng)411之間切換,檢測(cè)使用者或系統(tǒng)中軟件在此兩系統(tǒng)切換間的使用狀態(tài)與行為的至少其中之一是否有改變??偠灾襟ES404的實(shí)現(xiàn)方式并非用以限制本發(fā)明。
[0082]倘若步驟S404僅提取操作系統(tǒng)411與已安裝更新文件或新軟件的復(fù)制系統(tǒng)442執(zhí)行中產(chǎn)生的系統(tǒng)信息并進(jìn)行比對(duì)(也即,不需要對(duì)操作系統(tǒng)411與已安裝更新文件或新軟件的復(fù)制系統(tǒng)442進(jìn)行切換),則兼容性測(cè)試程序451可以被引入至虛擬機(jī)器的復(fù)制系統(tǒng)442中,且被復(fù)制系統(tǒng)442所執(zhí)行。另外,接著在步驟S405中,產(chǎn)生具有系統(tǒng)兼容性狀態(tài)表示更新文件或新軟件通過兼容性測(cè)試的復(fù)制系統(tǒng)442。
[0083]再來,請(qǐng)參照?qǐng)D5,圖5是本發(fā)明實(shí)施例的軟件兼容性預(yù)先測(cè)試系統(tǒng)的示意圖。于本發(fā)明實(shí)施例中,軟件兼容性預(yù)先測(cè)試系統(tǒng)5由計(jì)算機(jī)裝置51與云端主機(jī)系統(tǒng)53所構(gòu)成,其中計(jì)算機(jī)裝置51通過因特網(wǎng)52連接云端主機(jī)系統(tǒng)53。使用者可以通過計(jì)算機(jī)裝置51來使用云端主機(jī)系統(tǒng)53,或者直接地操作云端主機(jī)系統(tǒng)53。云端主機(jī)系統(tǒng)53可具有主控權(quán),而能夠控制計(jì)算機(jī)裝置51進(jìn)行軟件或操作系統(tǒng)的更新與安裝,然而,本發(fā)明并不限制于此,也即計(jì)算機(jī)裝置51本身也可以具有主控權(quán)。
[0084]最后,請(qǐng)參照?qǐng)D6A與圖6B,圖6A與圖6B是本發(fā)明另一實(shí)施例的軟件兼容性預(yù)先測(cè)試方法的示意圖。于此實(shí)施例中,所述軟件兼容性預(yù)先測(cè)試系統(tǒng)由一個(gè)計(jì)算機(jī)裝置與云端主機(jī)系統(tǒng)所構(gòu)成。計(jì)算機(jī)裝置的操作系統(tǒng)611具有數(shù)據(jù)、應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)儲(chǔ)存于計(jì)算機(jī)裝置的儲(chǔ)存單元。另外,云端主機(jī)系統(tǒng)的儲(chǔ)存單元還有組態(tài)數(shù)據(jù)庫621與資源庫631,其中組態(tài)數(shù)據(jù)庫621用以儲(chǔ)存至少一個(gè)系統(tǒng)組態(tài),而資源庫631存有各應(yīng)用程序的安裝文件與操作系統(tǒng)的系統(tǒng)更新文件。
[0085]于步驟S601中,計(jì)算機(jī)裝置提取操作系統(tǒng)611的應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)(也就是前述的系統(tǒng)與軟件信息)至云端主機(jī)系統(tǒng)的組態(tài)數(shù)據(jù)庫621中。當(dāng)使用者或信息人員通過使用者接口確認(rèn)測(cè)試軟件兼容性時(shí)(可由計(jì)算機(jī)裝置或云端主機(jī)系統(tǒng)進(jìn)行判斷),步驟S602會(huì)開始執(zhí)行。在步驟S602中,產(chǎn)生功能上相同或相似于操作系統(tǒng)611的復(fù)制系統(tǒng)641于云端主機(jī)系統(tǒng)的虛擬機(jī)器。步驟S602的細(xì)節(jié)描述如下。首先,云端主機(jī)系統(tǒng)依據(jù)組態(tài)數(shù)據(jù)庫621中的系統(tǒng)組態(tài)產(chǎn)生一個(gè)具有干凈的復(fù)制系統(tǒng)的虛擬機(jī)器于云端主機(jī)系統(tǒng)中。接著,將相應(yīng)的應(yīng)用程序的安裝文件與操作系統(tǒng)的系統(tǒng)更新文件安裝至干凈的復(fù)制系統(tǒng),并依據(jù)應(yīng)用程序組態(tài)與系統(tǒng)組態(tài)調(diào)整應(yīng)用程序或操作系統(tǒng)的相關(guān)設(shè)定。接著,云端主機(jī)系統(tǒng)自計(jì)算機(jī)裝置的操作系統(tǒng)611提取相應(yīng)數(shù)據(jù)至復(fù)制系統(tǒng),以產(chǎn)生功能上相同或相似操作系統(tǒng)611的復(fù)制系統(tǒng)641。
[0086]之后,在步驟S603中,更新文件或新軟件被安裝至復(fù)制系統(tǒng)641中,以產(chǎn)生安裝更新文件或新軟件的復(fù)制系統(tǒng)642。然后,在步驟S604中,將兼容性測(cè)試程序?qū)霃?fù)制系統(tǒng)642的虛擬機(jī)器中,以產(chǎn)生復(fù)制系統(tǒng)643,兼容性測(cè)試程序用以提取操作系統(tǒng)611與已安裝更新文件或新軟件的復(fù)制系統(tǒng)642執(zhí)行中產(chǎn)生的系統(tǒng)信息(如軟件錯(cuò)誤信息與內(nèi)存信息的至少其中之一,但本發(fā)明不限定于此)進(jìn)行比對(duì),并且兼容性測(cè)試程序?qū)?fù)制系統(tǒng)642執(zhí)行特定關(guān)聯(lián)軟件功能的開啟、關(guān)閉與輸入輸出值檢查。舉例來說,若比對(duì)的系統(tǒng)信息相同的數(shù)量大于一定的門限值,且特定關(guān)聯(lián)軟件功能的開啟、關(guān)閉與輸入輸出值正常的次數(shù)也大于一定的門限值,則可以認(rèn)為更新文件或新軟件通過兼容性測(cè)試。在步驟S605中,復(fù)制系統(tǒng)643的兼容性測(cè)試程序經(jīng)過執(zhí)行后,產(chǎn)生具有系統(tǒng)兼容性狀態(tài)表示更新文件或新軟件通過兼容性測(cè)試的復(fù)制系統(tǒng)644。然后,在步驟S606中,使用者或信息人員通過使用者接口確認(rèn)將更新文件或新軟件安裝至操作系統(tǒng)611 (由計(jì)算機(jī)裝置執(zhí)行),以將操作系統(tǒng)611變?yōu)榘惭b更新文件或新軟件的操作系統(tǒng)612。
[0087]綜合以上所述,本發(fā)明多個(gè)實(shí)施例提供了軟件兼容性預(yù)先測(cè)試方法與其系統(tǒng),其可以在安裝新軟件或更新文件之前預(yù)先地檢測(cè)安裝新軟件或更新文件對(duì)于目前操作系統(tǒng)的兼容性,從而避免在產(chǎn)生不兼容問題后,還要將操作系統(tǒng)進(jìn)行還原的麻煩,故可以減少信息人員安裝新軟件或更新文件的負(fù)擔(dān),以及提升使用者對(duì)更新檔的信任,以提升信息安全。另外,上述軟件兼容性預(yù)先測(cè)試方法與其系統(tǒng)并不會(huì)造成儲(chǔ)存空間大量的耗用,且實(shí)施方式單純而能具體實(shí)施,故具有相當(dāng)?shù)慕?jīng)濟(jì)實(shí)益。
[0088]以上所述,僅為本發(fā)明的優(yōu)選的具體實(shí)施例,然而本本發(fā)明的特征并不局限于此,任何本領(lǐng)域的普通技術(shù)人員可輕易思及的變化或修飾,皆可涵蓋在以下本發(fā)明的專利范圍。
【權(quán)利要求】
1.一種軟件兼容性預(yù)先測(cè)試方法,其特征在于,所述軟件兼容性預(yù)先測(cè)試方法包括: 提取操作系統(tǒng)的系統(tǒng)與軟件信息; 于檢測(cè)到所述操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試; 于判斷進(jìn)行所述兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息而產(chǎn)生的; 將所述更新文件或所述新軟件安裝于所述第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng); 對(duì)所述第二復(fù)制系統(tǒng)進(jìn)行所述兼容性測(cè)試;以及 依據(jù)所述兼容性測(cè)試的結(jié)果來決定是否將所述更新文件或新軟件安裝至所述操作系統(tǒng),或者切換至所述第二復(fù)制系統(tǒng)。
2.根據(jù)權(quán)利要求1所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,于判斷進(jìn)行所述兼容性測(cè)試時(shí),提取所述操作系統(tǒng)的所有數(shù)據(jù)中能用以進(jìn)行所述兼容性測(cè)試的相應(yīng)數(shù)據(jù),以產(chǎn)生所述虛擬機(jī)器,且所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息與所述相應(yīng)數(shù)據(jù)而產(chǎn)生的。
3.根據(jù)權(quán)利要求1所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,所述軟件兼容性預(yù)先測(cè)試方法還包括: 于決定將所述更新文件或所述新軟件安裝至所述操作系統(tǒng),或者決定切換至所述第二復(fù)制系統(tǒng)時(shí),則將所述更新文件或所述新軟件安裝至所述操作系統(tǒng),或者切換至所述第二復(fù)制系統(tǒng)。
4.根據(jù)權(quán)利要求2所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,于產(chǎn)生所述第一復(fù)制系統(tǒng)的步驟中,依據(jù)所述系統(tǒng)與軟件信息在所述虛擬機(jī)器中產(chǎn)生干凈的第三復(fù)制系統(tǒng),接著,依據(jù)所述系統(tǒng)與軟件信息將所述操作系統(tǒng)已經(jīng)安裝的軟件與更新文件安裝至所述第三復(fù)制系統(tǒng),以產(chǎn)生第四復(fù)制系統(tǒng),并且接著提取所述相應(yīng)數(shù)據(jù)至所述第四復(fù)制系統(tǒng),以產(chǎn)生所述第一復(fù)制系統(tǒng)。
5.根據(jù)權(quán)利要求1所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,于產(chǎn)生所述第一復(fù)制系統(tǒng)的步驟中,提取預(yù)先產(chǎn)生的常用操作系統(tǒng),且所述常用操作系統(tǒng)具有常用的軟件,接著,依據(jù)所述系統(tǒng)與軟件信息來調(diào)整所述常用操作系統(tǒng)與所述常用操作系統(tǒng)的軟件的設(shè)定,以及增補(bǔ)安裝所述操作系統(tǒng)有而所述常用操作系統(tǒng)沒有的軟件,以產(chǎn)生所述第一復(fù)制系統(tǒng)。
6.根據(jù)權(quán)利要求1所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,所述系統(tǒng)與軟件信息包括操作系統(tǒng)版本、操作系統(tǒng)相關(guān)設(shè)定、應(yīng)用軟件版本、應(yīng)用軟件設(shè)定文件與操作系統(tǒng)、及應(yīng)用軟件安裝更新清單的至少其中之一。
7.根據(jù)權(quán)利要求1所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,所述兼容性測(cè)試包括對(duì)所述第二復(fù)制系統(tǒng)的功能進(jìn)行測(cè)試、對(duì)所述第二復(fù)制系統(tǒng)與所述操作系統(tǒng)進(jìn)行系統(tǒng)狀態(tài)比對(duì)及對(duì)所述第二復(fù)制系統(tǒng)與所述操作系統(tǒng)的使用者經(jīng)驗(yàn)進(jìn)行比對(duì)的至少其中之一。
8.根據(jù)權(quán)利要求7所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,對(duì)所述第二復(fù)制系統(tǒng)執(zhí)行特定關(guān)聯(lián)軟件功能的開啟、關(guān)閉與輸入輸出值檢查,以對(duì)所述第二復(fù)制系統(tǒng)的功能進(jìn)行測(cè)試。
9.根據(jù)權(quán)利要求7所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,提取所述操作系統(tǒng)與所述第二復(fù)制系統(tǒng)執(zhí)行中產(chǎn)生的系統(tǒng)信息進(jìn)行比對(duì),以對(duì)所述第二復(fù)制系統(tǒng)與所述操作系統(tǒng)進(jìn)行系統(tǒng)狀態(tài)比對(duì)。
10.根據(jù)權(quán)利要求7所述的軟件兼容性預(yù)先測(cè)試方法,其特征在于,于所述操作系統(tǒng)與所述第二復(fù)制系統(tǒng)中不斷進(jìn)行切換,并且檢測(cè)使用者或系統(tǒng)中的軟件在所述操作系統(tǒng)與所述第二復(fù)制系統(tǒng)切換時(shí)的使用狀態(tài)是否有改變,以對(duì)所述第二復(fù)制系統(tǒng)與所述操作系統(tǒng)的使用者經(jīng)驗(yàn)進(jìn)行比對(duì)。
11.一種軟件兼容性測(cè)試系統(tǒng),其特征在于,所述軟件兼容性測(cè)試系統(tǒng)包括: 計(jì)算機(jī)裝置; 其中所述計(jì)算機(jī)裝置提取操作系統(tǒng)的系統(tǒng)與軟件信息;所述計(jì)算機(jī)裝置于檢測(cè)到所述操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試;所述計(jì)算機(jī)裝置于判斷進(jìn)行所述兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息而產(chǎn)生的;所述計(jì)算機(jī)裝置將所述更新文件或所述新軟件安裝于所述第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng);所述計(jì)算機(jī)裝置對(duì)所述第二復(fù)制系統(tǒng)進(jìn)行所述兼容性測(cè)試;所述計(jì)算機(jī)裝置依據(jù)所述兼容性測(cè)試的結(jié)果來決定是否將所述更新文件或所述新軟件安裝至所述操作系統(tǒng)。
12.根據(jù)權(quán)利要求11所述的軟件兼容性測(cè)試系統(tǒng),其特征在于,于判斷進(jìn)行所述兼容性測(cè)試時(shí),所述計(jì)算機(jī)裝置提取所述操作系統(tǒng)的所有數(shù)據(jù)中能用以進(jìn)行所述兼容性測(cè)試的相應(yīng)數(shù)據(jù),以產(chǎn)生所述虛擬機(jī)器,且所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息與所述相應(yīng)數(shù)據(jù)而產(chǎn)生的。
13.一種軟件兼容性測(cè)試系統(tǒng),其特征在于,所述軟件兼容性測(cè)試系統(tǒng)包括: z?端王機(jī)系統(tǒng); 其中所述云端主機(jī)系統(tǒng)提取運(yùn)作其上的第一虛擬機(jī)器的操作系統(tǒng)的系統(tǒng)與軟件信息;所述云端主機(jī)系統(tǒng)于檢測(cè)到所述操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試;所述云端主機(jī)系統(tǒng)于判斷進(jìn)行所述兼容性測(cè)試時(shí),產(chǎn)生具有第一復(fù)制系統(tǒng)的第二虛擬機(jī)器,其中所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息而產(chǎn)生的;所述云端主機(jī)系統(tǒng)將所述更新文件或所述新軟件安裝于所述第二虛擬機(jī)器的所述第一復(fù)制系統(tǒng),以產(chǎn)生具有第二復(fù)制系統(tǒng)的所述第二虛擬機(jī)器;所述云端主機(jī)系統(tǒng)對(duì)所述第二復(fù)制系統(tǒng)進(jìn)行所述兼容性測(cè)試;所述云端主機(jī)系統(tǒng)依據(jù)所述兼容性測(cè)試的結(jié)果來決定是否將所述更新檔或所述新軟件安裝至所述第一虛擬機(jī)器的所述操作系統(tǒng),或者決定切換至具有第二復(fù)制系統(tǒng)的所述第二虛擬機(jī)器。
14.根據(jù)權(quán)利要求13所述的軟件兼容性測(cè)試系統(tǒng),其特征在于,于判斷進(jìn)行所述兼容性測(cè)試時(shí),所述云端主機(jī)系統(tǒng)提取所述操作系統(tǒng)的所有數(shù)據(jù)中能用以進(jìn)行所述兼容性測(cè)試的相應(yīng)數(shù)據(jù),以產(chǎn)生所述虛擬機(jī)器,且所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息與所述相應(yīng)數(shù)據(jù)而產(chǎn)生的。
15.一種軟件兼容性測(cè)試系統(tǒng),其特征在于,所述軟件兼容性測(cè)試系統(tǒng)包括: 計(jì)算機(jī)裝置;以及 云端主機(jī)系統(tǒng),通過因特網(wǎng)連接所述計(jì)算機(jī)裝置; 其中所述計(jì)算機(jī)裝置提取操作系統(tǒng)的系統(tǒng)與軟件信息至所述云端主機(jī)系統(tǒng);所述計(jì)算機(jī)裝置或所述云端主機(jī)系統(tǒng)于檢測(cè)到所述操作系統(tǒng)需要安裝更新文件或新軟件時(shí),判斷是否進(jìn)行兼容性測(cè)試;所述計(jì)算機(jī)裝置或所述云端主機(jī)系統(tǒng)于判斷進(jìn)行所述兼容性測(cè)試時(shí),以產(chǎn)生具有第一復(fù)制系統(tǒng)的虛擬機(jī)器,其中所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息而產(chǎn)生的;所述云端主機(jī)系統(tǒng)將所述更新文件或所述新軟件安裝于所述第一復(fù)制系統(tǒng),以產(chǎn)生第二復(fù)制系統(tǒng);所述云端主機(jī)系統(tǒng)對(duì)所述第二復(fù)制系統(tǒng)進(jìn)行所述兼容性測(cè)試;所述計(jì)算機(jī)裝置依據(jù)所述兼容性測(cè)試的結(jié)果來決定是否將所述更新文件或所述新軟件安裝至所述計(jì)算機(jī)裝置的所述操作系統(tǒng)。
16.根據(jù)權(quán)利要求15所述的軟件兼容性測(cè)試系統(tǒng),其特征在于,于判斷進(jìn)行所述兼容性測(cè)試時(shí),所述云端主機(jī)系統(tǒng)提取所述操作系統(tǒng)的所有數(shù)據(jù)中能用以進(jìn)行所述兼容性測(cè)試的相應(yīng)數(shù)據(jù),以產(chǎn)生所述虛擬機(jī)器,且所述第一復(fù)制系統(tǒng)是根據(jù)所述系統(tǒng)與軟件信息與所述相應(yīng)數(shù)據(jù)而產(chǎn)生的。
【文檔編號(hào)】G06F11/36GK104461858SQ201310487884
【公開日】2015年3月25日 申請(qǐng)日期:2013年10月17日 優(yōu)先權(quán)日:2013年9月23日
【發(fā)明者】陳世仁, 郭建廷 申請(qǐng)人:財(cái)團(tuán)法人資訊工業(yè)策進(jìn)會(huì)