[go: up one dir, main page]

CN1309787A - Changing the functionality of modular terminals in wireless networks - Google Patents

Changing the functionality of modular terminals in wireless networks Download PDF

Info

Publication number
CN1309787A
CN1309787A CN99808772.6A CN99808772A CN1309787A CN 1309787 A CN1309787 A CN 1309787A CN 99808772 A CN99808772 A CN 99808772A CN 1309787 A CN1309787 A CN 1309787A
Authority
CN
China
Prior art keywords
program
terminal
code
network
type
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
CN99808772.6A
Other languages
Chinese (zh)
Inventor
A·阿奎隆
S·维勒哈德松
H·哈尔
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN1309787A publication Critical patent/CN1309787A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

The functionality of the portable wireless device can be changed by providing a program written in a language such as Java and generating a verifiable intermediate code (bytecode). The intermediate code is translated into machine code at a node in the network before being transmitted to the wireless device on which it is to be executed. There may be multiple variations of machine code for each program that are translated using translators for different types of terminals. This allows different terminal types to use the same source code and to divide responsibility between software providers, terminal providers and network operators involved in changing the functionality of the device to perform different functions, i.e. developing the source code of the program, compiling the source code into byte code, translating the byte code into machine code and transmitting the machine code to the terminal on which it is to run.

Description

改变无线网络中模块终端的功能性Changing the functionality of modular terminals in wireless networks

本发明涉及业务的提供,并具体涉及在无线网络中向手持或便携式终端提供业务。The present invention relates to the provision of services, and in particular to the provision of services to hand-held or portable terminals in a wireless network.

对用于各种目的的移动电话的使用正在增加。许多新类型的移动或便携式终端得到了推广,例如智能电话、通信便笺、个人数字助理、智能寻呼机等等。带有增加的新功能的终端正在被不断地开发出来。但是,对现有移动终端的功能进行升级的可能性受到了现有技术的限制。The use of mobile phones for various purposes is increasing. Many new types of mobile or portable terminals have been promoted, such as smart phones, messenger notes, personal digital assistants, smart pagers, and the like. Terminals are constantly being developed with new functions added. However, the possibilities for upgrading the functionality of existing mobile terminals are limited by the prior art.

因此,存在这样的希望,即能够增加现有便携式终端的功能并调整该功能以符合用户的需要。对便携式终端的总体要求是尽可能的小和轻巧。这限制了可用的存储器空间,也限制了处理速度和能力。其它因素,例如有限的电池容量以及对冷却的需要也是必须考虑到的。Accordingly, there is a desire to be able to increase the functionality of existing portable terminals and adapt the functionality to suit the needs of users. The general requirement for portable terminals is to be as small and lightweight as possible. This limits the memory space available, as well as processing speed and power. Other factors, such as limited battery capacity and the need for cooling must also be considered.

当前便携式设备的发展是试图把系统的智能放在便携式设备本身中而不是放在服务器中,其目的是使用户的交互更快并且减少传递信息和功能所需的带宽。但是,在不致太多地增加便携式设备的尺寸和重量的情况下能够容纳在便携式设备中的存储器数量和处理器容量是有限的。因此,在设计移动终端时,在终端的功能性需要和它的尺寸和重量等之间必须找到一个平衡点。在确定什么存储在移动终端中而什么存储在网络的节点中时,在便携式终端所需要的处理器容量和存储器空间与在网络和便携式终端间传输程序及/或信息所需的带宽之间也必须找到平衡点。Current developments in portable devices attempt to place the intelligence of the system in the portable device itself rather than in the server, with the goal of making user interaction faster and reducing the bandwidth required to deliver information and functionality. However, there is a limit to the amount of memory and processor capacity that can be accommodated in a portable device without increasing the size and weight of the portable device too much. Therefore, when designing a mobile terminal, a balance must be found between the functional requirements of the terminal and its size, weight, etc. In determining what is stored in the mobile terminal and what is stored in the nodes of the network, there is a trade-off between the processor capacity and memory space required by the portable terminal and the bandwidth required to transfer programs and/or information between the network and the portable terminal. A balance has to be found.

此外,存在着大量不同的终端类型,它们使用不同的硬件和软件平台。因此,希望程序要能在若干不同的平台上都是可执行的。Furthermore, there are a large number of different terminal types using different hardware and software platforms. Therefore, it is desirable for a program to be executable on several different platforms.

本发明的一个目的是使得与正常可能的情况相比,在便携式设备中相对于该便携式设备的处理器能力和存储器空间能够去执行更加先进或更加需要的程序。It is an object of the invention to enable more advanced or more demanding programs to be executed in a portable device than is normally possible with respect to the processor power and memory space of the portable device.

本发明的一个目的是允许程序能在一个具有有限的处理器能力及/或存储器空间的小型设备中执行而又不降低处理速度。It is an object of the present invention to allow programs to be executed in a small device having limited processor power and/or memory space without reducing the processing speed.

本发明的另一个目的是能够在不同类型的手持设备中,尤其是适合用于蜂窝网络的手持设备中,增加新的功能、使功能升级、或完全置换功能包。Another object of the present invention is to be able to add new functions, upgrade functions, or completely replace function packs in different types of handheld devices, especially those suitable for use in cellular networks.

本发明还有一个目的是能够执行不必永久地存储在终端中的程序。Yet another object of the invention is to be able to execute programs that do not have to be permanently stored in the terminal.

按照本发明,这些目的是通过改变网络中经无线连接而联系的移动终端的功能性的一种方法而达到的,According to the invention, these objects are achieved by a method of changing the functionality of mobile terminals connected via wireless connections in a network,

所说的功能性是由同一种编程语言写成的程序而实现的,它的源代码可以编译成一种中间代码,所说的中间代码是可执行和可验证的,said functionality is realized by a program written in the same programming language, whose source code can be compiled into an intermediate code, said intermediate code being executable and verifiable,

该方法包括下列步骤:The method includes the following steps:

-利用与至少一种终端类型的硬件和软件环境相关的至少一种翻译程序将上述的程序翻译成机器代码;- translating said program into machine code using at least one translation program associated with the hardware and software environment of at least one terminal type;

-将该翻译后的程序下载到上述的移动终端。-downloading the translated program to the aforementioned mobile terminal.

这些目标也通过用于在包括多个主机和若干不同类型的终端的网络中提供程序的一种设备来完成,至少某些上述终端是由无线连接而联系的,上述程序是用一种编程语言实现的,它的源代码可以编译成一种中间代码,所说的中间代码是可执行和可验证的,并可解释或翻译成为机器代码:These objects are also accomplished by an apparatus for providing a program in a network comprising a plurality of hosts and a number of different types of terminals, at least some of which are connected by wireless connections, said program being written in a programming language implemented, its source code can be compiled into an intermediate code that is executable and verifiable, and can be interpreted or translated into machine code:

所述的设备包括:Said equipment includes:

-用于存储机器代码形式的程序的存储器装置,所述存储的方式应使得程序可以在网络中的至少一种类型的客户终端中执行,- memory means for storing the program in machine code form in such a way that the program can be executed in at least one type of client terminal in the network,

