一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于提供不同版本的虚拟应用的系统和方法与流程

2022-02-20 00:05:10 来源:中国专利 TAG:

用于提供不同版本的虚拟应用的系统和方法


背景技术:

1.许多组织现在使用应用和/或桌面虚拟化来提供更灵活的选项以解决其用户的变化的需求。在桌面虚拟化中,用户的计算环境(例如,操作系统、应用和/或用户设置)可以与用户的物理计算设备(例如,智能电话、膝上型计算机、台式计算机)分开。使用客户端

服务器技术,“虚拟桌面”可被存储在远程服务器中并由远程服务器来管理,而不是存储在客户端设备的本地存储装置中。
2.存在若干不同类型的桌面虚拟化系统。作为一个示例,虚拟桌面基础设施(vdi)指的是在驻留在服务器上的虚拟机内运行用户桌面和/或应用的过程。虚拟化系统也可以在云计算环境或云系统中实现,其中,计算资源(例如,桌面虚拟化服务器)、存储盘、联网硬件和其他物理资源的池可被用来提供虚拟桌面和/或提供对共享应用的访问。


技术实现要素:

3.一种计算设备可以包括存储器和处理器,该处理器与存储器协作并且被配置成响应于客户端设备而在虚拟机内提供第一应用层,其中,第一应用层包括第一版本的第一虚拟应用和与第一版本的第一虚拟应用兼容的至少一个第二虚拟应用。处理器还可以被配置成响应于客户端设备而在虚拟机内提供第二应用层,其中,第二应用层包括第二版本的第一虚拟应用,并且第二版本不同于在第一应用层中的第一版本。此外,第二版本的第一虚拟应用与至少一个第二虚拟应用不兼容。
4.在一个示例实施方式中,第二版本的虚拟应用可以比第一版本的虚拟应用新。服务器可以被配置成在登录时基于宏偏好初始地为客户端设备提供第一或第二版本应用层。在一个示例性实施例中,第一和第二应用层可以被容器化。
5.此外,服务器可以被配置成向客户端设备同时提供第一和第二应用层。此外,第一应用层可以被锁定以防止对其进行更新。作为示例,至少一个第二虚拟应用可以包括至少一个宏。
6.一种相关方法可以包括响应于客户端设备而在服务器处的虚拟机内提供第一应用层,其中,第一应用层包括第一版本的第一虚拟应用和与第一版本的第一虚拟应用兼容的至少一个第二虚拟应用。所述方法还可以包括响应于客户端设备而在服务器处的虚拟机内提供第二应用层,其中,第二应用层包括第二版本的第一虚拟应用,其中,第二版本不同于第一应用层中的第一版本。第二版本的虚拟应用与至少一个第二虚拟应用不兼容。
7.一种相关的计算系统可以包括被配置成访问虚拟应用的客户端设备,以及被配置成响应于客户端设备而在虚拟机内提供第一应用层的服务器。第一应用层可以包括第一版本的第一虚拟应用和与第一版本的第一虚拟应用兼容的至少一个第二虚拟应用。服务器还可以响应于客户端设备而在虚拟机内提供第二应用层,其中,第二应用层包括第二版本的第一虚拟应用,并且第二版本不同于第一应用层中的第一版本。第二版本的虚拟应用与至少一个第二虚拟应用不兼容。
附图说明
8.图1是其中可以实现本公开的各个方面的计算设备的网络环境的示意性框图。
9.图2是对于实践图1所示的客户端机或远程机的实施例有用的计算设备的示意性框图。
10.图3是其中可以实现本公开的各个方面的云计算环境的示意性框图。
11.图4是其中可以实现本公开的各个方面的操作工作空间应用(app)的基于桌面、移动和网络(web)的设备的示意性框图。
12.图5是其中可以实现本公开的各个方面的计算设备的工作空间网络环境的示意性框图。
13.图6是提供要在不同应用层中的虚拟机内运行的不同版本的同一应用的计算系统的示意性框图。
14.图7是图6的系统的虚拟化服务器的示例性实现的示意性框图。
15.图8

