新四季網

軟體兼容性預先測試方法與其系統的製作方法

2023-05-13 14:34:56

軟體兼容性預先測試方法與其系統的製作方法
【專利摘要】一種軟體兼容性預先測試方法及其系統,該軟體兼容性預先測試方法包括以下步驟:提取作業系統的系統與軟體信息;於檢測到作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試;於判斷進行兼容性測試時,產生具有第一複製系統的虛擬機器,其中第一複製系統根據系統與軟體信息而產生;將更新文件或新軟體安裝於第一複製系統,以產生第二複製系統;對第二複製系統進行兼容性測試;以及依據兼容性測試的結果來決定是否安裝更新文件或新軟體至作業系統,或者切換至第二複製系統。
【專利說明】軟體兼容性預先測試方法與其系統

【技術領域】
[0001]本發明提供一種軟體兼容性測試方法,且特別是涉及一種軟體兼容性預先測試方法與其系統。

【背景技術】
[0002]隨著科技的進步,目前信息產業蓬勃發展。人們日常生活中常常會使用計算機裝置或者雲端主機,且計算機裝置或雲端主機會具有作業系統,以供使用者進行通過作業系統操作。然而,在使用者安裝新的軟體至作業系統,或者對作業系統本身或其安裝的軟體進行更新後,偶爾會發生不兼容的問題,導致部分軟體或作業系統本身產生錯誤。
[0003]為了避免上述部分軟體或作業系統本身因為衝突不兼容的問題產生錯誤,目前的其中一種作法是在安裝新軟體或更新作業系統或軟體的各階段進行備份,以在部分軟體或作業系統本身發生錯誤時,可以通過備份的數據來還原作業系統。
[0004]全系統快照(snapshot)是一種可以對整個作業系統(含安裝於其中的軟體)進行系統映像的備份與還原的技術。然而,隨著備份的次數增加以及組織備份的數量增加,全系統快照會造成儲存空間大量地耗用。
[0005]另外,目前還有一種作法是通過使用者回報軟體安裝、軟體更新或作業系統更新運行時的相關信息給相應的軟體公司,再由軟體公司進行相關處理。然而,此種作法被動地等待問題發生時,才進行數據整合,其並未主動地發掘不兼容的問題。
[0006]在信息安全稽核方面,作業系統或者軟體有時必須更新,以維持信息安全並避免信息安全的隱憂。然而,倘若使用上述全系統快照的方式定期備份,或者於軟體安裝、軟體更新或作業系統更新時進行備份,則將造成儲存空間的耗用隨著時間成長。另一方面,倘若不檢測兼容性,則當部分軟體或作業系統發生錯誤時,又會造成使用者的不便與工作的停擺。
[0007]除此之外,若多個計算機裝置或雲端主機須進行軟體安裝、軟體更新或作業系統更新,則信息人員僅能在對每一個計算機裝置或雲端主機進行軟體安裝、軟體更新或作業系統後,才可以得知是否有不兼容的問題。倘若有不兼容的問題,則信息人員還需要通過全系統快照的備份還原作業系統,或者通過相關信息給相應的軟體公司,請求軟體公司進行處理。因此,當多個計算機裝置或雲端主機須進行軟體安裝、軟體更新或作業系統更新,此軟體安裝、軟體更新或作業系統更新的工作對信息人員來說是一個很大的負擔。


【發明內容】

[0008]本發明實施例提供一種軟體兼容性預先測試方法,此軟體兼容性預先測試方法包括:提取(extracting)作業系統的系統與軟體信息;於檢測到作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試;於判斷進行兼容性測試時,產生具有第一複製系統的虛擬機器,其中第一複製系統根據系統與軟體信息產生;將更新文件或新軟體安裝於第一複製系統,以產生第二複製系統;對第二複製系統進行兼容性測試;以及依據兼容性測試的結果,決定是否安裝更新文件或新軟體至作業系統,或者切換至第二複製系統。
[0009]本發明實施例提供一種軟體兼容性測試系統,此軟體兼容性測試系統包括計算機裝置。計算機裝置提取作業系統的系統與軟體信息。計算機裝置於檢測到作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試。計算機裝置於判斷進行兼容性測試時,產生具有第一複製系統的虛擬機器,其中第一複製系統根據系統與軟體信息產生。計算機裝置將更新文件或新軟體安裝於第一複製系統,以產生第二複製系統。計算機裝置對第二複製系統進行兼容性測試。計算機裝置依據兼容性測試的結果,決定是否安裝更新文件或新軟體至作業系統。
[0010]本發明實施例提供一種軟體兼容性測試系統,此軟體兼容性測試系統包括雲端主機系統。雲端主機系統提取運作其上的第一虛擬機器作業系統的系統與軟體信息。雲端主機系統於檢測到運作其上的第一虛擬機器的作業系統需要安裝一更新文件或一新軟體時,判斷是否進行兼容性測試。雲端主機系統於判斷進行兼容性測試時,產生具有第一複製系統的第二虛擬機器,其中第一複製系統根據系統與軟體信息產生。雲端主機系統將更新文件或新軟體安裝於第二虛擬機器的第一複製系統,以產生具有第二複製系統的第二虛擬機器。雲端主機系統對第二複製系統進行兼容性測試。雲端主機依據兼容性測試的結果,決定是否安裝更新文件或新軟體至第一虛擬機器的虛擬機器作業系統,或者決定切換至具有第二複製系統第二虛擬機器。
[0011]本發明實施例提供一種軟體兼容性測試系統,此軟體兼容性測試系統包括計算機裝置與雲端主機系統,且雲端主機系統通過網際網路連接計算機裝置。計算機裝置提取作業系統的系統與軟體信息至雲端主機系統。計算機裝置或雲端主機系統於檢測到作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試。計算機裝置或雲端主機系統於判斷進行兼容性測試時,雲端主機系統產生具有第一複製系統的虛擬機器,其中第一複製系統根據計算機裝置的系統與軟體信息產生。雲端主機將更新文件或新軟體安裝於第一複製系統,以產生第二複製系統。雲端主機系統對第二複製系統進行兼容性測試。計算機裝置依據兼容性測試的結果,決定是否安裝更新文件或新軟體至計算機裝置的作業系統。
[0012]綜合上所述,本發明多個實施例提供了軟體兼容性預先測試方法與其系統,其可以在安裝新軟體或更新文件之前預先地檢測安裝新軟體或更新文件對於目前作業系統的兼容性,從而避免在產生不兼容問題後,還要將作業系統進行還原的麻煩以及系統無法還原恢復實造成的重大損失。
[0013]為使能更進一步了解本發明的特徵及技術內容,請參閱以下有關本發明的詳細說明與附圖,但是此等說明與所附圖式僅用來說明本發明,而非對本發明的權利要求範圍作任何的限制。

