CN1564979A - 更新不同终端上软件的方法 - Google Patents

更新不同终端上软件的方法 Download PDF

Info

Publication number
CN1564979A
CN1564979A CNA028197542A CN02819754A CN1564979A CN 1564979 A CN1564979 A CN 1564979A CN A028197542 A CNA028197542 A CN A028197542A CN 02819754 A CN02819754 A CN 02819754A CN 1564979 A CN1564979 A CN 1564979A
Authority
CN
China
Prior art keywords
software
terminal
pal
sof
pec
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.)
Pending
Application number
CNA028197542A
Other languages
English (en)
Inventor
J·维斯
W·多雷尔
T·罗克
A·迈尔霍菲
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.)
Siemens AG
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 CN1564979A publication Critical patent/CN1564979A/zh
Pending 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及一种更新不同终端(PEC、PAL)上软件(sof)的方法,这些终端连接在一个通信网络(NET)上,它们能经过该通信网络互相通信。按照要求将在一个终端(PEC)上运行软件(sof)的一个软件状态,经过通信网络(NET)传输到第二个终端(PAL),并设置一个在第二个终端(PAL)上运行的、与第一个终端(PEC)上传输的软件状态一致的软件(sof),并在第二个终端(PAL)上以最后在第一个终端(PEC)上的现实状态继续运行。对于所应用的软件,涉及的例如是一个代理软件。

Description

