專(zhuān)利名稱(chēng):對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及對(duì)虛擬化應(yīng)用程序的訪(fǎng)問(wèn),特別是對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)。
背景技術(shù):
企業(yè)、政府機(jī)構(gòu)、以及其他類(lèi)型的實(shí)體通常限制對(duì)某些類(lèi)型的機(jī)密或敏感信息的訪(fǎng)問(wèn)。限制對(duì)諸如物理文檔之類(lèi)的物理信息的訪(fǎng)問(wèn)可以通過(guò)使用標(biāo)準(zhǔn)訪(fǎng)問(wèn)限制來(lái)很容易地實(shí)現(xiàn)。限制對(duì)例如存儲(chǔ)在服務(wù)器計(jì)算機(jī)上的文檔之類(lèi)的數(shù)字信息的訪(fǎng)問(wèn)也可以通過(guò)使用諸如訪(fǎng)問(wèn)控制列表之類(lèi)的標(biāo)準(zhǔn)安全措施來(lái)相對(duì)容易地實(shí)現(xiàn)。限制對(duì)計(jì)算機(jī)應(yīng)用程序(“應(yīng)用程序”)的使用可能要比限制對(duì)物理項(xiàng)目的訪(fǎng)問(wèn)難得多,特別是在必須以某種方式對(duì)另外被授權(quán)使用該應(yīng)用程序的用戶(hù)進(jìn)行限制時(shí)尤其如此。對(duì)于向雇員發(fā)放諸如膝上型計(jì)算機(jī)、平板電腦、和智能電話(huà)之類(lèi)的便攜式計(jì)算設(shè)備的組織而言尤其是這樣。因?yàn)楣蛦T可以持續(xù)地訪(fǎng)問(wèn)發(fā)放給他們的計(jì)算設(shè)備,所以很難限制對(duì)這些計(jì)算設(shè)備上所安裝的應(yīng)用程序的使用。此處所做出的本公開(kāi)正是關(guān)于這些和其他考慮事項(xiàng)而提出的。
發(fā)明內(nèi)容
本文描述了用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的技術(shù)。通過(guò)本文在此呈現(xiàn)的概念和技術(shù)的實(shí)現(xiàn),可提供能夠根據(jù)執(zhí)行策略來(lái)限制虛擬化應(yīng)用程序的執(zhí)行的應(yīng)用程序虛擬化環(huán)境。該執(zhí)行策略可以由管理員來(lái)設(shè)置,并且定義可以或不可以執(zhí)行虛擬化應(yīng)用程序的條件。以此方式,應(yīng)用程序的執(zhí)行可以基于各種條件來(lái)限制,諸如在其上執(zhí)行應(yīng)用程序的設(shè)備的地理位置、使用該應(yīng)用程序的一天中的時(shí)刻或持續(xù)時(shí)間、某些計(jì)算資源對(duì)于該設(shè)備的可用性、或其他條件??山Y(jié)合應(yīng)用程序虛擬化環(huán)境來(lái)實(shí)現(xiàn)本文公開(kāi)的實(shí)施例。具體地,應(yīng)用程序虛擬化客戶(hù)端組件被配置為提供用于執(zhí)行虛擬化應(yīng)用程序的環(huán)境。應(yīng)用程序虛擬化客戶(hù)端組件還提供用于使虛擬化應(yīng)用程序與底層操作系統(tǒng)、其他應(yīng)用程序和系統(tǒng)資源分開(kāi)地被封裝起來(lái)的功能。應(yīng)用程序虛擬化客戶(hù)端組件還可通過(guò)從應(yīng)用程序虛擬化服務(wù)器組件流傳送虛擬化應(yīng)用程序的所需部分來(lái)提供加載虛擬化應(yīng)用程序的這些部分的功能。根據(jù)另一方面,應(yīng)用程序虛擬化客戶(hù)端組件被配置為提供對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)。具體而言,當(dāng)接收到執(zhí)行虛擬化應(yīng)用程序的請(qǐng)求時(shí),應(yīng)用程序虛擬化客戶(hù)端組件評(píng)價(jià)執(zhí)行策略以確定該應(yīng)用程序是否可被執(zhí)行。如上文簡(jiǎn)單討論的,該執(zhí)行策略可以由管理員來(lái)設(shè)置,并且定義可以或不可以執(zhí)行虛擬化應(yīng)用程序的條件。例如,執(zhí)行策略可規(guī)定只有在執(zhí)行虛擬化應(yīng)用程序的設(shè)備處在指定地理區(qū)域時(shí)才可執(zhí)行該虛擬化應(yīng)用程序、應(yīng)用程序僅可在一天的指定時(shí)刻(例如,9a.m.至5p.m.)執(zhí)行、每天僅可執(zhí)行指定的持續(xù)時(shí)間 (例如,每天一個(gè)小時(shí))、或者只有在某些計(jì)算資源不受限制時(shí)才可執(zhí)行應(yīng)用程序。若應(yīng)用程序虛擬化客戶(hù)端組件基于執(zhí)行策略確定該虛擬化應(yīng)用程序可以執(zhí)行,則應(yīng)用程序虛擬化客戶(hù)端組件將公布該虛擬化應(yīng)用程序。如在此所使用的,術(shù)語(yǔ)“公布”意指使虛擬化應(yīng)用程序可供執(zhí)行之用。例如,在一個(gè)實(shí)施例中,應(yīng)用程序虛擬化客戶(hù)端組件通過(guò)確定虛擬化應(yīng)用程序是否被安裝并且若已安裝則使虛擬化應(yīng)用程序可供執(zhí)行來(lái)公布虛擬化應(yīng)用程序。若虛擬化應(yīng)用程序未安裝則應(yīng)用程序虛擬化客戶(hù)端組件可使虛擬化應(yīng)用程序被流傳送至該設(shè)備以供執(zhí)行。根據(jù)另一方面,應(yīng)用程序虛擬化客戶(hù)端組件在虛擬化應(yīng)用程序的執(zhí)行期間周期性地或不斷地評(píng)價(jià)執(zhí)行策略。若應(yīng)用程序虛擬化客戶(hù)端組件確定不再滿(mǎn)足執(zhí)行策略,則應(yīng)用程序虛擬化客戶(hù)端組件取消公布虛擬化應(yīng)用程序。例如,應(yīng)用程序虛擬化客戶(hù)端組件可停止虛擬化應(yīng)用程序的執(zhí)行并使應(yīng)用程序不可用于執(zhí)行。應(yīng)用程序虛擬化客戶(hù)端組件還可將虛擬化應(yīng)用程序從在其上執(zhí)行該虛擬化應(yīng)用程序的客戶(hù)端設(shè)備移除。根據(jù)另一方面,若不能評(píng)價(jià)執(zhí)行策略則應(yīng)用程序虛擬化客戶(hù)端組件也取消公布虛擬化應(yīng)用程序。例如,若執(zhí)行策略要求只有在特定地理區(qū)域內(nèi)才可執(zhí)行應(yīng)用程序而執(zhí)行該應(yīng)用程序的設(shè)備所處的地理區(qū)域無(wú)法確定則可以取消公布該虛擬化應(yīng)用程序。應(yīng)用程序虛擬化客戶(hù)端組件還可存儲(chǔ)關(guān)于虛擬化應(yīng)用程序的不允許訪(fǎng)問(wèn)、取消公布應(yīng)用程序的條件、 以及對(duì)應(yīng)用程序虛擬化環(huán)境的管理員可能有幫助的其他信息的審核數(shù)據(jù)。本發(fā)明內(nèi)容并不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在將本概述用來(lái)限制所要求保護(hù)的主題的范圍。此外,所要求保護(hù)的主題不限于解決在本發(fā)明的任一部分中提及的任何或所有缺點(diǎn)的實(shí)現(xiàn)。
圖I是示出用于此處公開(kāi)的各個(gè)實(shí)施例的一個(gè)說(shuō)明性操作環(huán)境的軟件和網(wǎng)絡(luò)體系結(jié)構(gòu)圖;圖2A-2B是根據(jù)此處提供的一個(gè)實(shí)施例示出此處所公開(kāi)的用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的一個(gè)說(shuō)明性處理的諸方面的流程圖;以及圖3是示出用于能夠?qū)崿F(xiàn)本文所提出的各種實(shí)施例的計(jì)算系統(tǒng)的說(shuō)明性計(jì)算機(jī)硬件和軟件體系結(jié)構(gòu)的計(jì)算機(jī)體系結(jié)構(gòu)圖。
具體實(shí)施例方式下面的詳細(xì)描述涉及用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的技術(shù)。如上文簡(jiǎn)短討論的,提供了應(yīng)用程序虛擬化環(huán)境,其被配置成基于執(zhí)行策略對(duì)虛擬化應(yīng)用程序的執(zhí)行實(shí)施限制。具體而言,當(dāng)收到執(zhí)行虛擬化應(yīng)用程序的請(qǐng)求時(shí),應(yīng)用程序虛擬化客戶(hù)端組件評(píng)價(jià)執(zhí)行策略以確定該應(yīng)用程序是否可被公布和執(zhí)行。若應(yīng)用程序虛擬化客戶(hù)端組件基于執(zhí)行策略確定該虛擬化應(yīng)用程序可以執(zhí)行,則應(yīng)用程序虛擬化客戶(hù)端組件公布并執(zhí)行該虛擬化應(yīng)用程序。應(yīng)用程序虛擬化客戶(hù)端組件在應(yīng)用程序已安裝時(shí)通過(guò)使該虛擬化應(yīng)用程序可供執(zhí)行來(lái)公布應(yīng)用程序且當(dāng)應(yīng)用程序未安裝時(shí)通過(guò)安裝該虛擬化應(yīng)用程序來(lái)公布應(yīng)用程序。 應(yīng)用程序虛擬化客戶(hù)端組件還在虛擬化應(yīng)用程序執(zhí)行期間評(píng)價(jià)執(zhí)行策略。若應(yīng)用程序虛擬化客戶(hù)端組件確定不再滿(mǎn)足執(zhí)行策略,則應(yīng)用程序虛擬化客戶(hù)端組件取消公布虛擬化應(yīng)用程序,由此阻止該虛擬化應(yīng)用程序的執(zhí)行。關(guān)于這些和其他特征的附加細(xì)節(jié)將在以下提供。
盡管在結(jié)合計(jì)算機(jī)系統(tǒng)上的操作系統(tǒng)和應(yīng)用程序的執(zhí)行而執(zhí)行的程序模塊的一般上下文中呈現(xiàn)了本文描述的主題,但是本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到,其它實(shí)現(xiàn)可以結(jié)合其它類(lèi)型的程序模塊來(lái)執(zhí)行。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類(lèi)型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其它類(lèi)型的結(jié)構(gòu)。此外,本領(lǐng)域技術(shù)人員將明白,可以利用其它計(jì)算機(jī)系統(tǒng)配置來(lái)實(shí)施本文描述的主題,這些計(jì)算機(jī)系統(tǒng)配置包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的或可編程消費(fèi)電子產(chǎn)品、小型計(jì)算機(jī)、大型計(jì)算機(jī)等等。在下面的詳細(xì)描述中,將參考構(gòu)成本發(fā)明的一部分的附圖,并且在附圖中作為說(shuō)明示出了各具體實(shí)施例或示例?,F(xiàn)在參考附圖(全部若干附圖中相同的標(biāo)號(hào)表示相同的元素),將描述用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的計(jì)算系統(tǒng)和方法的各方面。圖I是示出用于此處公開(kāi)的各個(gè)實(shí)施例的一個(gè)說(shuō)明性操作環(huán)境100的軟件和網(wǎng)絡(luò)體系結(jié)構(gòu)圖。圖I中所示的說(shuō)明性操作環(huán)境100包括被配置為通過(guò)網(wǎng)絡(luò)106與服務(wù)器104 通信的客戶(hù)端設(shè)備102??蛻?hù)端設(shè)備102是被配置為執(zhí)行操作系統(tǒng)108A和應(yīng)用程序虛擬化客戶(hù)端組件110的計(jì)算設(shè)備。客戶(hù)端設(shè)備102可以是標(biāo)準(zhǔn)臺(tái)式或膝上型計(jì)算機(jī)、平板電腦、智能手機(jī)或能執(zhí)行此處呈現(xiàn)的用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的操作的任何其他類(lèi)型的計(jì)算設(shè)備??蛻?hù)端設(shè)備102還可以是被配置為提供此處公開(kāi)的功能性的服務(wù)器計(jì)算機(jī)。服務(wù)器104是被配置為執(zhí)行操作系統(tǒng)108B和應(yīng)用程序虛擬化服務(wù)器組件116的計(jì)算系統(tǒng)。應(yīng)該理解的是服務(wù)器104可以是被配置為執(zhí)行應(yīng)用程序虛擬化服務(wù)器組件110 的服務(wù)器計(jì)算機(jī)或者可包括被配置為執(zhí)行如由服務(wù)器104所執(zhí)行的此處描述的的功能性的另一種類(lèi)型的計(jì)算機(jī)系統(tǒng)。圖I中所示的網(wǎng)絡(luò)106包括廣域網(wǎng)或局域網(wǎng)。例如,網(wǎng)絡(luò)106可以是公司局域網(wǎng)、 諸如因特網(wǎng)之類(lèi)的廣域網(wǎng)、或者多個(gè)廣域網(wǎng)和局域網(wǎng)的組合。應(yīng)該理解的是盡管圖I中示出了單個(gè)網(wǎng)絡(luò)106,但是可使用很多其他網(wǎng)絡(luò)。還應(yīng)該理解的是盡管圖I中示出了單個(gè)客戶(hù)端設(shè)備102和服務(wù)器104,此處公開(kāi)的諸實(shí)施例可使用很多這樣的設(shè)備。如上所簡(jiǎn)要討論的,客戶(hù)端設(shè)備102被配置為執(zhí)行應(yīng)用程序虛擬化客戶(hù)端組件 110。應(yīng)用程序虛擬化客戶(hù)端組件110是被配置為提供應(yīng)用虛擬化環(huán)境的軟件組件。在這個(gè)意義上,應(yīng)用程序虛擬化客戶(hù)端組件110被配置為執(zhí)行虛擬化應(yīng)用程序112。應(yīng)用程序虛擬化客戶(hù)端組件110提供使虛擬化應(yīng)用程序112的執(zhí)行與操作系統(tǒng)108A分開(kāi)地被封裝起來(lái)的功能。應(yīng)用程序虛擬化客戶(hù)端組件110還可提供使虛擬化應(yīng)用程序112的執(zhí)行與客戶(hù)端設(shè)備102的其他應(yīng)用程序和系統(tǒng)資源分開(kāi)地被封裝起來(lái)的功能。例如,應(yīng)用程序虛擬化客戶(hù)端組件110可將操作系統(tǒng)108A或客戶(hù)端設(shè)備102的資源虛擬化。當(dāng)虛擬化應(yīng)用程序112嘗試訪(fǎng)問(wèn)物理資源的時(shí)候,應(yīng)用程序虛擬化客戶(hù)端組件110將虛擬化資源呈現(xiàn)給應(yīng)用程序112。以此方式,可以通過(guò)不對(duì)操作系統(tǒng)108A或客戶(hù)端設(shè)備102所暴露的實(shí)際資源產(chǎn)生影響的方式執(zhí)行虛擬化應(yīng)用程序112。根據(jù)其他方面,應(yīng)用程序虛擬化客戶(hù)端組件110還提供按需加載虛擬化應(yīng)用程序 112的部分的功能。具體地,應(yīng)用程序虛擬化客戶(hù)端組件110可與應(yīng)用程序虛擬化服務(wù)器組件116協(xié)同操作,以將虛擬化應(yīng)用程序112的所需要的部分從服務(wù)器104流傳送至客戶(hù)端設(shè)備102。以此方式,可在客戶(hù)端設(shè)備102處按需訪(fǎng)問(wèn)虛擬化應(yīng)用程序112。此外,由于可以?xún)H僅將虛擬化應(yīng)用程序112的所需部分從服務(wù)器104流傳送至客戶(hù)端設(shè)備102,所以可提供對(duì)虛擬化應(yīng)用程序112的訪(fǎng)問(wèn)而不需要將整個(gè)應(yīng)用程序112從服務(wù)器104流傳送至客戶(hù)端設(shè)備102。有關(guān)應(yīng)用程序虛擬化客戶(hù)端組件110所提供的用于封裝虛擬化應(yīng)用程序112的執(zhí)行以及用于將虛擬化應(yīng)用程序112從服務(wù)器104流傳送至客戶(hù)端設(shè)備102的功能性的附加細(xì)節(jié)可在 2007 年 5 月 29 日提交的名為 “Systems and Methods for Delivering Content over a Computer Network(用于在計(jì)算機(jī)網(wǎng)絡(luò)上遞送內(nèi)容的系統(tǒng)與方法)”的美國(guó)專(zhuān)利號(hào)為 7,225,264 的申請(qǐng)、在 2007 年 4 月 3 日提交的名為 “Method and System for Serving Software Applications to Client Computers (用于向客戶(hù)端計(jì)算機(jī)供應(yīng)軟件應(yīng)用程序的方法與系統(tǒng))”的美國(guó)專(zhuān)利號(hào)為7,200,632的申請(qǐng)、在2008年11月11日提交的、名為 “Operating System Abstraction and Protection Layer (操作系統(tǒng)抽象與保護(hù)層)”的美國(guó)專(zhuān)利號(hào)為7,451,451的申請(qǐng)、以及在2010年9月14日提交的名為“Serving Software Applications from Servers for Client Computers (從服務(wù)器為客戶(hù)端計(jì)算機(jī)供應(yīng)軟件應(yīng)用程序)”的美國(guó)專(zhuān)利號(hào)為7,797,372的申請(qǐng)中找到,上述每個(gè)專(zhuān)利通過(guò)引用整體包含到本文。應(yīng)用程序虛擬化客戶(hù)端組件110還被配置為提供對(duì)虛擬化應(yīng)用程序112的基于策略的訪(fǎng)問(wèn)。在這個(gè)意義上,服務(wù)器104和客戶(hù)端設(shè)備102可存儲(chǔ)執(zhí)行策略114。執(zhí)行策略 114定義可以或不可以執(zhí)行虛擬化應(yīng)用程序112的條件。例如,執(zhí)行策略114可規(guī)定只有在客戶(hù)端設(shè)備102處在特定地理區(qū)域內(nèi)時(shí)才可執(zhí)行虛擬化應(yīng)用程序112。替換或組合地,執(zhí)行策略114還可規(guī)定只有在一天的指定時(shí)間或每天的指定持續(xù)時(shí)間期間才可執(zhí)行虛擬化應(yīng)用程序112。作為另一示例,執(zhí)行策略114可規(guī)定只有在客戶(hù)端設(shè)備102的某些計(jì)算資源不受限制時(shí)才可執(zhí)行虛擬化應(yīng)用程序112。例如,若客戶(hù)端設(shè)備112沒(méi)有一定量的中央處理單元或網(wǎng)絡(luò)帶寬可用,則執(zhí)行策略114可規(guī)定不能執(zhí)行虛擬化應(yīng)用程序112。應(yīng)該可以領(lǐng)會(huì),執(zhí)行策略114可以規(guī)定基于物理位置、時(shí)間、或其他因素的其他限制。還應(yīng)領(lǐng)會(huì),客戶(hù)端設(shè)備 102或服務(wù)器104的管理員可以設(shè)置執(zhí)行策略114。當(dāng)在客戶(hù)端設(shè)備102處收到執(zhí)行虛擬化應(yīng)用程序112的請(qǐng)求時(shí),應(yīng)用程序虛擬化客戶(hù)端組件110被配置為評(píng)價(jià)執(zhí)行策略114以確定是否可以執(zhí)行應(yīng)用程序112。為了評(píng)價(jià)執(zhí)行策略114,應(yīng)用程序虛擬化客戶(hù)端組件110可與其他組件協(xié)作以獲得評(píng)價(jià)執(zhí)行策略114 所需的數(shù)據(jù)。例如,應(yīng)用程序虛擬化客戶(hù)端組件110可與能夠確定客戶(hù)端設(shè)備102的物理位置的軟件或硬件組件協(xié)同操作。用于標(biāo)識(shí)客戶(hù)端設(shè)備102的位置的說(shuō)明性技術(shù)包括蜂窩三角測(cè)量、全球定位系統(tǒng) (“GPS”)位置、A-GPS位置、基于無(wú)線(xiàn)信號(hào)強(qiáng)度的位置、基于有線(xiàn)信號(hào)強(qiáng)度的位置、基于網(wǎng)際協(xié)議地址的位置確定等等。應(yīng)用程序虛擬化客戶(hù)端組件110還可協(xié)同其他類(lèi)型的組件操作以獲得評(píng)價(jià)執(zhí)行策略114所需的數(shù)據(jù)。如將在下文更詳細(xì)地描述的,若應(yīng)用程序虛擬化客戶(hù)端組件110不能獲得評(píng)價(jià)執(zhí)行策略114所需的數(shù)據(jù),則可禁止虛擬化應(yīng)用程序112的執(zhí)行。應(yīng)該領(lǐng)會(huì),根據(jù)諸實(shí)施例,執(zhí)行策略114的評(píng)價(jià)可以發(fā)生在客戶(hù)端設(shè)備102、服務(wù)器104、或客戶(hù)端設(shè)備102和服務(wù)器104的組合上。例如,在一種實(shí)現(xiàn)中,應(yīng)用程序虛擬化客戶(hù)端組件110被配置為請(qǐng)求應(yīng)用程序虛擬化服務(wù)器組件116對(duì)執(zhí)行策略114進(jìn)行評(píng)價(jià)。若應(yīng)用程序虛擬化服務(wù)器組件116不可用,則應(yīng)用程序虛擬化客戶(hù)端組件110可在客戶(hù)端設(shè)備102上評(píng)價(jià)執(zhí)行策略114。替換地,若沒(méi)有應(yīng)用程序虛擬化服務(wù)器組件116可供用于評(píng)價(jià)執(zhí)行策略114,則應(yīng)用程序虛擬化客戶(hù)端組件110可禁止虛擬化應(yīng)用程序112的執(zhí)行。 替換地,應(yīng)用程序虛擬化客戶(hù)端組件110可被配置為在沒(méi)有來(lái)自服務(wù)器104的任何輔助的情況下在客戶(hù)端設(shè)備102上評(píng)價(jià)執(zhí)行策略114。若應(yīng)用程序虛擬化客戶(hù)端組件110基于執(zhí)行策略114確定虛擬化應(yīng)用程序112可以執(zhí)行,則應(yīng)用程序虛擬化客戶(hù)端組件110將公布虛擬化應(yīng)用程序112以供使用。如上文簡(jiǎn)短地描述的,術(shù)語(yǔ)“公布”意指使虛擬化應(yīng)用程序112可供在客戶(hù)端設(shè)備102上作執(zhí)行之用。例如,在一個(gè)實(shí)施例中,應(yīng)用程序虛擬化客戶(hù)端組件110通過(guò)確定虛擬化應(yīng)用程序112 是否被安裝在客戶(hù)端設(shè)備102上來(lái)公布虛擬化應(yīng)用程序112。若虛擬化應(yīng)用程序112被安裝在客戶(hù)端設(shè)備102上,則應(yīng)用程序虛擬化客戶(hù)端組件110使得虛擬化應(yīng)用程序112可供執(zhí)行。若虛擬化應(yīng)用程序112未安裝在客戶(hù)端設(shè)備102上,則應(yīng)用程序虛擬化客戶(hù)端組件 110可使虛擬化應(yīng)用程序112從服務(wù)器104流傳送至客戶(hù)端設(shè)備102以用于執(zhí)行。應(yīng)用程序虛擬化客戶(hù)端組件110還被配置為在虛擬化應(yīng)用程序112的執(zhí)行期間評(píng)價(jià)執(zhí)行策略114。例如,應(yīng)用程序虛擬化客戶(hù)端組件110可周期性地或不斷地評(píng)價(jià)執(zhí)行策略114以確保執(zhí)行策略114是得到滿(mǎn)足的。若應(yīng)用程序虛擬化客戶(hù)端組件110確定不再滿(mǎn)足執(zhí)行策略114,則應(yīng)用程序虛擬化客戶(hù)端組件110取消公布虛擬化應(yīng)用程序112。例如, 應(yīng)用程序虛擬化客戶(hù)端組件110可停止虛擬化應(yīng)用程序112的執(zhí)行并使應(yīng)用程序112不可用于執(zhí)行。應(yīng)用程序虛擬化客戶(hù)端組件110還可從客戶(hù)端設(shè)備102上移除虛擬化應(yīng)用程序 112。若之后再次滿(mǎn)足執(zhí)行策略114,應(yīng)用程序虛擬化客戶(hù)端組件110可通過(guò)從服務(wù)器104 向客戶(hù)端設(shè)備102流傳送虛擬化應(yīng)用程序112重新公布虛擬化應(yīng)用程序112。如上文簡(jiǎn)短討論的,若不能評(píng)價(jià)執(zhí)行策略114則應(yīng)用程序虛擬化客戶(hù)端組件110 也取消公布虛擬化應(yīng)用程序112。例如,若執(zhí)行策略114要求僅在特定地理區(qū)域內(nèi)執(zhí)行應(yīng)用程序112但應(yīng)用程序虛擬化客戶(hù)端組件110不能確定該地理區(qū)域則也可取消公布虛擬化應(yīng)用程序112。若客戶(hù)端設(shè)備102之后返回到準(zhǔn)許執(zhí)行應(yīng)用程序112的地理區(qū)域,則應(yīng)用程序虛擬化客戶(hù)端組件110可重新公布應(yīng)用程序112以供執(zhí)行。根據(jù)其他方面,應(yīng)用程序虛擬化客戶(hù)端組件110被配置為存儲(chǔ)供服務(wù)器104和客戶(hù)端設(shè)備102的管理員使用的審核數(shù)據(jù)。例如,審核數(shù)據(jù)可包括標(biāo)識(shí)虛擬化應(yīng)用程序112 的不允許的訪(fǎng)問(wèn)的數(shù)據(jù)、應(yīng)用程序虛擬化客戶(hù)端組件110取消公布應(yīng)用程序112的條件、以及對(duì)組件110和116所提供的應(yīng)用程序虛擬化環(huán)境的管理員有可能有幫助的其他信息。關(guān)于應(yīng)用程序虛擬化客戶(hù)端組件110、客戶(hù)端設(shè)備102、和服務(wù)器104的操作的附加細(xì)節(jié)將在下文參照?qǐng)D2A-2B來(lái)提供。圖2A-2B是示出說(shuō)明此處公開(kāi)的用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的一個(gè)說(shuō)明性過(guò)程的各方面的例程200的流程圖。應(yīng)當(dāng)理解,參考圖2A-2B以及其它附圖所描述的邏輯操作被實(shí)現(xiàn)為(I)計(jì)算機(jī)實(shí)現(xiàn)的動(dòng)作的序列或運(yùn)行于計(jì)算系統(tǒng)上的程序模塊,和 /或(2)計(jì)算系統(tǒng)內(nèi)的互連機(jī)器邏輯電路或電路模塊。取決于計(jì)算系統(tǒng)的性能及其他要求, 可以選擇不同的實(shí)現(xiàn)。因此,此處所描述的邏輯操作被不同地稱(chēng)為操作、結(jié)構(gòu)設(shè)備、動(dòng)作或模塊。這些操作、結(jié)構(gòu)設(shè)備、動(dòng)作和模塊可用軟件、固件、專(zhuān)用數(shù)字邏輯,及其任何組合來(lái)實(shí)現(xiàn)。還應(yīng)該明白,可以執(zhí)行比附圖中示出并在此處描述的操作更多或更少的操作。這些操作還可以按與此處所描述的不同的次序來(lái)執(zhí)行。例程200在操作202處開(kāi)始,此處應(yīng)用程序虛擬化客戶(hù)端組件110確定是否已經(jīng)接收到執(zhí)行虛擬化應(yīng)用程序112的請(qǐng)求。例如,客戶(hù)端設(shè)備102的用戶(hù)可作出執(zhí)行應(yīng)用程序112的請(qǐng)求。若還未收到這樣的請(qǐng)求,則例程200回到操作202,在此處進(jìn)行另一次這樣的判定。如果應(yīng)用程序虛擬化客戶(hù)端組件110確定已經(jīng)接收到執(zhí)行虛擬化應(yīng)用程序112的請(qǐng)求,例程200從操作202行進(jìn)至操作204。在操作204,應(yīng)用程序虛擬化客戶(hù)端組件110嘗試評(píng)價(jià)執(zhí)行策略114。如上文所討論地,應(yīng)用程序虛擬化客戶(hù)端組件110可利用其他組件提供的功能性來(lái)獲得評(píng)價(jià)執(zhí)行策略 114所需的數(shù)據(jù)。例如,應(yīng)用程序虛擬化客戶(hù)端組件110可獲得標(biāo)識(shí)客戶(hù)端設(shè)備102的地理位置、一天中的時(shí)刻、或評(píng)價(jià)執(zhí)行策略114所需的其他信息的數(shù)據(jù)。例程200從操作204行進(jìn)至操作206。在操作206,應(yīng)用程序虛擬化客戶(hù)端組件110確定是否能夠評(píng)價(jià)執(zhí)行策略114。例如,如果諸如客戶(hù)端設(shè)備102的地理位置之類(lèi)的數(shù)據(jù)不可用,則應(yīng)用程序虛擬化客戶(hù)端組件110可能不能評(píng)價(jià)執(zhí)行策略114。在其他實(shí)施例中,如果不能進(jìn)行對(duì)服務(wù)器104的網(wǎng)絡(luò)連接,則應(yīng)用程序虛擬化客戶(hù)端組件110也可能不能評(píng)價(jià)執(zhí)行策略114。其他類(lèi)型的因素也可能阻礙應(yīng)用程序虛擬化客戶(hù)端組件110評(píng)價(jià)執(zhí)行策略114。若不能評(píng)價(jià)執(zhí)行策略114,則例程200從操作206行進(jìn)至操作208。在操作208,應(yīng)用程序虛擬化客戶(hù)端組件Iio拒絕執(zhí)行虛擬化應(yīng)用程序112的請(qǐng)求。另外,如上討論地,應(yīng)用程序虛擬化客戶(hù)端組件110可以存儲(chǔ)關(guān)于虛擬化應(yīng)用程序112的不允許訪(fǎng)問(wèn)的審核數(shù)據(jù)以及對(duì)應(yīng)用程序虛擬化環(huán)境的管理員可能有幫助的其他信息。例程200從操作208行進(jìn)至上文描述的操作202,在此處可以處理執(zhí)行應(yīng)用程序112的另一請(qǐng)求。若執(zhí)行策略114經(jīng)過(guò)了應(yīng)用程序虛擬化客戶(hù)端組件110的評(píng)價(jià),則例程200從操作206行進(jìn)至操作210。在操作210做出關(guān)于是否滿(mǎn)足執(zhí)行策略114的確定。若不滿(mǎn)足執(zhí)行策略114,則例程200從操作210行進(jìn)至操作208,在此處拒絕執(zhí)行虛擬化應(yīng)用程序112 的請(qǐng)求。另外,如上所述,還可以存儲(chǔ)審核數(shù)據(jù)。若滿(mǎn)足了執(zhí)行策略114,則例程200行進(jìn)至操作212,在此處應(yīng)用程序虛擬化客戶(hù)端組件110公布虛擬化應(yīng)用程序112。如上文討論的,為了公布應(yīng)用程序112,應(yīng)用程序虛擬化客戶(hù)端組件110可確定應(yīng)用程序112是否安裝在客戶(hù)端設(shè)備102上。若安裝了應(yīng)用程序112,則應(yīng)用程序虛擬化客戶(hù)端組件110可使虛擬化應(yīng)用程序可供在客戶(hù)端設(shè)備102上執(zhí)行之用。若虛擬化應(yīng)用程序112未安裝在客戶(hù)端設(shè)備102上,則應(yīng)用程序虛擬化客戶(hù)端組件110可使虛擬化應(yīng)用程序112從服務(wù)器104流傳送至客戶(hù)端設(shè)備102以用于執(zhí)行。一旦應(yīng)用程序112已經(jīng)被公布,例程200從操作212前進(jìn)到操作214。根據(jù)一個(gè)實(shí)現(xiàn),應(yīng)用程序虛擬化客戶(hù)端組件110可被配置成每次取消公布應(yīng)用程序112時(shí)存儲(chǔ)虛擬化應(yīng)用程序112的狀態(tài)。例如,每次取消公布應(yīng)用程序112,應(yīng)用程序虛擬化客戶(hù)端組件110可存儲(chǔ)存儲(chǔ)器、寄存器的內(nèi)容、以及描述客戶(hù)端設(shè)備102的資源的狀態(tài)的數(shù)據(jù)。在此實(shí)現(xiàn)中,應(yīng)用程序虛擬化客戶(hù)端組件110可被配置成每次重新公布應(yīng)用程序 112時(shí)恢復(fù)虛擬化應(yīng)用程序112先前保存的狀態(tài)。例如,在例程200的操作214,應(yīng)用程序虛擬化客戶(hù)端組件110恢復(fù)虛擬化應(yīng)用程序112先前保存的狀態(tài)。以此方式,可在重新公布之際向客戶(hù)端設(shè)備102的用戶(hù)呈現(xiàn)與取消公布應(yīng)用程序112時(shí)處于相同狀態(tài)的虛擬化應(yīng)用程序112。從操作214,例程200行進(jìn)至操作216,此處應(yīng)用程序虛擬化客戶(hù)端組件110使虛擬化應(yīng)用程序112被執(zhí)行。如上文討論的,應(yīng)用程序虛擬化客戶(hù)端組件110提供用于使虛擬化應(yīng)用程序112的執(zhí)行與操作系統(tǒng)108、其他應(yīng)用程序、以及系統(tǒng)資源分開(kāi)地被封裝的功能性。例程200從操作216行進(jìn)至操作218。在操作218,應(yīng)用程序虛擬化客戶(hù)端組件110在虛擬化應(yīng)用程序112的執(zhí)行期間嘗試評(píng)價(jià)執(zhí)行策略114。以此方式,即使在虛擬化應(yīng)用程序112正在執(zhí)行,應(yīng)用程序虛擬化客戶(hù)端組件110也能實(shí)施執(zhí)行策略114所施加的限制。從操作218,例程200行進(jìn)至操作220,此處應(yīng)用程序虛擬化客戶(hù)端組件110確定是否能夠評(píng)價(jià)執(zhí)行策略114。例如,如上文討論的,若無(wú)所需數(shù)據(jù)或不能建立至服務(wù)器104 的連接,則應(yīng)用程序虛擬化客戶(hù)端組件110可能不能評(píng)價(jià)執(zhí)行策略114。若能夠評(píng)價(jià)執(zhí)行策略114,則例程200從操作220行進(jìn)至操作222。在操作222,應(yīng)用程序虛擬化客戶(hù)端組件Iio確定是否滿(mǎn)足執(zhí)行策略114。若能夠滿(mǎn)足,則例程200從操作 222行進(jìn)至上文描述的操作216,在此處繼續(xù)虛擬化應(yīng)用程序112的執(zhí)行。若不滿(mǎn)足執(zhí)行策略114,則例程200從操作222行進(jìn)至操作224。另外,若應(yīng)用程序虛擬化客戶(hù)端組件110 不能評(píng)價(jià)執(zhí)行策略114則例程200從操作220行進(jìn)至操作224。在操作224,應(yīng)用程序虛擬化客戶(hù)端組件110存儲(chǔ)虛擬化應(yīng)用程序112的狀態(tài)。如上文討論的,應(yīng)用程序虛擬化客戶(hù)端組件110可存儲(chǔ)存儲(chǔ)器內(nèi)容、寄存器內(nèi)容、以及用于使虛擬化應(yīng)用程序112在重新公布后返回至其當(dāng)前狀態(tài)所需的其他信息。一旦已經(jīng)存儲(chǔ)了虛擬化應(yīng)用程序112的狀態(tài),例程200行進(jìn)至操作226。在操作226,應(yīng)用程序虛擬化客戶(hù)端組件110取消公布虛擬化應(yīng)用程序112。如上文簡(jiǎn)短討論的,應(yīng)用程序虛擬化客戶(hù)端組件Iio可通過(guò)使應(yīng)用程序112不能供在客戶(hù)端設(shè)備102上執(zhí)行之用來(lái)取消公布虛擬化應(yīng)用程序112。應(yīng)用程序虛擬化客戶(hù)端組件110還可從客戶(hù)端設(shè)備102上移除虛擬化應(yīng)用程序112及其狀態(tài)。在下一次執(zhí)行虛擬化應(yīng)用程序 112時(shí)可從服務(wù)器104向客戶(hù)端設(shè)備102流傳送虛擬化應(yīng)用程序112。應(yīng)用程序虛擬化客戶(hù)端組件110還可在操作226存儲(chǔ)關(guān)于應(yīng)用程序112的不允許訪(fǎng)問(wèn)、取消公布應(yīng)用程序112的條件、以及對(duì)客戶(hù)端設(shè)備102和服務(wù)器104的管理員可能有幫助的其他信息的審核數(shù)據(jù)。例程200從操作226行進(jìn)至上述操作202,在此處按照上述方式處理對(duì)應(yīng)用程序112的另外請(qǐng)求。圖3是示出用于能夠?qū)崿F(xiàn)本文所提出的各種實(shí)施例的計(jì)算系統(tǒng)的說(shuō)明性計(jì)算機(jī)硬件和軟件體系結(jié)構(gòu)的計(jì)算機(jī)體系結(jié)構(gòu)圖。圖3示出的計(jì)算機(jī)體系結(jié)構(gòu)說(shuō)明了傳統(tǒng)臺(tái)式計(jì)算機(jī)、膝上計(jì)算機(jī),或服務(wù)器計(jì)算機(jī),并可被用來(lái)執(zhí)行此處描述的各種軟件組件。圖3所示的計(jì)算機(jī)體系結(jié)構(gòu)包括中央處理單元302 ( “CPU”)、包括隨機(jī)存取存儲(chǔ)器314( “RAM”)和只讀存儲(chǔ)器(“ROM”)316的系統(tǒng)存儲(chǔ)器308、以及將存儲(chǔ)器耦合至CPU 302的系統(tǒng)總線(xiàn)304。包含諸如在啟動(dòng)時(shí)有助于在計(jì)算機(jī)300內(nèi)的元件之間傳輸信息的基本例程的基本輸入/輸出系統(tǒng)(“BIOS”)被存儲(chǔ)在ROM 316中。計(jì)算機(jī)300還包括用于存儲(chǔ)操作系統(tǒng)318、應(yīng)用程序和其他程序模塊的大容量存儲(chǔ)設(shè)備310,這將在以下更為詳細(xì)地描述。大容量存儲(chǔ)設(shè)備310通過(guò)連接至總線(xiàn)304的大容量存儲(chǔ)控制器(未示出)連接到CPU 302。大容量存儲(chǔ)設(shè)備310及其相關(guān)聯(lián)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)為計(jì)算機(jī)300提供非易失性的存儲(chǔ)。雖然對(duì)此處包含的計(jì)算機(jī)可讀介質(zhì)的描述引用了諸如硬盤(pán)或CD-ROM驅(qū)動(dòng)器等大容量存儲(chǔ)設(shè)備,但本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,計(jì)算機(jī)可讀介質(zhì)可以是可由計(jì)算機(jī)300 訪(fǎng)問(wèn)的任何可用計(jì)算機(jī)存儲(chǔ)介質(zhì)。作為示例而非限制,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、 可移動(dòng)和不可移動(dòng)介質(zhì)。例如,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括,但并不限于,RAM、ROM、EPR0M、 EEPR0M、閃存或其他固態(tài)存儲(chǔ)器技術(shù),⑶-ROM、數(shù)字多功能盤(pán)(“DVD”)、HD_DVD、藍(lán)光或其他光學(xué)存儲(chǔ),磁帶盒、磁帶、磁盤(pán)存儲(chǔ)器或其他磁存儲(chǔ)設(shè)備,或可以用來(lái)存儲(chǔ)所需信息并可由計(jì)算機(jī)300訪(fǎng)問(wèn)的任何其他非瞬態(tài)介質(zhì)。可以理解,此處的計(jì)算機(jī)可讀介質(zhì)也包括通信介質(zhì)。通信介質(zhì)通常以諸如載波或其他傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號(hào)來(lái)體現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù), 并包括任意信息傳送介質(zhì)。術(shù)語(yǔ)“已調(diào)制數(shù)據(jù)信號(hào)”是指其一個(gè)或多個(gè)特征以在信號(hào)中對(duì)信息進(jìn)行編碼的方式來(lái)設(shè)置或改變的信號(hào)。作為示例而非限制,通信介質(zhì)包括諸如有線(xiàn)網(wǎng)絡(luò)或直接線(xiàn)連接之類(lèi)的有線(xiàn)介質(zhì),以及諸如聲學(xué)、RF、紅外及其他無(wú)線(xiàn)介質(zhì)之類(lèi)的無(wú)線(xiàn)介質(zhì)。 上述中任一組合也應(yīng)包括在計(jì)算機(jī)可讀介質(zhì)的范圍之內(nèi)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)不包括通信介質(zhì)。根據(jù)各實(shí)施例,計(jì)算機(jī)300可以使用通過(guò)諸如網(wǎng)絡(luò)320之類(lèi)的網(wǎng)絡(luò)到遠(yuǎn)程計(jì)算機(jī)的邏輯連接來(lái)在聯(lián)網(wǎng)環(huán)境中操作。計(jì)算機(jī)300可以通過(guò)連接至總線(xiàn)304的網(wǎng)絡(luò)接口單元 306來(lái)連接到網(wǎng)絡(luò)320。應(yīng)當(dāng)理解,網(wǎng)絡(luò)接口單元306還可以被用來(lái)連接到其他類(lèi)型的網(wǎng)絡(luò)和遠(yuǎn)程計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)300還可包括用于接收和處理來(lái)自多個(gè)其他設(shè)備的輸入的輸入 /輸出控制器312,這些設(shè)備包括鍵盤(pán)、鼠標(biāo)或者電子指示筆(未在圖3中示出)。類(lèi)似地, 輸入/輸出控制器可以提供至顯示屏、打印機(jī)或其他類(lèi)型的輸出設(shè)備(也未在圖3中示出) 的輸出。如前簡(jiǎn)述的那樣,多個(gè)程序模塊和數(shù)據(jù)文件可以存儲(chǔ)在計(jì)算機(jī)300的大容量存儲(chǔ)設(shè)備310和RAM 314內(nèi),包括適于控制聯(lián)網(wǎng)的臺(tái)式、膝上型或服務(wù)器計(jì)算機(jī)的操作的操作系統(tǒng)318。大容量存儲(chǔ)設(shè)備310和RAM 314還可以存儲(chǔ)一個(gè)或多個(gè)程序模塊。具體而言,大容量存儲(chǔ)設(shè)備310和RAM 314可存儲(chǔ)虛擬化應(yīng)用程序112、應(yīng)用程序虛擬化客戶(hù)端組件110、 和/或上述的其他軟件組件。大容量存儲(chǔ)設(shè)備310和RAM 314還可存儲(chǔ)其他程序模塊和數(shù)據(jù),諸如執(zhí)行策略114。一般而言,軟件應(yīng)用或模塊在加載到CPU 302中并執(zhí)行時(shí),可將CPU 302和整個(gè)計(jì)算機(jī)300從通用計(jì)算系統(tǒng)轉(zhuǎn)換成被定制成執(zhí)行此處所呈現(xiàn)功能的專(zhuān)用計(jì)算系統(tǒng)。CPU 302 可以用任意數(shù)量的晶體管或其他分立的電路元件(它們可以分別地或共同地呈現(xiàn)任意數(shù)量的狀態(tài))構(gòu)建。更具體地說(shuō),CPU 302可以響應(yīng)軟件或模塊內(nèi)包含的可執(zhí)行的指令,作為一個(gè)或多個(gè)有限狀態(tài)機(jī)來(lái)操作。這些計(jì)算機(jī)可執(zhí)行的指令可以通過(guò)指定CPU 302如何在多個(gè)狀態(tài)之間轉(zhuǎn)換來(lái)轉(zhuǎn)換CPU 302,從而在物理上轉(zhuǎn)換構(gòu)成CPU 302的晶體管或其他分立的硬件元件。通過(guò)將軟件或模塊編碼到大容量存儲(chǔ)設(shè)備上,還可轉(zhuǎn)換大容量存儲(chǔ)設(shè)備或相關(guān)聯(lián)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的物理結(jié)構(gòu)。在本說(shuō)明書(shū)的不同實(shí)現(xiàn)中,物理結(jié)構(gòu)的具體轉(zhuǎn)換可取決于各種因素。這些因素的示例包括但不限于用來(lái)實(shí)現(xiàn)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)是否被表征為主存儲(chǔ)還是次級(jí)存儲(chǔ)等技術(shù)。例如,如果計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)是作為基于半導(dǎo)體的存儲(chǔ)器實(shí)現(xiàn)的,則當(dāng)軟件被編碼到其中時(shí),軟件或模塊可以轉(zhuǎn)換半導(dǎo)體存儲(chǔ)器的物理狀態(tài)。例如,軟件可以轉(zhuǎn)換構(gòu)成半導(dǎo)體存儲(chǔ)器的晶體管、電容器或其他分立的電路元件的狀態(tài)。作為另一個(gè)示例,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以使用磁性或光學(xué)技術(shù)來(lái)實(shí)現(xiàn)。在這樣的實(shí)現(xiàn)方式中,當(dāng)軟件被編碼到其中時(shí),軟件或模塊可以轉(zhuǎn)換磁性或光學(xué)介質(zhì)的物理狀態(tài)。 這些轉(zhuǎn)換可以包括改變給定磁性介質(zhì)內(nèi)的特定位置的磁性。這些轉(zhuǎn)換還可以包括改變給定光學(xué)介質(zhì)內(nèi)的特定位置的物理特征或特性,以改變這些位置的光學(xué)特性。在沒(méi)有偏離本說(shuō)明書(shū)的范圍和精神的情況下,物理介質(zhì)的其他轉(zhuǎn)換也是可以的,前面提供的示例只是為了便于此討論。基于前述內(nèi)容,應(yīng)當(dāng)理解,在此已經(jīng)提出了用于對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)的技術(shù)。雖然以計(jì)算機(jī)結(jié)構(gòu)特征、方法動(dòng)作、以及計(jì)算機(jī)可讀介質(zhì)專(zhuān)用的語(yǔ)言描述了本文呈現(xiàn)的主題,但是應(yīng)該理解,在所附權(quán)利要求書(shū)中所限定的本發(fā)明不一定僅限于本文描述的具體特征、動(dòng)作、或介質(zhì)。相反,這些具體特征、動(dòng)作和介質(zhì)是作為實(shí)現(xiàn)權(quán)利要求的示例形式來(lái)公開(kāi)的。上述主題僅作為說(shuō)明提供,并且不應(yīng)被解釋為限制??蓪?duì)此處所述的主題作出各種修改和改變,而不必遵循所示和所述的示例實(shí)施例和應(yīng)用,且不背離所附權(quán)利要求書(shū)中所述的本發(fā)明的真正精神和范圍。
權(quán)利要求
1.一種包括執(zhí)行計(jì)算機(jī)實(shí)現(xiàn)的操作的計(jì)算機(jī)實(shí)現(xiàn)的方法,所述計(jì)算機(jī)實(shí)現(xiàn)的操作用于接收?qǐng)?zhí)行虛擬化應(yīng)用程序(112)的請(qǐng)求;響應(yīng)于接收所述請(qǐng)求,評(píng)價(jià)所述虛擬化應(yīng)用程序(112)的執(zhí)行策略(114)以確定是否可以執(zhí)行所述虛擬化應(yīng)用程序(112);以及響應(yīng)于確定可以執(zhí)行所述虛擬化應(yīng)用程序(112)而公布所述虛擬化應(yīng)用程序(112)。
2.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述執(zhí)行策略規(guī)定只有在執(zhí)行所述虛擬化應(yīng)用程序的設(shè)備位于指定地理位置時(shí)才可執(zhí)行所述虛擬化應(yīng)用程序。
3.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述執(zhí)行策略規(guī)定只有在指定時(shí)間段期間才可執(zhí)行所述虛擬化應(yīng)用程序。
4.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述執(zhí)行策略規(guī)定所述虛擬化應(yīng)用程序僅可執(zhí)行指定的持續(xù)時(shí)間。
5.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述執(zhí)行策略規(guī)定只有在執(zhí)行所述虛擬化應(yīng)用程序的設(shè)備所用的計(jì)算資源不受限制時(shí)才可執(zhí)行所述虛擬化應(yīng)用程序。
6.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括確定是否能夠評(píng)價(jià)所述執(zhí)行策略;以及響應(yīng)于確定不能評(píng)價(jià)所述執(zhí)行策略而取消公布所述虛擬化應(yīng)用程序。
7.如權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,公布所述虛擬化應(yīng)用程序包括確定所述虛擬化應(yīng)用程序是否安裝在設(shè)備上;若所述虛擬化應(yīng)用程序安裝在所述設(shè)備上則使所述虛擬化應(yīng)用程序可供執(zhí)行;以及若所述虛擬化應(yīng)用程序未安裝在所述設(shè)備上則向所述設(shè)備流傳送所述虛擬化應(yīng)用程序。
8.一種其上存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可執(zhí)行指令在由計(jì)算機(jī)執(zhí)行時(shí)使得所述計(jì)算機(jī)接收?qǐng)?zhí)行虛擬化應(yīng)用程序(112)的請(qǐng)求;響應(yīng)于接收所述請(qǐng)求,評(píng)價(jià)所述虛擬化應(yīng)用程序(112)的執(zhí)行策略(114)以確定是否可以執(zhí)行所述虛擬化應(yīng)用程序(112);以及響應(yīng)于確定可以執(zhí)行所述虛擬化應(yīng)用程序(112)而公布所述虛擬化應(yīng)用程序(112)。
9.如權(quán)利要求8所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,其上還存儲(chǔ)有在由所述計(jì)算機(jī)執(zhí)行時(shí)使所述計(jì)算機(jī)執(zhí)行以下動(dòng)作的計(jì)算機(jī)可執(zhí)行指令在所述虛擬化應(yīng)用程序的執(zhí)行期間評(píng)價(jià)所述執(zhí)行策略以確定是否可繼續(xù)執(zhí)行所述虛擬化應(yīng)用程序;以及響應(yīng)于確定不可以繼續(xù)執(zhí)行所述虛擬化應(yīng)用程序而取消公布所述虛擬化應(yīng)用程序。
10.如權(quán)利要求9所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,其上還存儲(chǔ)有在由所述計(jì)算機(jī)執(zhí)行時(shí)使所述計(jì)算機(jī)執(zhí)行以下動(dòng)作的計(jì)算機(jī)可執(zhí)行指令確定是否能夠評(píng)價(jià)所述執(zhí)行策略;以及響應(yīng)于確定不能評(píng)價(jià)所述執(zhí)行策略而取消公布所述虛擬化應(yīng)用程序。
全文摘要
本申請(qǐng)涉及對(duì)虛擬化應(yīng)用程序的基于策略的訪(fǎng)問(wèn)。當(dāng)收到執(zhí)行虛擬化應(yīng)用程序的請(qǐng)求時(shí),應(yīng)用程序虛擬化客戶(hù)端組件評(píng)價(jià)執(zhí)行策略以確定該應(yīng)用程序是否可被執(zhí)行。若應(yīng)用程序虛擬化客戶(hù)端組件基于執(zhí)行策略確定該虛擬化應(yīng)用程序可以執(zhí)行,則應(yīng)用程序虛擬化客戶(hù)端組件公布該虛擬化應(yīng)用程序。應(yīng)用程序虛擬化客戶(hù)端組件在應(yīng)用程序已安裝時(shí)通過(guò)使該虛擬化應(yīng)用程序可供執(zhí)行來(lái)公布應(yīng)用程序且在應(yīng)用程序未安裝時(shí)通過(guò)安裝該虛擬化應(yīng)用程序來(lái)公布應(yīng)用程序。應(yīng)用程序虛擬化客戶(hù)端組件還在虛擬化應(yīng)用程序執(zhí)行期間評(píng)價(jià)執(zhí)行策略。若應(yīng)用程序虛擬化客戶(hù)端組件確定不再滿(mǎn)足執(zhí)行策略,則應(yīng)用程序虛擬化客戶(hù)端組件取消公布虛擬化應(yīng)用程序,由此阻止該虛擬化應(yīng)用程序的執(zhí)行。
文檔編號(hào)G06F9/455GK102591701SQ201110443200
公開(kāi)日2012年7月18日 申請(qǐng)日期2011年12月26日 優(yōu)先權(quán)日2010年12月27日
發(fā)明者A·B·安德森, A·M·安德森, A·沙爾東, C·W·小梅福德, L·P·德索扎, M·C·巴比, S·E·斯特恩斯 申請(qǐng)人:微軟公司