-用于转移程序到至少一个客户终端的装置,所述程序为机器代码的形式。- means for transferring the program to at least one client terminal, said program being in the form of machine code.

按照优选实施例,上述设备还包括至少一个用于中间代码的翻译程序,所说的翻译程序适应于由网络中的终端所使用的至少一种硬件和软件环境。According to a preferred embodiment, the aforementioned device also comprises at least one translation program for the intermediate code, said translation program being adapted to at least one hardware and software environment used by the terminals in the network.

按照这个实施例,该方法还包括在存储程序之前,使用在主机中的至少一个翻译程序翻译所说的程序的步骤。According to this embodiment, the method further comprises the step of translating said program using at least one translation program in the host computer before storing the program.

程序可以自动地或根据来自终端用户的请求而下载到终端上。Programs can be downloaded to the terminal automatically or upon request from the end user.

该方法对于蜂窝电信网络中的便携式终端是特别有用的。The method is particularly useful for portable terminals in cellular telecommunication networks.

按照优选实施例,要下载到终端去的合适的程序变体是在终端类型的基础上确定的,例如,在终端的识别码的基础上确定。According to a preferred embodiment, the suitable program variant to be downloaded to the terminal is determined on the basis of the type of terminal, eg on the basis of the terminal's identification code.

这些目的也是通过适用于无线通信的一种便携式终端来实现的,该终端含有一个内核,被设计成接收机器代码形式的程序及/或程序部分,并在操作中安装所收到的程序。These objects are also achieved by a portable terminal suitable for wireless communication, comprising a kernel designed to receive programs and/or program parts in machine code form and to install the received programs in operation.

该便携式终端可以设计成向用户提供有关可利用的程序的相关树的信息。The portable terminal may be designed to provide the user with information about the correlation tree of available programs.

该便携式终端还可以设计成向网络中的适当节点通报它的类型和它目前正在运行的预约类型,以及其它信息,例如当前它的电池状态。The portable terminal can also be designed to inform the appropriate nodes in the network of its type and the type of subscription it is currently running, as well as other information, such as its current battery status.

按照优选实施例,按照本发明的便携式终端还接收并解释关于程序或程序块是否应该存储在便携式终端中的信息。According to a preferred embodiment, the portable terminal according to the present invention also receives and interprets information on whether a program or a program block should be stored in the portable terminal.

上述类型的最常用的语言目前是Java。其它的例子有LISP、SmallTalk、和Erlang。对于某种类型的处理器,Java程序的源代码是不进行编译以形成机器代码的。它会被编译成虚拟机所用的短的伪指令“字节代码”。当程序要执行时,一般是将字节代码下载到要运行它的终端上然后将其转换成用于该终端的机器代码。在这种方式下,用Java这样的解释性语言所写的程序可以在任何类型的具有用于该语言的翻译程序或解释程序的计算机上执行。The most commonly used language of the above types is currently Java. Other examples are LISP, SmallTalk, and Erlang. For certain types of processors, the source code of a Java program is not compiled to form machine code. It is compiled into short pseudo-instruction "byte codes" used by the virtual machine. When a program is to be executed, the bytecode is typically downloaded to the terminal on which it will be run and then converted into machine code for that terminal. In this way, programs written in an interpreted language like Java can be executed on any type of computer that has a translator or interpreter for that language.

Java主要是用于因特网上的应用程序的,但是解释性语言的优点也使它们可以用在蜂窝网络中。Java程序通常要比相应的机器代码的程序更小,因此适合于移动终端,因为移动终端的可用存储空间是受限制的。越来越多的移动终端支持Java应用程序。Java is primarily used for applications on the Internet, but the advantages of interpreted languages allow them to be used in cellular networks as well. Java programs are generally smaller than corresponding machine code programs, and thus are suitable for mobile terminals because the available storage space of mobile terminals is limited. More and more mobile terminals support Java applications.

在便携式终端中利用像Java这样的解释性语言特别可行,因为它们的存储空间是有限的。在终端之外对程序进行翻译也减少了对处理速度和功率的要求,而处理速度和功率在便携式终端中也是受限的。Utilizing interpreted languages like Java is particularly feasible in portable terminals because their memory space is limited. Translating programs outside of the terminal also reduces the processing speed and power requirements, which are also limited in portable terminals.

本发明的一个主要优点是它使得执行那些涉及改变设备的功能性的不同功能的责任能够被划分。例如,软件制造商可以负责开发程序的源代码和将源代码编译成字节代码。移动终端的制造商则可以负责将字节代码翻译成机器代码,而网络操作人员则可以负责将机器代码转移到要运行该代码的终端上。A major advantage of the invention is that it enables the division of responsibility for performing different functions that involve changing the functionality of the device. For example, a software manufacturer may be responsible for developing the program's source code and compiling the source code into byte code. The manufacturer of the mobile terminal can be responsible for translating the byte code into machine code, and the network operator can be responsible for transferring the machine code to the terminal on which the code will be run.

解释性语言(例如Java)有许多优点:Interpreted languages such as Java have many advantages:

-它们使得部分代码动态地加载和卸载成为可能从而减少了所需的空间量,- they make it possible to load and unload parts of code dynamically thus reducing the amount of space required,

-它们使交换所述软件的某些部分变得容易,因为比起其它程序语言来说程序的动态链接更加容易,以及- they facilitate the exchange of parts of said software, since dynamic linking of programs is easier than in other programming languages, and

-它们使得同一字节代码能够在不同处理器上和不同系统结构下运行,从而使某一特定功能只需编程一次。- They enable the same byte code to run on different processors and under different system architectures, so that a specific function only needs to be programmed once.

最后两点对于所有便携式设备都是有用的,而且特别是对那些能和某种无线网络通信的便携式设备有用,因为它们将能够利用网络所提供的所有类型的业务。同样,下载新的程序来使软件升级也变得容易,这也使终端不致因功能的升级或者开发了新的业务而变得过时。这也将使从一个运营者改变到另一个运营者变得容易,在这种情况下新运营者的业务包将取代老的包。同样也可以看到,由移动运营者所提供的业务可以根据,例如,一天中的时间、在区域中基站的出错状态,以及与因特网相关的业务的可利用性等等而得以改变。The last two points are useful for all portable devices, but especially for those that can communicate with some kind of wireless network, because they will be able to take advantage of all types of services that the network offers. Likewise, downloading a new program makes it easy to upgrade the software, which also prevents the terminal from becoming obsolete due to function upgrades or new services being developed. It will also make it easy to change from one operator to another, in which case the new operator's business package will replace the old one. It can also be seen that the services offered by mobile operators can vary according to, for example, the time of day, the error status of base stations in the area, the availability of Internet-related services, and the like.

图1是应用按照本发明的方法的一个网络的简化图。Figure 1 is a simplified diagram of a network to which the method according to the invention is applied.

图2是应用按照本发明的方法的一个网络的更加完整的图。Figure 2 is a more complete diagram of a network applying the method according to the invention.

图3是按照本发明使一个新的业务能在网络中可用的过程的流程图。Figure 3 is a flowchart of the process of making a new service available in the network according to the present invention.