【專利附圖】

【附圖說明】
[0014]圖1是本發明實施例的軟體兼容性預先測試方法的流程圖。
[0015]圖2A是本發明實施例的計算機裝置的方塊圖。
[0016]圖2B是本發明實施例的雲端主機系統的方塊圖。
[0017]圖3A與圖3B是本發明實施例的軟體兼容性預先測試方法的示意圖。
[0018]圖4A與圖4B是本發明另一實施例的軟體兼容性預先測試方法的示意圖。
[0019]圖5是本發明實施例的軟體兼容性預先測試系統的示意圖。
[0020]圖6A與圖6B是本發明另一實施例的軟體兼容性預先測試方法的示意圖。
[0021]【符號說明】
[0022]SlOl ?SI 13、S301 ?S306、S401 ?S406、S601 ?S606:步驟流程
[0023]2:計算機裝置
[0024]21、211』:處理單元
[0025]22、212』:存儲單元
[0026]23、213』:儲存單元
[0027]24、214』:輸出/輸入單元
[0028]25、215』:通信單元
[0029]2』:雲端主機系統
[0030]21』、451、452:底層監控作業系統
[0031]22』、23』:虛擬機器
[0032]221』:虛擬處理單元
[0033]222』:虛擬存儲單元
[0034]223』:虛擬儲存單元
[0035]224』:虛擬輸出/輸入單元
[0036]225』:虛擬通信單元
[0037]311、312、411、412、611、612:作業系統
[0038]321、421、621:組態資料庫
[0039]331、431、631:資源庫
[0040]341 ?344、441、442、641 ?644:複製系統
[0041]5:軟體兼容性預先測試系統
[0042]51:計算機裝置
[0043]52:網際網路
[0044]53:雲端主機系統

【具體實施方式】
[0045]在下文將參看隨附圖式更充分地描述各種例示性實施例,在隨附圖式中展示一些例示性實施例。然而,本發明概念可能以許多不同形式來體現,且不應解釋為限於本文中所闡述的例示性實施例。確切而言,提供此等例示性實施例使得本發明將為詳盡且完整,且將向本領域的普通技術人員充分傳達本發明概念的範疇。在諸圖式中,可為了清楚而誇示層及區的大小及相對大小。類似數字始終指示類似元件。
[0046]應理解,雖然本文中可能使用術語第一、第二、第三等來描述各種元件,但此等元件不應受此等術語限制。此等術語乃用以區分一元件與另一元件。因此,下文論述的第一元件可稱為第二元件而不偏離本發明概念的教示。如本文中所使用,術語「或」視實際情況可能包括相關聯的列出項目中的任一者或者多者的所有組合。
[0047]本發明實施例提供了一種軟體兼容性預先測試方法,此軟體兼容性預先測試方法可以自動化地預先檢查在對目前作業系統安裝新軟體或更新文件後,作業系統與安裝於其中的軟體是否有不兼容的問題,也即可以預先檢測新軟體或更新文件對於目前作業系統的兼容性。通過軟體兼容性預先測試方法預先地檢測兼容性,信息人員可以依據檢測的結果進一步地決定是否安裝新軟體或更新文件。如此,將可以有效地減少用以備份所造成的儲存空間的耗用,以及減輕信息人員對作業系統進行新軟體或更新文件安裝的工作的負擔。另外,基於上述的軟體兼容性預先測試方法,本發明實施例還提供了一種執行軟體兼容性預先測試方法的軟體兼容性預先測試系統。
[0048]請參閱圖1,圖1是本發明實施例的軟體兼容性預先測試方法的流程圖。本發明實施例的軟體兼容性預先測試方法執行於軟體兼容性預先測試系統,所述軟體兼容性預先測試系統可以單純地由計算機裝置或雲端主機系統實現,或者由計算機裝置與雲端主機系統所形成的系統所實現。
[0049]首先,在步驟SlOl中,計算機裝置或雲端主機系統的底層監控作業系統(Hypervisor)判斷是否提取系統與軟體信息,其中系統信息例如是系統版本、系統機碼、系統相關設定信息,而軟體信息例如是應用軟體名稱、應用軟體版本、應用軟體設定文件等應用軟體信息。若判斷要提取系統與軟體信息,則執行步驟S102 ;若判斷不要提取系統與軟體信息,則於步驟SlOl等待,等到要提取系統與軟體信息,才執行步驟S102。上述是否要提取系統與軟體信息的判斷方式可以通過判斷作業系統的時間是否到達特定時間(也即定時地提取系統與軟體信息),或者是判斷收到特定指令來提取系統與軟體信息。總而言之,本發明並不限制步驟SlOl的詳細實現方式。
[0050]接著,在步驟S102中,計算機裝置或雲端主機系統的底層監控作業系統通過軟體代理器(software agent),例如剖析器(parser),提取系統與軟體信息。另外,本發明並不限制系統與軟體信息的類型。於本發明實施例中,系統與軟體信息可以例如包括作業系統版本(例如:Windows7或Android4.1)、作業系統相關設定(例如系統設定文件、登錄文件、登錄機碼或移動裝置的設定)、應用軟體版本(例如文字處理軟體的版本或手機傳訊程序的版本)、應用軟體設定文件(例如網頁瀏覽器或編輯軟體相關設定文件)與作業系統及應用軟體安裝更新清單的至少其中之一。
[0051]於本發明實施例中,計算機裝置或雲端主機系統的底層監控作業系統可以被設定定時地提取系統與軟體信息;或者,計算機裝置或雲端主機系統的底層監控作業系統可以在計算機裝置或雲端主機系統的虛擬機器的作業系統或應用軟體初始安裝時,提取系統與軟體信息;又或者,計算機裝置或雲端主機系統的底層監控作業系統可以在使用時根據特定事件(例如刪除軟體或更改軟體設定等行為)的發生來提取系統與軟體信息。總而言之,何時讓計算機裝置或雲端主機系統的底層監控作業系統提取系統與軟體信息的設計方式並非用以限制本發明。
[0052]然後,在步驟S103中,計算機裝置或雲端主機系統的底層監控作業系統檢測作業系統是否須安裝更新文件(例如作業系統或軟體的更新文件,也即更新作業系統或軟體)或新軟體。若檢測到有新軟體或更新文件要安裝,則執行步驟S104,若未檢測到有新軟體與更新檔要安裝,則執行步驟S112。上述是否有新軟體或更新文件要安裝的判斷方式可以是計算機裝置或雲端主機系統的底層監控作業系統判斷使用者是否點選特定檔案,以執行新軟體或更新文件的安裝程序,或者是計算機裝置或雲端主機系統的底層監控作業系統自動地下載更新文件或新軟體的檔案,並於背景自動地執行更新文件或新軟體的安裝程序。總而言之,本發明並不限制步驟S103的詳細實現方式。
[0053]接著,在步驟S104中,計算機裝置或雲端主機系統的底層監控作業系統判斷是否進行兼容性測試。若判斷要進行兼容性測試,則執行步驟S105,若判斷不要進行兼容性測試,則執行步驟S112。上述是否進行兼容性測試的判斷方式可以是計算機裝置或雲端主機系統的底層監控作業系統通過判斷使用者或信息人員是否點選同意進行兼容性測試的確認方框,或者是計算機裝置或雲端主機系統的底層監控作業系統判斷目前的環境資源是否適合進行兼容性測試。總而言之,本發明並不限制步驟S104的詳細實現方式。
[0054]接著,在步驟S105中,計算機裝置或雲端主機系統的底層監控作業系統依據系統與軟體信息產生具有複製系統的虛擬機器。更精確地說,計算機裝置或雲端主機系統的底層監控作業系統先依據系統與軟體信息中的作業系統版本與作業系統相關設定產生一個乾淨的作業系統的虛擬機器,其中乾淨的作業系統係指具有複製系統的虛擬機器僅安裝初始的作業系統及所需應用軟體,而無多餘的系統設定以及人為操作使用產生的數據。接著,再依據系統與軟體信息中的應用軟體版本、應用軟體設定文件與作業系統及應用軟體安裝更新清單重現計算機裝置或雲端主機系統的虛擬機器的作業系統。換言之,虛擬機器的複製系統功能上相同或相似於計算機裝置或雲端主機系統的虛擬機器的作業系統。
[0055]另外,上述步驟S105並非用以限制本發明。步驟S105也可以其他的方式實現。舉例來說,為了減少產生複製系統的時間,計算機裝置或雲端主機系統的底層監控作業系統儲存有預先產生的作業系統,此預先產生的作業系統可以具有常用的軟體。接著,計算機裝置或雲端主機系統的底層監控作業系統再依據系統與軟體信息調整此預先產生的作業系統與軟體的設定,以及增補安裝計算機裝置的作業系統有但預先產生作業系統所沒有的軟體,以重現計算機裝置或雲端主機系統的虛擬機器的作業系統。
[0056]接著,在步驟S106中,計算機裝置或雲端主機系統的底層監控作業系統提取所有數據中可用以進行兼容性測試的相應數據,並將相應數據複製到虛擬機器的複製系統中,也即相應數據為作業系統中所有數據的子集合,且所有數據中用以進行兼容性測試所需要使用的數據。在此請注意,為了避免相應數據可能更新,計算機裝置或雲端主機系統的底層監控作業系統系在產生複製系統的虛擬機器後,才提取相應數據,並將相應數據複製到複製系統中,以藉此確保兼容性測試的正確性。然後,在步驟S107中,計算機裝置或雲端主機系統的底層監控作業系統將更新文件或新軟體安裝至虛擬機器的複製系統中。
[0057]於本發明實施例中,計算機裝置或雲端主機系統的底層監控作業系統可以在作業系統或應用軟體初始安裝時,進行安裝流程或安裝設定腳本側錄以產生對應的安裝腳本(script),並使用安裝腳本產生複製系統的虛擬機器;或者,計算機裝置或雲端主機系統的底層監控作業系統使用作業系統中定期備份複製系統與軟體信息時,產生複製系統的虛擬機器;又或者,計算機裝置或雲端主機系統的底層監控作業系統可以在使用時根據特定事件(例如刪除軟體或更改軟體設定等行為)的發生進行備份複製時,產生複製系統的虛擬機器。
[0058]緊接著,在步驟S108中,計算機裝置或雲端主機系統的底層監控作業系統可通過主動式檢測程序進行兼容性測試。此處的兼容性測試可以包括對已安裝更新文件或新軟體的複製系統的功能進行測試、對已安裝更新文件或新軟體的複製系統與作業系統進行系統狀態比對與對已安裝更新文件或新軟體的複製系統與作業系統的使用者經驗進行比對的至少其中之一。
[0059]更精確地說,計算機裝置或雲端主機系統的底層監控作業系統可以對已安裝更新文件或新軟體的複製系統執行特定關聯軟體功能的開啟、關閉與輸入輸出值檢查(例如網頁程序執行對資料庫查詢數據的動作),以對已安裝更新文件或新軟體的複製系統的功能進行測試;或者,計算機裝置或雲端主機系統的底層監控作業系統同時提取作業系統與已安裝更新文件或新軟體的複製系統執行中產生的系統信息(如軟體錯誤信息或內存信息)進行比對,以對複製系統與作業系統進行系統狀態比對;又或者,計算機裝置或雲端主機系統於作業系統與已安裝更新文件或新軟體的複製系統中不斷進行切換,並且檢測使用者或系統中軟體在此兩個系統切換間的使用狀態與行為的至少其中之一(例如,使用者是否無法填寫特定欄位的數據,而時常地開啟特定窗口,或作業系統指令間的延遲時間)是否有改變,以對已安裝更新文件或新軟體的複製系統與作業系統的使用者經驗進行比對。
[0060]之後,在步驟S109中,計算機裝置或雲端主機系統的底層監控作業系統回報兼容性測試結果給使用者或信息人員知悉,例如提供一人機互動接口回報系統兼容性狀態或錯誤修正建議。值得一提的是,步驟S109於本發明實施例中可以被移除,也即可以選擇不將兼容性測試結果回報給使用者知悉。
[0061]然後,在步驟SllO中,計算機裝置或雲端主機系統的底層監控作業系統決定是否安裝更新文件或新軟體,或者雲端主機系統的底層監控作業系統決定是否切換至新作業系統,其中新作業系統為已安裝更新文件或新軟體的複製系統。若決定安裝更新檔或新軟體,或者決定切換至新作業系統,則執行步驟Slll ;若決定不安裝更新檔或新軟體,且決定不切換至新作業系統,則執行步驟S112。上述是否安裝更新文件或新軟體的判斷方式可以是計算機裝置或雲端主機系統的底層監控作業系統依據兼容性測試結果自動地決定是否安裝更新檔或新軟體,也可以是使用者或信息人員依據兼容性測試結果來下達指令指示計算機裝置或雲端主機系統的底層監控作業系統決定是否安裝更新文件或新軟體。
[0062]之後,於步驟Slll中,計算機裝置或雲端主機系統的底層監控作業系統安裝更新文件或新軟體至計算機裝置或雲端主機系統的虛擬機器的作業系統,或者,將雲端主機系統自具有作業系統的虛擬機器切換至具有新作業系統(安裝有更新文件或新軟體的複製系統)的虛擬機器。然後,於步驟S112中,計算機裝置或雲端主機系統的底層監控作業系統記錄更新結果。計算機裝置或雲端主機系統的底層監控作業系統根據不同的情況而有不同的更新結果。
[0063]接著,在步驟S113中,計算機裝置或雲端主機系統的底層監控作業系統依據更新結果進行相應通知。在此請注意,步驟S113的有無並非用以限制本發明。舉例來說,計算機裝置或雲端主機系統的底層監控作業系統可以自動地排序下一次檢查更新的時間,而不再另外地進行通知使用者或信息人員。
[0064]更詳細地說,若檢測作業系統不需安裝更新文件或新軟體,或者判斷不進行兼容性測試,則此處的更新結果會記錄未進行,且作業系統可周期性地通知使用者或信息人員進行兼容性測試與安裝更新文件或新軟體。若在進行兼容性測試後,安裝更新文件或者已切換至新作業系統使用,則此處的更新結果會記錄何項更新文件或何種新軟體已安裝,並通知使用者或信息人員更新文件或新軟體已安裝的信息。若在進行兼容性測試後,未安裝更新文件且未切換至新作業系統使用,則此處的更新結果會記錄已診測更新文件或新軟體,且作業系統可周期性地通知使用者或信息人員是否進行更新文件或新軟體的安裝。
[0065]在此請注意,由於本發明實施例的軟體兼容性預先測試方法在安裝更新文件與新軟體前預先地測試其兼容性,故不需要將整個作業系統與安裝於其中的軟體進行全系統快照,而僅是單純地提取系統與軟體信息。如此,相較於全系統快照的技術,本發明實施例的軟體兼容性預先測試方法可以將儲存空間的耗用量從數千兆位組降至數兆字節。除此之夕卜,圖1的各步驟的順序並非用以限制本發明,在其他實施例中,圖1的各步驟的順序可以略微地調換。舉例來說,不考慮相應數據是否為最新的相應數據,則步驟S105與S106可以互相調換;或者,步驟S106與S107可以調換,也即先安裝更新文件或新軟體至虛擬機器的複製系統後,才提取相應數據至複製系統中。
[0066]上述軟體兼容性預先測試方法執行於軟體兼容性預先測試系統中,而且如同前面所述軟體兼容性預先測試系統可以由計算機裝置、雲端主機系統或計算機裝置加上雲端主機系統來實現。請接著參照圖2A,圖2A是本發明實施例的計算機裝置的方塊圖。計算機裝置2包括處理單元21、存儲單元22、儲存單元23、輸出/輸入單元24與通信單元25。處理單元21電性連接存儲單元22、儲存單元23、輸出/輸入單元24與通信單元25。處理單元21用以接取存儲單元22與儲存單元23的數據,且用以控制輸出/輸入單元24與通信單元25。
[0067]於本發明實施中,軟體兼容性預先測試方法的程序代碼與前述作業系統或安裝的軟體的相應數據等可以儲存在儲存單元23。存儲單元22用以暫存處理單元21產生的數值或數據。輸出/輸入單元24作為計算機裝置2與使用者或信息人員溝通的界面。通信單元25用以讓計算機裝置2與其他的計算機裝置或雲端主機系統進行連接。
[0068]請接著參照圖2B,圖2B是本發明實施例的雲端主機系統的方塊圖。雲端主機系統2』具有底層監控作業系統21』與兩個以上的虛擬機器22』、23』。在此請注意,虛擬機器22』、23』與底層監控作業系統21』之間並非物理實體連接,虛擬機器22』、23』由底層監控作業系統21』進行資源配置所產生。
[0069]底層監控作業系統21』具有處理單元211』、存儲單元212』、儲存單元213』、輸出/輸入單元214』與通信單元215』。處理單元211』電性連接存儲單元212』、儲存單元213』、輸出/輸入單元214』與通信單元215』。處理單元211』用以接取存儲單元212』與儲存單元213』的數據,且用以控制輸出/輸入單元214』與通信單元215』。
[0070]軟體兼容性預先測試方法的程序代碼與前述作業系統或安裝的軟體的相應數據等可以儲存在儲存單元213』。存儲單元212』用以暫存處理單元211』產生的數值或數據。輸出/輸入單元214』作為底層監控作業系統21』與使用者或信息人員溝通的接口。通信單元215』用以讓底層監控作業系統21』與其他的計算機裝置或雲端主機系統進行連接。
[0071]底層監控作業系統21』將其處理單元211』、存儲單元212』、儲存單元213』、輸出/輸入單元214』與通信單元215』的資源依照虛擬機器22』、23』的需求進行虛擬化配置,以產生虛擬機器22 』與23 』。虛擬機器22 』與23包含各自獨立或相異的作業系統(如Microsoft、Linux、Mac 0SX、Android等作業系統,但本發明並不以此為限)。另外,虛擬機器22』與23』具有各自獨立的虛擬處理單元、虛擬儲存單元、虛擬存儲單元、虛擬輸出/輸入單元與虛擬通信單元。
[0072]舉例來說,虛擬機器22』具有虛擬處理單元221』、虛擬存儲單元222』、虛擬儲存單元223』、虛擬輸出/輸入單元224』與虛擬通信單元225』,其中虛擬處理單元221』邏輯上連接(非物理的實體連接)虛擬存儲單元222』、虛擬儲存單元223』、虛擬輸出/輸入單元224』與虛擬通信單元225』。虛擬處理單元221』用以接取虛擬存儲單元222』與虛擬儲存單元223』的數據,且用以控制虛擬輸出/輸入單元224』與虛擬通信單元225』。
[0073]軟體兼容性預先測試方法的程序代碼與前述作業系統或安裝的軟體的相應數據等可以儲存在虛擬儲存單元223』。虛擬存儲單元222』用以暫存虛擬處理單元221』產生的數值或數據。虛擬輸出/輸入單元224』作為虛擬機器22』與使用者或信息人員溝通的接口。虛擬通信單元225』用以使虛擬機器22』與其他的計算機裝置或雲端主機系統進行連接。
[0074]然後,請參照圖3A與圖3B,圖3A與圖3B是本發明實施例的軟體兼容性預先測試方法的示意圖。於此實施例中,所述軟體兼容性預先測試系統可以僅由一個計算機裝置所構成,但本發明並不限制於此。計算機裝置的作業系統311具有數據、應用程式組態與系統組態儲存於計算機裝置的儲存單元。另外,儲存單元還有組態資料庫321與資源庫(resource pool )331,其中組態資料庫321用以儲存至少一個系統組態,而資源庫331存有各應用程式的安裝文件與作業系統的系統更新文件。
[0075]於步驟S301中,計算機裝置提取作業系統311的應用程式組態與系統組態(也就是前述的系統與軟體信息)至組態資料庫321中。當使用者或信息人員通過使用者接口或系統判斷確認測試軟體兼容性時,步驟S302會開始執行。在步驟S302中,產生具有複製系統341的虛擬機器,其中複製系統341功能上相同或相似於作業系統311。步驟S302的細節描述如下。首先,計算機裝置依據組態資料庫321中的系統組態產生一個具有乾淨的複製系統的虛擬機器於計算機裝置中。接著,通過自動化安裝程序將相應的應用程式的安裝文件與作業系統的系統更新文件安裝至乾淨的複製系統,並依據應用程式組態與系統組態調整應用程式或作業系統的相關設定。接著,計算機裝置自作業系統311提取相應數據至複製系統,以產生功能上相同或相似於作業系統311的複製系統341。
[0076]之後,在步驟S303中,更新文件或新軟體被安裝至複製系統341中,以產生安裝更新文件或新軟體的複製系統342。然後,在步驟S304中,將兼容性測試程序導入複製系統342的虛擬機器中,以產生複製系統343,其中兼容性測試程序為自動化腳本,其用以對複製系統342執行特定關聯軟體功能的開啟、關閉與輸入輸出值檢查。舉例來說,若特定關聯軟體功能的開啟、關閉與輸入輸出值正常的次數大於一定的門限值,則可以認為更新文件或新軟體通過兼容性測試。在步驟S305中,計算機裝置通過人機互動接口回報系統兼容性狀態或錯誤修正,於此步驟S305中,複製系統343的兼容性測試程序經過執行後,產生具有系統兼容性狀態表示更新文件或新軟體通過兼容性測試的複製系統344。然後,在步驟S306中,使用者或信息人員通過使用者接口確認將更新文件或新軟體安裝至作業系統311,以將作業系統311變為安裝更新文件或新軟體的作業系統312。
[0077]之後,請參照圖4A與圖4B,圖4A與圖4B是本發明另一實施例的軟體兼容性預先測試方法的示意圖。於此實施例中,所述軟體兼容性預先測試系統可以僅由一個雲端主機系統所構成,但本發明卻不限定於此。雲端主機系統的中運行的虛擬機器的作業系統411具有數據、應用程式組態與系統組態儲存於雲端系統主機的儲存單元。另外,儲存單元還有組態資料庫421與資源庫431,資源庫431存有各應用程式的安裝文件與作業系統的系統更新文件。
[0078]於步驟S401中,雲端主機系統提取虛擬機器的作業系統411的應用程式組態與系統組態(也就是前述的系統與軟體信息)至組態資料庫421中,其中組態資料庫421用以儲存至少一個系統組態。當使用者或信息人員通過者接口確認測試軟體兼容性時,步驟S402會開始執行。在步驟S402中,產生功能上相同或相似作業系統411的複製系統441。步驟S402的細節描述如下。首先,雲端主機系統依據組態資料庫421中的系統組態產生一個具有乾淨的複製系統的虛擬機器於雲端主機系統中。接著,將相應的應用程式的安裝文件與作業系統的系統更新文件安裝至乾淨的複製系統,並依據應用程式組態與系統組態調整應用程式或作業系統的相關設定。接著,雲端主機系統自其虛擬機器的作業系統411提取相應數據至複製系統441,以產生功能上相同或相似於作業系統411的複製系統441。
[0079]之後,在步驟S403中,更新文件或新軟體被安裝至複製系統441中,以產生安裝更新文件或新軟體的複製系統442。然後,在步驟S404中,雲端主機系統的底層監控作業系統451的兼容性測試程序用以提取作業系統411與已安裝更新文件或新軟體的複製系統442執行中產生的系統信息(如軟體錯誤信息或內存信息)並進行比對,並且兼容性測試程序在複製系統442與作業系統411之間切換,檢測使用者或系統中軟體在此兩個系統切換間的使用狀態與行為的至少其中之一是否有改變(例如,使用者是否無法填寫特定欄位的數據,而時常地開啟特定窗口,或作業系統指令間的延遲時間)。由於此處的步驟S404需要對作業系統411與已安裝更新文件或新軟體的複製系統442進行切換,故兼容性測試程序會儲存在雲端主機的底層監控作業系統451中,且可被底層監控作業系統451執行。
[0080]舉例來說,若比對的系統信息相同的數量大於一定的門坎值,且/或使用狀態的改變幅度不大,則可以認為更新文件或新軟體通過兼容性測試,以上說明僅作為舉例,不限制本發明使用範圍使用方法或其結合的步驟、順序。在步驟S405中,兼容性測試程序451經過執行後,產生具有系統兼容性狀態表示更新文件或新軟體通過兼容性測試的信息的雲端主機系統的底層監控作業系統452。然後,在步驟S406中,使用者或信息人員通過使用者接口確認將更新文件或新軟體安裝至虛擬機器的作業系統411,以將虛擬機器的作業系統411變為已安裝更新檔或新軟體的虛擬機器的作業系統412,或者,使用者或信息人員通過使用者接口確認將複製系統442取代作業系統411,並將虛擬機器的作業系統411中的剩餘數據(所有數據中除了相應數據之外的其他數據)同步複製轉移到複製系統442。
[0081]在此請注意,步驟S404也可以僅提取作業系統411與已安裝更新文件或新軟體的複製系統442執行中產生的系統信息(如軟體錯誤信息或內存信息)並進行比對,或者僅在複製系統442與作業系統411之間切換,檢測使用者或系統中軟體在此兩系統切換間的使用狀態與行為的至少其中之一是否有改變。總而言之,步驟S404的實現方式並非用以限制本發明。
[0082]倘若步驟S404僅提取作業系統411與已安裝更新文件或新軟體的複製系統442執行中產生的系統信息並進行比對(也即,不需要對作業系統411與已安裝更新文件或新軟體的複製系統442進行切換),則兼容性測試程序451可以被引入至虛擬機器的複製系統442中,且被複製系統442所執行。另外,接著在步驟S405中,產生具有系統兼容性狀態表示更新文件或新軟體通過兼容性測試的複製系統442。
[0083]再來,請參照圖5,圖5是本發明實施例的軟體兼容性預先測試系統的示意圖。於本發明實施例中,軟體兼容性預先測試系統5由計算機裝置51與雲端主機系統53所構成,其中計算機裝置51通過網際網路52連接雲端主機系統53。使用者可以通過計算機裝置51來使用雲端主機系統53,或者直接地操作雲端主機系統53。雲端主機系統53可具有主控權,而能夠控制計算機裝置51進行軟體或作業系統的更新與安裝,然而,本發明並不限制於此,也即計算機裝置51本身也可以具有主控權。
[0084]最後,請參照圖6A與圖6B,圖6A與圖6B是本發明另一實施例的軟體兼容性預先測試方法的示意圖。於此實施例中,所述軟體兼容性預先測試系統由一個計算機裝置與雲端主機系統所構成。計算機裝置的作業系統611具有數據、應用程式組態與系統組態儲存於計算機裝置的儲存單元。另外,雲端主機系統的儲存單元還有組態資料庫621與資源庫631,其中組態資料庫621用以儲存至少一個系統組態,而資源庫631存有各應用程式的安裝文件與作業系統的系統更新文件。
[0085]於步驟S601中,計算機裝置提取作業系統611的應用程式組態與系統組態(也就是前述的系統與軟體信息)至雲端主機系統的組態資料庫621中。當使用者或信息人員通過使用者接口確認測試軟體兼容性時(可由計算機裝置或雲端主機系統進行判斷),步驟S602會開始執行。在步驟S602中,產生功能上相同或相似於作業系統611的複製系統641於雲端主機系統的虛擬機器。步驟S602的細節描述如下。首先,雲端主機系統依據組態資料庫621中的系統組態產生一個具有乾淨的複製系統的虛擬機器於雲端主機系統中。接著,將相應的應用程式的安裝文件與作業系統的系統更新文件安裝至乾淨的複製系統,並依據應用程式組態與系統組態調整應用程式或作業系統的相關設定。接著,雲端主機系統自計算機裝置的作業系統611提取相應數據至複製系統,以產生功能上相同或相似作業系統611的複製系統641。
[0086]之後,在步驟S603中,更新文件或新軟體被安裝至複製系統641中,以產生安裝更新文件或新軟體的複製系統642。然後,在步驟S604中,將兼容性測試程序導入複製系統642的虛擬機器中,以產生複製系統643,兼容性測試程序用以提取作業系統611與已安裝更新文件或新軟體的複製系統642執行中產生的系統信息(如軟體錯誤信息與內存信息的至少其中之一,但本發明不限定於此)進行比對,並且兼容性測試程序對複製系統642執行特定關聯軟體功能的開啟、關閉與輸入輸出值檢查。舉例來說,若比對的系統信息相同的數量大於一定的門限值,且特定關聯軟體功能的開啟、關閉與輸入輸出值正常的次數也大於一定的門限值,則可以認為更新文件或新軟體通過兼容性測試。在步驟S605中,複製系統643的兼容性測試程序經過執行後,產生具有系統兼容性狀態表示更新文件或新軟體通過兼容性測試的複製系統644。然後,在步驟S606中,使用者或信息人員通過使用者接口確認將更新文件或新軟體安裝至作業系統611 (由計算機裝置執行),以將作業系統611變為安裝更新文件或新軟體的作業系統612。
[0087]綜合以上所述,本發明多個實施例提供了軟體兼容性預先測試方法與其系統,其可以在安裝新軟體或更新文件之前預先地檢測安裝新軟體或更新文件對於目前作業系統的兼容性,從而避免在產生不兼容問題後,還要將作業系統進行還原的麻煩,故可以減少信息人員安裝新軟體或更新文件的負擔,以及提升使用者對更新檔的信任,以提升信息安全。另外,上述軟體兼容性預先測試方法與其系統並不會造成儲存空間大量的耗用,且實施方式單純而能具體實施,故具有相當的經濟實益。
[0088]以上所述,僅為本發明的優選的具體實施例,然而本本發明的特徵並不局限於此,任何本領域的普通技術人員可輕易思及的變化或修飾,皆可涵蓋在以下本發明的專利範圍。
【權利要求】
1.一種軟體兼容性預先測試方法,其特徵在於,所述軟體兼容性預先測試方法包括: 提取作業系統的系統與軟體信息; 於檢測到所述作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試; 於判斷進行所述兼容性測試時,產生具有第一複製系統的虛擬機器,其中所述第一複製系統是根據所述系統與軟體信息而產生的; 將所述更新文件或所述新軟體安裝於所述第一複製系統,以產生第二複製系統; 對所述第二複製系統進行所述兼容性測試;以及 依據所述兼容性測試的結果來決定是否將所述更新文件或新軟體安裝至所述作業系統,或者切換至所述第二複製系統。
2.根據權利要求1所述的軟體兼容性預先測試方法,其特徵在於,於判斷進行所述兼容性測試時,提取所述作業系統的所有數據中能用以進行所述兼容性測試的相應數據,以產生所述虛擬機器,且所述第一複製系統是根據所述系統與軟體信息與所述相應數據而產生的。
3.根據權利要求1所述的軟體兼容性預先測試方法,其特徵在於,所述軟體兼容性預先測試方法還包括: 於決定將所述更新文件或所述新軟體安裝至所述作業系統,或者決定切換至所述第二複製系統時,則將所述更新文件或所述新軟體安裝至所述作業系統,或者切換至所述第二複製系統。
4.根據權利要求2所述的軟體兼容性預先測試方法,其特徵在於,於產生所述第一複製系統的步驟中,依據所述系統與軟體信息在所述虛擬機器中產生乾淨的第三複製系統,接著,依據所述系統與軟體信息將所述作業系統已經安裝的軟體與更新文件安裝至所述第三複製系統,以產生第四複製系統,並且接著提取所述相應數據至所述第四複製系統,以產生所述第一複製系統。
5.根據權利要求1所述的軟體兼容性預先測試方法,其特徵在於,於產生所述第一複製系統的步驟中,提取預先產生的常用作業系統,且所述常用作業系統具有常用的軟體,接著,依據所述系統與軟體信息來調整所述常用作業系統與所述常用作業系統的軟體的設定,以及增補安裝所述作業系統有而所述常用作業系統沒有的軟體,以產生所述第一複製系統。
6.根據權利要求1所述的軟體兼容性預先測試方法,其特徵在於,所述系統與軟體信息包括作業系統版本、作業系統相關設定、應用軟體版本、應用軟體設定文件與作業系統、及應用軟體安裝更新清單的至少其中之一。
7.根據權利要求1所述的軟體兼容性預先測試方法,其特徵在於,所述兼容性測試包括對所述第二複製系統的功能進行測試、對所述第二複製系統與所述作業系統進行系統狀態比對及對所述第二複製系統與所述作業系統的使用者經驗進行比對的至少其中之一。
8.根據權利要求7所述的軟體兼容性預先測試方法,其特徵在於,對所述第二複製系統執行特定關聯軟體功能的開啟、關閉與輸入輸出值檢查,以對所述第二複製系統的功能進行測試。
9.根據權利要求7所述的軟體兼容性預先測試方法,其特徵在於,提取所述作業系統與所述第二複製系統執行中產生的系統信息進行比對,以對所述第二複製系統與所述作業系統進行系統狀態比對。
10.根據權利要求7所述的軟體兼容性預先測試方法,其特徵在於,於所述作業系統與所述第二複製系統中不斷進行切換,並且檢測使用者或系統中的軟體在所述作業系統與所述第二複製系統切換時的使用狀態是否有改變,以對所述第二複製系統與所述作業系統的使用者經驗進行比對。
11.一種軟體兼容性測試系統,其特徵在於,所述軟體兼容性測試系統包括: 計算機裝置; 其中所述計算機裝置提取作業系統的系統與軟體信息;所述計算機裝置於檢測到所述作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試;所述計算機裝置於判斷進行所述兼容性測試時,產生具有第一複製系統的虛擬機器,其中所述第一複製系統是根據所述系統與軟體信息而產生的;所述計算機裝置將所述更新文件或所述新軟體安裝於所述第一複製系統,以產生第二複製系統;所述計算機裝置對所述第二複製系統進行所述兼容性測試;所述計算機裝置依據所述兼容性測試的結果來決定是否將所述更新文件或所述新軟體安裝至所述作業系統。
12.根據權利要求11所述的軟體兼容性測試系統,其特徵在於,於判斷進行所述兼容性測試時,所述計算機裝置提取所述作業系統的所有數據中能用以進行所述兼容性測試的相應數據,以產生所述虛擬機器,且所述第一複製系統是根據所述系統與軟體信息與所述相應數據而產生的。
13.一種軟體兼容性測試系統,其特徵在於,所述軟體兼容性測試系統包括: z?端王機系統; 其中所述雲端主機系統提取運作其上的第一虛擬機器的作業系統的系統與軟體信息;所述雲端主機系統於檢測到所述作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試;所述雲端主機系統於判斷進行所述兼容性測試時,產生具有第一複製系統的第二虛擬機器,其中所述第一複製系統是根據所述系統與軟體信息而產生的;所述雲端主機系統將所述更新文件或所述新軟體安裝於所述第二虛擬機器的所述第一複製系統,以產生具有第二複製系統的所述第二虛擬機器;所述雲端主機系統對所述第二複製系統進行所述兼容性測試;所述雲端主機系統依據所述兼容性測試的結果來決定是否將所述更新檔或所述新軟體安裝至所述第一虛擬機器的所述作業系統,或者決定切換至具有第二複製系統的所述第二虛擬機器。
14.根據權利要求13所述的軟體兼容性測試系統,其特徵在於,於判斷進行所述兼容性測試時,所述雲端主機系統提取所述作業系統的所有數據中能用以進行所述兼容性測試的相應數據,以產生所述虛擬機器,且所述第一複製系統是根據所述系統與軟體信息與所述相應數據而產生的。
15.一種軟體兼容性測試系統,其特徵在於,所述軟體兼容性測試系統包括: 計算機裝置;以及 雲端主機系統,通過網際網路連接所述計算機裝置; 其中所述計算機裝置提取作業系統的系統與軟體信息至所述雲端主機系統;所述計算機裝置或所述雲端主機系統於檢測到所述作業系統需要安裝更新文件或新軟體時,判斷是否進行兼容性測試;所述計算機裝置或所述雲端主機系統於判斷進行所述兼容性測試時,以產生具有第一複製系統的虛擬機器,其中所述第一複製系統是根據所述系統與軟體信息而產生的;所述雲端主機系統將所述更新文件或所述新軟體安裝於所述第一複製系統,以產生第二複製系統;所述雲端主機系統對所述第二複製系統進行所述兼容性測試;所述計算機裝置依據所述兼容性測試的結果來決定是否將所述更新文件或所述新軟體安裝至所述計算機裝置的所述作業系統。
16.根據權利要求15所述的軟體兼容性測試系統,其特徵在於,於判斷進行所述兼容性測試時,所述雲端主機系統提取所述作業系統的所有數據中能用以進行所述兼容性測試的相應數據,以產生所述虛擬機器,且所述第一複製系統是根據所述系統與軟體信息與所述相應數據而產生的。
【文檔編號】G06F11/36GK104461858SQ201310487884
【公開日】2015年3月25日 申請日期:2013年10月17日 優先權日:2013年9月23日
【發明者】陳世仁, 郭建廷 申請人:財團法人資訊工業策進會

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