CN1322421C - 代理系统、计算机网络以及用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法 - Google Patents

代理系统、计算机网络以及用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法 Download PDF

Info

Publication number
CN1322421C
CN1322421C CNB008154937A CN00815493A CN1322421C CN 1322421 C CN1322421 C CN 1322421C CN B008154937 A CNB008154937 A CN B008154937A CN 00815493 A CN00815493 A CN 00815493A CN 1322421 C CN1322421 C CN 1322421C
Authority
CN
China
Prior art keywords
agency plant
computer
client computer
agency
plant
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
CNB008154937A
Other languages
English (en)
Other versions
CN1520551A (zh
Inventor
B·克雷勒
M·雷希
B·施曼
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.)
Unify GmbH and Co KG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of CN1520551A publication Critical patent/CN1520551A/zh
Application granted granted Critical
Publication of CN1322421C publication Critical patent/CN1322421C/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Control By Computers (AREA)

Abstract

本发明涉及一种用于动态代理的代理系统、一种计算机网络以及一种用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法。本发明的特征在于,可装载到各网络计算机上的代理系统根据所述计算机的硬件和/或软件来进行匹配。由此实现了也可以在其各个计算机装有代理系统的网络中连入小的移动式计算机,尤其是简单的过程计算机,而不必在原则上明显地限制所述代理系统的功能,也不必因小计算机而取消代理系统的基本用途。

Description

