JAVA存储电视机

阅读:531发布:2021-03-05

专利汇可以提供JAVA存储电视机专利检索,专利查询,专利分析的服务。并且一般而言,本 发明 涉及被配置成执行方法的服务提供器。该方法包括接收来自用户网络设备的对于公钥的第一 请求 ,生成所述公钥和私钥,将所述公钥发送到所述用户网络设备,将所述私钥发送到仓库,接收来自所述仓库的包括用户标识的对预订信息的第二请求,标识与所述用户标识相关联的所述预订信息,以及,将所述预订信息发送到所述仓库。该仓库,响应于接收到所述预订信息,被配置成判断对应于应用的 许可 证与所述用户标识相关联,生成应用包,其中,所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上,以及,将所述应用包发送到所述用户网络设备。,下面是JAVA存储电视机专利的具体信息内容。

1.一种包括计算机可读取的代码的计算机程序产品,当由处理器执行代码时,被配置成:
从用户网络设备接收在所述用户网络设备上执行应用的第一请求,其中,所述第一请求包括用户标识、路由信息,以及请求的应用信息,其中,使用公钥来加密所述路由信息和请求的应用信息,其中,所述用户网络设备被配置成在电视显示设备上显示所述应用;
使用私钥来解密所述路由信息和请求的应用信息;
向服务提供器发送对与所述用户对应的预订信息的第二请求,其中,所述第二请求包括所述用户标识;
从所述服务提供器接收所述预订信息;
判断对应于所述应用的许可证与所述用户标识相关联;
生成应用包,其中,所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上;以及
将所述应用包发送到所述用户网络设备。
2.如权利要求1所述的计算机程序产品,其中,在接收所述第一请求之前,从所述服务提供器接收所述私钥,其中,所述服务提供器被配置成响应于来自所述用户网络设备的请求而生成所述私钥。
3.如权利要求2所述的计算机程序产品,其中,所述计算机可读取的代码,当由所述处理器执行时,进一步被配置成,在发送所述第二请求之前:
使用所述用户标识来标识所述私钥。
4.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述计算机可读取的代码,当由所述处理器执行时,进一步被配置成接收表示所述应用由所述用户网络设备成功地接收到的确认。
5.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述用户网络设备包括所述应用的第一部分,并且其中所述应用包包括所述应用的第二部分。
6.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,判断所述许可证与所述用户标识相关联包括:
向所述用户发送对许可证数据的第三请求;
响应于所述第三请求,接收所述许可证数据;
向所述服务提供器发送所述许可证数据;以及
将所述许可证与所述用户标识相关联。
7.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,判断所述许可证与所述用户标识相关联包括:
判断所述预订信息与所述许可证相关联,以及
将所述许可证与所述用户标识相关联。
8.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述用户网络设备是从由智能电视机和机顶盒构成的组中选择的。
9.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述执行应用的第一请求响应于来自电视机遥控器的信号
10.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述计算机可读取的代码,当由所述处理器执行时,进一步被配置成通过为所述应用设置数字版权管理(DRM)设置来生成所述应用包,其中,所述DRM设置是通过所述JRE实施的。
11.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述应用包是根据Java网络启动协议生成的。
12.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述计算机可读取的代码,当由所述处理器执行时,进一步被配置成使用访问特权来生成所述应用包,其中,所述访问特权是从只沙箱执行、在用户电视设备上在沙箱外有限的访问执行,以及在所述用户电视设备上完全访问执行中选择的。
13.如前面的权利要求中任一权利要求所述的计算机程序产品,其中,所述应用是JAVA应用。
14.一种服务提供器,包括:
处理器;
存储器,包括指令,这些指令,在由所述处理器执行时执行一种方法时,所述方法包括:
接收来自用户网络设备的对于公钥的第一请求;
生成所述公钥和私钥;
将所述公钥发送到所述用户网络设备;
将所述私钥发送到仓库;
接收来自所述仓库的包括用户标识的对预订信息的第二请求;
标识与所述用户标识相关联的所述预订信息;
将所述预订信息发送到所述仓库,
其中,所述仓库,响应于接收到所述预订信息,被配置成:
判断对应于应用的许可证与所述用户标识相关联;
生成应用包,其中,所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上;以及
将所述应用包发送到所述用户网络设备。
15.如权利要求14所述的服务提供器,其中,所述用户网络设备包括所述应用的第一部分,其中,所述应用包包括所述应用的第二部分。
16.如权利要求14或15所述的服务提供器,其中,所述计算机可读取的代码,当由所述处理器执行时,进一步被配置成:
从所述仓库接收许可证数据;以及
将所述许可证与所述用户标识相关联。
17.一种包括计算机可读取的代码的计算机程序产品,当由处理器执行代码时,被配置成:
向服务提供器发送对公钥的第一请求,其中,所述服务提供器被配置成:
生成公钥和私钥,以及
将所述私钥发送到仓库;
从所述服务提供器接收所述私钥;
向所述仓库发送执行应用的第二请求,
其中,所述第二请求包括用户标识、路由信息,以及请求的应用信息,
其中,使用公钥来加密所述路由信息和请求的应用信息,
其中,所述仓库被配置成:
使用所述私钥来解密所述路由信息和请求的应用信息;
向服务提供器发送对与所述用户对应的预订信息的第三请求,其中,所述第三请求包括所述用户标识,
从所述服务提供器接收所述预订信息,
判断对应于所述应用的许可证与所述用户标识相关联,以及
生成应用包,其中,所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上,
接收所述应用包;
执行所述应用包;以及
在电视显示设备上显示所述应用。
18.根据权利要求1-13和17中的任何一个权利要求所述的计算机程序产品,包括其中含有所述计算机可读取的代码的非瞬时的计算机可读存储介质。

说明书全文

JAVA存储电视机

[0001] 对相关申请的交叉引用
[0002] 本申请与2010年5月24日提交的标题为“JAVA STORE”的共同未决的WIPO专利申请No.PCT/US2010/035947(代理人档案NO.33226/619WO1)相关联,该申请的申请人是本申请的受让人,通过引用将该申请的主题包括在此。
[0003] 根据35U.S.C.§119(e),本申请要求2010年10月15提交的美国临时申请No.61/393,688的优先权。在此通过引用将美国临时申请No.61/393,688的全部内容包括在此。

背景技术