更新不同终端上软件的方法
本发明涉及一种更新不同终端上软件的方法,这些终端连接在一个通信网络上,它们能经过该通信网络互相通信。
现代用户一般都利用如个人计算机那样的各种终端,例如台式计算机和/或膝上型计算机、移动无线电装置、手持式计算机等。在这种情况下,一般都希望在所有这些终端上使用当时最现实的数据。例如在所提及的终端上运行用于管理数据的软件程序,比方说涉及到用户的联系信息或日程记录。例如给一个用户的手持式计算机的日程安排软件填一项新内容,他想让他所有其它终端同样利用这些新版本的数据,他就必须以一个相对费事的过程使他所有其它终端进入最终的状态。为此,一般是将这些终端经过通常是从一个终端到一个终端的不同接口互相连接起来。为了使更新过程简单和顺利地进行,如果在要调准的终端上运行的是相同的软件,也是有利的。
如实践所示,这种进行方式是有缺点的,一方面很多用户认为不断需要的更新过程麻烦,因此往往只是不规则地进行这些更新,这就经常造成在不同的终端上有相互有差异的数据组。
另一方面多半还出现这种情况,即不同的终端在各种各样的操作系统下运行,用不同的软件程序处理比方一个联系数据组,这样此时使更新过程更加困难,往往在校准数据时丢失信息。
上述问题不仅仅出现在多数用户容易理解的日程管理和数据管理情况,而是基本上出现在一个用户实施的软件本身的每个更改时。如果例如在台式计算机上将一个软件上的某些调整进行改变,则必须将它们再单独由用户在膝上型计算机进行调节,以便能在两个计算机上利用相同的配置。
与此有关,要立即先作个概念定义。开始时介绍的概念“软件状态”,在这个文献中一方面与涉及软件的实际情况有关,就是说软件本身上的配置变化等,另一方面也要例如理解为能用相应软件处理、观察等的数据的“状态”。在这个意义上,例如具有数据组“A”和“B”的一个日程管理软件“X”,与具有数据组“A”、“B”和“C”的相同日程管理软件“X”相比,处于另一个软件状态。
本发明的任务在于对上述问题给出一个解决办法。
这个任务用本文开篇所介绍的方法如此去解决,按照本发明
a)按照要求至少将在一个终端上运行软件的一个软件状态,经过
通信网络传输到第二个终端,和
b)设置一个在第二个终端上运行的、与第一个终端上的具有传输
的现实软件状态相应软件的软件,并在第二个终端上以最后在
第一个终端上的现实状态继续运行。
借助于本发明的方法,将现实软件状态简单地传输到另一个所希望的终端上,在那里设置有一个具有现实状态与在原来终端上运行的软件一致的软件,然后以最后的状态继续运行。
如果将与在第一个终端上的软件相应的第二个终端上的软件从一个存储位置传输到第二个终端上,就特别有利。
当传输在上面也称为“软件状态”的软件的变异部分对于更新是绝对必要时,软件本身的传输,即软件的不变的有运行能力的部分的传输不必是无条件进行。然而,传输软件本身的一个“参与或仿效”到第二个终端上(与软件是从哪个位置到达第二个终端无关)就有一些优点,只需要将软件“安装”在一个终端上,这必然减少相应的工作量并以特别可靠的方式确保:软件在当时所希望的终端上、以它现实的状态并且也以与原来终端上相同的软件版本运行。
例如,将一个连接到通信网络上的软件服务器作为软件的存储位置应用。在这里软件是集中存储的,或在有要求时在这里产生,并能在需要时传输到当时所希望的终端上。
但是也能预先规定,将最初软件在其上运行的终端应用为软件的存储位置。以这种方式,在两个终端之间进行更替时,一个中央服务器的独立性得以实现。
如果在按照本发明的方法中,在步骤a)中将软件状态封装到一个将被传送到第二个终端的信息中,一个技术上简单易行的传输就有了保证。
如果应用一个代理软件作为软件,可使方法特别容易实现。这样一个软件利用一些在说明书下文中详细阐述的专门特性。由于这些特性,这些代理特别适合应用于按照本发明方法。
为了将软件快速和可靠地传输到新的终端上,如果信息还包括有软件的存储位置,从该存储位置该软件被传输到所希望的新终端上,是有利的。在软件代理的情况下,此时只需要信息包括至少主类别(Hauptklasse)的名称和代理的类别定义存储位置。读完信息之后,在代理软件的情况,能从这些说明在第二个终端上产生相应的至少一个或多个代理并用软件状态预先规定,然后去运行。
类别定义是复杂的JAVA代码。通常将每个类别的代码存储在一个自己的类别文档中。它在那里以一个标准的每个解释程序都能读的二进制形式出现。如果程序启动,解释程序将类别文档翻译成计算机专用的机器代码并生成程序。当所述代码总是必须占据一个新类别时,该代码由其存储位置的类别定义进行定义。
主类别是那种就它而言一个解释程序逐步找到到所有类别路径的类别,为了产生代理解释程序需要这些类别。
也有可能将类别定义局域地存储在个人的终端上,以便加速加载过程,但是此时必须在所有终端上额外参与版本改变。
为了能使一个用户在更替到新的终端上时以现实的软件状态仿效他的软件,原则上预先规定,取消借助于软件在其上运行的第一个终端的请求。
但是也有可能选择或附加的是,第二个终端经过通信网络向第一个终端提出请求,该请求在第一个终端处被传送到软件,然后这个软件将用于传输的相应步骤置于新的终端上。
在请求时,将要向其传输软件和软件状态的终端的一个明确无误的地址传送到软件,以便将这个软件可靠地传送到正确的确定位置。这个地址或者已经被存储,或者由用户专门输入。
在采用因特网作为通信网络时,将终端的一个IP-地址用作地址。
为了在新的终端上传送时总是运行的现实状态,预先规定,在请求达到之后使第一个终端上的软件暂停在其运行状态中,并将这个软件或软件状态传输到第二个终端上。
某些应用,比如在一个用软件实现的电话连接时,所必须的是,在进行传送时保持正常连接。出于这个原因,至少在下面的情况是相宜的,如果用其现实软件状态产生软件的一个拷贝,将这个拷贝传输到第二个终端上,而不是例如立即将整个软件从一个终端传输到另一个终端上。
只有当软件在第二个终端上进行正常运行时,才结束在第一个终端上的软件运行。
为了不使最后的现实软件状态丢失,在关闭所有终端时或去活所有例如是分配给一个用户的终端的软件,将最后的现实状态经过通信网络传送到一个连接到通信网络的软件服务器,由它存储起来。
在重新激活一个终端时和有时重新激活一个相应的请求时,将本来存储在软件服务器上的软件传输到终端上(或在一个代理软件时产生软件并传输到终端上),此外传输所存储的软件状态,并用它设置软件,这样软件能以现实状态继续运行。
为了确保软件在不同的、一般是各种终端上顺利运行,有必要在终端上和软件服务器上,为软件应用相同的运行时间环境。
在本发明的一个正确的实施形式时,将JAVA作为运行时间环境应用。
与本发明有关应用的软件,基本上可以是任意一个软件,比如一个文字处理等。如果软件是实现语音连接和/或数据连接的一个软件,应用本发明例如就特别合适,因为在这种情况要能把一个连接不间断地过渡到两个终端之间的连接。
在下面利用附图详细说明本发明。
图1和图2实施本发明方法的一个基本系统,
图3和图4实施一个本发明方法的一个系统,与具有一个对方站
的用户终端的一个Voice-over-IP-连接有关联,和
图5一个在应用本发明范围内的软件代理的寿命周期。
图1和2示出的是在多个终端PEC、PAL上更新软件sof或软件状态的第一个简单例子。一个用户使用例如一个台式计算机PEC,另一方面也还有一个手持式终端PAL。按照本发明的基本设想,不再像迄今通常采用的那样,为一个一定的应用比如为了一个联系管理,在终端PEC、PAL的每一个上运行一个自己的软件,然后将它在终端PEC、PAL之一上的每个新的或改变的内容再在另一个终端上去调配,而是用户还只为当时的应用情况“使用”一个有运行能力的在各个终端PEC、PAL之间按照要求被传输的软件应用。
将具体的软件sof以终端PEC、PAL的关闭状态,放置在分配给这个终端的存储装置SSD中的一个软件服务器SSE上。如果用户将比如他的台式计算机PEC投入运行,或者通过用户的一个相应的输入或者自动向软件服务器SSE提出要求去传送,将所希望的软件sof,比如一个联系管理,以最后现实的状态传送到台式计算机PEC上。
为了各个终端PEC、PAL和服务器SSE的通信,它们可经过一个通信网络NET互相连接。此时,对概念“通信网络”当然也可以理解为如下情况,例如服务器是连接到一个固定网络上,而一个或多个终端比如是连接到一个移动无线电网络上,连接经过这个网络建立起来。
如果用户想将软件sof应用在另一个终端上,例如在他的手持式终端PAL上,就简单将一个相应的要求传送到台式计算机PEC上,将软件sof经过通信网络NET传送到手持式终端PAL上。
对本发明的一个优选实施形式,如下面还要深入讲述那样,要应用所谓的代理技术。对于在一个终端上运行的软件,就关系到“代理程序”。在其它的文本中大多利用术语,使各自的软件是一个代理软件。但是一般在实践中是,这个代理软件由多个“代理”组成,即一个主代理和一个或多个从代理。这些从代理能与主代理通信,是为解决专门问题而设置的,而主代理还要处理“对外”通信,这样从外面看软件也是作为一个“唯一的”软件出现的。
基本上一个代理能自己运动,或者被另一个代理或一个代理平台形式运动。传输软件和软件状态到另一个终端上去的要求,通常通过向软件的一个输入(或在向主代理的代理图形中)被取消,而且是在软件在其上现实运行的终端上。
然而,也能预先规定,从外面比如通过在另一个终端上的输入来完成要求,比如到另一个代理中,该代理将相应所希望的代理从所希望的终端拿到要求的终端上。
所要求的软件(主代理)接收要求之后,它就为了它移动到其它的终端上安排必要的步骤。通信本身优先经过因特网进行,作为软件sof的传输协议应用的是TCP/IP-协议(Transmission ControlProtocol/Internet Protocol)。
此时,在要求到达之后,使软件sof在台式计算机上停在(冻结)其具有所有其参数、调节等现实的状态,并以这种状态传输到第二个终端PAL,在那里以最后的现实状态继续运行。
如在上面已经谈到,在本发明的一个优选实施形式时,所应用的、在各个终端或服务器之间更换的软件,建立在所谓的代理技术基础上,该代理技术基于下面述及的代理的特性,证明对本发明特别合宜。对于一个软件代理,可以理解为一个程序,它接受一个任务并独立地去完成,或自主地完成用户定义的任务。移动软件代理是以自主对象形式的程序,它们在一个异构计算机网络(典型的是内联网或因特网部分)中四处漫游,并在此时完成一个用户委托的服务或完成任务。一个软件代理此时自主地决定,基于局部情况,是否它也许要在何时和到何处移动。在微弱移动时,将软件代理的动态过程状态,按照代理系统软件代理的愿望,冻结在一定的稳定程序点,并与上下文信息和一个可变的数据部分一起装到一个要发送的信息中。在目标位置再将过程状态解冻,代理在中断的位置连续地继续运行。在强烈移动时,将代理系统的软件代理的动态过程状态,冻结在一个任意的程序点,并与上下文信息和一个可变的数据部分一起装到一个要发送的信息中。在目标位置再将过程状态重新显露出来,代理在中断的位置不间断地继续运行。
一个软件代理为了完成其工作,与当时的局部环境,正好容纳它的代理系统整合在一起,此时它也能与其它局部存在或远离的软件代理协调。此外一个软件代理能与它的位居在另一个地点的任务委托人通信,比如为了提供中间结果或要求新的数据和指令。不过后者表示的是一个更确切地说是一个罕见的事情,因为软件代理从方案开始就能很大程度地自主处理。
把技术作为软件代理的基础,在US 5 603 031或EP 0 634 719中有说明。与软件代理有关,介绍下列公开发表的文献:
Walter Brenner,Ruediger Zarnekow,Hartmut Wittig:Intelligente Softwareagenten.Grundlagen und Anwendungen,Springer Verlag Berlin,1998;Stan Franklin,Trt Gaesser:Is it an Agent,or just a Program?A Taxonomy for AutonomousAgents.Proceedings of the Third International Workshop onAgent Theories,Architectures,and languages of MemphisSpringer-Verlag 1996。
因此在应用软件代理时也有可能,发送的不是软件代理的原件,而是这个代理先从自己用现实软件状态产生一个拷贝并将此拷贝传送到第二个终端PAL。原始代理sof的这个“克隆”确定使它有可能在新的环境中起符合规定的作用之后,它就将台式计算机PEC上的原件销毁。软件状态只能直接在克隆和发送时被转递,而不再是在那之后。为了使软件状态保持坚实,因此原件在克隆之后封锁所有的输入。
克隆是原件的一个精确的拷贝,以这种方式可靠地确保,在传送时没有信息、调节等丢失。
本发明正常运转的前提仅仅是,应用的终端为代理软件使用相同的运行时间环境,这样这个代理软件有在不同终端上运行的能力,而且相同的代理平台形式也是必要的。例如将熟悉的JAVA作为运行时间环境来应用。
通常代理本身是JAVA-程序,到处需要JAVA作为运行时间环境。为了不同系统代理的通信,它们平台形式标准化的接口是必要的,经过这些接口它们能整合起来。
Java是一个由Sun公司开发的面向对象的编程语言,是为因特网-应用的。Java与编程语言C++相似,不过放弃了其处理机特有的匹配。它用于制定与平台形式无关的Applets-应用部分,它们只以一个解释程序以及一定的浏览器为前提,例如Netscape navigator,OraclePowerBrowser,Mosaic von Spyglass和Sun Hot Java。此外,Java支持文本-、超文本软件功能、图形功能、音频功能和动画功能。
代理是完整的应用,只需要解释程序,但是不需要一个浏览器。
当然也可以应用其它适宜的运行时间环境,且不把本发明限制在JAVA上。从上面得出的一个大优点是,在各个终端之间,软件能完全与平台形式无关地进行传输并也能进行。在各个终端上的不同操作系统,因此表明对于本发明的正常运行不是障碍。
按照本发明预先规定,将整体软件以其现实状态从一个终端PEC传输到用户的另一个终端PAL上。一般最迟当软件在“新”终端上开始运行时,软件在原来的终端上就结束它的任务。
软件基本上也能在用户的多个终端上平行运行,但是不是以相同的软件状态。软件状态也不能在运行着的程序情况下进行更换。不过合适的方式是使软件总是在每个用户的一个终端上运行。
软件在用户所有终端PEC、PAL上结束以后或软件在所有终端上结束以后,将软件sof的软件状态再经过因特网NET传输到软件服务器SSE,并以最现实的状态存储到它的存储装置中。软件本身不存储在代理服务器SSE中,因为在这个服务器上本来放置有当时代理的类别定义,代理本身在一个相应的要求时又能容易产生。
在应用软件代理sof时的一个重要之点是,除了终端PEC、PAL外,当然软件服务器SSE也为软件代理提供一个运行时间环境。在最早应用一个所希望的软件时,用户例如经过因特网NET,在这样一个软件代理服务器SSE处,经过一个相应的因特网页(Internetseite),产生一个所希望的软件代理(在提供者预先规定的界限范围内)。在此再次将上面已经说过的联系管理作为例子来讲述,它是用户按照一定的规则—例如,要有哪些基本内容,如姓名、地址、电话号码等—来制订。输入数据在此一般也是可能的。将“准备好的”软件代理经过因特网传输到用户当时的终端上,在那里将它如上面那样实施、传输等。
本发明的另一个具体的实施例,用图3和4和网上话音业务(VoIP,Voice over Internet Protocol)联系起来表示。
通电话时,在VoIP时也有的一个基本问题是,在电话通话期间,一个用户不同终端之间的连接不能随随便便转发。如果例如用户用他的台式计算机PEC开始一个VoIP-谈话并想将这个谈话用他的手持式计算机PAL继续进行,该手持式计算机PAL与因特网比如经过一个无线电接口连接,那么他就必须为此通常中断谈话连接并再重新建立。如果在两个终端PEC、PAL上执行的是相同的标准,基本上也有可能是一个呼叫转接线路。不过,特别是在如此不同的终端时,如一般也有不同的应用和不同的操作系统的台式计算机和手持式计算机那样,这是罕见的情况。
能用本发明将这个问题以简单的和对于用户很舒适的方式来解决,在下面要用图3和4以及附加用示出一个软件代理寿命周期的图5详细讲述。此时,置于括号()中的参考符号(数字)总是针对图5。
根据一个用户的要求—例如经过他的台式计算机PEC-产生(1)代理sof;在这个时间点代理也得到所有用户信息,如调节、有关在这之前电话的信息、和包括代理已经在其上运行的所有计算机地址的移动历史(Movement History),以便将来它们方便地由代理服务器SSE在一个清单中选择。随后,将代理sof传输(2)到它将在其上运行的用户的台式计算机PEC上。从这个时间点开始,如果用户希望,代理sof,此时在这种情况涉及的是一个通信程序,处于建立或接受与另一个终端连接的良好情况。
如在图3中获悉的那样,在用代理sof谈话的情况,在第一步经过一个信号协议SIP与对方站CLI商定(3)呼叫参数。代理sof的通信此时用另一个代理sof′或在客户计算机CLI上的一个通信应用进行。
例如就像从图3获悉的那样,通信是在经过一个代理服务器(Proxy-Server)PRO应用 Session Initiation协议(SIP)sip的情况下进行。Session Initiation Protocol(SIP)是一个由Internet Engineering Task Force(IETF)为经过包支持的网络传输实时数据推荐的标准。SIP-协议功能上可与H.323协议相比,并能建立、改变和终结互相配合的通信服务。SIP-信息能经过TCP或UDP(User Datagram Protocol)运送。SIP有一个敞开的以因特网为基础的结构,并使CLASS-Features(Custom Local Area SignallingService)成为可能,就像比如传送呼叫方的一致性或将呼叫传送到以IP-为基础的网络那样。SIP对谈话信号、使用者的局部化和登记负责。服务质量、目录存取和会议对话过程由其它协议负责。
发信号之后开始传输音频信号(4)。在这里要立即指出,上面提到的问题不只是在通电话时才出现,而是在所谓的多媒体连接时普遍存在。在此指的例如有视频—或电视图象传输、声音传输、电视电话等,在这些情况时将一个实时数据流经过因特网NET传输到用户的一个终端上并在那里输出。在这种情况也没有可能或只是在很专门的情况才可能,不中断数据流经过其传送的连接就更换终端,然后再由新的终端重新建立连接。
如果在台式计算机PEC与客户计算机CLI之间的示范性连接时涉及的是电视电话,还要将视频数据附加给音频数据传输(4)。此时将连接用一个相应的连接协议rtp,例如用RTP-协议(Real TimeProtocol)办理。
RTP-协议是由IETF的Audio-Video Transport Group开发的,是H.323的组成部分。它位于应用层上,并能办理以网络为基础的视频-或音频通信。为了区别于媒体,RTP在不同的编码形式之间进行区分,使传输的数据能与应用无关地去使用。Real-Time-Protocol(RTP)是建立在一个端到端连接的基础上,并支持Multicast-连接,也支持Unicast-连接。它借助于一个16位的顺序编号识别和纠正缺少的、重份的或以错误次序接收的数据包。为了使音频和视频同步,协议应用一个计时标记,该标记是由当时的RTP-Profil预先规定的。为了能明确无误地识别出数据源,RTP-标题有个32位长的数据区Synchronisation Source Identifier(SSRC)。在第二个可选的32-位-数据区中,即在Content Source Identifier(CSRC)中,将SSCR的源地址记录下来。源的状态信息由RTCP-协议通过周期性的发送回答,RTCP-协议是RTP的组成部分。
如果用户更换他的终端PEC,通信代理sof跟随他之后对新的终端PAL有个相应的要求。为了使通信在代理sof的移动期间直至初始化例行程序终止不中断,必须使事情有个专门的顺序。首先代理sof本身复制到新的终端PAL上,并确立所有必要的步骤(寻找诸如声卡、摄象机等音频-和视频装置,检查所找到的装置,准备好和预定诸如SIP-或RTP-端口那样的通信端口),以便能转换信号。原件-代理此时一直保持在第一个终端PEC上,直至它圆满完成并一直维持与对方站CLI的连接。新的代理sof,即原始代理的克隆结束它的初始化之后,它将继续进行的谈话传输到新的终端PAL(5)。之后,老的代理结束它的服务,新的代理sof是老的代理一个雷同的拷贝,将服务和谈话连接继续下去。以这种方式,能可靠地阻止在连接中出现中断。仔细看来,新的代理本身借助于一个SIP-信息(REINVITE)将进行着的谈话传输向自己。之后,它终结“老的”代理,老的代理还只要考虑也去将“老的”从代理终结。
在实现传送之后,台式计算机PEC不再纳入到通信中;通信直接从手持式-计算机PAL运行到对方站CLI,好象将通信是直接在两个终端PAL、CLI之间接收似的。
如从图4中获悉,此时,“新”代理的发信号,用对方站CLI相应的软件再次经过SIP-协议进行,随后在通信范围内的数据传输比如经过RTP协议如上面实施的那样进行。
如果在结束谈话(6)之后,一个用户终止应用或关闭终端PAL,而没有将代理sof再一次传输到另一个终端上,则将软件状态发回到代理服务器SSE,(7)代理被销毁,将最后的现实代理状态存储(8)在代理服务器上。通过应用一个诸如JAVA那样统一的运行时间环境,终端达到了一个完全的独立性。唯一的前提是,软件代理相应的运行时间环境要有在终端上运行的能力。能将当时的代理毫无问题地在不同的终端之间传输,特别也能在这些终端上运行。相同的软件因此能在诸如个人计算机(PC)、袖珍型计算机、手持式计算机、移动无线电装置等最不同的装置上运行。一般将因特网协议作为网络层协议(Network Layer Protocol)应用,到IP-网络上的连接能是固定的或移动的(无绳)。除了上面详细讲述的在两个终端之间“移交”多媒体连接的功能性外,也有可能用本发明以简单的方式,在任意一个个人终端上实施电话簿、地址表和其它图形或调节的管理,此时这些改变对所有个人终端都具有其有效性。

