CN1255727C - 在基于推送的网络上动态装载代码的方法 - Google Patents

在基于推送的网络上动态装载代码的方法 Download PDF

Info

Publication number
CN1255727C
CN1255727C CNB018226108A CN01822610A CN1255727C CN 1255727 C CN1255727 C CN 1255727C CN B018226108 A CNB018226108 A CN B018226108A CN 01822610 A CN01822610 A CN 01822610A CN 1255727 C CN1255727 C CN 1255727C
Authority
CN
China
Prior art keywords
dynamically
code
load
inventory
communications link
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB018226108A
Other languages
English (en)
Other versions
CN1502076A (zh
Inventor
J·哈尔福德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1502076A publication Critical patent/CN1502076A/zh
Application granted granted Critical
Publication of CN1255727C publication Critical patent/CN1255727C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Abstract

诸如用在面向对象编程语言中的动态可装载程序代码等程序代码可以在单向通信链路上推送,例如通过发射塔发送或者通过单向网络通信协议等。包括要被推送到单向通信链路的编程代码的标识符的清单被创建,其中,该清单包括推送时间表。该清单的接收机根据该时间表检索感兴趣的推送代码。购买数据也可以被包括在该清单中。编程代码可以包括允许用于额外内容的按每次使用付费检索的解密技术。

Description

在基于推送的网络上动 态装载代码的方法
技术领域
本发明总地涉及到单向通信链路上推送程序代码,更具体地,涉及到在单向通信链路上推送动态可装载的程序代码,例如面向对象类定义等。
背景技术
图1图解了用于把数据推送到接收计算设备的现有一般技术的硬件环境。
如图所示,有数据推送设备100(诸如一个或多个网络服务器或其它计算设备等)把数据推送到网络102。该数据推送设备负责产生或者转发最后由接收计算设备104接收的数据。该网络可以是常规的和专用网络(例如企业内部网或互联网等)的任意组合。
接收计算设备也和网络通信,它接收被推送的数据。各种用于接收推送数据的协议在本领域中是公知的。例如,见加州圣地亚哥的通过入口点的点播系统(PointCast system by EntryPoint)。通常,接收计算设备104在特定的数据信道上侦听数据推送设备100推送的数据,例如在传输控制协议/网际协议(TCP/IP)网络端口、广播信道、频率范围等。
发明内容
根据本发明的一个方面,一种用于根据可用性时间表把动态可装载代码推送到单向通信链路上的方法,包括:确定一个动态可装载代码的标识符;把该标识符推送到单向通信链路上;确定动态可装载代码的可用性时间表;把该可用性时间表推送到单向通信链路上;和根据该可用性时间表把该动态可装载代码推送到单向通信链路上。
根据本发明的另一个方面,一种用于根据可用性时间表把动态可装载代码推送到单向通信链路上的一种设备,包括:用于确定动态可装载代码的标识符的装置;用于把该标识符推送到单向通信链路上的装置;确定动态可装载代码的可用性时间表的装置;把该可用性时间表推送到单向通信链路上的装置;和根据该可用性时间表把该动态可装载代码推送到单向通信链路上的装置。
根据本发明的再一个方面,一种用于反映Java类型文档文件的方法,包括:准备Java类型文档文件的清单,所述清单包括用于Java类型文档文件对象的标识符以及用于所述对象的可用性时间表;将该清单推送到单向通信链路上去;和根据可用性时间表将Java类型文档文件的所述对象推送到单向通信链路上去。
根据本发明的一种用于在只推送网络上获取动态可装载代码的方法,包括:在只推送网络上接收动态可装载代码的清单,所述清单包括用于动态可装载代码的标识符和可用性时间表;和根据该可用性时间表,在只推送网络上接收动态可装载代码。
根据本发明的一种把动态可装载代码清单推送到单向通信链路上的设备,包括:所述设备中的电路,用于准备动态可装载代码的清单,所述清单包括动态可装载代码的标识符以及可用性时间表;所述设备中的电路,用于把该清单推送到单向通信链路上去;和所述设备中的电路,用于根据该可用性时间表把该动态可装载代码推送到所述通信链路上。
根据本发明的一种用于反映Java类型文档文件的设备,包括:
所述设备中的电路,用于提供指今的机器可存取介质,当被机器执行时,该指令能够指导机器执行如下的操作:
所述设备中的电路,用于准备Java类型文档文件的清单,所述清单包括用于J ava类型文档文件对象的标识符以及用于所述对象的可用性时间表;
所述设备中的电路,用于将该清单推送到单向通信链路上去;和
所述设备中的电路,用于根据可用性时间表将Java类型文档文件的所述对象推送到单向通信链路上去。
根据本发明的一种用于在只推送网络上获取动态可装载代码的设备,包括:提供指令的机器可存取介质,当被机器执行时,该指令能够指导机器执行如下的操作:所述设备中的电路,用于在只推送网络上接收动态可装载代码的清单,所述清单包括用于动态可装载代码的标识符和可用性时间表;和所述设备中的电路,用于根据该可用性时间表,在只推送网络上接收动态可装载代码。
根据本发明的一种用于将清单推送到单向通信链路上的设备,包括:至少一个处理器;和可由所述处理器控制的第一装置,用于准备动态可装载代码的清单,所述清单包括动态可装载代码的标识符以及可用性时间表;可由所述处理器控制的第二装置,用于把该清单推送到单向通信链路上去;和可由处理器控制的第三装置,用于根据该可用性时间表把该动态可装载代码推送到所述通信链路上。
根据本发明的一种用于反映Java类型文档文件的系统,包括:至少一个处理器;和一个第一电路,用于准备Java类型文档文件的清单,所述清单包括用于Java类型文档文件对象的标识符以及用于所述对象的可用性时间表;一个第二电路,用于将该清单推送到单向通信链路上去;和一个第三电路,用于根据可用性时间表将Java类型文档文件的所述对象推送到单向通信链路上去。
根据本发明的一种用于在只推送网络上获取动态可装载代码的系统,包括:至少一个处理器;和装置,用于在只推送网络上接收动态可装载代码的清单,所述清单包括用于动态可装载代码的标识符和可用性时间表;和装置,用于根据该可用性时间表,在只推送网络上接收动态可装载代码。
附图说明
通过参照后面对本发明的详细描述,本发明的特征和优点将变得非常明显,在所述描述中:
图1图解了用于把数据推送到接收计算设备的现有一般技术的硬件环境。
图2图解了图1推送环境的变型,其中的网络包括无线网。
图3是根据本发明一个实施例在单向通信链路上推送程序代码的流程图。
图4图解了接收根据图3实施例的推送数据的接收机。
图5图解了使用推送的动态可装载数据来促进按每次使用付费(pay-per-use)的环境。
图6图解了一个合适的计算环境,本发明的特定方面可以在其中实现。
具体实施方式
现代的编程语言提供了动态可装载的或模块化的程序代码。例如,面向对象编程(OOP)环境是这样一个环境,编程人员不仅在其中定义数据结构的数据类型,还定义可以应用于该数据结构的运算类型(例如,函数/过程)。类的数据结构变成了包括数据和函数/过程的对象。“类”是这样的对象的种类,并且在现代OOP环境中,为了避免不必要的资源消耗,类可以动态装载和卸载从而保存资源。
正如下面将讨论的,动态装载可以在网络环境的推送类型上被实现。例如,类的标识数据可以根据服务广告协议(SAP)/会话描述协议(SDP)协议来通告,并且类定义也相应地广播。可选地,可以定义包含用于类定义的标识数据的清单(manifest),以及指示第二次推送什么时候开始的时间表,它包含用于标识类的实际程序代码。然后,编程环境和/或应用程序可以使用自定义类装载器来在需要的时候集成推送类。
在本说明书和随后的权利要求中,术语清单打算包括清单的传送或者其内容通告的SAP/SDP类型。
图2图解了图1推送环境的变型,其中的网络102包括无线网。无线网包括包含无线LAN桥/路由器、蓝牙(3Com、爱立信、Intel、IBM、朗讯、微软、摩托罗拉、诺基亚和东芝发起的一个标准)等的短距离无线网和诸如微波系统、卫星系统、蜂窝通信系统、电视发送塔等的长距离无线网。
在一个实施例中,无线发射机包含发射塔204和接收机(例如机顶盒208、个人数字助理、便携式计算机、手持计算机、无线设备或其它接收设备等)之间的一个完整的传输数据路径。在另一个实施例中,在被机顶盒208接收之前,无线信号部分在物理介质上运载,例如在电线、光纤或其它介质上。网络206可以完全无线或不完全无线。
假设无线传送是音频和/或可视信号(例如电视信号),发射设备200(可以是计算机或其它提供电视信号的设备)发送多个电视数据流到复用器202。例如,在数字电视中,运动图像专家组(MPEG)-2数据传输流将从复用器发射。传输流包括音频、视频和/或被复用并由包标识符(PID)标记的其它“数据”的多个基本流。在美国先进电视系统委员会(ATSC)数字电视标准下,单个“信道”被分配了19.2Mbps的带宽。单个电视节目通常包括用于视频并且每个都支持音频语言的基本数据流。使用数据压缩,节目可能没消耗完信道所有的可用带宽,所以,该节目可能变为嵌入到分配给广播公司的物理频谱中几个“虚拟信道”中的一个。
该复用器把多个数据流组合为由塔204发送的单独一个传送。此传送在网络206上发送,并由诸如有线电视解码盒、具有电视解码器的计算机设备、或其它可感知电视的设备等的机顶盒208接收。
图3是根据本发明一个实施例在单向通信链路(如图1或图2图示的)上推送程序代码(例如动态可装载程序代码等)的流程图。
该单向通信链路可以是物理上单向的,如在源自广播塔的传送中,或者逻辑上是单向的,如在单向通信协议中。这里假设把Java类的编程代码推送到接收机。然而,这里公开的原理和技术也可等效地应用于对象C、C++、SmallTalk、Modula-3组件对象模型(COM)以及其它面向对象编程语言和环境,并且本发明不限于此方面。本领域一个技术人员将会理解,除了类,其它数据结构也可以被推送。例如,可以使用包含已知的入口点和结构的动态链接库(DLL)或者等价物。
在诸如Java的面向对象编程环境中,类封装数据、方法和过程,该方法和过程对输入到该类的实例的数据进行运算并产生正确输出。为了解决特定的问题,类通常收集到库中。Java库被称为“Java文档”或JAR文件。为了最小化存储器需求并推动更动态的编程模型,Java执行环境推迟将类载入到系统存储器中,直到正在执行的应用程序使用该类为止。
当类被引用时,如果它还没有被装载,就动态装载它并使它对正在执行的程序可用。装载需要在一个或几个标准位置搜索引用类,例如定位JAR文件或类定义的其它存储器。在Java中,称为“CLASSPATH”的环境变量(或等同物)被希望存在并指示定位类定义的搜索路径。例如,CLASSPATH可以指向包含类定义和/或JAR文件的目录/文件夹,或者直接引用其中存储文档的数据文件。如果在搜索了CLASSPATH环境以后类还不能被找到并被装载,那么装载失败并且应用程序中的相应调用失败。
因此,在一个实施例中,为了在推送类型网络环境上装载动态可装载程序代码,首先对应于动态可装载代码准备300清单。该清单包括标识类定义的标识符302,因此类可以在应用程序执行过程中正确地装载。在Java中,类定义标识符包括后面跟随着相关类名的包名。例如,“String”类是“Java.lang”包的一部分,因此它被正确地标识为“Java.lang.String”。其它编程环境可能使用其它标识数据,例如类名,和/或该类的全局唯一标识符(GUID),和/或类上下文,和/或类相关等。
在一个实施例中,该清单进一步包括推送时间表304或可用性时间表,它们指示清单中引用的类定义什么时候被推送到单向通信链路。在这个实施例中,如果类定义在几个单向通信通路中的一个上接收,则该清单还可能包括检索源306。其它相关数据308可能也存储在该清单中从而方便选择路由、验证、记帐或证明相关交易。
在另一个实施例中,不使用清单,而是把它的内容直接在单向通信链路上传送。在这个实施例中,可能使用SAP/SDP或等价物来广播通告消息,它指示会话的标识符和描述(例如标识要被推送的动态可装载程序代码的数据)、检索代码的位置(例如该会话的多播地址/端口)以及代码什么时候被推送的时间表。
在清单被创建以后,它被推送310到单向通信链路。然后,根据推送时间表,清单引用的动态可装载代码(例如类)被推送312到单向通信链路。
图4图解了接收根据图3实施例的推送数据的接收机。如图所示,接收机侦听400和接收402推送的清单。该清单被进行语法分析404从而确定406用于在该清单中引用的动态可装载代码的标识符。这些标识符存储408在本地存储器中,例如易失性和非易失性存储器。正如上面所讨论的,该清单内容可能直接使用SAP/SDP类型通告传送,在这种情况下,接收机侦听通告从而确定用于动态可装载代码的标识符。
Java应用程序可以执行410。当它第一次应用412类时,可以执行搜索414来定位该类,例如搜索CLASSPATH环境。假设搜索CLASSPATH失败,可能执行搜索416以便在存储408在本地存储器上的推送的类标识符中定位该类。如果正确的类标识符被定位,就可以检查418对应于该标识符的时间表。然后,动态可装载编程代码(例如Java类文件)可以根据时间表在单向通信链路上检索420。如果使用了SAP/SDP类型广播,则动态可装载编程代码可以从会话通告中指示的多播地址/端口中检索。
在一个实施例中,被检索的动态可装载代码可以加到已存的CLASSPATH环境中,从而可以避免将来使用该检索的代码的延时。在一个实施例中,CLASSPATH包括易失性和非易失性存储器的组合。在这个实施例中,标准类可以存储在非易失性存储器中,例如(可擦除)可编程只读存储器(PROM)、非易失性随机存取存储器(NVRAM)、互补金属氧化物半导体(CMOS)、硬盘、记忆棒等。但是,检索的代码可以存储在易失性存储器中,例如,随机存取存储器(RAM)。
因此,例如便携式电子设备、机顶盒或其它没有配置大容量存储设备的电子设备可以和标准类定义一起运送,并且在应用程序执行过程中在需要的时候再临时获取附加类。
在检索420以后,按照与使用的程序语言环境所惯常的方式,动态可装载代码被应用程序装载422从而执行424。注意,装载422可以与导致检索的应用程序执行异步实施。
此外,根据接收机环境配置,检索和装载可以由操作系统、编程环境或应用程序透明地执行。例如,Java运行环境可能确定需要从单向通信链路检索420类,然后在应用程序不知道该检索过程的情况下就装载类422。
图5图解了使用推送的动态可装载数据从而促进按每次使用付费的环境。典型的按每次使用付费的环境包括电视、电话或计算机网络广播系统,其中,一个或多个“额外的(premium)”数据信道被加密并传送到接收机,并且该接收机在没有获得解密能力时不能使用已加密的数据。
在这个图示的实施例中,上面讨论的推送清单包括允许接收设备永久性或暂时获得加密能力的解密类的标识符。解密能力可用的期间可以在清单中指定或者由本地和/或远程规则规定。在一个实施例中,通过在易失性存储器中存储解密类实现暂时加密,当接收设备重启、动力循环等时,解密类被清除。也可以根据诸如每小时、每天、每周等清除时间表进行清除,或者根据清单中指示的时间表进行清除,例如,在使用了特定数目的次数以后、或者在首次使用的一段时间以后自动清除。
因此,诸如机顶盒或便携式电子接收机(例如便携式电视、个人数字助理、蜂窝电话、便携式计算机、无线设备等)等计算设备执行500控制程序,例如操作系统或应用程序等。该控制程序接收502一个清单,该清单包括标识符和用于解密类的推送时间表,还包括指示与通过解密类来获取额外数据相关的成本的购买数据。该设备的用户根据该购买数据来选择504希望购买的额外数据,例如通过图形用户界面、在计算设备上的按钮选择等方式来指示。在响应中,根据清单中的购买数据,发生506正确的购买交易。
注意,购买交易打算包括使用第三方处理和/或记帐装置的购买协议。因为通信链路是单向的,所以假设存在替换通信装置来实现付费。例如,计算设备可以有一个与电话服务通信的内部调制解调器,有一个与网络通信的网络接口,或者有其它的通信路径。购买可以立即完成或者在延时的基础上执行,例如,计算设备接收购买的选择504,并在付费最后为保密的假设基础上执行解密。延时的付费促进了间歇连接到替换通信装置的便携式接收机的使用。
在购买交易506之后,根据推送时间表,计算设备从单向通信链路中检索508正确的解密类。该解密类可以如清单所指示地安装516,例如,它可以永久性地或者暂时地安装。在Java类型的执行环境中,解密类在CLASSPATH环境中安装。该解密类然后由控制程序执行512从而解密期望数据。
在一个实施例中,为了防止盗窃解密类的行为,解密类本身用公用密钥密码系统中的公用/私有密钥对中的私有密钥进行编码。通信设备可以配置为包含该对的公用密钥,并且该通信设备仅在购买交易506后使用公用密钥来解密解密类。按照这样的方式,解密类可以盲推送到没有加密的单向通信链路上而不需考虑对服务的违法盗窃。
图6和随后的讨论打算提供一个对合适计算环境的简单的概要描述,在该计算环境中可以实现图解发明的特定方面。
实现本发明的示范系统包括计算设备600,它具有用于耦合各种计算设备组件的系统总线602。通常,连接到该总线是不可编程的以及可编程的处理器604、存储器606(例如RAM、ROM)、存储设备608、视频接口610和输入/输出接口端口612。存储设备包括硬盘、软盘、光存储器、磁带、录音带、闪存卡、记忆棒、数字视频碟等。
可以通过参照不同的高级程序模块和/或低级硬件关联来描述本发明。本领域那些技术人员将会意识到,程序模块可以与低级的硬件指今互换。程序模块包括执行特定任何任务或者实现特定抽象数据类型的过程、函数、程序、组件、数据结构等。模块可以结合到单处理器和多处理器计算设备、个人数字助理(PDA)、蜂窝电话、便携式计算机、手持计算机、无线设备等中去。因此,存储系统和相关介质能够为计算设备存储数据和可执行指令。
计算设备期望运行在通过网络接口618、调制解调器620或其它通信路径使用逻辑连接连接到一个或多个远程计算设备614、616的网络环境中。计算设备可以通过诸如企业内部网、因特网或其它网络等网络622进行互联。模块可以实现在单个计算设备内,或者在分布式网络环境中处理,以及存储在本地和远程存储器中。因此,例如,关于图解的实施例,假设计算设备600是推送动态可装载程序代码的发送机,那么,远程设备614和616可以分别是该推送代码的机顶盒和便携式无线接收机。
可以理解,远程计算设备614和616可以像计算设备600一样配置,并因而包括许多或所有的对计算设备讨论的元件。还应该这样理解,计算设备600、614和616可以在单独一个设备中实施,或者在独立的通信耦合组件中实施,并且包括或者实现在采用诸如超文本传输协议(HTTP)、文件传输协议(FTP)等网络应用协议的路由器、网桥、对等设备、web服务器和应用程序中。
参照图解的实施例,已经描述和说明了本发明的原理,应该认识到,在不偏离这样的原理的情况下,图解的实施例可以排列和细节上作些修改。
并且,虽然前述讨论集中在特定实施例上,但是应该理解,其它配置也应考虑在内。特别地,即使在此使用诸如“在一个实施例中”、“在另一实施例中”等表达方式,这些短语通常用来指实施可能性,而不是打算把本发明限制在特定的实施例配置。如这里所用的,这些术语可以指相同的或不同的实施例,除非含蓄地或明白地指出,否则,实施例可以组合到其它实施例。因此,考虑到对上述实施例大范围替换,详细的描述仅仅打算用于解释说明,而不应该看作限制本发明的范围。
因此,请求专利保护的是在随后权利要求书和等价物的范围和精神范围内的所有这些修改。

Claims (24)

1.一种用于根据可用性时间表把动态可装载代码推送到单向通信链路上的方法,包括:
确定一个动态可装载代码的标识符;
把该标识符推送到单向通信链路上;
确定动态可装载代码的可用性时间表;
把该可用性时间表推送到单向通信链路上;和
根据该可用性时间表把该动态可装载代码推送到单向通信链路上。
2.如权利要求1的方法,还包括:
其中,所述动态可装载代码包括使用面向对象编程语言的类定义;和
其中,所述标识符标识该类定义。
3.如权利要求1的方法,其中,所述单向通信链路是从电视数据传送、MPEG-2传输流和IP多播中选定的一个。
4.如权利要求1的方法,还包括:
使用从机顶盒、个人数字助理、便携式计算机、手持计算机和无线设备中选定的一个在单向通信链路上接收数据。
5.如权利要求1的方法,还包括:
在所述单向通信链路上接收所述标识符和可用性时间表;和
根据该可用性时间表从所述通信链路检索所述动态可装载代码。
6.如权利要求5的方法,还包括:
确定对于执行应用程序是否需要所述动态可装载代码;和
执行响应于所述确定的所述检索。
7.一种把动态可装载代码清单推送到单向通信链路上的方法,包括:
准备动态可装载代码的清单,所述清单包括动态可装载代码的标识符以及可用性时间表;
把该清单推送到单向通信链路上去;和
根据该可用性时间表把该动态可装载代码推送到所述通信链路上。
8.如权利要求7的方法,还包括:
定一一个动态可装载代码,包括一个由标识符所标识的类定义。
9.如权利要求7的方法,进一步包括用从Java、对象C、C++、SmallTalk、Modula-3、组件对象模型和面向对象脚本语言中选定的一个写动态可装载代码。
10.如权利要求7的方法,进一步包括选择单向通信链路是电视数据传送、MPEG-2传输流和IP多播中的一个。
11.如权利要求7的方法,还包括:
使用从机顶盒、个人数字助理、便携式计算机、手持计算机和无线设备中选定的一个接收单向通信链路。
12.如权利要求7的方法,还包括:
在所述单向通信链路上接收清单;
记录所述标识符和可用性时间表;和
当动态可装载代码被推送到所述通信链路上时,根据该可用性时间表检索所述动态可装载代码。
13.如权利要求8的方法,还包括:
确定对于执行应用程序是否需要所述动态可装载代码;和
执行响应所述确定的所述检索。
14.一种用于反映Java类型文档文件的方法,包括:
准备Java类型文档文件的清单,所述清单包括用于Java类型文档文件对象的标识符以及用于所述对象的可用性时间表;
将该清单推送到单向通信链路上去;和
根据可用性时间表将Java类型文档文件的所述对象推送到单向通信链路上去。
15.如权利要求14的方法,还包括:
执行编程代码;
确定对于所述执行是否需要不可用的对象;
确定该清单是否包括对应于该对象的标识符;和
在单向通信链路上接收所述需要的对象。
16.如权利要求15的方法,还包括:
在安置在设备中的暂时存储位置中存储所述接收的对象;
其中,重置该设备会导致所述接收的对象被丢弃。
17.如权利要求14的方法,其中,Java类型文档文件的清单包括用于Java类型文档文件的所述对象的购买数据,所述方法还包括:
标识执行程序所需的不可用的对象;
确定该清单是否包括对应于该对象的标识符;
在单向通信链路上接收所述需要的对象;和
根据所述购买数据购买所述需要的对象。
18.一种用于在只推送网络上获取动态可装载代码的方法,包括:
在只推送网络上接收动态可装载代码的清单,所述清单包括用于动态可装载代码的标识符和可用性时间表;和
根据该可用性时间表,在只推送网络上接收动态可装载代码。
19.如权利要求18的方法,其中,动态可装载代码包括从一个单独的面向对象的对象、多个面向对象的对象定义以及动态链接库中选定的一个。
20.如权利要求18的方法,还包括:
确定应用程序是否需要动态可装载代码;和
确定该清单是否包括对应于所述动态可装载代码的标识符。
21.如权利要求20的方法,还包括:
在CLASSPATH环境中检查包含所述需要的动态可装载代码的类;和
确定所述需要的动态可装载代码是否是不可用的。
22.如权利要求21的方法,还包括:
向该CLASSPATH环境添加所述接收到的动态可装载代码。
23.如权利要求18的方法,其中,动态可装载代码包括Java类型的编程语言类,所述方法还包括:
在CLASSPATH环境中检查包含所述需要的动态可装载代码的类;和
确定所述需要的动态可装载代码是否是不可用的,并且执行所述接收动态可装载代码来响应它。
24.如权利要求18的方法,还包括:
向用于动态可装载代码的本地存储器添加所述接收到的动态可装载代码。
CNB018226108A 2000-12-12 2001-11-13 在基于推送的网络上动态装载代码的方法 Expired - Fee Related CN1255727C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/735,434 2000-12-12
US09/735,434 US7140011B2 (en) 2000-12-12 2000-12-12 Dynamically loading program code over a push-based network

Publications (2)

Publication Number Publication Date
CN1502076A CN1502076A (zh) 2004-06-02
CN1255727C true CN1255727C (zh) 2006-05-10

Family

ID=24955785

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018226108A Expired - Fee Related CN1255727C (zh) 2000-12-12 2001-11-13 在基于推送的网络上动态装载代码的方法

Country Status (7)

Country Link
US (1) US7140011B2 (zh)
CN (1) CN1255727C (zh)
AU (1) AU2002237673A1 (zh)
DE (1) DE10197022T1 (zh)
GB (1) GB2385970C (zh)
HK (1) HK1056240A1 (zh)
WO (1) WO2002048863A2 (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7284064B1 (en) 2000-03-21 2007-10-16 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
US20020144265A1 (en) * 2001-03-29 2002-10-03 Connelly Jay H. System and method for merging streaming and stored content information in an electronic program guide
US20020144269A1 (en) * 2001-03-30 2002-10-03 Connelly Jay H. Apparatus and method for a dynamic electronic program guide enabling billing broadcast services per EPG line item
US7328455B2 (en) * 2001-06-28 2008-02-05 Intel Corporation Apparatus and method for enabling secure content decryption within a set-top box
US8943540B2 (en) 2001-09-28 2015-01-27 Intel Corporation Method and apparatus to provide a personalized channel
US20030135605A1 (en) * 2002-01-11 2003-07-17 Ramesh Pendakur User rating feedback loop to modify virtual channel content and/or schedules
US7149751B1 (en) 2002-03-15 2006-12-12 Novell, Inc. System and method for distributing selected objects from a source database to a destination database
US7203738B1 (en) * 2002-03-15 2007-04-10 Novell, Inc. System and method for distributing application objects
US7475243B2 (en) * 2002-12-11 2009-01-06 Broadcom Corporation Preventing a non-head end based service provider from sending media to a media processing system
US8387106B2 (en) * 2002-12-11 2013-02-26 Broadcom Corporation Method and system for secure linking with authentication and authorization in a media exchange network
US8145120B2 (en) * 2003-10-27 2012-03-27 Nokia Corporation Apparatus, system, method and computer program product for service selection and sorting
WO2005045603A2 (en) * 2003-10-27 2005-05-19 Nokia Corporation Apparatus, system, method and computer program product for service selection and sorting
US7389503B2 (en) * 2004-04-16 2008-06-17 International Business Machines Corporation Apparatus and method to update code in an information storage and retrieval system while that system remains in normal operation
US7398523B2 (en) * 2004-08-19 2008-07-08 International Business Machines Corporation Adaptive class loading
US7937717B2 (en) * 2004-09-13 2011-05-03 Tvworks, Llc Method and apparatus enabling multiple application sharing of classes
US7536151B2 (en) * 2004-11-01 2009-05-19 Nokia Corporation Methods, systems, devices and computer program products for providing user-access to broadcast content in combination with short-range communication content
US7499445B2 (en) * 2005-03-18 2009-03-03 Cisco Technology, Inc. System and method for routing ISIS traffic through unidirectional links of a computer network
US20070033156A1 (en) * 2005-08-04 2007-02-08 Kimberly-Clark Worldwide, Inc. System for managing digital assets
KR100727993B1 (ko) * 2005-10-04 2007-06-14 삼성전자주식회사 데이터 풀 방식을 이용한 데이터 푸시 서비스 방법 및시스템
TWI348306B (en) * 2005-12-26 2011-09-01 Ibm A method and a pervasive device of automatically downloading a midlet triggered by push messages
US20070192735A1 (en) * 2006-02-15 2007-08-16 Julia Lehto Mobile communication terminal and method therefore
JP5028022B2 (ja) * 2006-04-25 2012-09-19 キヤノン株式会社 印刷装置及び文書印刷方法
JP2008046708A (ja) * 2006-08-11 2008-02-28 Sharp Corp データ処理装置、プログラム管理装置、制御プログラム更新方法、プログラム管理方法、プログラム管理システム、更新プログラムおよび記録媒体
US8522249B2 (en) * 2007-06-27 2013-08-27 Bluestreak Technology, Inc. Management of software implemented services in processor-based devices
US8271683B2 (en) * 2008-03-21 2012-09-18 International Business Machines Corporation Content push service
US7908391B1 (en) * 2008-03-25 2011-03-15 Symantec Corporation Application streaming and network file system optimization via feature popularity
US9736121B2 (en) * 2012-07-16 2017-08-15 Owl Cyber Defense Solutions, Llc File manifest filter for unidirectional transfer of files
CN107025238B (zh) * 2016-02-01 2020-12-08 腾讯科技(深圳)有限公司 一种方案推送方法及装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724345A (en) * 1995-12-13 1998-03-03 Lucent Technologies Inc. System and method for a scalable and reliable transmission of electronic software distribution
AU4548796A (en) * 1996-02-05 1997-08-28 Athena Telecom Lab, Inc. Method and apparatus for object management
US6259701B1 (en) 1997-09-11 2001-07-10 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
US5937411A (en) * 1997-11-21 1999-08-10 International Business Machines Corporation Method and apparatus for creating storage for java archive manifest file
US6467089B1 (en) * 1997-12-23 2002-10-15 Nielsen Media Research, Inc. Audience measurement system incorporating a mobile handset
JPH11259284A (ja) * 1998-03-12 1999-09-24 Fujitsu Ltd オンラインプログラム更新システム及びプログラム更新用プログラムを記録したコンピュータ読み取り可能な記録媒体
KR100366716B1 (ko) * 1998-10-13 2003-01-06 가부시키가이샤 자나비 인포메틱스 방송형 정보제공 시스템 및 주행환경 정보수집 장치
US6522342B1 (en) 1999-01-27 2003-02-18 Hughes Electronics Corporation Graphical tuning bar for a multi-program data stream
US6571389B1 (en) * 1999-04-27 2003-05-27 International Business Machines Corporation System and method for improving the manageability and usability of a Java environment
US6606660B1 (en) 1999-08-31 2003-08-12 Accenture Llp Stream-based communication in a communication services patterns environment
US6578199B1 (en) * 1999-11-12 2003-06-10 Fujitsu Limited Automatic tracking system and method for distributable software
US6574518B1 (en) * 1999-11-29 2003-06-03 General Electric Company Method and apparatus for communicating operational data for a system unit in a medical diagnostic system
US6480783B1 (en) * 2000-03-17 2002-11-12 Makor Issues And Rights Ltd. Real time vehicle guidance and forecasting system under traffic jam conditions

Also Published As

Publication number Publication date
WO2002048863A2 (en) 2002-06-20
US7140011B2 (en) 2006-11-21
DE10197022T1 (de) 2003-10-23
GB2385970B (en) 2005-02-16
CN1502076A (zh) 2004-06-02
AU2002237673A1 (en) 2002-06-24
US20020073245A1 (en) 2002-06-13
WO2002048863A3 (en) 2004-02-12
HK1056240A1 (en) 2004-02-06
GB2385970A (en) 2003-09-03
GB2385970C (en) 2005-03-21
GB0313503D0 (en) 2003-07-16

Similar Documents

Publication Publication Date Title
CN1255727C (zh) 在基于推送的网络上动态装载代码的方法
US20020032754A1 (en) Method and apparatus for profiling in a distributed application environment
CN1277782A (zh) 数字解码器中应用的下载
CN1977534A (zh) 视频点播内容的基于复合会话的加密
US8448184B2 (en) Method and apparatus for signaling transmission code set in data broadcasting
GB2324003A (en) Information Delivery System Using Satellite Communication
CN1202629C (zh) 数据接收方法和用于该方法的数据接收单元
JP4669601B2 (ja) ネットワーク端末装置、ネットワーク及びタスク分散方法
CN1875600A (zh) 传输被加密的有用数据对象的方法
KR100789781B1 (ko) 디지털 방송망에서의 모듈 개념을 이용한 효율적인 애플리케이션 송수신 방법 및 장치
CN114244844B (zh) 多媒体数据传输方法、终端设备及存储介质
CN1820251A (zh) 用于执行软件应用的方法
KR20080069212A (ko) 복수의 이동 수신기들을 위해 예정된 인증 메시지들의처리방법 및 이 메시지들의 전송방법
KR100688222B1 (ko) 수신제한시스템에서의 수신제한정보 갱신방법
CN1859218A (zh) 用于在网络管理系统中处理消息的设备和方法
EP1843588B1 (fr) Procédé de mise à jour du guide des programmes au sein d'un terminal de réception de service numériques et terminal correspondant
EP1933561A1 (fr) Procédé de diffusion de données au sein d'un terminal de réception et terminal implémentant le procédé

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060510

Termination date: 20171113