代理系统、计算机网络以及用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法
技术领域
本发明涉及一种代理系统、尤其是用于动态代理的代理系统,一种具有多个借助数据线进行结网的计算机的计算机网络,以及一种用于把代理系统从主计算机装载到客户计算机上的方法。
背景技术
代理是一些自主和协作的、由代码和数据组成的软件单元。它们是自主作用的软件单元,其中无需与用户进行持续的交互作用。既有静态代理又有动态代理。
例如US 5,603,031或书“软件代理”,Bradshaw Jeffrey,MenloPark,加利福尼亚:AAAI出版社/MIT出版社,1996曾公开过一些动态代理。该书所包含的关于动态代理的章节可以从因特网中以地址http://www.generalmagic.com/technology/techwhitepaper.html调用其略加修改的文本。
动态代理是如下一些程序,即它们可以在计算机网络的不同位置激活,且其在计算机网络内的地点可以改变。在计算机网络中,程序通常从一个计算机被装载到另一计算机,而在此期间它们是无效的。相反,动态代理是首先被激活,并在其激活期间主动地改变其在网络中的位置。
这种同常规程序的小区别、然而是基本的区别对动态代理在网络中的应用方式具有很大的影响。这些代理是在网络的某个位置建立的,其中确定了需由代理执行的功能,以便在该代理传输到网络的另一位置之后体现以前的网络位置和执行相应的功能。由此可以在网络的一个位置规定在网络的另一位置所执行的功能。原则上,这利用常规的系统也是可能的,其中需要在网络的两个位置之间进行持久的信息交换,以便从规定相应控制过程的位置处把这些控制过程传输到它们被执行的位置。
相反,动态代理不需要这种控制过程,因为其功能是预先一次性地规定的,然后再自主地执行。由此大大地减少了网络的数据处理能力,其中,在远离委托者的位置可以执行任意的过程。
但是,所述的代理在工作时不必一直完全脱离其起动器,而是可以向该起动器或网络中的其它位置建立通信信道。
当从网络的一个位置移动到网络的另一位置时,所述的动态代理将执行一种迁移指令(譬如“go(转向)”)。这种指令需要一个目标描述,它包含有所述代理需要向其移动的位置的名称、地址或类型,或者是它们的组合。不同的位置无须总是布置在网络中的不同计算机处。代理也可以在一个计算机内的不同位置被激活。动态代理也可以是多重的,以便它们能在不同的位置处相互独立地执行其功能。
动态代理经常被用来采集预定的、被部分就地分析处理的数据,以便给原来的委托者发送一个已预处理过的结果。
譬如,当某个物品的买主需要从卖主那里可靠地获得低价格时,就可能产生这种动态代理的应用。于是,所述的买主可以发送一个或多个动态代理,自动地从其它提供商那里请求相应的供应,必要时经过一定的时间间隔进行监视,然后再将其发送给买主,以便由该买主将其与卖主提供给他的价格进行比较。
其它已知的动态代理和代理系统是名称“Aglets”、“Voyager”和“Concordia”来提供的,并且通常可以经因特网获得。
为了激活网络的各个计算机上的动态代理,在该计算机上必须分别设立所谓的代理系统。代理系统是业务程序的综合,它们是各个代理的任务所必需的。该业务程序通常包括一个与其它业务程序存在通信联系的代理管理器,这样,激活的动态代理便可以动用相应的计算机资源,并网络接口从网络的一个代理系统移动到网络的另一个代理系统。通常设立一个代理系统控制器,由它控制代理系统在相应计算机上的运行。
这些代理系统构成了所述代理可以在网络中被激活的位置。
这类代理系统通常是用一种与平台无关的计算机语言、譬如JAVA编写的,因此它们可以在任意的计算机系统上运行。
通过在激活期间在网络中传输所述的代理,创造了一种新型的编程范例,按照该编程范例,程序代码自身被转移到需处理的数据中,而不是必须把数据传送给处理代码或以非激活状态把处理代码装载到各个计算机上。
代理通常是较小的程序,它们能被发送和利用当地存在的智能。当在各个计算机之间没有永久的网络连接时,由于动态代理也可以处理其任务,所以它们较理想地适用于通常与网络没有永久连接的移动式计算机。
然而,迄今已知的代理系统极为庞大,而不能安装在任意简单的移动式计算机上。
在本专利申请的范畴内,概念“计算机”还包括简单的过程计算机,它们只装有极少的硬件配置(处理器,存储器和显示器)。这类简单的过程计算机譬如被集成在单个芯片上。
发明内容
因此,本发明所基于的任务在于创造一种代理系统,它能提供已知代理系统的功能范围,而且仍然还适用于小的计算机,譬如小的过程计算机。另外,本发明所基于的任务还在于创造一种相应的计算机网络和一种把代理系统从一个主计算机装载到计算机网络的客户计算机上的方法。该任务由可以安装到被连接在计算机网络中的计算机上的代理系统、包括所述代理系统的计算机网络、以及用于把代理系统从主计算机(29)装载到计算机网络(9)的客户计算机上的方法来解决。本发明的优选改进方案由从属权利要求给出。
所述代理系统包括一个代理平台,该代理平台包括代理所需的业务程序,以便能在各计算机上执行,一个具有代理系统发射器的代理系统控制器,所述的代理系统发射器可以与其余代理系统无关地被装载到客户计算机上,并被用于从主计算机装载所述的代理系统,其特征在于:所述的代理系统发射器被如此地构造,使得在把代理系统从主计算机装载到所述装有至少一个代理系统发射器的客户计算机之前,把一个表征所述客户计算机的硬件和/或软件的标识发送给所述的主计算机,并且如此地构造安装在所述主计算机上的代理系统更新程序,使得它根据所述表征客户计算机的硬件和/或软件的标识而编配一个与该客户计算机的硬件和/或软件相匹配的代理系统,并把该代理系统传送给所述的客户计算机。
所述计算机网络,具有多个借助数据线进行结网的计算机,:一种具有所述特征的代理系统,该代理系统被安装在计算机网络的多个计算机上。
在所述方法中,在所述的主计算机上安装一个代理系统更新程序,以及在所述的客户计算机上安装至少一个代理系统发射器,其中所述客户计算机的代理系统发射器可以把代理系统从所述主计算机装载到所述的客户计算机上,其特征在于:在装载所述的代理系统之前,由所述的代理系统发射器把一个表征所述客户计算机的硬件和/或软件的标识发送给所述的主计算机,并且所述主计算机的代理系统更新程序根据所述表征客户计算机的硬件和/或软件的标识而编配一个与该客户计算机的硬件和/或软件相匹配的代理系统,并把该代理系统传送给所述的客户计算机。
本发明的代理系统可以安装到与计算机网络相连的计算机上,且具有一个代理平台和一个代理系统控制器。所述的代理平台包括动态代理所需的业务程序,以便能在各计算机上执行。所述的代理系统控制器包含一种代理系统发射器,所述的代理系统发射器可以与其余代理系统无关地被装载到客户计算机上,并被用于从主计算机装载所述的代理系统上。
本发明代理系统的特征在于:所述的代理系统发射器被如此地构造,使得在把代理系统从主计算机装载到所述装有至少一个代理系统发射器的客户计算机之前,把一个表征所述客户计算机的硬件和/或软件的标识发送给所述的主计算机;安装在所述主计算机上的服务器系统、也即所述的代理系统更新程序被如此地构造,使得它根据所述描述客户计算机的硬件和/或软件的标识而编配一个与该客户计算机的硬件和/或软件相匹配的代理系统,并把该代理系统装载到所述的客户计算机。
从本发明的意义上讲,主计算机是网络中可以把代理系统装载到另一计算机上的任何计算机,而所述的另一计算机在本发明的意义上被称为客户计算机。因此,网络的每个计算机都可以是主计算机和客户计算机,而与其在网络中的通常功能无关。
通过本发明构造所述把一个表征客户计算机的标识发送给主计算机的代理系统发射器,以及通过本发明构造所述被安装在主计算机上的、根据所述标识编配一个经匹配的代理系统并将其提供给客户计算机的代理系统,还可以在计算机网络中连入小的、尤其是移动式的计算机-它们譬如由简单的过程计算机或个人数字助理组成-,并给它们装配本发明的代理系统,因为该代理系统可以自动地同各客户计算机及其功能相匹配。
典型的匹配准则譬如有:显示(例如显像管、彩色LCD屏幕、黑/白LCD屏幕、小字母数字LCD显示、或只用于数字的小显示等等),可用的存储位置或可用的存储介质(RAM,固定磁盘或其类似物),或者在计算机上提供的系统软件(JAVA及其衍生物,视窗,视窗-CE,等等)。
通过专门地匹配装于各个计算机上的代理系统,在计算机中可以利用较高的功能来安装具有相应大功能范围的代理系统,以及在计算机中利用较低的功能来安装简单的代理系统,这种简单的代理系统是根据包括可能存在的外围设备在内的现有软件或硬件而进行专门缩减的。
本发明的另一优点在于,所述的代理系统可以自动地同相应的环境或计算机以及其上所安装的软件相匹配,这样,即便预先还不知道网络中存在哪些终端,也不必担心网络中不同计算机上的代理系统的正确匹配。由此可以在网络中自动地创造环境。在网络的各个计算机上只须安装代理系统发射器。
对于在单个计算机上装有整个代理系统的网络,如下做法基本上就足够了,即在需要装载这种代理系统的其它计算机上只装载一个代理系统发射器,随后由该代理系统发射器请求、装载和启动与其环境相匹配的代理系统。
本发明代理系统的另一优点在于,可以给所述的代理系统设立一种更新功能,由它检验是否可以从主计算机请求更新颖的代理系统版本,如果这是可能的话,便请求该更新颖的代理系统版本,然后在客户计算机上装载和启动它。由于这类更新通常是很少执行的,所以在更新时总是装载整个新代理系统是比较有利的。在有规律地变化的极庞大的代理系统中,如下做法是有意义的,即利用所述的更新功能检验所述主计算机的各个部分是否比客户计算机的各个部分更新颖,并随后可能只把所述主计算机的各个部分装载到客户计算机上。
附图说明
下面借助附图所示的实施例来详细讲述本发明。该附图简要地示出了:
图1为一种网络,多个分别装有代理系统的计算机经该网络被连接在一起,
图2为框图形式的代理系统结构,以及
图3为用于把代理系统从一个主计算机装载到计算机网络的客户计算机上的方法流程图。
具体实施方式
图1简略地示出了一种连有多个计算机1的网络,所述的计算机通过数据线2彼此相连。计算机1具有不同的功能范围,也就是说它们拥有不同的处理功能、存储容量和/或系统程序。各个计算机1的功能强弱被象征性地用标示各计算机1的矩形的大小来表示。所述的计算机1用I~IV进行编号,其中第I个计算机功能最强,而计算机IV是一个移动终端。从计算机IV到其余计算机的数据线2是一种并非永久保持的移动无线连接。因此它在图1中是用划线标示的。
在各个计算机1上均安装了代理系统AS-I~AS-IV。在网络中存在一些动态代理AG-I~AG-IV,它们要么安装在计算机1上,要么可以从一个计算机移动到另一计算机(III→II)。
图2简要地示出了一种代理系统的结构。所述的代理系统具有一个代理平台3(也称平台),它包括动态代理所需的业务程序,以便能在相应的计算机1上执行。所述的代理平台3具有两个中央程序部分,也即代理管理器4和通信管理器5。通信管理器5包括一个黑板6和多个协议管理器7,由该协议管理器给代理系统及其应用程序、也即代理25的通信提供协议。此外,该通信管理器还实现代理的迁移。借助网络耦合8,所述的协议管理器7可以相应地使用所连接的网络9。在黑板6上可以临时存储在各代理之间用于平台本地通信的数据。
代理管理器4具有一个监视模块10,利用它可以针对与该代理管理器4相连的应用程序25来监视其内部过程。该监视信息由业务程序来处理,譬如代理软件更新程序11、用户管理器12、安全管理器13和资源管理器14等。此外,代理管理器4还与譬如表现为固定磁盘的只读存储器15相连。在该只读存储器15上保存了一些配置数据和重要的执行时间信息-譬如代理-,使得它们即便在暂时关断之后也可以使用。对于较小的移动式计算机IV,把该只读存储器5实施为半导体存储器也是常见的,它可以永久地、也即在计算机关断之后也能存储数据。
代理管理器4装有管理接口19和代理应用接口20。代理管理器4经所述的管理接口19被连接到代理系统控制器21上,而该代理系统控制器具有一个管理程序22、代理系统发射器23a和代理系统更新程序23b。所述的代理系统发射器23a是一种业务程序,它可以在启动和初始化代理系统时给用户提供帮助。代理系统更新程序23b是如下的业务程序,它可以根据某些预给定来编配代理系统,并将其经网络9进行发送。代理系统更新程序23b通常是已有代理系统的一个组成部分。但也可以与代理系统无关地将其安装到计算机上。
代理管理器4通过所述的代理应用接口20与一个应用区24相连,该应用区内有一些能执行某些应用程序的代理25。所述的代理25可以通过网络9、通信管理器5和代理管理器4到达所述的应用区24。但它们也可以由装有当前代理系统的计算机的用户借助代理发射器26装载到该应用区24中,并在那儿被激活。所述的代理发射器26是一种在编制和激活代理25时服务于用户的业务程序。
所述代理系统控制器21的管理程序22在配置和诊断代理系统时对用户进行支持。
所述代理系统控制器21的代理系统发射器23a被用于启动或把所述的代理系统装载到网络中的计算机上。在此所执行的过程由图3所示的流程图给出。
为了利用该方法把代理系统装载到计算机上,在装有代理系统且在下文被称为客户计算机28的客户计算机上必需装载所述的代理系统发射器23a。客户计算机28必须经数据线2与至少一个装有代理系统更新程序23b的计算机相连,以便由所述在下文被称作主计算机29的计算机从同样存在于那儿的代理系统中编制出该代理系统的被匹配或定标的副本,然后将其装载到所述的客户计算机28上。数据线2可以是电缆或光缆,或是无线链路。
装载和更新代理系统的方法由代理系统发射器23a执行,并在步骤S1开始(图3)。此后紧接着询问是否在计算机上已存在代理系统AS(S2)。若该询问发现在当前计算机上还不存在代理系统,则程序流程过渡到步骤S3,该步骤是所述代理系统发射器23a的装载功能30的组成部分。利用步骤S3把表征所述客户计算机28的硬件和/或软件的标识发送给所述的主计算机29。该标识包含有关于所述硬件和/或软件的功能性的信息,譬如可用存储器的大小、存储介质的类型、显示的类型以及现有的系统程序等。
在步骤S4中,在主计算机上分析处理所述从客户计算机28发送来的标识,并在步骤S5中根据所述的标识编配一个代理系统。代理系统的匹配是通过插入或取消适当/必需的或不必要的组分、以及通过对客户计算机28上所装设的硬件和软件的选定组分进行配置和定标来实现的。此外,还在动态复杂性方面对所述的组分进行配置,该复杂性主要是基于数据结构的大小。除了所述代理管理器和通信管理器之外,还对诸如用户管理器12、安全管理器13和资源管理器14等可定标的业务程序进行匹配,也就是说在客户计算机28上进行定标。步骤S4和S5是在布置于所述主计算机29的代理系统控制器21内的代理系统更新程序23b内执行的。
在同客户计算机28相匹配的代理系统被配置之后,在步骤S6中把该被匹配的代理系统从主计算机29发送到客户计算机。在步骤S7,在客户计算机28上接收所述的代理系统,并将其装载到客户计算机28上。步骤S7是所述代理系统发射器23的装载功能30的组成部分。在客户计算机装载代理系统之后,在步骤S8中启动它,随后在接下来的步骤S9中结束所述用于装载代理系统的方法。
通过在步骤S8中启动所述的代理系统来调用启动和初始化例程(步骤S9),以利用该例程启动和初始化所述的代理系统。利用启动序列S10来装入所存储的代理(步骤S11)。由此可以执行代理系统的“标准”运行,这在图3中是用S12来表示的。如果需要结束代理系统的这种运行,则首先利用停机顺序(步骤S13)来存储所述代理系统的代理和执行时间信息。然后终止所述的代理,并关闭所述的代理系统(步骤S14)。
相反,倘若在上述步骤S2中确定出在客户计算机28上已存在代理系统,则程序流程过渡到步骤S15,在该步骤中检验是否允许更新所述的代理系统。如果不允许更新该代理系统,则程序流程过渡到步骤S16,利用该步骤检验该代理系统是否正在运行。如果系统不是在运行,则在步骤S8中启动它,并在步骤S9中终止所述的代理系统发射器23a。若所述的代理系统已在运行,则程序流程直接过渡到步骤S9,利用它来终止所述的代理系统发射器23a。
如果在步骤S15中检验出允许更新所述的代理系统,则程序流程过渡到步骤S17,利用该步骤检验代理系统是否正在运行。
若代理系统正在运行,则在步骤S18中调用所述的步骤S13(停机顺序)以终止代理系统的运行。利用随后的程序回路(步骤S19)询问所述代理系统的运行是否已终止。只有当代理系统的运行被终止之后,程序流程才过渡到步骤S20。
如果在步骤S17中得出代理系统不在运行,则程序流程可以直接过渡到步骤S20。
利用步骤S20把版本标识发送到主计算机29。该版本标识包含有关于被安装在客户计算机28上的代理系统及其组分的信息。
在步骤S21中,在主计算机29上分析处理所述的版本标识,并在接下来的步骤S22中把可从主计算机装载的最新代理系统及其组分的版本信息发送到所述的客户计算机。随后在步骤S23中,在客户计算机28上将其自身的版本信息与所述主计算机的版本信息进行比较,以检验可从主计算机装载的相应版本是否比所述客户计算机上的当前代理系统及其组分的版本更为新颖。如果检验出所述可从主计算机29装载的版本更为新颖,则程序流程过渡到步骤S3,利用该步骤重新把表征所述客户计算机28的硬件和/或软件的标识发送到所述的主计算机,然后由该主计算机编配与此相匹配的代理系统,并将其发送给所述的客户计算机28。相反,若在步骤S23中询问得出所述可从主计算机装载的版本不比客户计算机上的代理系统及其组分更为新颖,那么程序流程便过渡到步骤S8,利用该步骤启动所述的代理系统。由此可以更新整个代理系统,或在需要时只更新其一部分(在运行中)。
步骤S20和S23构成了一种更新功能31,代理系统发射器23a利用该功能来执行现有代理系统的更新。
本发明用于装载代理系统的方法是由代理系统发射器23a来执行的。该代理系统发射器可以随时由人工启动,而与是否存在代理系统和代理系统是否正在运行无关。代理系统发射器23a也可以在第一次装载到计算机上时或在启动计算机时自动地被激活。如果已存在一个完整的代理系统,则所述的代理系统发射器23a可以直接由用户或管理程序22进行控制,其中,管理程序22可以重复地调用它,由此确保了代理系统的有规律的和按照需要的更新。
为了管理多个移动式客户计算机28的代理系统,可以设立一台永久地与网络相连的主计算机29。如果譬如需要在一台小型移动式计算机、也即具有黑白屏幕的客户计算机28上启动一个代理系统,那么就由主计算机29给客户计算机28发送一个请求,并同时还传送关于其资源的当前数据(譬如黑/白屏幕,8MB的RAM,在屏幕上可显示的窗口的最大数量,现有的Java虚拟机,符号的图形显示,代理系统用于一个或多个用户的用户管理功能,...)。主计算机29借助该信息编配一个代理系统,在该代理系统中譬如有一个用于专门印录到黑/白设备上的Java类。对于具有彩色屏幕或具有只能显示ASCII符号的屏幕的设备,用于引录到它们上的等价类看起来是不同的。根据在客户计算机28上可用的Java虚拟机(个人Java,JDKl.x,1.2,...)自动地编配相应的类。如果只需要管理一个而不是多个用户,则提供用户管理的相应类也可以相应地小,并且在客户计算机28上具有更少的资源需要。
本发明的代理系统可以选择性地设立如下功能,由它自主地检验各计算机的硬件和/或软件,并在需要时启动所述的发射器23a。由此,所述的代理系统可以动态地与硬件和/或软件方面的变化相匹配。该功能可以由图3所示的位于步骤S17之后的步骤S24来实现。在步骤S24中检验:自代理系统的最后一次更新以来是否已改变所述的硬件和/或软件。如果确定出这种改变,则程序流程直接过渡到步骤S3,利用该步骤把相应的标识发送给所述的主计算机29。如果没有确定出这种改变,则所述的程序就过渡到步骤S20,并按照上述的说明进行处理。
本发明的代理系统所基于的程序可以被存储在电可读的数据存储器上进行销售。