Claims (18)

1.更新不同终端(PEC、PAL)上软件(sof)的方法,这些终端连接在一个通信网络(NET)上,它们能经过该通信网络互相通信,
其特征在于:
a)按照要求至少将在一个终端(PEC)上运行软件(sof)的一个软件状态,经过通信网络(NET)传输到第二个终端(PAL),和
b)设置一个在第二个终端(PAL)上运行的、与第一个终端(PEC)上传输的现实软件状态一致的软件(sof),并在第二个终端(PAL)上以最后在第一个终端(PEC)上的现实状态继续运行。
2.如权利要求1的方法,
其特征在于:
将与第一个终端(PEC)上的软件(sof)一致的第二个终端(PAL)上的软件从一个存储位置(PAL、SSE、SSD)传输到第二个终端(PAL)上。
3.如权利要求2的方法,
其特征在于:
将一个软件服务器(SSE)作为软件(sof)的存储位置应用。
4.如权利要求2的方法,
其特征在于:
将软件(sof)最初在其上运行的终端(PEC)作为软件(sof)的存储位置应用。
5.如权利要求1至4之一的方法,
其特征在于:
在步骤a)中将软件状态封装到一个将被传送到第二个终端(PAL)的信息中。
6.如权利要求1至5之一的方法,
其特征在于:
将一个代理软件作为软件应用。
7.如权利要求5或6的方法,
其特征在于:
信息还包括有软件(sof)的存储位置,或在软件代理(sof)的情况包括至少主类别的名称和代理的类别定义存储位置。
8.如权利要求1至7之一的方法,
其特征在于:
第二个终端(PAL)经过通信网络(NET)向第一个终端(PEC)提出要求。
9.如权利要求1至8之一的方法,
其特征在于:
将要求用软件(sof)在其上运行的第一个终端(PEC)取消。
10.如权利要求1至9之一的方法,
其特征在于:
在要求时将终端(PAL)的一个明确无误的地址传送到软件(sof),软件(sof)和软件状态要到该终端上传输。
11.如权利要求10的方法,
其特征在于:
将终端(PAL)的一个IP-地址作为地址应用。
12.如权利要求1至11之一的方法,
其特征在于:
要求达到之后,将在第一个终端(PEC)上的软件(sof)停在它的运行中,将这个软件或软件状态传输到第二个终端(PAL)上。
13.如权利要求12的方法,
其特征在于:
用软件的现实软件状态产生软件的一个拷贝,将这个拷贝传输到第二个终端(PAL)上。
14.如权利要求13的方法,
其特征在于:
当软件在第二个终端(PAL)上进行一个有条理的运行时,将在第一个终端(PEC)上的软件(sof)运行结束。
15.如权利要求1至14之一的方法,
其特征在于:
在关闭所有终端(PEC、PAL)时或去活所有终端(PEC、PAL)的软件(sof)时,将这些或将最后的现实状态经过通信网络(NET)传送到一个连接到通信网络(NET)的软件服务器(SSE),由它存储起来。
16.如权利要求1至15之一的方法,
其特征在于:
在终端(PEC、PAL)和软件服务器(SSE)上为软件(sof)应用相同的运行时间环境。
17.如权利要求16的方法,
其特征在于:
将JAVA作为运行时间环境应用。
18.如权利要求1至17的方法,
其特征在于:
软件是实现语音连接和/或数据连接的软件。
CNA028197542A 2001-10-04 2002-10-01 更新不同终端上软件的方法 Pending CN1564979A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10148875.0 2001-10-04
DE10148875A DE10148875A1 (de) 2001-10-04 2001-10-04 Verfahren zum Aktuellhalten von Software auf verschiedenen Endgeräten