图4是按照本发明自动地将一个新的业务下载到终端的过程的流程图。Fig. 4 is a flowchart of the process of automatically downloading a new service to a terminal according to the present invention.

图5是按照本发明根据用户请求将一个新的业务下载到终端的过程的流程图。Fig. 5 is a flow chart of the process of downloading a new service to the terminal according to the user's request according to the present invention.

图6是按照本发明如何将责任划分到不同的参与者的概观。Figure 6 is an overview of how responsibilities are divided among the different actors according to the invention.

图1是应用按照本发明的方法的一个网络的简化图。便携式终端1通过基站3经由一个空中接口连接到移动网。基站连接到控制单元5,后者又连接到网络(未示出)。控制单元5控制基站,并实施资源分配功能和其它功能,例如在移动电信网中的交换功能。有一个程序提供单元9处于控制单元5中或与它相关联。Figure 1 is a simplified diagram of a network to which the method according to the invention is applied. The portable terminal 1 is connected to the mobile network via a base station 3 via an air interface. The base stations are connected to a control unit 5 which in turn is connected to a network (not shown). The control unit 5 controls the base stations and performs resource allocation functions and other functions, such as switching functions in the mobile telecommunication network. There is a program delivery unit 9 in or associated with the control unit 5 .

控制单元5连接到一个或多个硬件提供商的主机7,后者又连接到例如属于软件供应商的主机8。一般说来,软件供应商的主机8是用来产生源代码和把源代码编译成字节代码的。然后字节代码被转移到硬件供应商的主机7,字节代码在该主机中被翻译成为机器代码。为此目的,每个硬件供应商的主机7中包括一个或多个翻译程序,用于至少特定的硬件供应商的各种类型的终端。在硬件供应商的主机7和软件供应商的主机8中,两者在正常情况下都会以本领域已知的方式来实施各种测试活动。The control unit 5 is connected to one or more hosts 7 of a hardware provider, which in turn are connected to a host 8 belonging, for example, to a software provider. Typically, the software provider's mainframe 8 is used to generate source code and compile the source code into byte code. The byte code is then transferred to the hardware vendor's host computer 7 where it is translated into machine code. For this purpose, each hardware vendor host computer 7 includes one or more translation programs for each type of terminal of at least a particular hardware vendor. In the hardware provider's mainframe 7 and the software provider's mainframe 8, both normally carry out various testing activities in a manner known in the art.

在上面的讨论中,把各种功能划分到硬件供应商的主机7、软件供应商的主机8、和控制单元5或程序提供单元9主要是为了分清所实施的不同功能而进行。当然,主机7和8也可以是一台主机,在其中源代码既被编译又被翻译。另外,翻译功能也可以在程序提供单元9中实现,在这种情况下程序提供单元必须包括至少一种翻译程序11。In the above discussion, the division of various functions into the host 7 of the hardware supplier, the host 8 of the software supplier, and the control unit 5 or program providing unit 9 is mainly done to distinguish the different functions implemented. Of course, the hosts 7 and 8 could also be a host in which the source code is both compiled and translated. In addition, the translation function can also be implemented in the program supply unit 9 , in which case the program supply unit must include at least one translation program 11 .

程序提供单元9包括多个程序13、15。每个程序有多种变体13a、13b、13c、15a、15b、15c,它们由不同的翻译程序11翻译以便在不同类型的终端1中执行。The program providing unit 9 includes a plurality of programs 13 , 15 . Each program has several variants 13a, 13b, 13c, 15a, 15b, 15c which are translated by different translation programs 11 for execution in different types of terminals 1 .

或者,仅仅存储字节代码。在这种情况下,当程序13、15要被下载到便携式终端1时,这个程序13、15由适当的翻译程序11翻译以便可以在终端1上执行,所得的机器代码则传送到终端1。这个过程将结合图4和5作详细的讨论。程序提供单元9或者控制单元5中的任何一个最好包括一个选择单元,它包括用来确定要传送给终端1的程序13、15的合适变体13a、13b、13c、15a、15b、15c的逻辑。在图1中这样一个选择单元17是示于程序提供单元中的。Or, just store the byte code. In this case, when a program 13, 15 is to be downloaded to the portable terminal 1, this program 13, 15 is translated by an appropriate translation program 11 so as to be executable on the terminal 1, and the resulting machine code is transferred to the terminal 1. This process will be discussed in detail in conjunction with FIGS. 4 and 5 . Either one of the program providing unit 9 or the control unit 5 preferably includes a selection unit, which includes options for determining suitable variants 13a, 13b, 13c, 15a, 15b, 15c of the programs 13, 15 to be transmitted to the terminal 1. logic. In FIG. 1 such a selection unit 17 is shown in the program providing unit.

图2是实施按照本发明的方法的一种网络的更加广泛的表示。Figure 2 is a more general representation of a network implementing the method according to the invention.

这个网络可以包括几个网络,例如电信网络21和数据网络23,后者可以是例如因特网。在图2中,电信网络21是一个蜂窝电信网络。电信网络21包括一个或多个通信单元25,例如基站,它们通过控制节点26连接到网络上,控制节点控制通信单元25的功能,也可能控制其它功能,例如网络中的交换功能。通信单元25适用于与网络中的终端27进行无线通信。This network may comprise several networks, such as a telecommunications network 21 and a data network 23, which may be, for example, the Internet. In Figure 2, the telecommunications network 21 is a cellular telecommunications network. The telecommunications network 21 comprises one or more communication units 25, such as base stations, connected to the network via a control node 26, which controls the functions of the communication units 25 and possibly other functions, such as switching functions in the network. The communication unit 25 is adapted to wirelessly communicate with a terminal 27 in the network.

数据网络23也包括多个终端29、31,某些终端29被用来提供源代码形式或字节代码形式的程序。其它终端31则可以检索各种程序,这些程序按照本发明而成为可供使用的。The data network 23 also includes a plurality of terminals 29, 31, some of which are used to provide programs in source code or byte code form. Other terminals 31 can retrieve various programs that have become available according to the present invention.

控制节点26也含有可供下载到蜂窝网络21中的终端27上去的各种程序。在优选实施例中,程序的经过翻译的版本被下载到控制节点26并被存储在那里。程序也可以以字节代码的形式下载到控制节点26,在控制节点26中翻译然后作为机器代码存储在那里。程序也可以下载到控制节点26中并以字节代码的形式存储。在后一种情况下,当程序要下载到终端时字节代码必须翻译成为机器代码。The control node 26 also contains various programs that can be downloaded to the terminals 27 in the cellular network 21 . In the preferred embodiment, translated versions of the programs are downloaded to the control node 26 and stored there. Programs may also be downloaded to the control node 26 in byte code form, translated in the control node 26 and then stored there as machine code. Programs can also be downloaded into the control node 26 and stored in byte code form. In the latter case, the byte code must be translated into machine code when the program is to be downloaded to the terminal.