10是示出示例性实现的操作的与图6的系统的客户端设备相关联的显示视图。
16.图11是示出对应于图6的系统的方法方面的流程图。
具体实施方式
17.在虚拟计算系统中,应用可以在虚拟机内运行,其中,每个应用被分成不同的层,其包括与该特定层相关的适当文件、系统对象和注册表条目。每个应用层可以被存储为其自己的虚拟盘,并且应用层在操作系统(os)层之上运行。虽然这种方法有助于简化环境并有助于减少与应用更新等相关联的管理时间/复杂度,但是它也可能会产生潜在的问题。随着时间的推移,可以为某些应用创建宏指令程序(也称为宏),以便例如使公共任务或操作自动化。然而,在许多情况下,这样的宏将不与同一应用的后期(较新)版本兼容,这会导致丢失和/或“损坏的”宏以及依赖于这样的宏的用户的降级的用户体验(ux)。
18.本文阐述的配置通过允许创建“黄金(golden)”图像而有利地克服了这些技术挑战,所述“黄金”图像包括同一应用层内的必要应用和宏组件,其已知一起工作并且借此以经证实的工作形状因数进行保存。此外,其他(例如,较新)版本的应用也可以在单独的相应应用层内提供,从而允许两个版本的应用在同一虚拟机内共存,并且甚至同时运行,这对于传统的桌面计算配置而言是不可能的。
19.最初参考图1,其中,可实现本公开的各个方面的非限制性网络环境10包括一个或多个客户端机12a

12n、一个或多个远程机16a

16n、一个或多个网络14、14'以及安装在计算环境10内的一个或多个设施18。客户端机12a

12n经由网络14、14'与远程机16a

16n通信。
20.在一些实施例中,客户端机12a

12n经由中间设施18与远程机16a

16n通信。所示的设施18位于网络14、14'之间,并且也可以称为网络接口或网关。在一些实施例中,设施108可以操作为应用传送控制器(adc)以向客户端提供对部署在数据中心、云中的或者作为软件即服务(saas)跨一系列客户端设备传送的业务应用和其它数据的访问,和/或提供诸如负载平衡等的其它功能。在一些实施例中,可以使用多个设施18,并且(多个)设施18可以被部署为网络14和/或14'的一部分。
21.客户端机12a

12n通常可被称为客户端机12、本地机12、客户端12、客户端节点12、客户端计算机12、客户端设备12、计算设备12、端点12或端点节点12。远程机16a

16n通常可被称为服务器16或服务器群16。在一些实施例中,客户端设备12可具有用作寻求对由服务器16提供的资源的访问的客户端节点以及用作为其它客户端设备12a

12n提供对所托管的资源的访问的服务器16二者的能力。网络14、14'通常可以被称为网络14。网络14可以以有线和无线网络的任意组合被配置。
22.服务器16可以是任何服务器类型,诸如例如:文件服务器;应用服务器;web服务器;代理服务器;设施;网络设施;网关;应用网关;网关服务器;虚拟化服务器;部署服务器;安全套接字层虚拟专用网(ssl vpn)服务器;防火墙;web服务器;执行活动目录的服务器;云服务器;或者执行提供防火墙功能、应用功能或负载平衡功能的应用加速程序的服务器。
23.服务器16可以执行、操作或以其他方式提供应用,该应用可以是以下中的任何一个:软件;程序;可执行指令;虚拟机;管理程序;web浏览器;基于web的客户端;客户端