[0004] 全国甚至全世界的软件开发人员不断地创建新应用。软件开发可以使用各种TM TM平台来实现,包括但是绝不限于:Java 和JavaFX ( 和 是由Sun
Microsystems,Inc.(位于美国加州Mountain View)所拥有的注册商标)。当开发新应用时,开发人员必须找到使应用对那些对应用感兴趣的用户可用的办法。这可以例如通过请求可能对这样的应用感兴趣的用户来实现。开发人员可以例如通过诸如CD-ROM之类的可移动存储器设备分发应用的副本。
发明内容
[0005] 一般而言,一方面,本发明涉及包括计算机可读取的代码的计算机程序产品(例如,非瞬时的计算机可读存储介质),计算机可读取的代码,当由处理器执行时,被配置成,从用户网络设备,接收在用户网络设备上执行应用的第一请求,其中,所述第一请求包括用户标识、路由信息,以及请求的应用信息,其中,使用公钥来加密所述路由信息和请求的应用信息,其中,所述用户网络设备被配置成在电视显示设备上显示所述应用。计算机可读取的代码进一步被配置成使用私钥解密路由信息和请求的应用信息,向服务提供器发送对与所述用户对应的预订信息的第二请求,其中,所述第二请求包括所述用户标识,从所述服务提供器接收所述预订信息,判断对应于所述应用的许可证与所述用户标识相关联。计算机可读取的代码进一步被配置成生成应用包,其中,所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上,以及,将所述应用包发送到所述用户网络设备。
[0006] 一般而言,一方面,本发明涉及服务提供器,包括处理器、存储器,包括指令,所述指令,当由处理器执行时执行一种方法,所述方法包括:接收来自用户网络设备的对于公钥的第一请求,生成所述公钥和私钥,将所述公钥发送到所述用户网络设备,将所述私钥发送到仓库,接收来自所述仓库的包括用户标识的对预订信息的第二请求,标识与所述用户标识相关联的所述预订信息,以及,将所述预订信息发送到所述仓库。该仓库,响应于接收到所述预订信息,被配置成判断对应于应用的许可证与所述用户标识相关联,生成应用包,其中,所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上,以及,将所述应用包发送到所述用户网络设备。
[0007] 一般而言,一方面,本发明涉及包括计算机可读取的代码的计算机程序产品(例如,非瞬时的计算机可读存储介质),计算机可读取的代码,当由处理器执行时,被配置成向服务提供器发送对公钥的第一请求。服务提供器被配置成生成公钥和私钥,并将私钥发送到仓库。计算机可读取的代码进一步被配置成从服务提供器接收私钥,以及,向所述仓库发送执行应用的第二请求。第二请求包括用户标识、路由信息,以及请求的应用信息,以及,使用公钥来加密所述路由信息和请求的应用信息。仓库被配置成使用私钥解密路由信息和请求的应用信息,向服务提供器发送对与所述用户对应的预订信息的第三请求,其中,所述第三请求包括所述用户标识,从所述服务提供器接收所述预订信息,判断对应于所述应用的许可证与所述用户标识相关联,以及,生成应用包。所述应用包被配置成使用Java运行时环境(JRE)将所述应用部署在所述用户网络设备上。计算机可读取的代码进一步被配置成接收应用包,执行所述应用包,以及,在电视显示设备上显示所述应用。附图说明
[0008] 图1A-1C示出了根据本发明的一个或多个实施例的系统。
[0009] 图2示出了根据本发明的一个或多个实施例的仓库的体系结构。
[0010] 图3示出了根据本发明的一个或多个实施例的系统。
[0011] 图4-9示出了根据本发明的一个或多个实施例的方法。
[0012] 图10示出了根据本发明的一个或多个实施例的计算机系统
[0013] 图11A-11B示出了根据本发明的一个或多个实施例的电视系统。

具体实施方式