Claims (15)

1.代理系统,它可以安装到被连接在计算机网络中的计算机上,具有
-一个代理平台(3),该代理平台包括代理(35)所需的业务程序,以便能在各计算机(1)上执行,
-一个具有代理系统发射器(23a)的代理系统控制器(21),所述的代理系统发射器可以与其余代理系统无关地被装载到客户计算机(28)上,并被用于从主计算机(29)装载所述的代理系统,其特征在于:
所述的代理系统发射器(23a)被如此地构造,使得在把代理系统从主计算机(29)装载到所述装有至少一个代理系统发射器(23a)的客户计算机(28)之前,把一个表征所述客户计算机(28)的硬件和/或软件的标识发送给所述的主计算机(29),并且
如此地构造安装在所述主计算机(29)上的代理系统更新程序(23b),使得它根据所述表征客户计算机(28)的硬件和/或软件的标识而编配一个与该客户计算机(28)的硬件和/或软件相匹配的代理系统,并把该代理系统传送给所述的客户计算机(28)。
2.如权利要求1所述的代理系统,其特征在于:
所述的代理系统发射器(23a)既被构造用来装载整个代理系统,也被构造用来装载代理系统的各部分。
3.如权利要求1或2所述的代理系统,其特征在于:
所述的代理系统发射器(23a)具有用于询问所述客户计算机(28)的硬件和/或软件的功能,以产生相应的标识。
4.如权利要求1或2所述的代理系统,其特征在于:
所述的代理系统发射器(23a)具有一种用于将所述客户计算机(28)上所安装的代理系统同可从主计算机(29)装载的代理系统的版本标识进行比较的功能。
5.如权利要求1或2所述的代理系统,其特征在于:
所述的代理系统是一种用于动态代理的代理系统。
6.计算机网络,具有多个借助数据线进行结网的计算机,其特征在于:
一种具有如权利要求1~5之一所述的特征的代理系统,该代理系统被安装在计算机网络(9)的多个计算机(1)上。
7.如权利要求6所述的计算机网络,其特征在于:
至少一个计算机(1)是移动式计算机。
8.如权利要求7所述的计算机网络,其特征在于:
所述的移动式计算机借助非永久的数据线(2)被连接到计算机网络(9)上。
9.用于把代理系统从主计算机(29)装载到计算机网络(9)的客户计算机(28)上的的方法,其中,在所述的主计算机(29)上安装一个代理系统更新程序(23b),以及在所述的客户计算机(28)上安装至少一个代理系统发射器(23a),其中所述客户计算机(28)的代理系统发射器(23a)可以把代理系统从所述主计算机(29)装载到所述的客户计算机(28)上,其特征在于:
在装载所述的代理系统之前,由所述的代理系统发射器(23a)把一个表征所述客户计算机(28)的硬件和/或软件的标识发送给所述的主计算机(29),并且
所述主计算机(29)的代理系统更新程序(23b)根据所述表征客户计算机(28)的硬件和/或软件的标识而编配一个与该客户计算机(28)的硬件和/或软件相匹配的代理系统,并把该代理系统传送给所述的客户计算机(28)。
10.如权利要求9所述的方法,其特征在于:
所述的代理系统发射器(23a)首先检验是否在所述的客户计算机(28)上已存在代理系统,并且
如果安装了代理系统,则检验(S15)是否可以或需要更新,以及所述代理系统是否正在运行(S16,S17),以及
如果可以或需要更新且所述的代理系统正在运行,则终止所述代理系统的运行(S18),以便能更新它。
11.如权利要求9或10所述的方法,其特征在于:
一种用于从主计算机装载代理系统的功能(30),在调用该功能时,所述的客户计算机(28)把一个标识发送给所述的主计算机(28),并由此接收(S7)从所述主计算机(20)发送来的代理系统。
12.如权利要求11所述的方法,其特征在于:
一种用于更新代理系统的功能(31),由它确定在所述客户计算机(28)上已装有代理系统的情况下是否需要执行更新。
13.如权利要求12所述的方法,其特征在于:
所述用于更新代理系统的功能(31)首先检验是否可以更新,如果可以更新,则由它给所述的主计算机(29)发送一个版本标识,该主计算机则向所述的客户计算机(28)发送一个可从主计算机(29)装载的最新代理系统的版本信息,由此在所述的客户计算机上将所述的版本标识与所述的版本信息进行比较(S14),如果该比较得出所述可从主计算机(29)装载的版本比所述客户计算机(28)上的现有代理系统版本更为新颖,则所述程序流程便被过渡到所述用于装载代理系统的功能。
14.如权利要求13所述的方法,其特征在于:
在所述的比较中,检验所述在主计算机(29)上可调用的代理系统的各部分是否比所述客户计算机(28)的各部分更新颖,其中,必要时所述的装载功能(30)只更新所述代理系统的各个部分。
15.如权利要求9或10所述的方法,其特征在于:
所述的标识包括有关于所述客户计算机的存储器大小、显示的类型、可用网络类型的典型处理速度、及/或所用系统软件的类型信息。
CNB008154937A 1999-08-18 2000-08-11 代理系统、计算机网络以及用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法 Expired - Fee Related CN1322421C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19939058.4 1999-08-18
DE19939058 1999-08-18