服务器应用;瘦客户端计算客户端;activex控件;java小应用程序;与因特网协议语音(voip)通信相关的软件,如软ip电话;用于流式传输视频和/或音频的应用;用于促进实时数据通信的应用;http客户端;ftp客户端;oscar客户端;telnet客户端;或任何其它可执行指令集。
24.在一些实施例中,服务器16可以执行远程呈现服务程序或使用瘦客户端或远程显示协议的其他程序,以捕获由在服务器16上执行的应用生成的显示输出,并将应用显示输出传输到客户端设备12。
25.在又其他实施例中,服务器16可以执行虚拟机,该虚拟机向客户端设备12的用户提供对计算环境的访问。客户端设备12可以是虚拟机。该虚拟机可以由例如管理程序、虚拟机管理器(vmm)或服务器16内的任何其他硬件虚拟化技术来管理。
26.在一些实施例中,网络14可以是:局域网(lan);城域网(man);广域网(wan);主公共网络14;以及主专用网络14。另外的实施例可以包括使用各种协议在移动设备之间通信的移动电话网络的网络14。对于无线局域网(wlan)内的短程通信,协议可以包括802.11、蓝牙和近场通信(nfc)。
27.图2描绘了对于实践客户端设备12、设施18和/或服务器16的实施例有用的计算设备20的框图。计算设备20包括一个或多个处理器22、易失性存储器24(例如,随机存取存储器(ram))、非易失性存储器30、用户接口(ui)38、一个或多个通信接口26和通信总线48。
28.非易失性存储器30可以包括:一个或多个硬盘驱动器(hdd)或其它磁或光存储介质;一个或多个固态驱动器(ssd),诸如闪存驱动器或其他固态存储介质;一个或多个混合磁性和固态驱动器;和/或一个或多个虚拟存储卷,诸如云存储装置,或这样的物理存储卷和虚拟存储卷或其阵列的组合。
29.用户接口38可以包括图形用户接口(gui)40(例如,触摸屏、显示器等)和一个或多个输入/输出(i/o)设备42(例如,鼠标、键盘、麦克风、一个或多个扬声器、一个或多个相机、一个或多个生物计量扫描仪、一个或多个环境传感器以及一个或多个加速度计等)。
30.非易失性存储器30存储操作系统32、一个或多个应用34和数据36,使得例如操作系统32和/或应用34的计算机指令可由易失性存储器24之外的(多个)处理器22来执行。在一些实施例中,易失性存储器24可以包括一个或多个类型的ram和/或高速缓存存储器,其可以提供比主存储器更快的响应时间。数据可以使用gui 40的输入设备进入或从(多个)i/
o设备42接收。计算机20的各种元件可以经由通信总线48通信。
31.所示的计算设备20仅被示为示例性客户端设备或服务器,并且可以由具有任何类型的机器或机器集合的任何计算或处理环境来实现,所述机器或机器集合可以具有能够如本文所述进行操作的合适的硬件和/或软件。
[0032] (多个)处理器22可以由一个或多个可编程处理器来实现,以执行一个或多个可执行指令(诸如计算机程序)来执行系统的功能。如本文所使用的,术语“处理器”描述执行功能、操作或操作序列的电路。功能、操作或操作序列可以被硬编码到电路中,或者通过保存在存储器设备中并由电路执行的指令的方式来软编码。处理器可以使用数字值和/或使用模拟信号来执行功能、操作或操作序列。
[0033]
在一些实施例中,处理器可以在一个或多个专用集成电路(asic)、微处理器、数字信号处理器(dsp)、图形处理单元(gpu)、微控制器、现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、多核处理器或具有相关联的存储器的通用计算机中体现。
[0034]
处理器22可以是模拟、数字或混合信号。在一些实施例中,处理器22可以是一个或多个物理处理器,或者一个或多个虚拟(例如,远程定位或云)处理器。包括多个处理器核的处理器和/或多个处理器可以提供用于并行、同时执行指令的功能,或者用于在多于一个数据段上并行、同时执行一个指令的功能。
[0035]
通信接口26可以包括一个或多个接口,以使得计算设备20能够通过包括蜂窝连接的各种有线和/或无线连接来访问诸如局域网(lan)、广域网(wan)、个域网(pan)或因特网的计算机网络。
[0036]
在所描述的实施例中,计算设备20可以代表客户端设备的用户来执行应用。例如,计算设备20可以执行由管理程序管理的一个或多个虚拟机。每个虚拟机可以提供执行会话,在该执行会话内,应用代表用户或客户端设备来执行,诸如托管桌面会话。计算设备20还可以执行终端服务会话以提供托管桌面环境。计算设备20可以提供对远程计算环境的访问,该远程计算环境包括一个或多个应用、一个或多个桌面应用以及一个或多个应用可以在其中执行的一个或多个桌面会话。
[0037]
示例性虚拟化服务器16可以使用由佛罗里达州的fort lauderdale的citrix systems公司(“citrix systems”)提供的citrix hypervisor来实现。虚拟app和桌面会话还可以由也来自citrix systems的citrix虚拟app和桌面(cvad)来提供。citrix虚拟app和桌面是一种应用虚拟化解决方案,其利用对来自任何设备的包括虚拟app、桌面和数据会话的虚拟会话的通用访问加上实现可缩放vdi解决方案的选项来提高生产率。虚拟会话还可以包括例如软件即服务(saas)和桌面即服务(daas)会话。
[0038]
参考图3,描绘了云计算环境50,其也可以被称为云环境、云计算或云网络。云计算环境50可以向多个用户或租户提供共享计算服务和/或资源的递送。例如,共享资源和服务可以包括但不限于网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机、数据库、软件、硬件、分析和智能。
[0039]
在该云计算环境50中,一个或多个客户端52a

