文档打印限制的制作方法

文档序号:30233849发布日期:2022-06-01 07:22阅读:136来源:国知局
文档打印限制的制作方法
文档打印限制


背景技术:

1.计算机网络允许电子文档被远程查看、下载和潜在地打印到打印机或文档。例如,电子文档可以是网页。然而,一些文档格式(以下称为“可移植格式”)在保持外观一致性的同时提供了更大的可移植性。本质上,这样的便携式格式文档(例如,pdf文档)在打印时表现得与它们在计算系统的显示器上观看时一样。当物理文档被传递时,无论谁拥有该文档、并且无论文档在哪里被查看,我们期望该文档看起来相同。因此,便携式格式通常保留了我们在处理物理文档时所具有的习惯期望。
2.存在数种访问电子文档的常规方式。作为一个示例,网页浏览器可用于导航到网页文档(例如,网页),从而查看文档。在这种情况下,文档实际上可以由浏览器从本地计算系统下载和呈现。因此,如果用户决定打印文档,则用户通常可以这样做,除非文档的设置严格地指示该文档是用于只读目的。
3.一些在线应用允许远程查看文档。例如,一些基于云的应用允许文档被远程查看并且可能在适当的认证之后被编辑。在查看之后,用户可能尝试打印文档,从而触发文档被下载用于立即打印。即使对于具有不针对广泛消费的敏感内容的文档也是如此。作为示例,当用户选择打印在线可编辑文档时,在线服务可以在将可编辑文档下载到用户的计算系统之前将该文档转换为便携式格式文档。
4.本文要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的实施例。相反,提供此背景仅用于说明可实践本文中所描述的一些实施例的一个示范性技术领域。


技术实现要素:

5.在此描述的至少一些实施例涉及对电子文档(例如在线文档)的打印的限制。当用户访问电子文档(例如,经由网页浏览器或在线应用)时,该电子文档可能包含不用于被更广的观众观看的敏感或机密信息。然而,如果用户打印该文档,则该文档的内容现在可供能够拥有该文档的任何人使用。
6.例如,如果文档被打印到物理纸上,则敏感内容可被物理拥有该纸的任何人看到。如果文档被打印为文档,则该文档可以被容易地转发或共享,然后由其他人访问。
7.这全部都表示潜在的安全性破坏,其形式为降低防止未授权用户观看敏感或机密材料的保护。本文描述的原理通过限制用户打印用户能够查看或下载的电子文档(例如,打印到打印机或文档)的能力来防止这种风险。
8.根据本文描述的一个实施例,从客户端的角度来看,在客户端计算系统下载文档(例如,通过在网页浏览器中查看该文档)之后,用户可能尝试打印该文档。客户端计算系统截取打印命令、暂停相应的打印操作,并且向服务器计算系统(例如,客户端从其下载文档的服务器)发出打印请求。从服务器的角度来看,在接收到打印文档的请求时,服务器计算系统确定文档是否是打印受限制的。如果否,则允许进行打印操作。如果是,则服务器计算系统对打印请求作出否定响应并且改变文档,使得即使被打印也不打印敏感信息。在任何一种情况下,都可以进行打印操作,但是不打印敏感信息(如果有的话)。
9.例如,当文档被下载时,它可以用管理如何呈现文档的样式表来下载。文档可以由服务器计算系统更改,使得样式表向打印操作隐藏敏感或机密内容,并且展示(出于打印的目的)先前隐藏的禁止打印消息。
10.根据本文的另一实施例,服务器计算系统可以在下载文档之前限制打印。例如,用户可能已经使用在线应用来查看和可能编辑文档。如果用户发出打印命令,则客户端计算系统将下载文档(例如,以便携式格式)以供打印。然而,服务器计算系统不知道是否已经发出打印命令。在检测到接收到提供(例如,下载)文档的请求时,并且在确定该文档是打印受限制的时,服务器计算系统改变该文档,使得该文档被限制于所请求的打印,然后提供改变后的文档。或者,服务器计算系统用不具有敏感信息的另一文档替换文档,并提供替换的文档。
11.作为示例,如果文档具有指示该文档将被打印的元数据,则该文档可以被另一文档(例如,包含限制文档的打印的简单消息的文档)替换。另一方面,服务器计算系统很难分辨文档是否将被打印。然而,即使在这种情况下,也可以通过使文档只读来改变文档。然后下载改变或替换的文档。因此,敏感内容的打印再次受到限制。
12.提供本概述以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图说明
13.为了描述可以获得本发明的上述和其它优点和特征的方式,将通过参考在附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体的描述。应理解,这些附图仅描绘了本发明的典型实施例并且因此不应被认为是对其范围的限制,将通过使用附图以附加的具体性和细节来描述和解释本发明,在附图中:
14.图1示出了其中可以采用在此描述的原理的网络环境,该网络环境包括可以打印到打印目标的服务器计算系统和客户端计算系统;
15.图2示出了根据在此描述的原理的第一实施例的用于限制文档的打印的方法的流程图;
16.图3a示意性地示出了包括呈现组件的示例网页文档,该呈现组件通过使一些元素可见并且一些元素隐藏来控制网页文档在打印期间如何出现;
17.图3b示出了与图3a相同的网页文档,除了现在以前可见的(多个)元素被隐藏,并且以前隐藏的(多个)元素是可见的;
18.图4示出了类似于图1的网络环境的网络环境,除了现在示出了有助于第一实施例的组件和处理流程;
19.图5a至图5d示出了根据在此描述的第一实施例尝试打印敏感文档时的示例用户体验;
20.图6示出了根据在此描述的原理的第二实施例的用于限制文档的打印的方法的流程图;
21.图7a至图7d示出了根据在此描述的第二实施例的试图打印敏感文档时的示例用户体验;
22.图8示出了根据在此描述的原理的第三实施例的用于限制文档的打印的方法的流程图;
23.图9a至图9c示出了根据在此描述的第二实施例的试图打印敏感文档时的示例用户体验;以及
24.图10示出其中可采用本文所述原理的示例计算机系统。
具体实施方式
25.在此描述的至少一些实施例涉及对电子文档(例如在线文档)的打印的限制。当用户访问电子文档(例如,经由网页浏览器或在线应用)时,该电子文档可包含不用于被更广的观众观看的敏感或机密信息。然而,如果用户打印该文档,则该文档的内容现在可供能够拥有该文档的任何人使用。
26.例如,如果文档被打印到物理纸上,则敏感内容可以被物理拥有该纸的任何人看到。如果文档被打印为文档,则该文档可以被容易地转发或共享,然后由其他人访问。
27.这都表示潜在的安全性破坏,其形式为降低防止未授权用户观看敏感或机密材料的保护。本文描述的原理通过限制用户打印用户能够查看或下载的电子文档(例如,打印到打印机或文档)的能力来防止这种风险。
28.根据本文描述的一个实施例,从客户端的角度来看,在客户端计算系统下载文档(例如,通过在网页浏览器中查看该文档)之后,用户可能尝试打印该文档。客户端计算系统截取打印命令、暂停相应的打印操作,并且向服务器计算系统(例如,客户端从其下载文档的服务器)发出打印请求。从服务器的角度来看,在接收到打印文档的请求时,服务器计算系统确定文档是否是打印受限制的。如果否,则允许进行打印操作。如果是,则服务器计算系统对打印请求作出否定响应并且改变文档,使得即使被打印,也不打印敏感信息。在任何一种情况下,都可以进行打印操作,但是不打印敏感信息(如果有的话)。
29.例如,当文档被下载时,它可以用管理如何呈现文档的样式表来下载。文档可由服务器计算系统更改,使得样式表隐藏来自打印操作的敏感或机密内容,并展示(出于打印的目的)先前隐藏的禁止打印的消息。
30.根据本文的另一实施例,服务器计算系统可以在下载文档之前限制打印。例如,用户可能已经使用在线应用来查看和可能编辑文档。如果用户发出打印命令,则客户端计算系统将下载文档(例如,以便携式格式)以供打印。然而,服务器计算系统不知道是否已经发出打印命令。在检测到接收到提供(例如,下载)文档的请求时,并且在确定该文档是打印受限制的时,服务器计算系统改变该文档,使得该文档被限制于所请求的打印,然后提供改变后的文档。或者,服务器计算系统用不具有敏感信息的另一文档替换文档,并提供替换的文档。
31.作为示例,如果文档具有指示该文档将被打印的元数据,则该文档可被另一文档(例如,包含限制文档的打印的简单消息的文档)替换。另一方面,服务器计算系统很难分辨文档是否将被打印。然而,即使在这种情况下,也可以通过使文档只读来改变文档。然后下载改变或替换的文档。因此,敏感内容的打印再次受到限制。
32.图1示出了其中可以采用本文描述的原理的网络环境100。网络环境100包括客户端计算系统101和服务器计算系统102。客户端计算系统101上具有允许客户端计算系统101
的用户(未示出)查看和下载(如箭头131所示)服务器计算系统102处的文档120的应用110。
33.仅作为示例,客户端计算系统101可以如下文针对图10的计算系统1000所述来构造。因此,应用110可以如下文针对图6的可执行组件1006所描述来构造。此外,在一个示例中,服务器计算系统102也如下面针对图10的计算系统1000所描述的那样被构造,尽管在服务器的情况下,可能不需要用户接口1012。服务器计算系统102还可以是在云计算环境中操作的云计算服务。在下文中,客户端计算系统可以被简称为“客户端”,而服务器计算系统可被简称为“服务器”)。
34.此外,客户端101可以请求向打印目标130打印文档120,如箭头132所示。例如,在物理打印操作中,打印目标130可以是在诸如纸的物理材料上打印文档120的打印机。在软打印操作中,打印目标103可以是电子文档,使得软打印操作创建表示文档120的文档。如果在文档中存在敏感或机密信息,则这些打印操作中的任何一个打印操作都可能导致未授权的信息释放,因此这种打印表示潜在的安全漏洞。
35.图2、图6和图8示出了根据本文所述实施例的用于限制文档打印的各种方法200、600和800。方法200、600和800可以在图1的环境100中执行,并且因此将频繁地参考图1进行描述。例如,方法600和800可以由图1的服务器102执行以限制文档120的打印。方法200可以由客户端101和服务器102协作地执行。如果客户端101和服务器102如下面针对图8的计算系统1000所描述的那样被构造,则方法200、600和800中的每个方法都可以由计算系统1000通过硬件处理单元1002执行存在于存储器1004内的计算机可执行指令来执行,从而使得计算系统1000执行这些方法。
36.图2示出了根据本文所述原理的第一实施例的用于限制文档的打印的方法200的流程图。仅作为示例,该场景可以发生在客户端应用110是网页浏览器并且文档120是网页文档(诸如网页)的上下文中。图3a示意性地示出了包括呈现组件310的示例网页文档300,呈现组件310控制网页文档300在打印期间如何呈现。在一个示例中,呈现组件310是样式表(诸如级联样式表(css)格式样式表)。呈现组件310使得文档300的一些元素(例如,元素311)可见(如实线箭头321a所表示的),并且使得文档300的其他元素(例如,元素312)隐藏(如虚线箭头322a所表示的)。
37.在图2的方法200中,一些动作由客户端(例如,图1的客户端101)执行,并且在图2的左列中在标头“客户端”下列出。其它动作由服务器(例如,图2的服务器102)执行,且在图2的右列中在标头“服务器”下列出。图2的示例可以出现在作为网页浏览器的应用110和作为网页的文档120的上下文中。
38.服务器使得文档被提供给客户端(动作221)。参照图1,服务器102向客户端101提供(如箭头131所示)文档120。如果应用110导航到由服务器102所托管的网站,并且导航到该网站内的网页文档,这可能发生,从而导致文档120被下载到客户端101。因此,客户端接收该文档(动作211)。参照图1,客户端101接收(也由箭头131表示)文档120。
39.现在还可以参照图4的环境400来描述方法200的其余部分,图4的环境400与图1的环境100相同。然而,客户端101现在另外示出了下载的文档120,以及包括监听器组件411、修改器组件412和打印组件413的附加组件。此外,服务器102另外示出了确定组件411和策略412。最后,各个箭头431至438表示与图2的方法200的其余部分相关联的示例处理流程。如果客户端101和服务器102均如针对图10的计算系统1000所描述的那样构造,则这些组件
中的每个组件都可如以下针对可执行组件1006所描述的那样构造。
40.方法200的其余部分在用户选择打印文档时启动。参考图4,这导致应用110发出由箭头431表示的打印命令。作为响应,方法200包括截取打印命令(动作212)。参考图4,监听器组件411截取打印命令,如箭头431所示。这可以通过使收听器组件监听打印事件来实现。
41.响应于截取打印命令(动作212),客户端暂停相应的打印操作(动作213)并使得打印请求被发送到服务器(动作214)。在一个实施例中,该暂停是通过响应于检测到打印事件而执行同步呼叫来实现的。因此,这具有暂停打印操作直到同步呼叫被应答的效果。打印请求(例如,同步呼叫)被发送到的服务器可以是但不一定是与首先向客户端提供文档的同一服务器。参照图4,客户端101向打印组件413发出打印暂停指令(由箭头432表示),从而暂停文档120的打印操作。此外,客户端101使得打印请求(由箭头433表示)被发送到服务器102。打印操作的控制现在在服务器(例如,服务器102)的手中。
42.服务器随后检测打印该文档的打印请求的接收(动作222)。例如,在图4中,服务器102检测由箭头433表示的打印请求的接收。作为响应,服务器确定该文档是否是打印受限制的(判定框223),或者换言之,该文档的打印是否将被阻止。在图4中,该确定由确定组件421与打印策略422协商(如双向箭头434所示)来进行。
43.如果服务器确定在文档上没有打印限制(判定框223中的“否”),则服务器使得对打印请求的肯定响应被发送到客户端(动作225)。在图4中,该肯定响应由箭头435表示。作为响应,客户端取消暂停打印操作(动作216),从而可打印文档。在图4中,客户端101取消暂停(如箭头441所示)打印操作,允许文档120被打印(如箭头442所示),这是因为文档120可能不包含敏感或机密信息。
44.另一方面,如果服务器确定文档是打印受限制的(判定框223中的“是”),则服务器防止打印所提供的文档。具体地,服务器改变在打印时如何呈现文档(动作224)。这可以通过对打印请求的否定响应而发生,这也由图4中的箭头435表示。这导致客户端改变文档(动作215)。在图4中,如箭头451所示,修改器组件412接收否定响应,并且作为响应(如箭头452所示)修改文档120。
45.这种改变是以这样的方式进行的,即打印命令的取消暂停用将不再使文档以在产生打印命令时存在的文档的形式打印。在其中文档是浏览器可查看文档(或网页文档300)的图3a的示例中,这可以通过使呈现组件310(例如,样式表)被改变来完成。如图3b所示,这可以使得先前在打印时可见(如图3a中实线箭头321a所示)的一个或多个用户界面元素311现在在打印时隐藏(如图3b中虚线箭头321b所示)。也许在先前打印时隐藏的一个或多个用户界面元素312(如图3a中虚线箭头322a所示)现在在打印时可见(如图3b中实线箭头322b所示)。
46.作为示例,网页文档的元素311可以是文档的正常内容并包含敏感信息。另一方面,网页文档的元素312可以是限制文档打印的简单消息。因此,在这一点上,即使尝试打印具有敏感信息的文档,将打印的唯一事物是文档打印受限制的消息。因此,在此,如果用户希望,则文档的打印(例如,打印被限制的消息)可以被取消暂停(动作216)。
47.如前面参考图3a和3b所提到的,可以通过与网页文档的样式表交互来改变文档在打印时如何呈现—以改变什么元素在打印时被隐藏和可见。以下表示css示例,该示例示出css样式表如何可被重写以改变哪些元素是可见的和隐藏的(添加了行编号以便于稍后参
考:
[0048][0049][0050]
第1行指示提取文档中所示的所有内容。行2-9中的术语“important”意味着覆盖之前定义的所有内容并且仅执行行2-9的定义。在行11中,mcasblockprintcss是在打印期间向用户显示的唯一css元素。如将从图5c看到的,该元素仅仅是打印被限制的指示。因此,在该实施例中,使所有可见元素隐藏,并使隐藏元素可见。然而,策略422可以允许对在每个文档的基础上变得隐藏和可见的内容进行更细粒度的控制。例如,可能允许文档的打印基本上如同它最初出现的那样,除了隐藏敏感部分的一个或两个部分。
[0051]
图5a至5d示出了在尝试打印敏感文档时的示例用户体验。在图5a中,用户正在查看下载的网页文档。在图5b中,用户选择打印网页文档。这触发了方法200在场景后面的执行,导致文档的打印视图改变。图5c示出在打印窗格中,用户现在看到即使用户继续打印,打印限制通知也是所有将被打印的内容。因此,用户很可能取消他/她自己的打印操作。图5d示出了指示打印命令已被阻止的另一消息。
[0052]
图6示出了根据本文的第二实施例的用于限制文档的打印的方法600的流程图。方法600甚至可以在提供文档之前由服务器执行。参考图1,方法600可以在向客户端101提供文档120之前由服务器102执行。
[0053]
例如,文档120可以是便携式格式文档(诸如pdf文档),其表示用户先前在他/她的客户端上查看并可能编辑过的文档的打印机友好版本。这里,“便携式格式”文档是具有布
局指令和嵌入字体的任何文档,使得无论在何处查看,该文档看起来相同(至少从布局和字体的角度来看)。
[0054]
作为示例,应用110可以是允许在线查看文档的可编辑形式的在线应用的客户端部分。如果用户发布打印文档的请求,则这采用提供文档的便携式格式版本的请求的形式。因此,在下载文档之前,服务器可以将正被查看或编辑的文档转换为便携式格式文档。然而,服务器不必知道正在提供便携式格式文档用于打印的目的。
[0055]
参照图6,客户端发布提供文档的请求。这未在图6中示出,因为操作是客户端侧操作,并且图6示出了在服务器(诸如图1的服务器102)处执行的方法600的流程图。服务器随后接收提供文档的请求(动作601)。
[0056]
响应于检测到提供文档的请求(动作601),服务器确定文档是否是打印受限制的(判定框602)。如果文档不是打印受限制的(判定框602中的“否”),则服务器通过实际提供文档来响应提供文档的请求(动作604)。这允许客户执行文档的打印操作。例如,在图1中,服务器102向客户端101提供文档120,从而允许客户端101打印文档120。
[0057]
在图6所示的实施例中,即使文档是打印受限制的(判定框602中的“是”),服务器仍可进一步确定该文档是否具有将由客户端解释为打印命令的元数据(判定框603)。作为示例,便携式格式文档(诸如pdf文档)可以具有指示立即打印该文档的元数据。如果客户端正在在线查看并可能编辑文档,并且请求打印文档,则情况就是这样。作为示例,该元数据可以是嵌入的javascript片断,指示一旦加载到浏览器中就立即打印文档。因此,无论文档是否是打印受限制的(判定框602中的“是”),如果元数据不指示打印(判定框603中的“否”),则仍可提供文档(动作604)。
[0058]
然而,在更广泛的情况下,如果打印被限制(判定框602中的“是”),则要提供的文档被替换为另一文档(动作605)。在服务器还检查可移植格式文档的元数据的实施例中(判定框603),如果打印都被限制(判定框602中的“是”),并且元数据指示该文档将被打印(判定框603中的“是”),则用另一可移植格式文档替换该可移植格式文档(动作605)。然后,将替换文档而不是原始请求的文档(如在动作604中)提供给客户端(动作606)。
[0059]
该替换文档可以简单地是明确打印操作不被允许的文档。因此,即使用户能够查看并可能编辑包含敏感或机密信息的文档,用户也被阻止打印包含敏感或机密信息的文档。
[0060]
图7a至图37d示出了与该第二实施例相关联的示例性用户体验。在图7a中,用户正在查看并可能正在编辑在线文字处理文档。图7b示出了在用户指示打印文档之后,客户端系统尝试获取在线文档的对应pdf文档。图7c示出了用户界面,其中通知用户打印被阻止。图7d示出了显示代替包含敏感或机密信息的文档而下载的替换文档的打印界面。
[0061]
图8示出了根据本文的第三实施例的用于限制文档的打印的方法800的流程图。方法800甚至可以在提供文档之前由服务器执行。参考图1,方法800可以在向客户端101提供文档120之前由服务器102执行。在该实施例中,文档可以是用户经由诸如文档共享应用或远程存储服务等远程应用可访问的文档。同样,文档120可以是例如表示打印机友好文档的便携式格式文档(诸如pdf文档)。在这种情况下,所访问的文档可能已经是存储在在线驱动器上的便携式格式文档(例如pdf文档)。
[0062]
参照图8,客户端发出提供文档的请求。这未在图8中示出,因为操作是客户端侧操
作,并且图8示出了在服务器(诸如图1的服务器102)处执行的方法800的流程图。服务器随后接收提供文档的请求(动作801)。
[0063]
响应于检测到提供文档的请求(动作801),服务器确定文档是否是打印受限制的(判定框802)。如果文档不是打印受限制的(判定框802中的“否”),则服务器通过实际提供文档来响应提供文档的请求(动作803)。这允许客户执行文档的打印操作。例如,在图1中,服务器102向客户端101提供文档120,从而允许客户端101打印文档120。
[0064]
如果打印被限制(判定框802中的“是”),则文档被更改(动作804),使得文档被限制按要求打印。例如,可以通过编辑文档的元数据以反映只读状态来使文档只读。然后将经更改的文档提供给客户端(动作805)。因此,客户端将不提供允许文档被打印的控制。
[0065]
图9a至图9c示出了与该第三实施例相关联的示例性用户体验。在图9a中,用户正在查看文档共享站点并旨在打开pdf文档。图9b示出了下载后的开放pdf文档。但是,pdf文档是只读的。因此,如果用户试图打印文档,如图9c所示,则不强调打印控制以表示对于该文档禁用打印控制。因此,防止用户打印敏感内容。
[0066]
如前所述,方法200、600和800的性能可由计算系统执行。因此,现在将参考图10描述计算系统。计算系统现在越来越多地采用多种形式。计算系统例如可以是手持式设备,电器,膝上型计算机,台式计算机,大型机,分布式计算系统,数据中心,或者甚至是传统上不被认为是计算系统的设备,诸如可穿戴物(例如眼镜,手表,表带等)。在本说明书和权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),该设备或系统包括至少一个物理和有形处理器,以及其上能够具有可由处理器执行的计算机可执行指令的物理和有形存储器。存储器可以采用任何形式,并且可以取决于计算系统的性质和形式。计算系统可以分布在网络环境上,并且可以包括多个组成计算系统。
[0067]
如图10所示,在其最基本的配置中,计算系统1000通常包括至少一个硬件处理单元1002和存储器1004。存储器1004可以是物理系统存储器,其可以是易失性的,非易失性的或两者的某种组合。术语“存储器”在本文中还可用于指代非易失性大容量存储装置,例如物理存储媒体。如果计算系统是分布式的,则处理,存储器和/或存储能力也可以是分布式的。
[0068]
计算系统1000上具有通常称为“可执行组件”的多个结构。例如,计算系统1000的存储器1004被示为包括可执行组件1006。术语“可执行组件”是计算领域的普通技术人员公知的结构的名称,该结构可以是软件,硬件或其组合。例如,当以软件实现时,本领域的普通技术人员将理解,可执行组件的结构可包括可在计算系统上执行的软件对象,例程,方法,这种可执行组件是否存在于计算系统的堆中,或者可执行组件是否存在于计算机可读存储介质上。
[0069]
在这种情况下,本领域普通技术人员将认识到,可执行组件的结构存在于计算机可读介质上,使得当由计算系统的一个或多个处理器(例如,由处理器线程)解释时,使得计算系统执行功能。这样的结构可以是直接由处理器计算机可读的(如同可执行组件是二进制的情况)。可替换地,该结构可以被构造为可解释的和/或编译的(无论是在单级中还是在多级中),以便生成可由处理器直接解释的二进制编码。当使用术语“可执行组件”时,对可执行组件的示例结构的这种理解完全在计算领域的普通技术人员的理解内。
[0070]
术语“可执行组件”也被普通技术人员很好地理解为包括专用地或接近专用地以
硬件实现的结构,例如在现场可编程门阵列(fpga),专用集成电路(asic)或任何其它专用电路内。因此,术语“可执行组件”是用于计算领域的普通技术人员所熟知的结构的术语,无论是以软件,硬件还是组合来实现。在本说明书中,也可以使用术语“组件”或“顶点”。如在本说明书中和在此情况下所使用的,该术语(不管该术语是否用一个或多个修饰语来修饰)也旨在与术语“可执行组件”同义,或者是这种“可执行组件”的特定类型,并且因此也具有计算领域的普通技术人员所熟知的结构。
[0071]
在以下描述中,参考由一个或多个计算系统执行的动作来描述各实施例。如果这样的动作以软件实现,则(执行该动作的相关联的计算系统的)一个或多个处理器响应于执行了构成可执行组件的计算机可执行指令而指示计算系统的操作。例如,这样的计算机可执行指令可以包含在形成计算机程序产品的一个或多个计算机可读介质上。这种操作的例子包括数据的处理。
[0072]
计算机可执行指令(和操纵的数据)可以存储在计算系统1000的存储器1004中。计算系统1000还可包含允许计算系统1000通过例如网络1010与其它计算系统通信的通信信道1008。
[0073]
虽然并非所有计算系统都需要用户界面,但在一些实施例中,计算系统1000包括用于与用户交互的用户界面1012。用户接口1012可以包括输出机构1012a以及输入机构1012b。这里描述的原理不限于精确的输出机构1012a或输入机构1012b,因为这将取决于设备的性质。然而,输出机构1012a可包括例如扬声器、显示器、触觉输出、全息图、虚拟现实等。输入机构1012b的实例可包括(例如)麦克风、触摸屏、全息图、虚拟现实、相机、键盘、鼠标或其它指针输入、任何类型的传感器等。
[0074]
这里描述的实施例可以包括或利用包括计算机硬件的专用或通用计算系统,例如一个或多个处理器和系统存储器,如下面更详细地讨论的。这里描述的实施例还包括用于携带或存储计算机可执行指令和/或数据结构的物理和其它计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,实施例可以包括至少两种截然不同类型的计算机可读介质:存储介质和传输介质。
[0075]
计算机可读存储介质包括ram、rom、eeprom、cd-rom或其它光盘存储、磁盘存储或其它磁存储设备、或可用于以计算机可执行指令或数据结构的形式存储所需程序代码手段并可由通用或专用计算系统访问的任何其它物理和有形存储介质。
[0076]“网络”被定义为能够在计算系统和/或组件和/或其它电子设备之间传输电子数据的一个或多个数据链路。当通过网络或另一通信连接(硬连线,无线或硬连线或无线的组合)将信息传送或提供给计算系统时,计算系统适当地将该连接视为传输介质。传输介质可包括网络和/或数据链路,其可用于承载计算机可执行指令或数据结构形式的所需程序代码手段,并且可由通用或专用计算系统访问。上述的组合也应包括在计算机可读介质的范围内。
[0077]
此外,在到达各种计算系统组件时,可以将计算机可执行指令或数据结构形式的程序代码装置从传输介质自动传送到存储介质(反之亦然)。例如,通过网络或数据链路接收的计算机可执行指令或数据结构可被缓存在网络接口组件(例如,“nic”)内的ram中,然
后最终被传送到计算系统ram和/或计算系统处的较不易失性存储介质。因此,应当理解,可读介质可被包括在也(或甚至主要)利用传输介质的计算系统组件中。
[0078]
计算机可执行指令包括例如当在处理器处执行时使得通用计算系统,专用计算系统或专用处理设备执行特定功能或功能组的指令和数据。可替换地或附加地,计算机可执行指令可以将计算系统配置为执行特定功能或功能组。计算机可执行指令可以是例如二进制指令,或者甚至是在由处理器直接执行之前经历某种翻译(例如编译)的指令,例如诸如汇编语言的中间格式指令,或者甚至是源代码。
[0079]
本领域的技术人员将理解,本发明可以在具有许多类型的计算系统配置的网络计算环境中实践,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器系统、基于微处理器的或可编程消费电子产品、网络pc、小型计算机、大型计算机、移动电话、pda、寻呼机、路由器、交换机、数据中心、可穿戴物(诸如眼镜或手表)等。本发明还可以在分布式系统环境中实施,其中通过网络链接(通过硬连线数据链路,无线数据链路或通过硬连线和无线数据链路的组合)的本地和远程计算系统都执行任务。在分布式系统环境中,程序组件可以位于本地和远程存储器存储设备中。
[0080]
本领域技术人员还将理解,本发明可以在由一个或多个数据中心或其部分支持的云计算环境中实践。云计算环境可以是分布式的,尽管这不是必需的。当分布时,云计算环境可以在一个组织内在国际上分布和/或具有跨多个组织拥有的组件。
[0081]
在本说明书和所附权利要求中,“云计算”被定义为用于实现对可配置计算资源(例如,网络,服务器,存储,应用和服务)的共享池的按需网络访问的模型。“云计算”的定义不限于当适当部署时可从这种模型获得的其它众多优点中的任何优点。
[0082]
例如,当前在市场中采用云计算,以便提供对可配置计算资源的共享池的无处不在且方便的按需访问。此外,可配置计算资源的共享池可经由虚拟化被快速提供,并以低管理努力或服务提供商交互被释放,然后相应地被缩放。
[0083]
云计算模型可由诸如按需,自助,广泛网络访问,资源汇集,快速弹性,测量服务等各种特性组成。云计算模型还可以以各种应用服务模型的形式出现,例如作为服务的软件(“saas”),作为服务的平台(“paas”)和作为服务的基础设施(“iaas”)。云计算模型还可以使用诸如私有云,社区云,公共云,混合云等的不同部署模型来部署。在本说明书和权利要求书中,“云计算环境”是其中采用云计算的环境。
[0084]
在不脱离本发明的精神或基本特征的情况下,本发明可以以其它特定形式实施。所描述的实施例在所有方面仅被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是由前面的描述来指示。在权利要求的等同物的含义和范围内的所有变化都包含在其范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1