[0014] 现在将参考附图详细描述本发明的具体实施例。为确保一致性,各附图中的相似元件通过相似附图标记来表示。
[0015] 在本发明的一个实施例中,阐明了众多具体细节以提供对本发明的更加全面的理解。然而,对本领域的技术人员显而易见的是,本发明也可以在没有这些具体细节的情况下实施。在其他情况下,没有对已知的特征进行详细描述,以便不至于使本发明变得模糊。
[0016] 一般而言,本发明的各实施例涉及获取存储在仓库中的应用并在用户网络设备上执行。更具体而言,本发明的各实施例涉及获取能够在Java运行时环境(JRE)中执行的应用(例如,Java或JavaFX应用)并在电视显示设备上显示这些应用。根据本发明的一个或多个实施例,这涉及验证用户的电视预订情况,并生成应用包,以便该应用被呈现给电视显示设备。
[0017] 在本发明的一个实施例中,应用一旦被编译就处于字节代码格式。编译的应用被配置成在Java虚拟机(JVM)上执行。在本发明的一个或多个实施例中,JVM存储在可操作地连接到诸如电视服务提供器之类的服务提供器的用户网络设备中,以及电视显示设备中。更具体而言,JVM包括启动JRE的执行并使应用在JRE内执行的功能。根据本发明的一个或多个实施例,用户网络设备是包括JRE并可操作地连接到电视显示设备的任何设备。在一个示例中,用户网络设备是机顶盒。在另一个示例中,用户网络设备是包括JRE的电视TM TM
机。再一个示例是连接到电视机的包括JRE的计算机或Blu-Ray 播放器。(Blu-Ray 是Blu-Ray光盘协会所拥有的商标。)应用的执行包括读取并验证字节代码,确定对应的本机平台机器代码,并向客户端设备OS和/或硬件发布对应的本机平台机器代码。在本发明的一个实施例中,JVM可以实现一个或多个“沙箱”,其中,每一个沙箱都是JRE内的隔离的执行环境。在沙箱内执行的应用可以只与沙箱内的JVM及其他应用进行交互;然而,应用可以与在沙箱外面执行的应用进行交互。进一步地,JVM可以对应用可如何在给定沙箱内执行施加进一步的限制。
[0018] 图1A示出了根据本发明的一个实施例的系统。该系统包括一个或多个应用开发人员(110)、仓库(120)、用户网络设备(140)、电视显示设备(145),以及服务提供器(175)。下面将讨论这些组件中的每一个组件。
[0019] 在本发明的一个实施例中,开发人员(110)生成、创建,或以其他方式提供应用(150)。根据本发明的一个或多个实施例,应用可以是但不仅限于:Java(任何版本)以及JavaFX应用。然后,开发人员将这些应用(150)提供到仓库(120)供分发。另外,根据本发明的一个或多个实施例,开发人员(110)将应用信息(155)(即,涉及应用的数据)提供到仓库(120)。
[0020] 根据本发明的一个或多个实施例,开发人员(110)还从仓库(120)接收涉及已经提交的应用(即,应用(150))的数据。根据本发明的一个或多个实施例,此数据可以包括客户端使用数据(165),以及应用度量(170)。根据本发明的一个或多个实施例,客户端使用数据(165)可以对应于详述给定应用如何在一个或多个用户网络设备(140)上被使用的数据(例如,无需任何个人标识信息)。根据本发明的一个或多个实施例,客户端使用数据(165)可以包括诸如用户启动和/或停止应用(150)的频繁度、哪些页面被用户访问、用户导航通过应用中的各种页面的顺序、页面是如何被访问的、用户如何与用户界面进行交互(例如,用户在哪里点击了哪些按钮,等等)以及在访问页面上花费的时间之类的信息。另外,开发人员(110)可以接收应用度量(170)。
[0021] 根据本发明的一个或多个实施例,应用度量(170)可以包括应用已经安装或重新安装的次数、应用被查看的次数、应用被用户删除的次数,以及应用导致灾难性错误(即,应用“崩溃”)的次数。根据本发明的一个或多个实施例,如下面所描述的,应用度量(170)由仓库(120)生成。
[0022] 在本发明的一个实施例中,仓库(120)对应于被配置成与开发人员和用户网络设备(140)连接的一个或多个计算机系统(例如,服务器)。一般而言,根据本发明的一个或多个实施例,仓库(120)从开发人员(110)那里接收应用,并通过将它们提供到用户网络设备(140)来将它们提供到用户。根据本发明的一个或多个实施例,应用(150)被提供到封装在标准Java归档(JAR)文件中的仓库(120)。仓库被配置成存储一个或多个应用(150)。进一步地,仓库可以存储同一应用的不同的版本(例如,版本1、版本1.1、版本2等等),其中每一个版本都包括不同的特征和/或内容。例如,根据本发明的一个或多个实施例,可以为各种屏幕大小和输入功能(例如,触摸屏、物理键盘输入、跟踪球输入等等)存储应用的不同的版本。另外,仓库(120)可以存储应用的给定版本的多个实例,其中应用的每一个实例都被配置成被部署在不同类型的用户网络设备(140)上(例如,一个实例用于机顶盒,一个实例用于智能电视机等等)。进一步地,在本发明的一个实施例中,仓库(120)包括支持在图4-11中的一个或多个中所描述的实施例的功能。在图2中描述了仓库的实施例。
[0023] 根据本发明的一个或多个实施例,仓库(120)被配置成使用客户端使用数据(165)来生成有关应用(150)如何被使用的趋势,随后将所生成的趋势发送到开发人员(110)。作为替代地,或除上面的描述之外,仓库(120)可以被配置成将客户端使用数据(165)发送到开发人员(110)。在本发明的一个实施例中,客户端使用数据(165)是从执行应用的若干个单个用户网络设备中获取的客户端使用数据的聚集。在本发明的一个实施例中,应用度量(170)包括除客户端使用数据以外的由仓库跟踪的其他信息。例如,应用度量(170)可以表示给定应用被预览的次数(下面在图7中所描述的)、给定应用安装在用户网络设备上的次数、应用当前存储在其上面的用户网络设备(140)的类型等等。
[0024] 仓库(120)被配置成通过有线网络、无线网络,或其任何组合与开发人员(110)和用户网络设备(140)进行通信。进一步地,仓库(120)和用户网络设备(140)可以通过有线网络、无线网络,或其任何组合进行通信。根据本发明的一个或多个实施例,在接收到应用(150)和应用信息(155)时,仓库(120)可以将应用封装在使对其用户可用的部署封包(160)中。根据本发明的一个或多个实施例,开发人员(110)和用户网络设备(140)的用户可以使用显示在电视显示设备(145)上的界面与仓库(110)进行交互。
[0025] 在本发明的一个实施例中,用户网络设备(140)被配置成从仓库(120)接收作为部署封包(160)的应用。在本发明的一个实施例中,部署封包(160)符合Java网络启动协议(JNLP),以便应用可以使用JNLP的Web启动特征来执行。在本发明的一个实施例中,用户网络设备还支持JavaFX,JavaFX被用来获取与应用在用户网络设备(140)上的JRE中执行相关联的客户端使用数据(165)。
[0026] 在本发明的一个实施例中,用户网络设备(140)是JRE可以在其上执行,并可操作地连接到电视显示设备(145)的任何设备。换言之,每一个用户网络设备(140)都包括Java运行时环境(130)。根据本发明的一个或多个实施例,用户使用用户网络设备(140)从仓库(120)访问应用。用户网络设备(140)的示例包括但不仅限于:机顶盒、智能电视机等等。根据本发明的一个或多个实施例,机顶盒是被用来连接到电视服务提供器并在电视显示设备(145)上显示电视节目的包括处理器、存储器、永久性存储器的设备。进一步地,根据本发明的一个或多个实施例,智能电视机是包括处理器、存储器、永久性存储器的电视机,并包括接收并解码广播信号的功能,广播信号然后显示在电视显示设备(145)上。进一步地,根据本发明的一个或多个实施例,智能电视机包括直接因特网连接。下面将在图12B中更详细地描述智能电视机。然而,根据本发明的一个或多个实施例,用户网络设备(140)可以是包括JRE并被配置成接收并解码要显示在电视显示设备(145)上的广播信号的任何设备。根据本发明的一个或多个实施例,电视显示设备(145)可以是阴极射线管(CRT)设备、发光二极管(LED)显示器、等离子显示板(PDP)、液晶显示器(LCD)、有机发光二极管显示器(OLED)、表面导电电子发射器显示器(SED)、激光TV、纳米晶体显示器,或被用来显示广播信号的任何其他显示设备。
[0027] 根据本发明的一个或多个实施例,用户网络设备(140)被配置成连接到服务提供器(175)。根据本发明的一个或多个实施例,服务提供器是电视服务提供器(175)(即,广播电视的提供器)。相应地,为了接收广播电视,用户网络设备(140)必须连接到服务提供器(175)。根据本发明的一个或多个实施例,服务提供器(175)存储与用户网络设备(140)相关联的用户信息,并提供到仓库(120)的连接。根据本发明的一个或多个实施例,为了从仓库(120)接收应用(150),仓库(120)必须首先通过联络服务提供器(175)来判断用户网络设备(140)被授权接收该应用(150)。在图8中比较详细地对此进行了描述。
[0028] 图1B示出了根据本发明的一个或多个实施例的另一个示例系统。再次,此系统包括仓库(120),以及服务提供器(175)。然而,此示例系统还包括机顶盒(180)和电视系统(190)。如上文所描述的,用户可以通过包括JRE,并可操作地连接到电视显示设备(145)的任何设备连接到仓库(120)。在此示例中,它是包括JRE(130)并连接到电视系统(190)(该电视系统(190)包括电视显示设备(145))的机顶盒(180)。相应地,在图1A中被视为用户网络设备(140)的是图1B中的机顶盒(180)。如图所示,它是与服务提供器(175)和仓库(120)进行通信的机顶盒(180)。
[0029] 图1C示出了根据本发明的一个或多个实施例的另一个示例系统。再次,此系统包括仓库(120)以及服务提供器(175)。然而,此示例系统还包括电视系统(190)。在此示例中,电视系统(190)通过用户网络设备(185)直接与仓库(120)和服务提供器(175)进行通信。相应地,在图1A中被视为用户网络设备(140)的是图1C中的用户网络设备(185)。虽然在图1B中未示出,用户网络设备是连接到服务提供器(175)和仓库(120)并包括JRE的任何设备。如此,将在描述中使用术语“用户网络设备”,以标识可以在本发明的任何实施例中发现的这样的组件。
[0030] 图2示出了根据本发明的一个实施例的仓库(200)(即,图1A的仓库(120))的体TM TM TM TM系结构。仓库(200)包括操作系统(OS)(240),例如,Solaris 、Linux 、Unix 、Windows ,或任何其他操作系统( 是Sun Microsystems Inc.,(位于美国加州Mountain
View)所拥有的注册商标; 是Linus Tourvalds(位于美国加州Santa Clara)所拥有的注册商标; 是The Open Group的注册商标;而 是由Microsoft
Corporation(美国华盛顿州雷德蒙市)所拥有的注册商标。)OS(240)执行被配置成托管对仓库(200)所提供的服务的应用编程接口(API)的应用服务器(230)(例如,Glassfish)。
[0031] 在本发明的一个实施例中,仓库(200)包括管理服务(205)、安全服务(210)、内容传送服务(220),以及数字版权管理服务(225)。下面将描述这些服务中的每一个服务。
[0032] 在本发明的一个实施例中,管理服务(205)提供仓库管理服务(通过通用资源定位器(URL)访问),包括仓库硬件和软件的配置。例如,根据本发明的一个或多个实施例,管理服务(205)被配置成跟踪向仓库(200)提交内容的开发人员。根据本发明的一个或多个实施例,管理服务(205)被配置成跟踪应用的购买交易和/或部署。根据本发明的一个或多个实施例,管理服务(205)被配置成管理目录中的应用向消费者的显示。最后,根据本发明的一个或多个实施例,管理服务(205)管理向内容仓库(200)提交的内容的状态(例如,提交、批准,正在审阅,发布,或隔离)。
[0033] 在本发明的一个实施例中,安全服务(210)包括管理涉及提供应用的安全问题的功能,包括与服务提供器(即,图1A的服务提供器(175))进行交互。根据本发明的一个或多个实施例,安全服务(210)可以包括若干个映射,包括用户的标识和用来解密请求的私钥之间的映射、用户标识和对该用户标识可用的许可证之间的映射,以及预订信息和许可证映射之间的映射,这确保带有某一预订的用户被允许访问带有某些许可证的应用。在图3中比较详细地讨论了这些映射。
[0034] 在本发明的一个实施例中,内容传送服务(220)给用户提供户(通过URL访问),以(i)查看仓库(200)中的应用(245),(ii)封装应用以用于使用JNLP传送给客户端设备供安装或预览,(iii)管理应用版本和实例,(iv)管理计费和开发票(根据需要),(v)对确认给定客户端设备包括给定应用的最新版本的请求作出响应,(vi)跟踪哪些应用被每一个用户安装在他们的客户端设备上(例如,用户A在他们的移动设备上加载应用1),以及(v)维护用户帐户信息(例如,用户名、密码等等)。根据本发明的一个或多个实施例,内容传送服务(220)包括与服务提供器(即,图1A的服务提供器(175))进行交互以便向服务提供器提供记帐信息的功能。
[0035] 在本发明的一个实施例中,数字版权管理服务(225)包括为给定应用、特定用户,特定客户端设备类型,或其任何组合设置数字版权管理(DRM)设置的功能。例如,DRM设置可以指定但不仅限于指定:(i)应用可以在哪里执行(例如,应用可以在什么系统上执行),(ii)应用的给定实例是否可以被复制到多个客户端设备,(iii)用户可以访问应用的哪些特征,以及(iv)应用(或应用的给定特征)可用的持续时间。进一步地,根据本发明的一个或多个实施例,DRM设置可以提供跟踪消费者已经购买的许可证的类型的能。例如,消费者可以购买永久性的许可证、预订许可证,或每个内容访问许可证。根据本发明的一个或多个实施例,向服务提供器的某些预订可以提供不需要被单独地购买的某些许可证。
[0036] 根据本发明的一个或多个实施例,数字版权管理服务(225)可以包括预订信息和许可证之间的映射。根据本发明的一个或多个实施例,在没有购买有效许可证的情况下,DRM服务(225)禁止用户复制应用并在不同的系统上使用。根据本发明的一个或多个实施例,DRM管理服务还验证特定应用上的对用户可用的访问级别(例如,如果应用是包括5个级别的游戏,但是,用户只有访问级别1-3的许可证,那么,DRM可以实施此限制)。
[0037] 在本发明的一个实施例中,应用(245)的可执行代码、应用信息(250),以及交易日志(255)存储在仓库(200)中的数据储存库(235)中。在本发明的一个实施例中,数据储存库(235)中的数据是通过诸如ZFS、网络文件系统(NTFS)、通用磁盘格式(UDF),或任何其他文件系统(或其组合)来管理的。另外,作为一种替代方案,应用(245)的可执行代码、应用信息(250),以及交易日志(255)中的一项或多项可以存储在内容分发网络(即,从地理上讲分布式的存储网络),以促进应用等等向消费者的有效传输。在这样的实施例中,仓库(200)包括访问内容分发网络并管理存储在内容分发网络中的数据的功能。
[0038] 在本发明的一个实施例中,应用信息(250)作为可扩展标记语言(XML)文件存储在数据储存库(235)。本领域技术人员将认识到,应用信息可以以除XML以外的格式(或与XML相结合)存储。根据本发明的一个或多个实施例,开发人员还给仓库提供涉及提交的应用的应用信息。根据本发明的一个或多个实施例,应用信息可以包括但不仅限于:应用名称、小标题、描述、类别、许可证要求(例如,永久性的、预订,或免费的)以及价格。然而,此应用信息也可以例如由服务提供器来提供。根据本发明的一个或多个实施例,小标题是伴随应用名称的本发明的简短描述。根据本发明的一个或多个实施例,描述可以是弹出式描述或完整描述。进一步地,根据本发明的一个或多个实施例,应用信息(250)可包括弹出式描述以及完整描述。根据本发明的一个或多个实施例,当用户在显示器中在与应用相关联的图标上悬停时将出现弹出式描述。关于完整描述,根据本发明的一个或多个实施例,使完整描述对请求了更多有关应用的信息的用户可用。关于类别,根据本发明的一个或多个实施例,开发人员从描述应用的预先存在的列表中选择描述性术语(即,“社交网络”、“体育”、“金融”等等)。根据本发明的一个或多个实施例,应用信息可以包括其他信息,诸如帮助页面统一资源定位符(“URL”)、与应用(150)相关联的一个或多个图标,以及应用(150)的屏幕抓图。
[0039] 图3示出了根据本发明的一个或多个实施例的示例系统。具体而言,图3示出了什么信息存储在系统的每一个组件中,以及数据如何在各组件之间迁移。图3包括用户网络设备(300)、仓库(305),以及服务提供器(310)。下面讨论了每一个的组件。
[0040] 根据本发明的一个或多个实施例,用户网络设备(300)包括用于标识设备的用户的信息,以及设备本身的标识信息以及路由信息。在本发明的一个实施例中,标识信息可以包括,例如,用户标识(315)。根据本发明的一个或多个实施例,路由信息包括终端站标识(325)和网络标识(330),这两者都可以存储在用户网络设备(300)中。根据本发明的一个或多个实施例,终端站标识是指派给诸如消费者家庭内的电缆盒或机顶盒之类的设备的唯一标识符。根据本发明的一个或多个实施例,网络标识是内部电缆分布式网络内的诸如电缆盒或机顶盒之类的每一个设备的唯一网络标识符。根据本发明的一个或多个实施例,网络端标识可以是TCP/IP网络的因特网协议(IP)地址。本领域的技术人员将认识到,终端站标识和网络标识对于向仓库(305)传输请求来说可能是必须的。最后,用户网络设备(300)也可以包括用来加密发送到仓库(305)的消息的公钥(335)。在图6中比较详细地描述了公钥。
[0041] 根据本发明的一个或多个实施例,仓库(305)可以包括多个映射,这些映射可以存储在计算机可读取的存储设备中。根据本发明的一个或多个实施例,这些映射包括用户标识(UID)到私钥映射(340)。根据本发明的一个或多个实施例,用户标识(UID)到私钥映射(340)映射允许仓库(305)标识请求中的用户标识,并且确定用来解密消息的私钥。仓库(305)也可以包括应用到许可证映射(345)。根据本发明的一个或多个实施例,应用到许可证映射(345)映射被用来确定访问存储在仓库中的特定应用所需的许可证。仓库(305)也可以包括预订到许可证映射(355)。根据本发明的一个或多个实施例,用户可以具有向服务提供器(310)的预订所附带的某些许可证,此信息存储在预订到许可证映射(355)中。例如,用户的电视服务可以与已经可用的特定的应用一起提供。在另一个示例中,除基本线缆之外,用户还可以具有对HBO的预订,此预订可以包括HBO创建的称赞他们的影视剧或进行产品展示的应用。在此示例中,如果影视剧是关于海盗的,那么,HBO可以创建一个基于海盗的视频游戏应用。此应用可以作为HBO预订的一部分可用。
[0042] 返回到图3的讨论,根据本发明的一个或多个实施例,服务提供器(310)可以向用户提供很多预订,这些预订中的每一个都可以允许对仓库(305)中的应用的变化的访问。仓库(305)也可以包括用户标识到许可证映射(350)。根据本发明的一个或多个实施例,用户标识到许可证映射(350)映射被用来标识与特定用户相关联的许可证。例如,与用户标识相关联的用户可能已经与他们的预订分开地购买了许可证。
[0043] 根据本发明的一个或多个实施例,服务提供器(310)可以包括用户标识和预订之间的映射(360)。换言之,服务提供器(310)跟踪特定用户的预订信息。
[0044] 根据本发明的一个或多个实施例,为了获取对应用的访问,用户网络设备(300)首先向仓库(305)发送应用请求(365)。根据本发明的一个或多个实施例,应用请求(365)包括用户标识、终端站标识、网络标识,以及请求的应用信息。根据本发明的一个或多个实施例,除用户标识之外的一切都使用公钥加密。
[0045] 根据本发明的一个或多个实施例,当仓库(305)接收到应用请求(365)时,标识用户标识、从用户标识私钥映射(340)获取与用户标识相关联的私钥,并解密该应用请求(365)。然后,仓库(305)将预订请求(370)发送到服务提供器(310),以便确定与用户相关联的预订。
[0046] 根据本发明的一个或多个实施例,服务提供器(310)使用用户标识预订映射(360)来标识预订信息。服务提供器(310)将预订信息(375)返回到仓库(305)。
[0047] 根据本发明的一个或多个实施例,仓库(305)基于用户的预订信息(375),判断用户具有用于所请求的应用的许可证。如此,仓库(305)生成应用包(380),并将该应用包(380)发送到用户网络设备(300)。根据本发明的一个或多个实施例,仓库(305)可以基于终端站标识来标识应用的特定版本。进一步地,根据本发明的一个或多个实施例,仓库(305)使用诸如终端站标识和网络标识之类的路由信息将应用包(380)发送到用户网络设备(300)。根据本发明的一个或多个实施例,路由信息也可以包括其他设备标识。
[0048] 图4示出了根据本发明的一个或多个实施例的方法。更具体而言,图4示出了用于从开发人员向仓库提供应用的方法。尽管顺序地呈现并描述了流程图中的各步骤,但是,本领域技术人员将认识到,某些或全部步骤可以以不同的顺序执行,可以被组合或省略,而某些或全部步骤可以并行地执行。
[0049] 在ST400,由开发人员(或向仓库提供应用的其他第三方)获取(生成、或创建等等)应用的一个或多个Java归档文件(JAR)。在ST402,获取应用的应用信息。在本发明的一个实施例中,可以使用现有技术中的任何已知机制,包括完成基于Web的表单、提供文本文档、提供XML文档,等等,来获取(生成,或创建)应用信息。在ST404,JAR和对应的应用信息被提供到仓库。根据本发明的一个或多个实施例,应用和应用信息被通过将它们跨网络发送而提供到仓库。
[0050] 图5示出了根据本发明的一个或多个实施例的方法。更具体而言,图5示出了用于审查在图4中(或通过另一种机制)向仓库所提供的应用的方法。尽管顺序地呈现并描述了流程图中的各步骤,但是本领域技术人员将认识到,某些或全部步骤可以以不同的顺序执行、可以被组合或省略,而某些或全部步骤可以并行地执行。
[0051] 在ST500,接收到JAR和对应的应用信息。在ST502,审查应用的内容(例如,文本、图形,和/或音频内容)。在本发明的一个实施例中,应用的内容可以由审查者通过应用审查者服务来审查。根据本发明的一个或多个实施例,手动审查内容提交的文本,并自动地审查JAR以检查是否有病毒并验证代码。根据本发明的一个或多个实施例,可以要么手动要么自动地(例如使用仿真器)来验证JAR和对应的应用信息。
[0052] 在ST504,确定应用的访问特权。访问特权可以部分地根据应用信息来确定。进一步地,访问特权可以部分地使用通过应用审查者服务所指定的(或可以被应用审查者服务访问的)的规则来确定。在本发明的一个实施例中,访问特权可以指定任何粒度级别。例如,访问特权可以是(i)只沙箱执行(即,应用可以只在沙箱内执行,(ii)在客户端设备上在沙箱外有限的访问执行(即,应用可以访问沙箱之外的资源/数据/外围设备的指定的子集),以及(iii)客户端设备上的完全访问执行。
[0053] 在ST506,设置应用的DRM设置。DRM设置可以指定对应用的任何类型的DRM约束。例如,根据本发明的一个或多个实施例,可以对应用施加允许用户在购买应用之前仅仅访问应用的预览的DRM约束。另一个示例是,可以对应用施加限制应用可以被访问的次数或设置应用在多长时间内可被访问的时间限制的DRM约束。在本发明的一个实施例中,ST506可以通过DRM服务来执行。
[0054] 在ST508,使用JNLP来封装JAR、访问特权,以及DRM设置以供部署。在本发明的一个实施例中,仓库包括在ST508所需的执行所有必要的操作的功能。本领域技术人员将认识到,封装可以包括创建部署封包的多个实例,其中,为特定类型的用户网络设备创建部署封包的每一个实例(例如,一个实例用于直接部署在电视系统上,一个实例用于部署在机顶盒上等等)。在ST510中,应用仓库中发布在(即,可以通过用户网络设备安装或预览应用)。根据本发明的一个或多个实施例,发布的应用可通过仓库的内容传送服务被访问。在本发明的一个实施例中,ST508–ST510可以通过内容传送服务来执行。
[0055] 图6示出了根据本发明的一个或多个实施例的方法。具体而言,图6示出了在用户网络设备、服务提供器,以及仓库之间交换公钥和私钥的方法。尽管顺序地呈现并描述了流程图中的各步骤,但是,本领域技术人员将认识到,某些或全部步骤可以以不同的顺序执行、可以被组合或省略,而某些或全部步骤可以并行地执行。
[0056] 在ST600,用户从服务提供器请求公钥。根据本发明的一个或多个实施例,从诸如智能电视机或机顶盒之类的设备请求公钥。根据本发明的一个或多个实施例,服务提供器被配置成生成公钥和私钥以分发到用户客户端设备和仓库。在本发明的一个实施例中,在将设备部署到用户之前,公钥可以预先加载在用户网络设备上。作为替代地,可以使用与用来向服务提供器传递请求的信道不同的通信信道从服务提供器将公钥传输到用户网络设备。
[0057] 在ST605,用户接收并存储公钥。根据本发明的一个或多个实施例,公钥与用户向服务提供器的预订相关联。如此,根据本发明的一个或多个实施例,不管用户的预订涵盖了多少用户网络设备,用户都可以使用相同公钥。根据本发明的一个或多个实施例,公钥也可以与特定设备相关联。例如,根据本发明的一个或多个实施例,如果用户具有多于一个的与单个预订相关联的用户网络设备,则服务提供器可以为每一个设备生成单独的公钥。
[0058] 在ST610,服务提供器向仓库发送私钥。根据本发明的一个或多个实施例,服务提供器传输私钥以及用户标识,以便仓库可以在私钥和用户标识之间创建映射(例如,图3的用户标识私钥映射(340))。在ST615,仓库存储私钥。根据本发明的一个或多个实施例,私钥存储在用户标识私钥映射中。如此,仓库可以标识用来使用用户标识解密封包的适当的私钥。
[0059] 图7示出了根据本发明的一个或多个实施例的方法。更具体而言,图7示出了用于在用户网络设备上预览或安装应用的方法。尽管顺序地呈现并描述了流程图中的各步骤,但是,本领域技术人员将认识到,某些或全部步骤可以以不同的顺序执行、可以被组合或省略,而某些或全部步骤可以并行地执行。
[0060] 在ST700,用户例如使用内容传送服务登录到仓库。在本发明的一个实施例中,用TM TM TM户可以通过Web浏览器(例如,Firefox 、Google Chrome 、Internet Explorer ,或任何微型浏览器、迷你浏览器或无线因特网浏览器)和/或通过安装在用户网络设备上的另一应用来访问仓库( 是Mozilla,Inc.,(位于美国加州Mountain View)所拥有的注册
商标;Google 是Google,Inc.,(位于美国加州Mountain View)所拥有的商标;
而Internet 是Microsoft Corporation(位于美国华盛顿州雷德蒙市)所拥
有的注册商标)。例如,根据本发明的一个或多个实施例,用户可以使用由服务提供器所提供的菜单来访问仓库,以浏览并选择可用的电视节目。
[0061] 在ST702,由用户通过用户网络设备来选择应用。在ST704,就用户是否希望安装应用或预览应用作出判断。如果应用将被安装,那么,方法前进到ST706。如果应用将被预览,那么,方法前进到ST714。
[0062] 在ST706,由仓库接收部署应用包的请求。根据本发明的一个或多个实施例,可以由用户使用用户网络设备的遥控器(即,电视机遥控器或机顶盒的遥控器)来生成请求。本领域技术人员将认识到,部署封包可以由用户使用其他传统的输入设备,诸如被配置成向用户网络设备发送信号并从用户网络设备接收信号的鼠标或键盘,来请求。如上文所描述的,该请求可以包括诸如用户标识、机顶盒或其他用户网络设备标识,该请求的应用信息之类的信息,以及诸如终端站标识和网络端标识之类的路由信息。在上面的图3中比较详细地对此进行了描述。
[0063] 在ST708,认证订户(即,与用户网络设备相关联的预订帐户)。在图8中比较详细地对此进行了描述。在ST710,使用JNLP启动部署封包的传输。根据本发明的一个或多个实施例,对于特定应用,可以有多个部署封包。可以使用来自该请求的信息,诸如用户网络设备标识,来确定适当的部署封包。根据本发明的一个或多个实施例,部署封包是使用来自该请求的路由信息(参见图3)生成的。
[0064] 在ST712,部署封包存储在永久性存储器中。根据本发明的一个或多个实施例,用户网络设备包括其中存储了部署封包的永久性存储器。根据本发明的一个或多个实施例,这可使用户从永久性存储器部署封包,而并非再次从仓库请求封包。
[0065] 返回到ST704,根据本发明的一个或多个实施例,如果用户希望预览应用,则不需要获取完整的部署封包。流程图在ST714继续。根据本发明的一个或多个实施例,用户可以将应用的几部分或应用的预览缓存在用户网络设备中。这可降低在用户网络设备、仓库,以及服务提供器之间传输数据的必要性。根据本发明的一个或多个实施例,请求的应用的预览可以缓存在用户网络设备存储器中。如果在ST714,判断预览没有被缓存,则需要从仓库中获取预览,流程图在ST716继续。
[0066] 在ST716,用户网络设备向仓库发送对预览的请求。虽然在流程图中未示出,该请求可以包括诸如用户标识、机顶盒或其他用户网络设备标识、请求的应用信息,以及诸如终端站标识以及网络端标识之类的路由信息之类的信息。仓库从该请求标识用户网络设备的类型。
[0067] 在ST718,仓库为该类型的用户网络设备呈现部署封包。例如,对于特定请求的应用,仓库可以具有第一版本以便部署在机顶盒上,具有第二版本以直接部署在电视机上。如此,根据本发明的一个或多个实施例,仓库基于在ST716中标识的信息呈现部署封包。
[0068] 在ST720,仓库使用JNLP来启动部署封包向用户网络设备的传输。在ST722,用户网络设备接收部署封包,并将它存储在易失性存储器中。根据本发明的一个或多个实施例,部署封包存储在用户网络设备上的临时存储器中(或以临时方式)。例如,部署封包存储在易失性存储器中,并只在客户端设备上可用,直到JRE关闭和/或如在DRM设置中所指定的。本领域技术人员将认识到,正在被预览的应用的DRM设置可以比所安装应用的DRM设置更具约束性。
[0069] 从ST722、ST712继续,或在在ST714缓存了应用的预览版本的情况下,流程图在ST724中继续。在ST724,应用根据访问特权和DRM设置,在客户端上的JRE中执行。在本发明的一个实施例中,当预览应用时(例如,在ST714或ST722之后),可以发送完整的应用供预览,或作为替代地,可以向客户端设备发送带有比完整的应用较少的功能的版本(即,“预览版本”)。进一步地,一旦预览完成——例如,用户已经使用应用达指定的时间段,则关闭用户网络设备,执行JVM,然后,应用可以变得对用户网络设备无法访问。
[0070] 在ST726,从用户网络设备(使用,例如,JavaFX)中获取涉及用户网络设备上的应用使用情况的客户端使用数据。客户端使用数据可以包括个人标识信息(即,标识客户端设备的用户的信息或客户端设备的用户的任何其他个人/机密信息)。在将数据发送到仓库之前,可以从客户端使用数据中删除个人标识信息(或其一些部分)。作为替代地,将客户端使用数据与个人标识信息一起发送到仓库,此时,在将客户端使用数据发送到开发人员(或向仓库提供应用的其他第三方)之前由仓库删除它。在ST728,客户端使用数据被发送到仓库。
[0071] 图8示出了根据本发明的一个或多个实施例的方法。更具体而言,图8示出了用于在用户网络设备上认证订户的方法。尽管顺序地呈现并描述了流程图中的各步骤,但是,本领域技术人员将认识到,某些或全部步骤可以以不同的顺序执行、可以被组合或省略,而某些或全部步骤可以并行地执行。进一步地,根据本发明的一个或多个实施例,由此流程图所示出的步骤意图在图7的ST708过程中发生。
[0072] 在ST800,仓库从用户那里接收带有用户标识的对应用的请求。如上文所描述的,请求可以包括诸如用户标识、请求的应用信息,以及诸如终端站标识和网络端标识之类的路由信息之类的信息。在图3中比较详细地对此进行了描述。
[0073] 在ST802,仓库使用用户标识来获取对应于用户的私钥。根据本发明的一个或多个实施例,用户标识除外的请求中的所有项都可以使用用户网络设备公钥来加密。如此,根据本发明的一个或多个实施例,仓库可以标识用来使用用户标识解密该请求的适当的私钥。例如,适当的私钥可以被索引在用户标识私钥映射中。
[0074] 在ST804,仓库使用私钥解密请求,以获取路由信息和请求的应用信息。在ST806,仓库获取与用户标识相关联的当前许可证。根据本发明的一个或多个实施例,仓库使用用户标识-许可证映射,以便确定用户当前具有哪些许可证。在ST808,仓库判断请求的应用的许可证是否是当前与用户标识相关联的的许可证中的一个。根据本发明的一个或多个实施例,仓库可以使用应用许可证映射,来确定应用需要什么许可证,以及与用户标识相关联的当前许可证,如在ST806确定的。
[0075] 在ST808,就请求的应用的许可证是否是已经与用户标识相关联的许可证作出判断。如果请求的应用的许可证是已经与用户标识相关联的许可证,那么,流程图返回到图7中的ST708。否则,流程图在ST810继续。
[0076] 在ST810,仓库将用户标识作为对用户的预订信息的请求发送到服务提供器。在ST812,服务提供器向仓库提供预订信息。根据本发明的一个或多个实施例,服务提供器向预订映射存储用户标识。
[0077] 在ST814,就应用的许可证是否被用户的预订涵盖作出判断。根据本发明的一个或多个实施例,仓库包括预订到许可证映射,该映射详述了哪些许可证与哪些预订包括在一起。如果判断许可证被用户的预订涵盖,那么,流程图在ST816继续,并且许可证与用户标识相关联。根据本发明的一个或多个实施例,仓库作为用户标识预订映射的一部分,存储此关联。如此,根据本发明的一个或多个实施例,如果用户随后请求使用相同预订的应用,则仓库可以在没有与服务提供器进行通信的情况下将许可证标识为与用户标识相关联。
[0078] 返回到ST814,如果许可证没有被用户的预订涵盖,那么,用户必须获取许可证,流程图在ST818继续。在ST818,仓库从用户那里获取关于许可证购买情况的数据。根据本发明的一个或多个实施例,这可以包括诸如用户信息或金融信息之类的信息。在ST820,验证关于许可证购买情况的数据。例如,仓库可以验证关于许可证购买情况的数据满足许可证的总体成本。
[0079] 在ST816,许可证与用户标识相关联。根据本发明的一个或多个实施例,仓库作为用户标识预订映射的一部分,存储此关联。如此,根据本发明的一个或多个实施例,如果用户随后请求使用相同预订的应用,则仓库可以在没有与服务提供器进行通信的情况下将许可证标识为与用户标识相关联。最后,在ST824,对于许可证购买情况的记帐信息被发送到服务提供器。根据本发明的一个或多个实施例,记帐信息可以被包括在来自用户的关于许可证购买情况的数据中。然后,流程图返回到图7中的ST708。
[0080] 图9示出了根据本发明的一个或多个实施例的方法。更具体而言,图9示出了用于在用户网络设备上执行预先安装的应用的方法。尽管顺序地呈现并描述了流程图中的各步骤,但是,本领域技术人员将认识到,某些或全部步骤可以以不同的顺序执行、可以被组合或省略,而某些或全部步骤可以并行地执行。
[0081] 在ST900,使用启动应用的任何已知方法(例如,选择对应于该应用的图标、输入命令行指令等等),来在客户端设备上启动应用的执行。在ST905,确定(或以其他方式获取)用户网络设备上的应用的当前版本。在ST910,就用户网络设备上的应用的版本是否是最新的版本作出判断,其中,最新的版本在仓库中可用。如果用户网络设备上的应用是最新的版本,那么,方法前进到ST925;否则,方法前进到ST915。在本发明的一个实施例中,使用校验和函数(例如,SHA1、MD5等等)为应用的每一个版本计算校验和。在这样的实施例中,通过将设备上的应用的版本的校验和与应用的最新的版本的校验和进行比较,执行ST910中的判断。
[0082] 在ST915,包括应用的最新的版本的部署封包(可以是用户网络设备类型特定的)使用JNLP被传输到用户网络设备。
[0083] 在ST920,部署封包存储在客户端设备上的永久性存储器中。在ST925,应用根据访问特权和DRM设置在客户端上的JRE中执行。
[0084] 在ST930,从客户端设备(使用例如JavaFX)获取涉及客户端设备上的应用使用情况的客户端使用数据。客户端使用数据可以包括个人标识信息(即,标识客户端设备的用户的信息或客户端设备的用户的任何其他个人/机密信息)。根据本发明的一个或多个实施例,客户端使用数据可以被本地缓存在客户端设备上,并只周期性地传输。在将数据发送到仓库之前,可以从客户端使用数据中删除个人标识信息(或其一些部分)。作为替代地,将客户端使用数据与个人标识信息一起发送到仓库,此时,在将客户端使用数据发送到开发人员(或向仓库提供应用的其他第三方)之前由仓库删除它。在ST935,客户端使用数据被发送到仓库。
[0085] 在本发明的一个实施例中,用户可以使用不同的用户网络设备来访问仓库。在这样的情况下,用户可以跨所有他们的用户网络设备在仓库中具有共同的用户帐户,如此,具有在他们的用户网络设备中的每一个上安装相同应用的权限。例如,如果用户A购买并在他的移动电话上安装应用1,然后从他的膝上型计算机访问仓库,则在没有购买应用1的另外的副本的情况下用户A可以在他的台式机上安装应用1。
[0086] 本发明的各实施例可以在实质上任何类型的计算机上实现,不管所使用的平台如何。例如,如图10所示,计算机系统(1100)包括一个或多个处理器(1102)、相关联的存储器(1104)(例如,随机存取存储器(RAM)、高速缓冲存储器、闪存等等)、非瞬时的计算机可读取的存储设备(1106)(例如,硬盘、诸如光盘驱动器或数字视盘(DVD)驱动器之类的光驱动器,闪存棒等等),以及当今的计算机典型的很多其他元件以及功能(未示出)。计算机(1100)还可以包括诸如键盘(1108)、鼠标(1110)或麦克(未示出)之类的输入装置。进一步地,计算机(2100)可以包括诸如监视器(1112)(例如,液晶显示器(LCD)、等离子显示器,或阴极射线管(CRT)监视器)之类的输出装置。计算机系统(1100)可以通过网络接口连接(未示出)连接到网络(1114)(例如,局域网(LAN)、诸如因特网之类的广域网(WAN),或任何其他类似的类型的网络)。本领域技术人员将认识到,存在许多不同类型的计算机系统,如前所述的输入和输出装置可以呈现其他形式。例如,计算机系统(1100)可以是具有多个刀片的服务器系统。一般而言,计算机系统(1100)包括实施本发明的各实施例所需的至少最小的处理、输入,和/或输出装置。
[0087] 执行本发明的各实施例的计算机可读取的程序代码可以存储在诸如光盘(CD)、磁盘、磁带,物理存储器之类的非瞬时的计算机可读存储介质上,或包括存储计算机可读取的程序代码以执行本发明的各实施例的功能的任何其他物理计算机可读取的存储介质。在本发明的一个实施例中,计算机可读取的程序代码,当由处理器执行时,被配置成执行本发明的各实施例。
[0088] 本发明的各实施例也可以在几乎任何类型的用户网络设备上实现,不管所使用的平台如何。例如,如图11A所示,机顶盒(1210)包括一个或多个处理器(1230)、相关联的存储器(1220)(例如,随机存取存储器(RAM)、高速缓冲存储器、闪存等等)、非瞬时的计算机可读取的存储设备(1240)(例如,硬盘、诸如光盘驱动器或数字视盘(DVD)驱动器之类的光驱动器,闪存棒等等),以及当今的机顶盒典型的很多其他元件以及功能(未示出)。机顶盒(1210)也可以包括诸如电视遥控器(1250)之类的输入装置。进一步地,机顶盒(1210)可以可操作地连接到电视显示设备(1200)。根据本发明的一个或多个实施例,电视显示设备(1200)可以是阴极射线管(CRT)设备、发光二极管(LED)显示器、等离子显示板(PDP)、液晶显示器(LCD)、有机发光二极管显示器(OLED)、表面导电电子发射器显示器(SED)、激光TV、纳米管,纳米晶体显示器,或被用来显示广播信号的任何其他显示设备。机顶盒(1210)可以被配置成从电视服务提供器(1260),例如线缆提供器,接收电视广播信号。
[0089] 作为另一个示例,如图11B所示,电视系统(1260)包括一个或多个处理器(1230)、相关联的存储器(1220)(例如,随机存取存储器(RAM)、高速缓冲存储器、闪存等等)、非瞬时的计算机可读取的存储设备(1240)(例如,硬盘、诸如光盘驱动器或数字视盘(DVD)驱动器之类的光驱动器,闪存棒等等),以及当今的电视设备典型的很多其他元件以及功能(未示出)。机顶盒(1210)也可以包括诸如电视遥控器(1250)之类的输入装置。进一步地,机顶盒(1210)可以可操作地连接到电视显示设备(1200)。根据本发明的一个或多个实施例,电视显示设备(1200)可以是阴极射线管(CRT)设备、发光二极管(LED)显示器、等离子显示板(PDP)、液晶显示器(LCD)、有机发光二极管显示器(OLED)、表面导电电子发射器显示器(SED)、激光TV、纳米晶体显示器,或被用来显示广播信号的任何其他显示设备。电视系统(1260)可以被配置成从电视服务提供器(1260),例如线缆提供器,接收电视广播信号。
[0090] 执行本发明的各实施例的计算机可读取的程序代码可以存储在诸如光盘(CD)、磁盘、磁带,物理存储器之类的非瞬时的计算机可读存储介质上,或包括存储计算机可读取的程序代码以执行本发明的各实施例的功能的任何其他物理计算机可读取的存储介质。在本发明的一个实施例中,计算机可读取的程序代码,当由处理器执行时,被配置成执行本发明的各实施例。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