如所理解的那样,连接到任一网络21、23的任何终端27、31也可以从任一网络中的任何主机25、29中下载程序,假定在终端27、29、31或在网络中这样做所需的功能是能够得到的话。As will be understood, any terminal 27, 31 connected to either network 21, 23 can also download programs from any host computer 25, 29 in either network, assuming such Do the desired functionality is able to get words.

在本实施例中,在每个控制节点26中都示出了一个选择单元33。选择单元33包括用于选择要传送到终端27上去的程序的合适变体的逻辑。如果翻译好的程序被存储,则选择单元还可能包括或可以访问一个清单,该清单是用于每个终端类型及/或预约的程序的适当变体的清单。如果存储的是字节代码而且程序是在要传送时才翻译的,那么选择单元可能包含或可以访问一个清单,该清单规定了为了传送到一个特定类型的终端及/或预约应该用那一种翻译程序。该清单当然还可以表明某一特定的终端类型及/或预约不应该接收某一程序的任何变体。In this embodiment, one selection unit 33 is shown in each control node 26 . The selection unit 33 comprises logic for selecting a suitable variant of the program to be transferred to the terminal 27 . If translated programs are stored, the selection unit may also include or have access to a list of appropriate variants of the program for each terminal type and/or subscription. If byte code is stored and the program is translated at the time of transmission, the selection unit may contain or have access to a list specifying which type of translation program. The list can of course also indicate that a particular terminal type and/or subscription should not receive any variant of a certain program.

图3是使一个新程序可以在网络中供使用所采取的步骤的流程图。Figure 3 is a flowchart of the steps taken to make a new program available in the network.

步骤S31:用Java或别的解释性语言编写业务程序的源代码。Step S31: Write the source code of the business program in Java or other interpreted languages.

步骤S32:在步骤S31中产生的源代码被编译以产生字节代码。这一步骤通常要包括安全检查、差错检测、功能测试、调试等等。Step S32: The source code generated in step S31 is compiled to generate byte code. This step usually includes security checks, error detection, functional testing, debugging, and more.

步骤S33:在步骤S32中产生的字节代码被下载到服务器,字节代码存储在那里。这一步骤一般也应包括安全检查。Step S33: The bytecode generated in step S32 is downloaded to the server, where the bytecode is stored. This step should generally also include security checks.

步骤S34:业务程序被各个可供使用的翻译程序翻译。当然,如果业务程序并不要在所有类型的终端上运行,那么当然它们只需由相关的翻译程序翻译。Step S34: The business program is translated by each available translation program. Of course, if business programs are not to be run on all types of terminals, then of course they only need to be translated by the relevant translation programs.

步骤S35:由步骤S34所得到的机器代码被存储在某处,从那里它可以被下载到便携式终端或其它设备。Step S35: The machine code resulting from step S34 is stored somewhere, from where it can be downloaded to a portable terminal or other device.

如果控制节点26的存储空间是受限的,就不可能存储程序的多种不同的翻译版本。在这种情况下,程序可以用字节代码的形式存储。然后字节代码的翻译就在它被下载到终端的时候进行,也就是说,步骤S34和S35是不需要的。当然,也可以在程序下载到存储它们的服务器之前先进行解释,也就是说,步骤S33和步骤S34的顺序可以互换。If the storage space of the control node 26 is limited, it is not possible to store many different translations of the program. In this case, the program can be stored in the form of byte code. The translation of the byte code is then performed when it is downloaded to the terminal, that is to say, steps S34 and S35 are not required. Of course, it is also possible to explain the programs before they are downloaded to the server storing them, that is to say, the order of step S33 and step S34 can be interchanged.

图4是当业务自动地下载到便携式设备时所实施的步骤的流程图。Figure 4 is a flowchart of the steps performed when a service is automatically downloaded to a portable device.

步骤S41:系统通知用户,可能希望下载一个程序并请求确认。这可能是由于,例如一个新程序或程序的新版本已经可以得到,或者由于用户选择了一种功能,该功能需要一个在用户终端中没有找到的程序。Step S41: The system notifies the user that it may wish to download a program and asks for confirmation. This may be due to, for example, a new program or a new version of the program being available, or because the user has selected a function which requires a program which is not found in the user's terminal.

步骤S42:用户接受或拒绝对新的程序版本的下载。Step S42: The user accepts or rejects the download of the new program version.

步骤S43:如果用户接受下载,则选择适合于该终端类型的程序变体并且使程序下载。过程结束。Step S43: If the user accepts the download, select a program variant suitable for the terminal type and cause the program to download. The process is over.

图5是当根据用户的请求要下载一个业务到便携式终端以执行或存储一个程序时所执行的步骤的流程图。FIG. 5 is a flow chart of steps performed when a service is to be downloaded to the portable terminal to execute or store a program according to the user's request.

步骤S51:用户启动在要下载程序的设备和存有该程序的服务器之间的连接。这可以用本领域中任何已知的方法通过空中接口或有线连接来实现。Step S51: The user initiates a connection between the device to download the program and the server storing the program. This can be accomplished via an air interface or a wired connection by any means known in the art.

步骤S52:确定终端的类型。这最好由系统自动地进行,但如果需要的话,可以由用户来说明终端的类型。Step S52: Determine the type of the terminal. This is preferably done automatically by the system, but the type of terminal can be specified by the user if desired.

步骤S53:如果合适,则用户选择要下载的一个或多个程序。Step S53: If appropriate, the user selects one or more programs to be downloaded.

步骤S54:识别并下载在步骤S53中选择的一个或多个程序的相应的变体和版本。如果程序在服务器中是以字节代码存储的,则在下载时它们必须被合适的翻译程序翻译。过程结束。Step S54: Identify and download corresponding variants and versions of the one or more programs selected in step S53. If the programs are stored in byte code on the server, they must be translated by a suitable translation program when downloaded. The process is over.

程序可以暂时存储在终端中,一旦它们被执行就可被清除掉,或者也可以把程序存储在终端中。Programs can be temporarily stored in the terminal to be cleared once they are executed, or programs can be stored in the terminal.

在步骤S43和S54中选择合适的程序变体可以由通信单元来实施,或者这一信息可以从终端的供应商或软件供应商那里检索而得。The selection of the appropriate program variant in steps S43 and S54 can be performed by the communication unit, or this information can be retrieved from the supplier of the terminal or from the software supplier.

可以下载到某一特定终端的程序或者每种程序合适的变体可以根据终端的类型和预约的类型而确定。The programs that can be downloaded to a particular terminal, or suitable variants of each program, can be determined according to the type of terminal and the type of subscription.

有关预约类型的信息是在电话机中的芯片上找到的,并且在建立起连接时总是被传送给基站。这个芯片(例如在GSM中是SIM卡)在一般情况下是可移走的并且可以插入多个不同的终端中。因此,终端的类型不能根据芯片上的信息来确定。但是,不同类型的终端可能会运行不同的程序,并需要各种程序的不同变体,即使预约的类型相同也如此。Information about the type of subscription is found on a chip in the phone and is always transmitted to the base station when a connection is established. This chip (eg SIM card in GSM) is generally removable and can be inserted into a number of different terminals. Therefore, the type of terminal cannot be determined from the information on the chip. However, different types of terminals may run different programs and require different variations of each program, even for the same type of appointment.