Publications (1)

Publication Number Publication Date
CN1564979A true CN1564979A (zh) 2005-01-12

Family

ID=7701318

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA028197542A Pending CN1564979A (zh) 2001-10-04 2002-10-01 更新不同终端上软件的方法

Country Status (6)

Country Link
US (1) US20040237078A1 (zh)
EP (1) EP1438658A2 (zh)
CN (1) CN1564979A (zh)
BR (1) BR0213061A (zh)
DE (1) DE10148875A1 (zh)
WO (1) WO2003032156A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102282541A (zh) * 2009-01-19 2011-12-14 瑞典爱立信有限公司 移动专用软件包代码更新
CN103279396A (zh) * 2012-01-16 2013-09-04 国际商业机器公司 用于向次级设备传送应用和会话状态的系统和方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7839987B1 (en) 2001-11-01 2010-11-23 Callwave, Inc. Methods and systems for creating a dynamic call log and contact records
US7818734B2 (en) 2005-01-21 2010-10-19 Callwave, Inc. Methods and systems for transferring data over a network
US7965825B1 (en) 2005-05-02 2011-06-21 Callwave, Inc. Methods and systems for transferring voice messages and faxes over a network
JP4548307B2 (ja) * 2005-10-31 2010-09-22 ソニー株式会社 分離型処理装置及びそのソフトウエアの版更新方法
US8121626B1 (en) 2006-06-05 2012-02-21 Callwave, Inc. Method and systems for short message forwarding services
US8601460B2 (en) * 2007-07-25 2013-12-03 International Business Machines Corporation Systems and methods for firmware cloning
JP5675807B2 (ja) * 2009-08-12 2015-02-25 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ 動的なrtcpリレー

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167253A (en) * 1995-01-12 2000-12-26 Bell Atlantic Network Services, Inc. Mobile data/message/electronic mail download system utilizing network-centric protocol such as Java
US6161193A (en) * 1998-03-18 2000-12-12 Lucent Technologies Inc. Methods and apparatus for process replication/recovery in a distributed system
US6614781B1 (en) * 1998-11-20 2003-09-02 Level 3 Communications, Inc. Voice over data telecommunications network architecture
US6529504B1 (en) * 1999-06-02 2003-03-04 Sprint Communications Company, L.P. Telecommunications service control point interface
DE10014390C2 (de) * 2000-03-23 2002-02-21 Siemens Ag Hochverfügbares Rechnersystem und Verfahren zur Umschaltung von Bearbeitungsprogrammen eines hochverfügbaren Rechnersystems

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102282541A (zh) * 2009-01-19 2011-12-14 瑞典爱立信有限公司 移动专用软件包代码更新
US8667479B2 (en) 2009-01-19 2014-03-04 Telefonaktiebolaget L M Ericsson (Publ) Mobile specialized software code updated
CN102282541B (zh) * 2009-01-19 2014-06-25 瑞典爱立信有限公司 移动专用软件包代码更新
CN103279396A (zh) * 2012-01-16 2013-09-04 国际商业机器公司 用于向次级设备传送应用和会话状态的系统和方法
CN103279396B (zh) * 2012-01-16 2016-01-27 国际商业机器公司 用于向次级设备传送应用和会话状态的系统和方法