Publications (2)

Publication Number Publication Date
CN1520551A CN1520551A (zh) 2004-08-11
CN1322421C true CN1322421C (zh) 2007-06-20

Family

ID=7918726

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008154937A Expired - Fee Related CN1322421C (zh) 1999-08-18 2000-08-11 代理系统、计算机网络以及用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法

Country Status (4)

Country Link
US (1) US6981251B1 (zh)
EP (1) EP1287433A2 (zh)
CN (1) CN1322421C (zh)
WO (1) WO2001013224A2 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3772102B2 (ja) * 2001-07-30 2006-05-10 株式会社東芝 情報処理方法、情報処理装置及びプログラム
US7523456B2 (en) * 2002-07-26 2009-04-21 Topia Technology, Inc. System and method for adding local resources for use by a mobile agent object
US7165087B1 (en) * 2002-12-17 2007-01-16 Hewlett-Packard Development Company, L.P. System and method for installing and configuring computing agents
US8589517B2 (en) * 2003-11-04 2013-11-19 Verizon Business Global Llc Systems and methods for providing self-compiling, peer-to-peer on-line gaming
DE102004016381B4 (de) 2004-04-02 2006-02-09 Siemens Ag Verfahren zur Fehlererkennung und zur Unterstützung von Rekonfigurationsentscheidungen in Mobilfunknetzwerken mit rekonfigurierbaren Endgeräten sowie entsprechende Netzwerkelemente und Komponenten
US8156489B2 (en) * 2004-05-21 2012-04-10 Computer Associates Think, Inc. Distributed installation configuration system and method
US20060053116A1 (en) * 2004-08-31 2006-03-09 Rits Maarten E Dynamic software updating using mobile agent AOP
US20070073800A1 (en) * 2005-09-29 2007-03-29 Intel Corporation Provisioning, configuring, and managing a platform in a network
US8010701B2 (en) 2005-12-19 2011-08-30 Vmware, Inc. Method and system for providing virtualized application workspaces
US8935429B2 (en) * 2006-12-19 2015-01-13 Vmware, Inc. Automatically determining which remote applications a user or group is entitled to access based on entitlement specifications and providing remote application access to the remote applications
CN101197022B (zh) * 2007-12-14 2012-04-18 上海汽车集团股份有限公司 诊断仪的汽车诊断仪车辆配置方法
TW201135594A (en) * 2010-04-08 2011-10-16 Inventec Corp System for updating software using separated modules and method thereof
CN102253847A (zh) * 2010-05-19 2011-11-23 宏碁股份有限公司 制作系统软件的系统及系统软件的部署方法
CA2875850C (en) * 2014-12-23 2022-07-05 Steve Cooper Version synchronization of dependent components
CN104714760B (zh) * 2015-03-05 2018-05-15 青岛海信宽带多媒体技术有限公司 一种读写存储设备的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742829A (en) * 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
US5845090A (en) * 1994-02-14 1998-12-01 Platinium Technology, Inc. System for software distribution in a digital computer network
CN1224517A (zh) * 1996-07-01 1999-07-28 北方电讯有限公司 软件产品的分发和受约束使用

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5603031A (en) 1993-07-08 1997-02-11 General Magic, Inc. System and method for distributed computation based upon the movement, execution, and interaction of processes in a network
US6260078B1 (en) 1996-07-03 2001-07-10 Sun Microsystems, Inc. Using a distributed object system to find and download java-based applications
US6009274A (en) * 1996-12-13 1999-12-28 3Com Corporation Method and apparatus for automatically updating software components on end systems over a network
US6175855B1 (en) * 1996-12-20 2001-01-16 Siemens Aktiengesellschaft Method for instantiating a class having different versions
GB2333864B (en) * 1998-01-28 2003-05-07 Ibm Distribution of software updates via a computer network
US6202207B1 (en) * 1998-01-28 2001-03-13 International Business Machines Corporation Method and a mechanism for synchronized updating of interoperating software
US7024471B2 (en) * 2000-12-12 2006-04-04 International Business Machines Corporation Mechanism to dynamically update a windows system with user specific application enablement support from a heterogeneous server environment
US7293115B2 (en) * 2001-02-28 2007-11-06 Sony Corporation Internet-aware agent for automatically updating applications without executing the application
US6976251B2 (en) * 2001-05-30 2005-12-13 International Business Machines Corporation Intelligent update agent
US20030131226A1 (en) * 2002-01-04 2003-07-10 Spencer Donald J. Dynamic distributed configuration management system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845090A (en) * 1994-02-14 1998-12-01 Platinium Technology, Inc. System for software distribution in a digital computer network
US5742829A (en) * 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
CN1224517A (zh) * 1996-07-01 1999-07-28 北方电讯有限公司 软件产品的分发和受约束使用

Also Published As

Publication number Publication date
US6981251B1 (en) 2005-12-27
WO2001013224A3 (de) 2002-11-21
CN1520551A (zh) 2004-08-11
EP1287433A2 (de) 2003-03-05
WO2001013224A2 (de) 2001-02-22

Similar Documents

Publication Publication Date Title
CN1322421C (zh) 代理系统、计算机网络以及用于把代理系统从主计算机装载到计算机网络的客户计算机上的方法
US10244058B2 (en) Extending functionality of applications
US7900214B2 (en) System and method for adaptable provisioning of generic application content
EP1438672B1 (en) Method, apparatus and system for a mobile web client
US6542908B1 (en) Technique for automatically and transparently transforming software components into software components capable of execution in a client/server computing environment
US9332079B2 (en) Generic activation and registration framework for wireless devices
US7752633B1 (en) Cross-platform event engine
CN1685323B (zh) 通信系统,中继设备和通信控制方法
US7080100B2 (en) Install processing apparatus, processing method, storage medium, and program
US20040005859A1 (en) Wireless deployment / distributed execution of graphical programs to smart sensors
US20210337015A1 (en) Method and system of application development for multiple device client platforms
US20020002605A1 (en) Server/client system and program for implementing application distribution in this server/client system
EP2437524A1 (en) M2m service platform and work method thereof
JP2000289583A (ja) 車両診断実行方法および車両診断実行システム
US8387039B2 (en) System and method for customized provisioning of application content
US20060112379A1 (en) Method and system for on demand java resources
US20020032755A1 (en) Registration system and method using a back end server
KR20010090304A (ko) 휴대폰 단말기를 위한 다운로드 서비스 시스템 및 이를이용한 어플리케이션 프로그램 서비스 방법
KR20020009741A (ko) 휴대전화단말기의 오퍼레이팅 기반환경 구축장치 및 이를이용한 응용프로그램의 무선 업그레이드 방법
RU2298298C2 (ru) Способ выполнения программы заказчика блоком радиосвязи
EP1560114A1 (en) Computer system and method for customized provisioning of application content
KR20010035354A (ko) 무선 인터넷을 이용한 파일 송수신 시스템
WO2001069382A1 (en) System, method and apparatus for initial configuration of a client device
EP1560115A1 (en) Computer system and method for adaptable provisioning of generic application content
CA2330707A1 (en) Method and apparatus for abstracting device independent request-response network interactions

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
ASS Succession or assignment of patent right

Owner name: SIEMENS ENTPR COMM GMBH + CO. K.

Free format text: FORMER OWNER: SIEMENS LTD.

Effective date: 20120327

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120327

Address after: Munich, Germany

Patentee after: Siemens Entpr Comm GmbH & Co. K.

Address before: Munich, Germany

Patentee before: Siemens AG

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070620

Termination date: 20190811

CF01 Termination of patent right due to non-payment of annual fee