终端类型既可以自动地也可以用人工识别来确定。在后一种情况下,例如,每种终端类型可以被分配给一个识别号码,每次要下载一个程序时就输入这个识别号码。The terminal type can be determined either automatically or by manual identification. In the latter case, for example, each terminal type can be assigned an identification number which is entered each time a program is to be downloaded.

在优选实施例中,终端类型是利用终端的识别码来确定的,这是一个识别无线终端的唯一的号码。在GSM中,举例说,可以使用国际移动站设备标识(IMEI)。这个号码(IMEI)是存储在每个移动终端中的,并且在这种情况下应该由移动终端传送到网络以指明它要接收的程序变体。也可以规定多种终端类型并能使每个终端将它的终端类型通知系统。为了使这种方法能操作,关于每一系列终端的需求信息必须由终端的制造商提供并存入每个主机中,或者在每当有需要时从制造商那里取回。这种信息可以采取翻译程序的说明书的形式,所说的翻译程序可用于每一终端类型。翻译程序可以由终端的制造商提供,在这种情况下就只需要识别合适的翻译程序。如果终端制造商并不提供翻译程序,那么必须详细规定对翻译程序的要求。In the preferred embodiment, the terminal type is determined using the terminal's identification code, which is a unique number that identifies the wireless terminal. In GSM, for example, the International Mobile Equipment Identity (IMEI) may be used. This number (IMEI) is stored in each mobile terminal and should in this case be transmitted by the mobile terminal to the network to indicate the program variant it is to receive. It is also possible to specify multiple terminal types and enable each terminal to inform the system of its terminal type. In order for this method to work, information about the requirements of each series of terminals must be provided by the manufacturer of the terminals and stored in each host, or retrieved from the manufacturer whenever required. This information may take the form of instructions for translation programs available for each terminal type. Translators may be provided by the terminal's manufacturer, in which case it is only necessary to identify a suitable translator. If the terminal manufacturer does not provide a translation program, the requirements for the translation program must be specified in detail.

要下载的程序也可能根据其它因素,例如小区的标识、运营者、一天中的时间或日期等来确定。The program to be downloaded may also be determined according to other factors, such as the identity of the cell, the operator, the time or date of the day, and the like.

程序的自动下载可以用于例如下列情况:Automatic downloading of programs can be used, for example, in the following situations:

-当一个程序包已经更新时,每个终端在程序包更新后第一次连接到网络时可以将该程序包下载到该终端上。- When a package has been updated, each terminal can download the package to the terminal when it connects to the network for the first time after the package update.

-当用户试图启动一种业务时,与这种业务相关联的程序可以被下载而无需用户首先明确地通知这一点。- When a user tries to start a service, the program associated with this service can be downloaded without the user explicitly notifying this first.

-某些程序可以根据地点、一天中的时间、运营者等而自动地下载。- Certain programs may be downloaded automatically depending on location, time of day, operator, etc.

在上面列出的第一种情况下,如果用户不希望接收新的软件,那么他/她应该有可能停止软件的下载。这可以发生在例如由于没有时间或者由于电池电压过低时。下载也可以自动地停止,例如,如果电池电压过低。In the first case listed above, if the user does not wish to receive new software, then he/she should have the possibility to stop the download of the software. This can happen, for example, due to lack of time or due to low battery voltage. Downloads can also be stopped automatically, for example, if the battery voltage is too low.

当电话用户连接到承认他/她为用户的那个网络之外的另一个网络上时(譬如在出国时),这种情况可以有不同的处理方式。在这种情况下,传送的预约信息会让系统知道该用户不属于当前的网络。即使做不到自动下载,也希望允许根据请求而下载软件。When the telephone user is connected to another network than the one that recognizes him/her as a user (for example when traveling abroad), this situation can be handled differently. In this case, the subscription information sent lets the system know that the user does not belong to the current network. Even if automatic downloads are not possible, it is desirable to allow software to be downloaded on request.

从主机到终端的程序传送可以按照涉及的系统中用于数据传输的已有协议来进行。例如,在GSM中,可以使用用于分组通信的协议,即全球分组无线业务(GRPS)。在先进移动电话业务(AMPS)系统中,可以使用蜂窝数字分组数据(CDPD)协议。后一种协议还包括在有语音呼叫的尝试时暂停执行数据通信的功能。The transfer of the program from the host to the terminal can be done according to the existing protocols for data transfer in the systems concerned. For example, in GSM, a protocol for packet communication, Global Packet Radio Service (GRPS), may be used. In Advanced Mobile Phone Service (AMPS) systems, the Cellular Digital Packet Data (CDPD) protocol may be used. The latter protocol also includes the ability to suspend data communication when a voice call is attempted.

将程序转移到移动终端可以在任何可供使用的信道上进行。为了在给定的时间将程序从通信单元转移到一个移动终端,可以使用业务信道。当然,数据可以按照电路交换协议或按照分组交换协议(例如在GSM系统中的GPRS)来传送。另外,也可以使用包括一个以上的业务信道的高速连接,例如GSM中的高速电路交换数据(HSCSD)。这将使程序的转移速度更块,但是它也许只能在网络中的业务负载比较低时才可行。The transfer of the program to the mobile terminal can be done on any available channel. In order to transfer programs from a communication unit to a mobile terminal at a given time, traffic channels can be used. Of course, the data can be transmitted according to a circuit-switched protocol or according to a packet-switched protocol (eg GPRS in the GSM system). Alternatively, high speed connections comprising more than one traffic channel, such as High Speed Circuit Switched Data (HSCSD) in GSM, may also be used. This will make program transfers faster, but it may only be feasible when the traffic load on the network is relatively low.

当同一个程序要在同一时间内转移到多个移动终端时可以采用广播。在这种情况下,必须加上控制信息以便让移动终端知道哪种类型的终端要接收该程序,而且每个终端必须含有能够确定程序是否是预定给这个特定的终端的逻辑。Broadcasting can be used when the same program is to be transferred to multiple mobile terminals at the same time. In this case, control information must be added to let the mobile terminal know which type of terminal is to receive the program, and each terminal must contain logic capable of determining whether the program is intended for that particular terminal.

在某些情况下可以临时或永久地存储程序代码的某些部分(特别是那些要运行多次的部分),以避免必须在每次运行它们时再将它们下载。例如,一个程序中的当该程序在执行时要执行多次的子例程可以在该程序处于运行中时暂时存储在便携式终端中。执行重要功能的程序可以永久地或半永久地存储。Portions of program code (particularly those that are to be run multiple times) may in some cases be stored temporarily or permanently to avoid having to download them each time they are run. For example, a subroutine in a program that is executed many times while the program is being executed may be temporarily stored in the portable terminal while the program is running. Programs that perform important functions can be stored permanently or semi-permanently.

要以这种方式存储的程序部分可以由用户选择或由网络中的节点选择,但最好是由两者合作选择。为做到这一点在本领域中已知有几种方法。例如,每个程序或程序部分可以做上标记,以便表示它从系统的观点来看(譬如说,为了节省带宽),是否应该存入移动终端。不过,为了确定一个程序或程序部分是否应该存入移动终端,还需要有关终端状态的知识。因此,通常在不给用户一次中断机会的情况下是不可以自动地存储这些程序部分的。The portion of the program to be stored in this manner can be selected by the user or by a node in the network, but is preferably selected cooperatively by both. There are several methods known in the art to do this. For example, each program or program part can be marked to indicate whether it should be stored in the mobile terminal from a system point of view (for example, to save bandwidth). However, in order to determine whether a program or program part should be stored in the mobile terminal, knowledge about the state of the terminal is also required. Therefore, it is generally not possible to automatically store these program parts without giving the user an opportunity to interrupt.

如果用户要删除一个程序或程序部分,他/她必须了解有关相关树的信息,也就是说,有什么样的其它程序或程序部分要利用将被删除的程序或程序部分,因为这样可以决定该程序或程序部分是否确实应该删除。If the user wants to delete a program or program part, he/she must have information about the dependency tree, that is, what other programs or program parts use the program or program part to be deleted, since this determines the Whether the program or program part should really be deleted.

因此,移动终端应该含有这样一些功能:使用户能够确定某一特定程序或程序部分是否应该存储,以及存储多久,并且提供用户所需的信息以便做出决定。Therefore, the mobile terminal should contain functions that enable the user to determine whether and for how long a particular program or program part should be stored, and provide the user with the information needed to make a decision.

图6说明了按照本发明的对用于提供程序的责任的划分。FIG. 6 illustrates the division of responsibilities for providing programs according to the present invention.

业务提供者101提供合适的源代码或字节代码。为做到这一点,业务提供者101必须知道要提供的业务所需要的功能。有关在终端中提供的软件和硬件环境的详细信息是不需要的,但是有关终端的基本信息(例如它的容量)可能是有用的。The service provider 101 provides suitable source code or byte code. To do this, the service provider 101 must know the functions required by the service to be provided. Detailed information about the software and hardware environment provided in the terminal is not required, but basic information about the terminal (eg its capacity) may be useful.

终端制造商103提供终端,而且通常还提供适合于他所提供的终端的编程语言的翻译程序。终端制造商103必须具备有关所用到的编程语言的知识。当然,会有若干个业务提供者和终端制造商。The terminal manufacturer 103 supplies the terminal and usually also provides a translation program suitable for the programming language of the terminal he supplies. The terminal manufacturer 103 must have knowledge about the programming language used. Of course, there will be several service providers and terminal manufacturers.

网络运营者105负责移动网络107并负责向网络107中的用户109提供业务。A network operator 105 is responsible for the mobile network 107 and for providing services to users 109 in the network 107 .

责任可以在业务提供者101、终端提供者103和网络运营者105之间用多种不同方式划分。例如,业务提供者101可以向终端制造商103提供字节代码,如箭头111所示。然后终端制造商103利用他为该终端所提供的适当的翻译程序将字节代码翻译成机器代码,并将这个机器代码通过像因特网这样的传输网络113提供给网络运营者105,如箭头115所示。当然,机器代码可以用本领域中任何已知的方式提供,例如,利用直接连接或软磁盘、或CD-ROM。Responsibilities can be divided between the service provider 101, terminal provider 103 and network operator 105 in many different ways. For example, the service provider 101 may provide the byte code to the terminal manufacturer 103 as indicated by arrow 111 . Then the terminal manufacturer 103 utilizes his suitable translation program provided for the terminal to translate the byte code into machine code, and this machine code is provided to the network operator 105 through a transmission network 113 such as the Internet, as indicated by arrow 115 Show. Of course, the machine code may be provided by any means known in the art, for example, by direct connection or floppy disk, or CD-ROM.

另一种划分责任的方式可以是由业务提供者101直接将字节代码通过传输网络113提供给网络运营者105,如箭头117所示。终端制造商103可以将翻译程序提供给网络运营者105,而网络运营者105可以将字节代码翻译成机器代码。Another way of dividing responsibility may be that the service provider 101 directly provides the byte code to the network operator 105 through the transmission network 113 , as shown by the arrow 117 . The terminal manufacturer 103 can provide the translation program to the network operator 105, and the network operator 105 can translate the byte code into machine code.

按照这两种方法,机器代码都可以存储在存储器119中并在需要时通过蜂窝网络107提供给用户109,如箭头121所示。当然业务提供者101也可以发送源代码而不是字节代码,但一般情况下是不希望发送源代码的。In either approach, the machine code can be stored in memory 119 and provided to user 109 via cellular network 107 as indicated by arrow 121 when needed. Of course, the service provider 101 can also send source codes instead of byte codes, but generally speaking, it is not desirable to send source codes.

Claims (23)

1.一种改变网络中经无线连接而联系的移动终端的功能性的方法,1. A method of changing the functionality of a mobile terminal connected via a wireless connection in a network, 所说的功能性是作为用编程语言写成的程序来实现的,它的源代码可以编译成中间代码,所说的中间代码是可执行和可验证的,said functionality is implemented as a program written in a programming language whose source code can be compiled into intermediate code, said intermediate code being executable and verifiable, 其特征在于以下步骤:It is characterized by the following steps: -使用至少一种翻译程序将上述的中间代码翻译成机器代码,该翻译程序和至少一种类型的终端的硬件和软件环境有关;- translate the above-mentioned intermediate code into machine code by using at least one translation program related to the hardware and software environment of at least one type of terminal; -确定要被下载到该终端的机器代码的合适的变体;- determining suitable variants of machine code to be downloaded to the terminal; -将机器代码的合适的变体下载到上述终端。- Download the appropriate variant of the machine code to the above mentioned terminal. 2.按照权利要求1的方法,其特征在于2. A method according to claim 1, characterized in that -使用上述的至少一种翻译程序将所说的程序翻译成机器代码;- translating said program into machine code using at least one translation program as described above; -将上述程序的机器代码存入网络中的主机;- storing the machine code of the above program in a host computer in the network; -在需要时将上述的机器代码转移到至少一个所说的终端。- transferring said machine code to at least one of said terminals when required. 3.按照权利要求1或2的方法,其特征在于,其中程序的下载是由网络中的一个单元启动的。3. 2. A method according to claim 1 or 2, wherein the downloading of the program is initiated by a unit in the network. 4.按照权利要求1或2的方法,其特征在于,其中程序是根据从终端的用户发出的请求而下载到终端的。4. A method according to claim 1 or 2, wherein the program is downloaded to the terminal in response to a request from a user of the terminal. 5.根据上述权利要求中任何一项的方法,其特征在于至少有若干个上述终端是用于蜂窝电信网络中的便携式终端。5. A method according to any one of the preceding claims, characterized in that at least some of said terminals are portable terminals used in a cellular telecommunication network. 6.按照上述权利要求中任何一项的方法,其特征在于以下步骤,即确定一个程序块是应该暂时还是永久地存储在终端中,并且情况是这样,则相应地存储程序。6. A method according to any one of the preceding claims, characterized by the step of determining whether a program block should be stored temporarily or permanently in the terminal, and if this is the case, storing the program accordingly. 7.按照上述权利要求中任何一项的方法,其特征在于以下步骤,即在终端的识别码的基础上确定要下载到终端的机器代码的合适的变体。7. A method according to any one of the preceding claims, characterized by the step of determining on the basis of the identification code of the terminal a suitable variant of the machine code to be downloaded to the terminal. 8.按照上述权利要求中任何一项的方法,其特征在于以下步骤,即在标识预约类型的代码的基础上确定要下载到终端的机器代码的合适的变体。8. A method according to any one of the preceding claims, characterized by the step of determining, on the basis of the code identifying the type of subscription, a suitable variant of the machine code to be downloaded to the terminal. 9.按照上述权利要求的任何一项的方法,其特征在于下列步骤:9. A method according to any one of the preceding claims, characterized by the following steps: -对于每一种程序,确定可以使用该程序的终端类型;- For each program, determine the type of terminal on which the program can be used; -使用与所说的终端类型相关的翻译程序来翻译该程序。- Translate the program using the translator associated with said terminal type. 10.用于在包括主机和若干不同类型的终端的网络中提供程序的一种设备,至少有某些所说的终端是通过无线连接而与网络中的其它部分相连的,所说的程序是用编程语言实现的,它的源代码可以编译成为中间代码,所说的中间代码是可执行和可验证的,并可解释或翻译成为机器代码:10. A device for providing a program in a network comprising a host computer and a number of different types of terminals, at least some of which are connected to the rest of the network by wireless connections, said program being programmed language, its source code can be compiled into intermediate code, said intermediate code is executable and verifiable, and can be interpreted or translated into machine code: 所说的设备的特征在于它包括:Said device is characterized in that it comprises: -用于存储机器代码形式的程序的存储装置,该机器代码在网络中的至少一种类型的终端上是可执行的;- storage means for storing the program in the form of machine code executable on at least one type of terminal in the network; -在终端类型的基础上确定哪一种机器代码应该下载到一个特定的终端上;- Determine which machine code should be downloaded to a particular terminal based on the terminal type; -用于将机器代码形式的程序转移到至少一个终端的装置。- Means for transferring the program in machine code form to at least one terminal. 11.按照权利要求10的设备,其特征在于它包括翻译装置,用来以下述方式将中间代码翻译成机器代码,即要使它能够在蜂窝网络中的至少一种类型的便携式终端上执行。11. 10. Apparatus according to claim 10, characterized in that it comprises translation means for translating the intermediate code into machine code in such a way that it can be executed on at least one type of portable terminal in the cellular network. 12.按照权利要求10或11的设备,其特征在于至少一种类型的终端是连接在蜂窝网络中的便携式终端。12. 11. Device according to claim 10 or 11, characterized in that at least one type of terminal is a portable terminal connected in a cellular network. 13.按照权利要求10-12中任何一项的设备,其特征在于它包括用来确定可以使用每一种程序的终端类型的装置。13. 10. Apparatus according to any one of claims 10-12, characterized in that it comprises means for determining the type of terminal on which each program can be used. 14.按照权利要求13的设备,其特征在于它包括用于在终端的序列号的基础上确定要下载到特定终端的机器代码的装置。14. 13. Apparatus according to claim 13, characterized in that it comprises means for determining the machine code to be downloaded to a particular terminal on the basis of the serial number of the terminal. 15.按照权利要求10-14中任何一项的设备,其特征在于它包括用于在终端应用的预约类型的基础上确定要下载到特定终端的程序的装置。15. 10. An arrangement according to any one of claims 10-14, characterized in that it comprises means for determining the program to be downloaded to a particular terminal on the basis of the subscription type used by the terminal. 16.包括主机和若干类型的终端的一种电信网络,至少有某些所说的终端是通过无线连接而和网络的其它部分相连的,该网络的特征在于它包括:16. A telecommunications network comprising a host and several types of terminals, at least some of which are connected to the rest of the network by wireless connections, the network being characterized in that it comprises: -至少一种用于编程语言的翻译装置,该语言的源代码可以编译成为中间代码,所说的翻译装置被用来将所说的中间代码翻译成为在至少一个上述的终端上可执行的机器代码;- at least one translation device for a programming language whose source code can be compiled into intermediate code, said translation device being used to translate said intermediate code into a machine executable on at least one of said terminals code; -用于存储机器代码的存储器装置;- memory means for storing machine code; -用于确定什么程序或程序版本应该下载到特定的终端上的装置;- means for determining what program or program version should be downloaded to a particular terminal; -用于将机器代码形式的程序转移到至少一个终端上去的装置。- means for transferring the program in machine code form to at least one terminal. 17.按照权利要求16的电信网络,其特征在于它包括用于在终端类型的基础上确定什么程序或程序版本应该下载到某一特定终端上去的装置。17. 16. A telecommunications network according to claim 16, characterized in that it comprises means for determining on the basis of the type of terminal what program or program version should be downloaded to a particular terminal. 18.按照权利要求16或17的电信网络,其特征在于它包括用于在预约类型的基础上确定什么程序或程序版本应该下载到某一特定终端上去的装置。18. 16. A telecommunications network according to claim 16 or 17, characterized in that it comprises means for determining on the basis of subscription type what program or program version should be downloaded to a particular terminal. 19.适合于无线通信的一种便携式终端,它包括一个内核,适合于接收机器代码形式的程序和/或程序部分,其特征在于所说的内核被设计成在运行期间安装接收到的程序和/或程序部分,并且它被设计成能将它的类型和/或当前它工作的预约类型通知网络中适当的节点。19. A portable terminal suitable for wireless communication, comprising a kernel adapted to receive programs and/or program parts in machine code form, characterized in that said kernel is designed to install the received program and/or part of the program and is designed to inform the appropriate nodes in the network of its type and/or the type of subscription it is currently operating on. 20.按照权利要求19的便携式终端,其特征在于它被设计成能向用户提供有关可供使用的程序的相关树的信息。20. 19. Portable terminal according to claim 19, characterized in that it is designed to provide the user with information about the dependency tree of the programs available. 21.按照权利要求19或20的便携式终端,其特征在于它被设计成能将它的类型和当前它工作的预约类型通知网络中适当的节点。twenty one. A portable terminal according to claim 19 or 20, characterized in that it is designed to inform the appropriate nodes in the network of its type and the type of subscription in which it is currently operating. 22.按照权利要求19-21中任何一项的便携式终端,其特征在于它被设计成能将有关它当前的电池状态通知网络中适当的节点。twenty two. A portable terminal according to any one of claims 19-21, characterized in that it is designed to inform appropriate nodes in the network about its current battery status. 23.按照权利要求19-22中任何一项的便携式终端,其特征在于它被设计成能接收并解释有关是否要将程序或程序块存储在便携式终端中的信息。twenty three. A portable terminal according to any one of claims 19-22, characterized in that it is designed to receive and interpret information as to whether the program or program blocks are to be stored in the portable terminal.
CN99808772.6A 1998-05-28 1999-05-26 Changing the functionality of modular terminals in wireless networks Pending CN1309787A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE98018971 1998-05-28
SE9801897A SE514762C2 (en) 1998-05-28 1998-05-28 Method, device and portable terminal for software download in a wireless network and such telecommunication network

Publications (1)

Publication Number Publication Date
CN1309787A true CN1309787A (en) 2001-08-22

Family

ID=20411500

Family Applications (1)

Application Number Title Priority Date Filing Date
CN99808772.6A Pending CN1309787A (en) 1998-05-28 1999-05-26 Changing the functionality of modular terminals in wireless networks

Country Status (6)

Country Link
EP (1) EP1082652A2 (en)
CN (1) CN1309787A (en)
AU (1) AU4664099A (en)
CA (1) CA2333119A1 (en)
SE (1) SE514762C2 (en)
WO (1) WO1999061983A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1311343C (en) * 2004-01-17 2007-04-18 三星电子株式会社 Method and system for improving performance of java virtual machine
CN100357919C (en) * 2003-04-30 2007-12-26 英特尔公司 High performance managed runtime environment application manager
CN100446515C (en) * 2003-07-03 2008-12-24 Lg电子株式会社 Dynamic java push controlling apparatus and method
CN111194437A (en) * 2017-12-05 2020-05-22 西部数据技术公司 Data processing offload using in-memory code execution

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7836395B1 (en) 2000-04-06 2010-11-16 International Business Machines Corporation System, apparatus and method for transformation of java server pages into PVC formats
WO2002015527A2 (en) * 2000-08-11 2002-02-21 Zucotto Wireless, Inc. Communications apparatus interface and method for discovery of remote devices
BE1014409A3 (en) * 2001-10-02 2003-10-07 Acunia Nv Method and networking system for the provision of services available.
ES2198198B1 (en) * 2002-01-29 2005-05-01 Airtel Movil, S.A. CUSTOMIZATION SYSTEM FOR THE APPLICATIONS OF A SIM OR USIM CARD OF A MOBILE TERMINAL.
DE10216853A1 (en) 2002-04-16 2003-10-30 Siemens Ag Telecommunication module with a system data processing means for carrying out at least one telecommunication activity
US7546594B2 (en) * 2003-12-15 2009-06-09 Microsoft Corporation System and method for updating installation components using an installation component delta patch in a networked environment
US7853609B2 (en) 2004-03-12 2010-12-14 Microsoft Corporation Update distribution system architecture and method for distributing software
US7676448B2 (en) 2004-03-12 2010-03-09 Microsoft Corporation Controlling installation update behaviors on a client computer
EP1797732B1 (en) * 2004-10-05 2010-06-09 Research In Motion Limited Mobile device diagnosis, test, application deployment and update from a web page
DE102005062513A1 (en) * 2005-12-27 2007-06-28 Vodafone Holding Gmbh Networking method for configuring a network-integrated data-processing device transmits configurations selected by users to a configuration computer in a network as a configuration profile
EP1916598A1 (en) * 2006-10-23 2008-04-30 Nagravision S.A. Method for loading and managing an application in a mobile equipment item
WO2012007029A1 (en) * 2010-07-13 2012-01-19 Nokia Siemens Networks Oy Dynamic optimization of radio network resources based on user equipment type smartphone
CN106775644B (en) * 2016-11-23 2020-03-17 北京小米移动软件有限公司 File operation method and equipment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4667290A (en) * 1984-09-10 1987-05-19 501 Philon, Inc. Compilers using a universal intermediate language
CA2025170A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
US6131159A (en) * 1992-05-08 2000-10-10 Paradyne Corporation System for downloading programs
JPH06309204A (en) * 1993-04-20 1994-11-04 Matsushita Electric Ind Co Ltd Data processing method and apparatus thereof
US5541986A (en) * 1993-07-27 1996-07-30 Bell Communications Research, Inc. Method and system for automated telecommunications service script consolidation and downloading
US5666293A (en) * 1994-05-27 1997-09-09 Bell Atlantic Network Services, Inc. Downloading operating system software through a broadcast channel
EP0767426B1 (en) * 1995-10-05 2014-01-01 Gigaset Communications GmbH Method for programming an apparatus

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100357919C (en) * 2003-04-30 2007-12-26 英特尔公司 High performance managed runtime environment application manager
CN100446515C (en) * 2003-07-03 2008-12-24 Lg电子株式会社 Dynamic java push controlling apparatus and method
CN1311343C (en) * 2004-01-17 2007-04-18 三星电子株式会社 Method and system for improving performance of java virtual machine
CN111194437A (en) * 2017-12-05 2020-05-22 西部数据技术公司 Data processing offload using in-memory code execution
CN111194437B (en) * 2017-12-05 2023-10-17 西部数据技术公司 Data processing offload using in-store code execution

Also Published As

Publication number Publication date
SE9801897D0 (en) 1998-05-28
SE9801897L (en) 1999-11-29
EP1082652A2 (en) 2001-03-14
WO1999061983A2 (en) 1999-12-02
CA2333119A1 (en) 1999-12-02
WO1999061983A3 (en) 2000-02-03
SE514762C2 (en) 2001-04-23
AU4664099A (en) 1999-12-13

Similar Documents

Publication Publication Date Title
CN1309787A (en) Changing the functionality of modular terminals in wireless networks
CN1235137C (en) System and method for compressing field-upgradeable wireless communication device software code segments
CN1089538C (en) Flexible downloading of software
CN103281689B (en) Method for network switching and version upgrading and terminal equipment
US20050257023A1 (en) Device memory management during electronic file updating
US20150319218A1 (en) System to automatically process components on a device
CN105100191A (en) Method, device and system for realizing Java application installation via cloud compilation
KR100871778B1 (en) Dynamic addressing da using a centralized da manager
CN1520216A (en) System and method for Delta-based over-the-air software upgrades for wireless mobile stations
CN1505433A (en) Apparatus and method for upgrading a wireless mobile station
WO2009063394A1 (en) Methods, apparatuses and computer program product for automatic download of software dependencies on installation
MXPA03008532A (en) Dynamically downloading and executing system services on a wireless device.
US7117494B2 (en) System and method for bi-directional communication and execution of dynamic instruction sets
CN1658609A (en) Systems and methods for customizing application content provisioning
CN1574996A (en) Downloading radio software for a cellular phone, corresponding to a service selected based on location, time or personal information
US20030135851A1 (en) Method and system for concentration of applications during installation in target devices
KR100974662B1 (en) Mobile terminal and firmware update method thereof
CN1924805A (en) Method for realizing dynamic clinkbase in wireless binary running environment platform
CN1739095A (en) Downloading software applications
CN105843881A (en) Picture processing url mapping method and apparatus
CN106664748B (en) Baseband software management method, wireless access system, baseband device and base station management platform
JP2005086426A (en) Portable information terminal, and software replacement system and method
CN1701585A (en) Configuration method
KR20200084294A (en) Operation server for searching code block using hot spot extraction and operation platform system including the same
CN1828536A (en) Programme dynamic loading device and method for portable terminal

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