52c(诸如以上所描述的那些)与云网络54通信。云网络54可以包括后端平台,例如服务器、存储装置、服务器群或数据中心。用户或客户端52a

52c可以对应于单个组织/租户或多个组织/租户。更具体地,在一个示例实现中,云计算环境50可以提供服务于单个组织的私有云(例如,企业云)。在另一示例中,云
计算环境50可以提供服务于多个组织/租户的社区或公共云。在更进一步的实施例中,云计算环境50可以提供混合云,该混合云是公共云和私有云的组合。公共云可以包括由第三方向客户端52a

52c或企业/租户维护的公共服务器。服务器可以位于远程地理位置的场外或其他位置。
[0040]
云计算环境50可以提供资源池以经由客户端52a

52c通过多租户环境或多租户模型来服务于多个用户,其中,不同的物理和虚拟资源响应于相应环境内的不同需求而被动态地分配和重新分配。多租户环境可以包括可以提供单个软件实例、应用或软件应用以服务于多个用户的系统或架构。在一些实施例中,云计算环境50可以提供按需自服务以跨网络为多个客户端52a

52c单方面地供应计算能力(例如,服务器时间、网络存储)。云计算环境50可以提供响应于来自一个或多个客户端52的不同需求而动态地向外扩展或向内扩展的弹性。在一些实施例中,计算环境50可以包括或提供监视服务以监视、控制和/或生成与所提供的共享服务和资源相对应的报告。
[0041]
在一些实施例中,云计算环境50可以提供不同类型的云计算服务(诸如例如软件即服务(saas)56、平台即服务(paas)58、基础设施即服务(iaas)60和桌面即服务(daas)62)的基于云的递送。iaas可以指用户租赁在指定时间段期间需要的基础设施资源的使用。iaas提供商可以从大的池来提供存储、联网、服务器或虚拟化资源,从而允许用户通过根据需要访问更多资源来快速扩大规模。iaas的例子包括由华盛顿西雅图的amazon.com公司提供的amazon web services、由德克萨斯圣安东尼奥的rackspace us公司提供的rackspace cloud、由加利福尼亚山景城的google公司提供的google computer engine、或由加利福尼亚圣巴巴拉市的rightscale公司提供的rightscale。
[0042]
paas提供商可以提供由iaas提供的功能,包括例如存储、联网、服务器或虚拟化,以及诸如例如操作系统、中间件或运行时资源的附加资源。paas的示例包括由华盛顿州雷蒙德市的microsoft公司提供的windows azure、由google公司提供的google app engine、以及由加利福尼亚州旧金山的heroku公司提供的heroku。
[0043]
saas提供商可以提供paas提供的资源,包括存储、联网、服务器、虚拟化、操作系统、中间件或运行时资源。在一些实施例中,saas提供商可以提供附加资源,包括例如数据和应用资源。saas的示例包括由google公司提供的google apps、由加利福尼亚州旧金山的salesforce.com公司提供的salesforce、或由microsoft公司提供的office 365。saas的示例还可以包括数据存储提供商,例如由加利福尼亚州旧金山的dropbox公司提供的dropbox、由microsoft公司提供的microsoft skydrive、由google公司提供的google drive、或由加利福尼亚州库比蒂诺的apple公司提供的apple icloud。
[0044]
类似于saas,daas(也称为托管桌面服务)是一种形式的虚拟桌面基础设施(vdi),其中,虚拟桌面会话通常与虚拟桌面上使用的app一起作为云服务来递送。citrix cloud是daas递送平台的示例。daas递送平台可以被托管在公共云计算基础设施上,诸如例如来自华盛顿雷蒙德市的microsoft公司的azure cloud(本文中称为“azure”)或由华盛顿西雅图的amazon.com公司提供的amazon web services(本文为“aws”)。在citrix cloud的情况下,citrix工作空间app可被用作用于将app、文件和桌面带到一起(无论是在场所内还是在云中)以递送统一体验的单个入口点。
[0045]
现在将参考图4更详细地讨论由citrix工作空间app提供的统一体验。citrix工作
70可以自动地同时利用多个网络连接以更快地完成活动。如果用户发起voip呼叫,则工作空间app 70通过跨多个网络连接复制呼叫来提高其质量。联网引擎86仅使用首先到达的分组。
[0053]
分析引擎88报告用户的设备、位置和行为,其中,基于云的服务识别可能是被盗设备、被黑客攻击的身份或准备离开公司的用户的结果的任何潜在异常。由分析引擎88收集的信息通过自动实施对抗措施来保护公司资产。
[0054]
管理引擎90保持了工作空间app 70是最新的。这不仅为用户提供了最新的能力,而且也包括了额外的安全性增强。工作空间app 70包括了自动更新服务,该自动更新服务基于可定制策略例行地检查和自动部署更新。
[0055]
现在参考图5,将讨论基于工作空间app 70向用户提供统一体验的工作空间网络环境100。桌面、移动和web版本的工作空间app 70都与在云104内运行的工作空间体验服务102通信。工作空间体验服务102然后经由资源馈送微服务108拉入所有不同的资源馈送16。即,来自运行在云104中的其他服务的所有不同资源都是由资源馈送微服务108拉入的。不同的服务可以包括虚拟app和桌面服务110、安全浏览器服务112、端点管理服务114、内容协作服务116和访问控制服务118。组织或企业订阅的任何服务都被自动拉入工作空间体验服务102中并且被递送到用户的工作空间app 70。
[0056]
除了云馈送120之外,资源馈送微服务108可以拉入场所内馈送122。云连接器124用于提供运行在场所内数据中心中的虚拟app和桌面部署。桌面虚拟化可由例如citrix虚拟app和桌面126、microsoft rds 128或vmware horizon 130来提供。除了云馈送120和场所内馈送122之外,来自物联网(iot)设备134的设备馈送132例如可以由资源馈送微服务108拉入。站点聚集被用于将不同资源联系到用户的总体工作空间体验中。
[0057]
云馈送120、场所内馈送122和设备馈送132各自向用户的工作空间体验提供不同且唯一类型的应用。工作空间体验可支持本地app、saas app、虚拟app和桌面浏览器app以及存储app。随着馈送继续增加和扩展,工作空间体验能够在用户的总体工作空间中包括附加资源。这意味着用户将能够到达他们需要访问的每个单个的应用。
[0058]
仍然参考工作空间网络环境20,将描述关于如何向用户提供统一体验的一系列事件。统一体验开始于用户使用工作空间app 70来连接到在云104内运行的工作空间体验服务102并且呈现他们的身份(事件1)。例如,身份包括用户名和密码。
[0059]
工作空间体验服务102将用户的身份转发到云104内的身份微服务140(事件2)。身份微服务140基于组织的工作空间配置向正确的身份提供者142认证用户(事件3)。认证可以基于要求部署云连接器146的场所内活动目录144。认证还可以基于azure活动目录148或者甚至第三方身份提供者150,诸如例如citrix adc或okta。
[0060]
一旦被授权,工作空间体验服务102就从资源馈送微服务108请求授权资源列表(事件4)。对于每个配置的资源馈送106,资源馈送微服务108从单签名微服务152请求身份令牌(事件5)。
[0061]
资源馈送特定的身份令牌被传递到每个资源的认证点(事件6)。通过云连接器124来联系场所内资源122。每个资源馈送106用针对相应身份授权的资源列表来答复(事件7)。
[0062]
资源馈送微服务108聚集了来自不同资源馈送106的所有项目,并转发(事件8)到工作空间体验服务102。用户从工作空间体验服务102选择资源(事件9)。
[0063]
工作空间体验服务102将该请求转发给资源馈送微服务108(事件10)。资源馈送微服务108向单点登录微服务152请求身份令牌(事件11)。用户的身份令牌被发送到工作空间体验服务102(事件12),在那里启动标签被生成并发送给用户。
[0064]
用户向网关服务160发起安全会话,并呈现该启动标签(事件13)。网关服务160发起到适当的资源馈送106的安全会话,并且呈现身份令牌以无缝地认证用户(事件14)。一旦会话初始化,用户就能够利用资源(事件15)。通过单个接入点或应用来递送整个工作空间有利地提高了生产率并为用户流水线化公共工作流程。
[0065]
转向图6

7,首先描述了说明性地包括客户端计算设备201的计算系统200,该客户端计算设备可与上述那些类似,并且被配置成经由网络210(例如,因特网)从计算设备202访问虚拟应用。此外,可以类似于上面描述的那些的计算设备(例如,虚拟化服务器)202说明性地包括在硬件层209的存储器203和处理器204。处理器204与存储器203协作,并且被配置成响应于客户端设备201,在虚拟机207内提供第一应用层205连同操作系统(os)层208(例如,windows、linux等)。服务器202还被配置成响应于客户端设备201对其的选择,在os层208之上在虚拟机207内提供第二应用层206。
[0066]
更具体地,第一应用层205包括第一版本的第一虚拟应用和与第一版本的第一虚拟应用兼容的(多个)第二虚拟应用。此外,第二应用层206包括在第一应用层中的第二版本的第一虚拟应用,但是第二版本与第一版本不同(例如,较新)(换句话说,它们是同一虚拟应用的不同版本)。此外,第二版本的第一虚拟应用与第一应用层205中的第二虚拟应用不兼容。在图7所示的示例中,第二应用层206中的第二版本的第一虚拟应用是比第一应用层205中的第一虚拟应用的版本更新的版本。
[0067]
在图7所示的示例中,第二虚拟应用是宏,其是结合另一程序使用或在另一程序之上使用的相对短的程序或子例程。然而,如将在下面进一步讨论的,在一些实施例中,第一应用层内的(多个)第二虚拟应用可以是能够独立于第一虚拟应用运行的独立程序。如上所述,为虚拟应用的较旧版本创建的宏可能不正确地工作,或者与应用的较新版本不兼容,如本示例中的情况。作为示例,诸如microsoft access之类的数据库程序允许用户构建在access平台或框架上运行的宏。然而,当access的版本改变时,在该版本上构建的数据库宏可能不再正确地工作。对于宏在被更新时可能会无法正确操作的应用的其他示例可以包括sap应用、电子表格(例如,microsoft excel)、文字处理器(例如,microsoft word)等。
[0068]
已知一起工作的给定应用文件和相关联的宏可以被组合在被锁定以免进一步更新的“黄金映像”中。黄金映像是用于虚拟机、虚拟桌面或在这种情况下是虚拟应用的预配置模板,其包括用于特定用户或用户组的适当资源。在一个示例性实施例中,可以在应用层内以黄金映像将应用文件/宏容器化,尽管不需要在所有实施例中都使用容器化。容器化可以包括适当的运行时间组件(例如,文件、环境变量、库等),其允许部署(多个)应用而无需启动整个虚拟机。当较新或升级版本的应用要被展开时,它就被以使得它独立于第一应用层205而运行的方式类似地部署,因为第一和第二应用层不依赖于相同的文件、库等。也就是说,第一和第二虚拟应用不共享可能以其他方式导致它们之间的冲突的公共文件或库,并且它们因此是自包含的。然而,较旧版本的虚拟应用仍可以在黄金映像中、在与第二应用层206相同的虚拟机208内、并且甚至同时与其相关联的应用/宏一起运行。由于它们在单独的应用层中运行,因此它们是隔离的并且彼此不冲突。
[0069]
相反,在本地桌面环境内运行同一程序的不同版本通常是不可能的,尤其是如果它们要同时运行的话。例如,两个版本的应用都可能试图访问公共文件、库等,从而会导致冲突或其他不兼容问题。然而,由于第一和第二应用层是自包含的(并且可选地被容器化),所以它们可以在同一虚拟机207内单独地或同时运行,从而提供了增强的便利性、生产率和/或用户体验。
[0070]
根据一个示例实施方式,虚拟化服务器202可以使用诸如citrix app分层之类的应用分层解决方案来提供第一和第二应用层205、206。citrix app分层的底层技术使虚拟机的组件能够被独立地分配、修补和更新。这包括os、应用以及用户的设置和数据。citrix app分层使信息技术(it)人员能够经由虚拟机/黄金映像来递送应用,这些应用看起来、动作和感觉就像它们被本地安装一样,但是这些应用实际上是作为其自己的虚拟盘中的单独的可管理对象被存储在别处。利用citrix app分层,应用可以与os分离,允许it关注在管理单个os层上,而不管机器配置(例如,池、筒仓、递送组)的数量如何。在citrix app分层中,层是用于该层所特有的文件系统对象和注册表条目的容器。作为一个示例,“应用层”包括在应用安装到操作系统期间已经被添加、改变或甚至移除的文件和注册表条目。然而,应当理解,在不同的实施例中,除了citrix app分层之外,还可以使用其他合适的应用分层和/或容器化方法。
[0071]
另外参考图8

10,在所示的示例中,虚拟机207提供了对四个单独应用的访问,所述四个单独应用是电子表格程序、文字处理程序、具有相关联的宏的数据库程序的第一版本(v1.0)和同一数据库程序的第二版本(v2.0),它们分别由客户端设备201的显示器215上所示的图标211

214来表示。除了图标213中的数据库符号之外,该图标还说明性地包括锁定符号219,以指示这是黄金映像,其中,给定版本的数据库应用(v1.0)及其相关联的宏在应用层中被锁定,并且因此可以不被用户添加或以其他方式更改(尽管it管理员的更改可以被允许)。这有利地帮助确保一致操作版本的数据库应用及其(多个)相关联的兼容宏将总是可用的。
[0072]
在图8所示的示例中,已经通过客户端设备201的用户界面(ui)选择了图标213,从而打开其中运行较旧(v1.0)版本的虚拟数据库应用的窗口216。此外,在该窗口中,提供相应的选项卡或按钮217用于访问多个不同的数据库宏(宏abc、宏bcd、宏cde、宏def和宏efg),其与黄金映像中的数据库v1.0应用锁定。在图9的示例中,图标214已被选择,并且较新版本(v2.0)的数据库应用被启动并在窗口218内运行。换句话说,图8示出了当仅运行较旧版本(v1.0)的虚拟数据库应用时的情况,并且图9示出了当仅运行较新版本(v2.0)的数据库应用时的情况。在图10的示例中,两个图标213、214都已被选择,并且两个数据库应用层(用于v1.0和v2.0)都分别在窗口216、218中同时运行。如上所述,这对于本地安装在客户端计算设备上的同一应用程序的不同版本通常是不可能的。
[0073]
在一个示例性实施方式中,it人员可以创建黄金映像(这里是第一应用层205和相关联的宏)以确保所有程序在同一应用层内一起正确地工作,然后锁定该应用层以使得其不能被改变,如上所述。这允许证明应用版本和宏一起工作,并且其在没有it干预的情况下不能被改变。这还允许在与用户可能具有的其他版本的应用分离和分开的设定时间段内访问黄金映像(例如,经由订阅或许可),或者作为独立的虚拟软件包。在这点上,应当注意,在一些实施例中,如果需要,可以将多于一个虚拟应用绑定在黄金映像中。例如,这可以允许
两个不同的应用互操作,诸如包括app x(v1)和app y(v1)的第一应用层,以及包括app y(v2)的第二应用层。虽然app x(v1)和app y(v2)可能不是可互操作的,但是当与app y(v1)一起工作时,可能仍使用户对能够访问app x(v1)感兴趣,并且当不与app x互操作时,用户也对能够访问app y(v2)感兴趣。同样,目标是在相同的黄金映像应用层中并入兼容的应用和/或宏,其已经被证明是兼容的并且将对于“开箱(out of the box)”的用户正确地工作。
[0074]
在图7的示例中,存储器203还存储登录宏偏好,这允许服务器202在基于宏偏好登录虚拟机时最初为客户端设备201提供第一或第二版本的虚拟应用。例如,包括在第二应用层206中的应用的较新视图可以变成在启动菜单和/或快速访问条中列出的默认版本,或者如果需要,服务器202甚至可以在登录时自动启动第二应用层。
[0075]
另外参考图11的流程图230,相关方法可以包括在框232响应于客户端设备201而在服务器202处在虚拟机207内提供第一应用层205,其中,第一应用层包括第一版本的第一虚拟应用和与第一版本的第一虚拟应用兼容的一个或多个第二虚拟应用(例如宏等),如上所述。所述方法还说明性地包括在服务器202处响应于客户端设备201而在虚拟机207内提供第二应用层206,在框233,其中第二应用层包括第二版本的第一虚拟应用,并且第二版本不同于在第一应用层中的第一版本。如上所述,第二版本的虚拟应用与(多个)第二虚拟应用不兼容。图11的方法说明性地在框234处结束。如上所述,还可以包括其他步骤,诸如在已经生成层之后从特定层选择虚拟应用,响应于来自用户输入设备的选择而从一个应用版本改变到另一个应用版本等。
[0076]
如本领域技术人员在阅读了前述公开内容后应当认识到的,本文描述的各个方面可以体现为一种设备、一种方法或一种计算机程序产品(例如,具有用于执行所述操作或步骤的计算机可执行指令的非暂时性计算机可读介质)。因此,这些方面可以采取完全硬件实施例、完全软件实施例或组合软件和硬件方面的实施例的形式。
[0077]
此外,这样的方面可以采取由一个或多个计算机可读存储介质存储的计算机程序产品的形式,该计算机可读存储介质具有在存储介质中或存储介质上体现的计算机可读程序代码或指令。可以利用任何合适的计算机可读存储介质,包括硬盘、cd

rom、光存储设备、磁存储设备和/或其任何组合。
[0078]
受益于在前述描述和相关附图中呈现的教导,本领域技术人员应当可以想到许多修改和其它实施例。因此,应当理解,前述内容不限于示例性实施例,并且修改和其它实施例意图被包括在所附权利要求的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献