將應(yīng)用程序安裝到虛擬化環(huán)境中的制作方法
【專利摘要】一種電子設(shè)備具有多個虛擬化環(huán)境。對應(yīng)用程序庫中的應(yīng)用程序的選擇被接收,并且虛擬化環(huán)境被識別以安裝從所述應(yīng)用程序庫中選擇的應(yīng)用程序。
【專利說明】將應(yīng)用程序安裝到虛擬化環(huán)境中
【背景技術(shù)】
[0001]諸如計算機或其它類型電子設(shè)備之類的物理機器能夠被配置為包括能運行各自不同客戶機操作系統(tǒng)的多個虛擬化環(huán)境。這種虛擬化環(huán)境有時也被稱作虛擬機。多個虛擬化環(huán)境在物理機器中的存在允許針對不同操作系統(tǒng)所寫的應(yīng)用程序在相同的物理機器上的不同虛擬化環(huán)境中運行。
【專利附圖】
【附圖說明】
[0002]關(guān)于下圖描述一些實施例:
[0003]圖1A至圖1B為根據(jù)各種實施方式的示例系統(tǒng)的框圖;
[0004]圖2為根據(jù)一些實施方式的從應(yīng)用程序庫加載應(yīng)用程序的過程的流程圖;以及
[0005]圖3為根據(jù)另外的實施方式的系統(tǒng)組件的框圖。
【具體實施方式】
[0006]在電子設(shè)備中,能夠呈現(xiàn)包含表示各自不同應(yīng)用程序的項目的應(yīng)用程序庫的圖形表示。用戶能夠在應(yīng)用程序庫中選擇一個或多個項目,以使各個應(yīng)用程序安裝到電子設(shè)備中。電子設(shè)備的示例包括計算機(桌上型計算機、筆記本電腦、平板電腦等)、個人數(shù)字助理(PDA)、移動電話、電子電器或其它類型的電子設(shè)備。
[0007]應(yīng)用程序庫中的能夠被安裝到電子設(shè)備中的應(yīng)用程序能夠位于各種遠程站點,例如網(wǎng)站或者為應(yīng)用程序提供銷售或免費下載的供應(yīng)商的應(yīng)用程序服務(wù)器。當用戶選擇應(yīng)用程序庫中與給定應(yīng)用程序相對應(yīng)的項目時,電子設(shè)備通過網(wǎng)絡(luò)與遠程站點通信以下載與給定應(yīng)用程序相關(guān)聯(lián)的代碼用于安裝在電子設(shè)備中。與給定應(yīng)用程序相關(guān)聯(lián)的“代碼”指機器可讀指令,一旦機器可讀指令安裝在電子設(shè)備中,機器可讀指令就可在電子設(shè)備上運行。機器可讀指令能夠采用編譯后代碼、腳本或其它形式代碼的形式。將應(yīng)用程序“安裝”到電子設(shè)備中指從源(例如遠程站點)獲得應(yīng)用程序的代碼,并且將該代碼放置于在例如通過用戶或通過應(yīng)用程序調(diào)用時允許代碼運行的狀態(tài)下的電子設(shè)備中。代碼被放置到電子設(shè)備的合適位置,以允許代碼在被調(diào)用時運行。在安裝代碼之前,代碼先前不存在于在響應(yīng)于代碼的調(diào)用允許代碼運行的狀態(tài)下的電子設(shè)備中。
[0008]在一些實施方式中,電子設(shè)備能夠被配置有多個虛擬化環(huán)境(也被稱作“虛擬機”)?!疤摂M化環(huán)境”或“虛擬機”指用于虛擬化或仿真實際機器的組件的布置。在隨后的討論中,術(shù)語“虛擬化環(huán)境”和“虛擬機”可互換使用。如下面進一步討論的那樣,當用戶期望將應(yīng)用程序安裝到電子設(shè)備中時,多個虛擬化環(huán)境在電子設(shè)備中的存在給用戶提出挑戰(zhàn)。例如,應(yīng)用程序可能針對特定操作系統(tǒng)編寫,使得應(yīng)用程序必須安裝在包含特定操作系統(tǒng)的虛擬化環(huán)境中。如果用戶手動確定多個虛擬化環(huán)境中的哪個是適合于應(yīng)用程序安裝的虛擬化環(huán)境,則這對用戶來說可能是挑戰(zhàn)。
[0009]每個虛擬化環(huán)境的組件能夠包括客戶機操作系統(tǒng)和能夠在客戶機操作系統(tǒng)內(nèi)操作的一個或多個應(yīng)用程序。電子設(shè)備中的不同虛擬化環(huán)境能夠包括不同類型的客戶機操作系統(tǒng)(例如,Unix操作系統(tǒng)、Linux操作系統(tǒng)、Windows?操作系統(tǒng)、WebOS或其它類型的操作系統(tǒng))。多個虛擬化環(huán)境在電子設(shè)備中的存在允許在電子設(shè)備中并發(fā)運行針對不同操作系統(tǒng)設(shè)計的應(yīng)用程序。
[0010]在具有多個虛擬化環(huán)境的電子設(shè)備中,由這種電子設(shè)備呈現(xiàn)的應(yīng)用程序庫可以包括用于不同類型操作系統(tǒng)的應(yīng)用程序。與為不同類型操作系統(tǒng)提供不同單個應(yīng)用程序庫的布置相比,在公共應(yīng)用程序庫內(nèi)呈現(xiàn)用于不同類型操作系統(tǒng)的應(yīng)用程序提升了用戶體驗。用戶能夠容易地通過公共應(yīng)用程序庫進行瀏覽以查找用戶可能感興趣的應(yīng)用程序。
[0011]根據(jù)一些實施方式,提供技術(shù)或機制以允許所選擇應(yīng)用程序(通過用戶在包含用于不同類型操作系統(tǒng)的應(yīng)用程序的應(yīng)用程序庫中選擇)自動安裝到包括與所選擇應(yīng)用程序兼容的客戶機操作系統(tǒng)的相應(yīng)虛擬化環(huán)境中。通過使用根據(jù)一些實施方式的技術(shù)或機制,用戶不必手動執(zhí)行分析來確定多個虛擬化環(huán)境中的哪個是適合于所選擇應(yīng)用程序的安裝的虛擬化環(huán)境,而手動執(zhí)行分析對沒有正確訓練或引導的用戶來說可能是挑戰(zhàn)。
[0012]圖1A為包括多個虛擬化環(huán)境(或虛擬機)102A、102B的示例電子設(shè)備100的框圖。盡管在圖1A中只是示出兩個虛擬化環(huán)境,但應(yīng)注意,在可替代實施方式中,可以在電子設(shè)備100中提供附加的虛擬化環(huán)境。如圖1A中所示,虛擬化環(huán)境102A包括客戶機操作系統(tǒng)104A和被設(shè)計為在客戶機操作系統(tǒng)104A上運行的應(yīng)用程序106A。類似地,虛擬化環(huán)境102B包括客戶機操作系統(tǒng)104B和被設(shè)計為在客戶機操作系統(tǒng)104B上運行的應(yīng)用程序106B。客戶機操作系統(tǒng)104B是與客戶機操作系統(tǒng)104A不同類型的客戶機操作系統(tǒng)。
[0013]在一些示例中,電子設(shè)備100的硬件資源108包括處理器112、存儲器114、持久性存儲介質(zhì)116和輸入/輸出(I/O)設(shè)備118。注意,盡管從單數(shù)意義上對處理器112、存儲器114、持久性存儲介質(zhì)116和I/O設(shè)備118進行引用,但硬件資源108也能夠包括多個處理器、存儲器、持久性存儲介質(zhì)和/或I/O設(shè)備。
[0014]電子設(shè)備的硬件資源108的虛擬化通過虛擬機監(jiān)控器(VMM) 110提供。VMM也被稱作管理程序。VMMllO管理硬件資源108的共享(通過虛擬化環(huán)境102A、102B)。VMMllO虛擬化硬件資源108,并且攔截來自客戶機操作系統(tǒng)104AU04B的對這種硬件資源的請求。
[0015]有效地,VMMllO在每個虛擬化環(huán)境的客戶機操作系統(tǒng)與底層硬件資源108之間提供接口。在一些示例中,由VMMllO提供的到客戶機操作系統(tǒng)的接口被設(shè)計為仿效由實際硬件資源108提供的接口。
[0016]在一些實施方式中,VMMllO為類型I (或本地、裸機)VMM或被配置為在硬件資源108上直接運行以控制硬件資源108并與客戶機操作系統(tǒng)交互的管理程序。在其它實施方式中,VMMl 10可以為類型2 (或托管的)VMM或者在主機操作系統(tǒng)上運行的管理程序。例如,主機操作系統(tǒng)120在圖1A中以虛線輪廓被描繪。如果VMMllO為托管的VMM,則將存在主機操作系統(tǒng)120以托管VMM110。另一方面,如果VMMllO為類型1VMM,則將省略主機操作系統(tǒng)120。
[0017]電子設(shè)備100還包括顯示設(shè)備122。顯示設(shè)備122與硬件資源108的圖形控制器(其可以是I/o設(shè)備118之一)交互。顯示設(shè)備122可以被控制以呈現(xiàn)應(yīng)用程序庫124的圖形表示。應(yīng)用程序庫124包括表示可由用戶選擇的各個應(yīng)用程序的項目126 (例如圖標)以弓I起各個所選擇應(yīng)用程序的安裝。
[0018]注意,I/O設(shè)備118也可以包括用于允許電子設(shè)備100通過網(wǎng)絡(luò)128與各個遠程站點130 (例如,網(wǎng)站、應(yīng)用程序服務(wù)器等)通信的網(wǎng)絡(luò)接口控制器。每個遠程站點130可以存儲與表示在應(yīng)用程序庫124中的一個或多個應(yīng)用程序相對應(yīng)的代碼。響應(yīng)于在應(yīng)用程序庫124中對應(yīng)用程序的選擇,電子設(shè)備100通過網(wǎng)絡(luò)128與各個遠程站點130通信,以促使與所選擇應(yīng)用程序相對應(yīng)的代碼被下載到電子設(shè)備100用于在電子設(shè)備100中安裝。
[0019]從應(yīng)用程序庫124中選擇的應(yīng)用程序的安裝可以由在電子設(shè)備100中運行的安裝程序邏輯132控制。安裝程序邏輯132可以被考慮為是應(yīng)用程序庫代理(用于應(yīng)用程序庫124的代理)。在一些實施方式中,應(yīng)用程序庫連接通過電子設(shè)備100的虛擬化基礎(chǔ)架構(gòu)代理。代理應(yīng)用程序庫連接指其中與應(yīng)用程序庫相關(guān)聯(lián)的安裝任務(wù)(例如響應(yīng)于用戶對應(yīng)用程序庫124中應(yīng)用程序的選擇的安裝任務(wù))被轉(zhuǎn)發(fā)給作為電子設(shè)備100的虛擬化基礎(chǔ)架構(gòu)的一部分的安裝程序邏輯132的操作。
[0020]例如,安裝程序邏輯132可以是位于虛擬化基礎(chǔ)架構(gòu)中的控制域134的一部分??刂朴蚩梢允怯?,域O是電子設(shè)備100初始啟動時發(fā)起的第一域。注意,域O概念可應(yīng)用于一些類型的VMM110。域O包括特殊管理權(quán)限,并且可以具有對硬件資源108的直接訪問權(quán)。域O可以被看作管理虛擬機。
[0021]在其它示例中,安裝程序邏輯132可以是服務(wù)虛擬機136(其被配置為在電子設(shè)備100中執(zhí)行各種管理任務(wù))的一部分。作為又一替代,安裝程序邏輯132可以是虛擬化環(huán)境102A、102B之一的一部分。
[0022]圖1B示出根據(jù)可替代實施方式的簡化電子設(shè)備100A。電子設(shè)備100A中的、存在于圖1A的電子設(shè)備100中的兀件利用相同的附圖標記標出。如圖1B中所不,電子設(shè)備100A包括虛擬化環(huán)境102A和102B以及能夠顯示應(yīng)用程序庫124的表示的顯示設(shè)備122。
[0023]電子設(shè)備100A的硬件資源108A包括機器可讀介質(zhì)150和處理器112。如所描繪的,在一些實施方式中,根據(jù)一些實施方式的安裝程序邏輯132初始存儲在機器可讀存儲介質(zhì)150中并且被加載用于在處理器112上運行。
[0024]圖2為根據(jù)一些實施方式的由電子設(shè)備100執(zhí)行的過程。應(yīng)用程序庫124的圖形表示(圖1A或圖1B)被呈現(xiàn)(在202處)用于顯示。在一些示例中,應(yīng)用程序庫124可以由電子設(shè)備100中的應(yīng)用程序庫應(yīng)用程序(未示出)呈現(xiàn)。應(yīng)用程序庫應(yīng)用程序可以為虛擬化環(huán)境102A、102B之一的一部分,或者可以為服務(wù)虛擬模塊136的一部分,或者可以為電子設(shè)備100中其它模塊的一部分。
[0025]安裝程序邏輯132接收(在204處)對應(yīng)用程序庫124中應(yīng)用程序的選擇。響應(yīng)于該選擇,安裝程序邏輯132識別(在206處)多個虛擬化環(huán)境102AU02B中的哪個對應(yīng)于所選擇的應(yīng)用程序。所選擇的應(yīng)用程序然后被安裝(在208處)到所識別的虛擬化環(huán)境中。
[0026]注意,在一些情況下,在206處執(zhí)行的識別可以包括識別適合于所選擇應(yīng)用程序的安裝的多個虛擬化環(huán)境(換句話說,所選擇應(yīng)用程序與所識別多個虛擬化環(huán)境中的每個客戶機操作系統(tǒng)兼容)。在這種情況下,安裝程序邏輯132可以提示用戶選擇所識別多個虛擬化環(huán)境中的哪個以安裝所選擇應(yīng)用程序??商娲?,安裝程序邏輯132可以使用一個或多個預定標準以自動從所識別多個虛擬化環(huán)境中選擇。例如,安裝程序邏輯132可以選擇:(I)所識別多個虛擬化環(huán)境中最近使用的虛擬化環(huán)境,或者(2)所識別多個虛擬化環(huán)境中的、目前在前景中或活動的一個虛擬化環(huán)境。由于存在多個虛擬化環(huán)境,因此虛擬化環(huán)境中的一些可以在電子設(shè)備中活動地執(zhí)行任務(wù)(這種虛擬化環(huán)境中的應(yīng)用程序和/或操作系統(tǒng)活動地運行,因此使用電子設(shè)備的硬件資源)。這種虛擬化環(huán)境被考慮為在前景中或活動的。相比之下,其它虛擬化環(huán)境可以是休眠的(應(yīng)用程序和/或操作系統(tǒng)怠速并且不使用電子設(shè)備的硬件資源)。對于從所識別多個虛擬化環(huán)境中進行選擇的其它標準可以用于其它示例中。
[0027]—旦安裝程序邏輯132采用預定的標準(或那些標準)以從所識別多個虛擬化環(huán)境中選擇,安裝程序邏輯132就能夠自動將所選擇的應(yīng)用程序安裝到所選擇的虛擬化環(huán)境中,而不從用戶進一步輸入??商娲?,連同所識別的多個虛擬化環(huán)境一起,安裝程序邏輯132可以首先向用戶呈現(xiàn)所選擇的虛擬化環(huán)境作為建議或意見。用戶可以選擇接受或忽視該建議或意見。
[0028]所選擇應(yīng)用程序待安裝入的虛擬化環(huán)境的識別(圖2中的206)可以基于若干不同機制之一。例如,元數(shù)據(jù)可以與應(yīng)用程序庫中的應(yīng)用程序相關(guān)聯(lián)。元數(shù)據(jù)可以包括在應(yīng)用程序的進程程序(wrapper)或安裝程序中。進程程序指與應(yīng)用程序相關(guān)聯(lián)的、被配置為在進程程序運行時調(diào)用應(yīng)用程序的邏輯。應(yīng)用程序的安裝程序指與應(yīng)用程序相關(guān)聯(lián)的、被配置為在安裝程序運行時將應(yīng)用程序安裝在系統(tǒng)中的邏輯。元數(shù)據(jù)可以識別特定應(yīng)用程序與給定操作系統(tǒng)相關(guān)聯(lián),使得安裝程序邏輯132能夠基于元數(shù)據(jù)判定哪個虛擬化環(huán)境102A、102B是適合于安裝所選擇應(yīng)用程序的虛擬化環(huán)境(通過將元數(shù)據(jù)指示的操作系統(tǒng)與每個虛擬化環(huán)境中的客戶機操作系統(tǒng)進行匹配)。
[0029]用于允許將應(yīng)用程序與各個虛擬化環(huán)境102AU02B相關(guān)聯(lián)的另一機制是將各個不同的應(yīng)用程序(針對不同類型操作系統(tǒng)設(shè)計的)包括在各個唯一的、單個應(yīng)用程序庫中,例如圖3中描繪的單個應(yīng)用程序庫302、304和306。盡管圖3中示出三個單個應(yīng)用程序庫302,304和306,但注意,不同數(shù)目的單個應(yīng)用程序庫可以用于其它示例中。
[0030]單個應(yīng)用程序庫302包含用于第一類型操作系統(tǒng)的應(yīng)用程序,單個應(yīng)用程序庫304包含用于第二類型操作系統(tǒng)的應(yīng)用程序,并且單個應(yīng)用程序庫306包含用于第三類型操作系統(tǒng)的應(yīng)用程序。單個應(yīng)用程序庫302、304和306的內(nèi)容可以被組合以呈現(xiàn)在所顯示應(yīng)用程序庫124中。在根據(jù)圖3的實現(xiàn)中,所顯示應(yīng)用程序庫124可以看作是組合單個應(yīng)用程序庫302、304和306的內(nèi)容的虛擬或摘要應(yīng)用程序庫。
[0031]當在所顯示應(yīng)用程序庫124中選擇應(yīng)用程序時,安裝程序邏輯132能夠?qū)⑺x擇應(yīng)用程序的源識別為單個應(yīng)用程序庫302、304和306中之一?;趯⒏鱾€單個應(yīng)用程序庫識別為源,安裝程序邏輯132能夠確定哪個虛擬化環(huán)境是安裝所選擇應(yīng)用程序的正確虛擬化環(huán)境。
[0032]作為又一替代,應(yīng)用程序庫124中應(yīng)用程序的擴展名可以用于識別合適的虛擬化環(huán)境以安裝所選擇的應(yīng)用程序。例如,具有.exe擴展的應(yīng)用程序名指示應(yīng)用程序用于
Windows?操作系統(tǒng),因此應(yīng)當安裝在包括Windows?.操作系統(tǒng)的虛擬化環(huán)境中。作為另一示例,具有.rpm或.yum擴展的應(yīng)用程序名能夠指示應(yīng)用程序與Linux操作系統(tǒng)相關(guān)聯(lián),因此應(yīng)當安裝在包含Linux操作系統(tǒng)的虛擬化環(huán)境中。
[0033]盡管許多擴展是唯一的并且是明確的(關(guān)于應(yīng)用程序針對哪個操作系統(tǒng)設(shè)計),但存在可能潛在地模糊的其它擴展。這種模糊擴展的示例包括.xml或.html。具有這些擴展的應(yīng)用程序可以是潛在地能夠安裝在具有不同操作系統(tǒng)的若干不同虛擬化環(huán)境之一中的插件。為了解決該模糊,可以使用前述技術(shù)之一,例如采用與應(yīng)用程序相關(guān)聯(lián)的元數(shù)據(jù)的技術(shù)或其中用于不同操作系統(tǒng)的應(yīng)用程序存儲在不同單個應(yīng)用程序庫中的技術(shù)。
[0034]可替代地,在擴展模糊的情況下,可以向用戶呈現(xiàn)提示以允許用戶選擇哪個虛擬化環(huán)境適合于安裝所選擇的應(yīng)用程序。
[0035]通過使用根據(jù)一些實施方式的技術(shù)或機制,針對不同類型操作系統(tǒng)設(shè)計的應(yīng)用程序可以呈現(xiàn)在公共或共享應(yīng)用程序庫中,同時仍然允許能夠?qū)⑺x擇應(yīng)用程序安裝到具有多個虛擬化環(huán)境的電子設(shè)備中的合適虛擬化環(huán)境中。
[0036]上述模塊(包括圖1A或圖1B中示出的模塊)的機器可讀指令在處理器(例如圖1A或圖1B中的112)上運行。處理器可以包括微處理器、微控制器、處理器模塊或子系統(tǒng)、可編程集成電路、可編程門陣列或者其它控制或計算設(shè)備。
[0037]數(shù)據(jù)和指令存儲在被實現(xiàn)為一個或多個計算機可讀或機器可讀存儲介質(zhì)的各個存儲設(shè)備中。存儲介質(zhì)包括不同形式的存儲器,包括:諸如動態(tài)或靜態(tài)隨機存取存儲器(DRAM或SRAM)、可擦除和可編程只讀存儲器(EPR0M)、電可擦除和可編程只讀存儲器(EEPROM)和閃存之類的半導體存儲設(shè)備;諸如固定磁盤、軟盤和可移動磁盤之類的磁盤;包括磁帶的其它磁介質(zhì);諸如光盤(CD)或數(shù)字視頻盤(DVD)之類的光學介質(zhì);或其它類型的存儲設(shè)備。注意,上面討論的指令可以提供在一個計算機可讀或機器可讀存儲介質(zhì)上,或者可替代地,可以提供在分布于具有可能多個節(jié)點的大系統(tǒng)中的多個計算機可讀或機器可讀存儲介質(zhì)上。這種或這些計算機可讀或機器可讀存儲介質(zhì)被考慮為是物品(或制品)的一部分。物品或制品可以指制造的任意單個組件或多個組件。存儲介質(zhì)可以位于運行機器可讀指令的機器中,或者位于通過網(wǎng)絡(luò)從其下載機器可讀指令以運行的遠程站點處。
[0038]在前面的描述中,大量細節(jié)被闡述以提供對這里公開的主題的理解。然而,可以在不具有這些細節(jié)中的一些或全部細節(jié)的情況下實踐這些實現(xiàn)。其它實現(xiàn)可以包括對上面討論的細節(jié)的修改和改變。目的是,所附權(quán)利要求涵蓋這種修改和改變。
【權(quán)利要求】
1.一種電子設(shè)備的方法,包括: 在所述電子設(shè)備處呈現(xiàn)應(yīng)用程序庫的表示,其中所述電子設(shè)備具有各自被配置有各個不同類型操作系統(tǒng)的多個虛擬化環(huán)境; 接收對所述應(yīng)用程序庫中的應(yīng)用程序的選擇; 識別所述多個虛擬化環(huán)境中的哪個虛擬化環(huán)境對應(yīng)于所述應(yīng)用程序;以及 將所述應(yīng)用程序安裝到所識別的虛擬化環(huán)境中。
2.根據(jù)權(quán)利要求1所述的方法,其中所述識別包括訪問與所述應(yīng)用程序相關(guān)聯(lián)的信息以確定所述應(yīng)用程序與所述操作系統(tǒng)中的哪個操作系統(tǒng)相關(guān)聯(lián)。
3.根據(jù)權(quán)利要求2所述的方法,其中訪問所述信息包括訪問所述應(yīng)用程序的進程程序或安裝程序中的元數(shù)據(jù)。、
4.根據(jù)權(quán)利要求2所述的方法,其中訪問所述信息包括訪問與所述應(yīng)用程序的源相關(guān)的信息。
5.根據(jù)權(quán)利要求4所述的方法,其中訪問與所述源相關(guān)的信息包括訪問指示所述應(yīng)用程序與多個單個應(yīng)用程序庫中的哪個應(yīng)用程序庫相關(guān)聯(lián)的信息。
6.根據(jù)權(quán)利要求2所述的方法,其中訪問所述信息包括訪問所述應(yīng)用程序的擴展名。
7.根據(jù)權(quán)利要求1所述的方法,其中所述接收、識別和安裝通過所述電子設(shè)備的虛擬化基礎(chǔ)架構(gòu)中的邏輯執(zhí)行。
8.根據(jù)權(quán)利要求7所述的方法,其中所述虛擬化基礎(chǔ)架構(gòu)包括控制域或虛擬機。
9.一種包括存儲指令的至少一個機器可讀存儲介質(zhì)的物品,所述指令一旦執(zhí)行就促使具有處理器的電子設(shè)備執(zhí)行根據(jù)權(quán)利要求1所述的方法。
10.一種電子設(shè)備包括: 至少一個處理器; 具有各個客戶機操作系統(tǒng)的多個虛擬化環(huán)境;以及 安裝程序邏輯,用于: 接收對通過具有多個應(yīng)用程序的應(yīng)用程序庫呈現(xiàn)的應(yīng)用程序的選擇; 訪問與所選擇的應(yīng)用程序相關(guān)聯(lián)的信息以識別所選擇的應(yīng)用程序要安裝到所述虛擬化環(huán)境中的哪個虛擬化環(huán)境中;并且 將所選擇的應(yīng)用程序安裝在所識別的虛擬化環(huán)境中。
11.根據(jù)權(quán)利要求10所述的電子設(shè)備,其中所述安裝程序邏輯是所述電子設(shè)備的虛擬化基礎(chǔ)架構(gòu)的一部分。
12.根據(jù)權(quán)利要求10所述的電子設(shè)備,其中所述安裝程序邏輯通過下列方式識別所選擇的應(yīng)用程序要安裝到所述虛擬化環(huán)境中的哪個虛擬化環(huán)境中: 將所述多個虛擬化環(huán)境中的多個虛擬化環(huán)境識別為適合于安裝所選擇的應(yīng)用程序;以及 執(zhí)行用于從所述多個虛擬化環(huán)境中進行選擇以安裝所選擇的應(yīng)用程序的動作。
13.根據(jù)權(quán)利要求12所述的電子設(shè)備,其中所述動作包括從下列動作中選擇的至少一個: 提示用戶選擇所述多個虛擬化環(huán)境中的一個虛擬化環(huán)境; 使用至少一個標準來從所述多個虛擬化環(huán)境中自動選擇;以及使用至少一個標準來從所述多個虛擬化環(huán)境中選擇,并且在給用戶的提示中呈現(xiàn)所述多個虛擬化環(huán)境中選擇的一個虛擬化環(huán)境,作為用于安裝所選擇應(yīng)用程序的建議虛擬化環(huán)境。
14.根據(jù)權(quán)利要求10所述的電子設(shè)備,其中所訪問的信息包括從下列選擇的至少一個: 所選擇應(yīng)用程序的進程程序或安裝程序中的元數(shù)據(jù); 所選擇應(yīng)用程序的源;以及 所選擇應(yīng)用程序的擴展名。
15.根據(jù)權(quán)利要求10所述的電子設(shè)備,其中所述應(yīng)用程序庫為具有與不同類型操作系統(tǒng)相關(guān)聯(lián)的應(yīng)用程序的共享應(yīng)用程序庫,所述電子設(shè)備進一步包括: 各自包含所述應(yīng)用程序的各個子集的單個應(yīng)用程序庫,其中所述單個應(yīng)用程序庫中的每個與所述不同類型操作 系統(tǒng)中的相應(yīng)一個相關(guān)聯(lián)。
【文檔編號】G06F9/44GK103493016SQ201180070307
【公開日】2014年1月1日 申請日期:2011年4月21日 優(yōu)先權(quán)日:2011年4月21日
【發(fā)明者】詹姆斯·M·曼 申請人:惠普發(fā)展公司,有限責任合伙企業(yè)