Also Published As

Publication number Publication date
BR0213061A (pt) 2004-09-28
US20040237078A1 (en) 2004-11-25
WO2003032156A2 (de) 2003-04-17
WO2003032156A3 (de) 2003-12-31
DE10148875A1 (de) 2003-04-24
EP1438658A2 (de) 2004-07-21

Similar Documents

Publication Publication Date Title
US7688805B2 (en) Webserver with telephony hosting function
US6934756B2 (en) Conversational networking via transport, coding and control conversational protocols
US6801604B2 (en) Universal IP-based and scalable architectures across conversational applications using web services for speech and audio processing resources
US6876647B2 (en) Dynamic priority adjustment in a real time streaming engine
WO2005109182A3 (en) Methods and apparatus for gifting over a data network
CN104902017B (zh) 一种支持QoS的多屏同步显示的远程互动方法
Brown Supporting user mobility
CN1668038A (zh) 用于一个可扩展实时协作系统的结构
WO2005070115A3 (en) Proprietary protocol for voip based features
EP1878201B1 (en) System, method and engine for playing smil based multimedia contents
CN101322385A (zh) 对媒体服务器中的分布式媒体资源进行负载平衡和切换
CN103636273A (zh) 用于改进多订户身份模块设备上的接收可用性的方法和装置
CN1564979A (zh) 更新不同终端上软件的方法
CN104041064A (zh) 无线显示设备的最小认知模式
CN1921480A (zh) 一种实现应用业务的方法及系统
CN1741469A (zh) 用于收集并分配参与者标识数据的系统和方法
JP2010003288A (ja) ネットワーク基盤のサービス提供システム及び方法
CN1518290A (zh) 可扩展通信控件
CN1606312A (zh) 与sip和web系统协同工作的服务提供系统及其方法
CN1765101A (zh) 用于为移动终端提供多媒体和交互业务的客户机-服务器系统及其方法
US20070133511A1 (en) Composite services delivery utilizing lightweight messaging
CN113383322A (zh) 信息处理装置和信息处理方法
ZA200605881B (en) Method and system for transmitting useful data between telecommunication devices
CN117440123A (zh) 音视频呼叫方法及装置
CN1866928A (zh) 便携式终端、流传输通信系统、方法和程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication