CN1537272A - 用于在无线通信设备上执行更新指令的***及方法 - Google Patents

用于在无线通信设备上执行更新指令的***及方法 Download PDF

Info

Publication number
CN1537272A
CN1537272A CNA028148320A CN02814832A CN1537272A CN 1537272 A CN1537272 A CN 1537272A CN A028148320 A CNA028148320 A CN A028148320A CN 02814832 A CN02814832 A CN 02814832A CN 1537272 A CN1537272 A CN 1537272A
Authority
CN
China
Prior art keywords
code
data
section
run time
system software
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.)
Granted
Application number
CNA028148320A
Other languages
English (en)
Other versions
CN1288553C (zh
Inventor
�����ķ��˹
高里·拉贾拉姆
保罗·泽肯多夫
迭戈·卡普兰
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.)
Kyocera Corp
Original Assignee
Kyocera Wireless Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/917,026 external-priority patent/US7328007B2/en
Priority claimed from US09/916,460 external-priority patent/US7159214B2/en
Priority claimed from US09/916,900 external-priority patent/US7027806B2/en
Priority claimed from US09/927,131 external-priority patent/US7143407B2/en
Priority claimed from US09/969,305 external-priority patent/US7386846B2/en
Application filed by Kyocera Wireless Corp filed Critical Kyocera Wireless Corp
Publication of CN1537272A publication Critical patent/CN1537272A/zh
Application granted granted Critical
Publication of CN1288553C publication Critical patent/CN1288553C/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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Transceivers (AREA)
  • Telephonic Communication Services (AREA)
  • Communication Control (AREA)
  • Sub-Exchange Stations And Push- Button Telephones (AREA)
  • Information Transfer Between Computers (AREA)
  • Circuits Of Receivers In General (AREA)
  • Selective Calling Equipment (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明提供了在无线通信设备中执行动态指令集的***及方法。该方法包括:使***软件形成为符号库,每个符号库包括具有相关功能的符号;将符号库排列进代码存储段永久性存储器中的代码段;执行***软件;在文件***段永久性存储器中接收包括条件操作代码和数据项的补丁管理器运行时期指令(PMRTI)或动态指令集;调用第一代码段的运行时期库;处理补丁管理器运行时期指令操作代码;操作***数据和***软件;及根据对***数据和***软件的操作控制***软件的执行。

Description

用于在无线通信设备上执行更新指令的***及方法
发明背景
1.发明领域
本发明一般涉及无线通信设备,特别涉及用于现场执行带有无线通信设备***软件的动态指令集的***和方法。
2.相关技术说明
对已经使用的电话的软件进行更新不是罕见的。一旦电话被制造并销售给公众,更新可能涉及所发现的软件中的问题。一些更新可能涉及电话的新特性的使用,或服务提供商所提供的服务。其他的更新可能涉及地区问题,或与特定载体相关的问题。例如,在特定的区域,载体的网络布局可能将无线接口条件强加给手机(handset),从而导致手机产生不期望的行为,例如不正确的频道搜索,不正确的呼叫结束,不正确的音频等。
传统的更新方法是把通信设备(此处是指无线设备,电话,电话耳机或手机)招回到最近的电信零售/服务市场(outlet)或制造商处来处理这种改变。这种更新所涉及的成本是昂贵的,并超过底线。而且消费者不方便并可能被激怒。在实践中的方案通常是给消费者提供新的电话。
无线设备在多种环境中使用,为大量的不同消费者提供不同的用户服务,因此,即使无线设备的软件能够被升级以改善服务,为所有使用者提供统一改进的升级也是不可能的。
如果无线通信设备软件可以便宜地升级并且不造成消费者的不便,那么将是有利的。
如果无线通信设备软件能被升级并且不会使消费者在相当长的时间里不能使用他们的电话,那么将是有利的。
如果无线通信设备软件能被更新并且同时技术服务时间最少或不需要将设备送到服务机构,那么将是有利的。
如果能将无线设备***软件分入代码段,从而在更新***软件时,只需替换***软件的代码段,这将是有利的。如果这些代码段能通过无线链路(airlink)与无线设备通信,那么也将是有利的。
如果可根据设备情况对每种无线通信设备制作专用的代码段更新,那么将是有利的。
如果无线设备能检测无线设备***软件的性能、收集性能数据、并将数据传输到***中心收集站进行分析,那么将是有利的。
发明概述
无线通信设备的软件更新可向用户提供尽可能最适合的产品和用户体验。回收手机而更新软件在商业上是昂贵的。手机制成后,这些更新对于向用户提供增值服务或解决电话使用中发现的问题可能是必须的。本发明使得通过无线链路接口现场升级手机在实践中成为可能。尤其是本发明可允许无线通信设备执行动态指令集。这些动态指令集可使无线设备“智能化地”或有条件地更新***软件或***数据。此外动态指令集允许无线设备监视***软件性能,并传输性能数据以用于分析。
因此,本发明提供了一种用于在无线通信设备中执行动态指令集的方法。该方法包括:将***软件形成为多个符号库,每个符号库都包括具有相关功能的符号;将符号库排列进代码存储段非易失性存储器中的代码段;执行***软件;在文件***段非易失性存储器中接收包括条件操作代码和数据项的补丁管理器运行时期指令(PMRTI)或动态指令集;从第一代码段调用运行时期库;处理补丁管理器运行时期指令操作代码;操作***数据和***软件;以及响应对***数据和***软件的操作以控制***软件的执行。
下面将提供上述用于执行动态指令集的方法的其它详细说明以及执行动态指令集的***。
附图的简要说明
图1是整个无线设备软件维护***的示意方框图。
图2是软件维护***的示意方框图,其中突出表明了通过无线链路接口安装指令集。
图3示出了用于在无线通信设备中执行动态指令集的本发明***的示意方框图。
图4是无线设备存储器的示意方框图。
图5的表示出了图3所示的代码段地址表。
图6是图3所示的带有符号的符号库一的详细说明。
图7的表示出了图3所示的符号偏移地址表。
图8是对由运行时期引擎所访问的操作代码(op-code)的说明。
图9是对图8所示第一操作代码的更详细说明。
图10a和图10b的流程图示出了用于在无线通信设备中执行动态指令集的本发明方法。
图11的流程图示出了动态指令集操作的一个例子。
图12的流程图示出了动态指令集操作的另一例子。
图13的流程图示出了动态指令集操作的第三个例子。
图14的流程图示出了动态指令集操作的第四个例子。
图15的流程图示出了动态指令集操作的第五个例子。
优选实施方案的详细说明
下面将结合无线设备微处理器或存储器中数据位的操作流程、步骤、逻辑块、代码、方法和其它操作的符号表示而给出详细说明的一些部分。这些说明和表示可使数据处理领域的所属技术人员能最有效地将他们的工作内容转达给本领域所属的其他工作人员。此处的流程、微处理器执行步骤、应用、逻辑块、方法等通常被认为是指可导致所需结果的前后一致的顺次步骤或指令。步骤是指那些需要对物理量进行物理处理的步骤。通常尽管不是必须的,但在微处理器基无线设备中,这些量表现为能够存储、传输、组合、比较或其它可处理的电信号或磁信号的形式。有时为了方便,主要是由于通用的原因而将这些信号称为位、值、单元(element)、符号、字符、项(term)、数字等。其中物理设备(如文中提到的存储器)通过数据线或其它的电连接而与其它的物理设备连接。这些物理设备可被认为与逻辑处理或应用程序相互作用,因此它们与逻辑操作“连接”。例如,存储器可存储或访问代码以进行逻辑操作,或者应用可以从存储器中调用代码段以便执行。
然而应该记住,所有这些术语和相似的术语都应与相应的物理量相关,其仅是加到这些物理量上的方便标记。除非在下面的讨论中另有特别指明,应该理解,在整个发明讨论中所使用的术语,如“处理”或“连接”或“翻译”或“显示”或“提示”或“确定”或“显示”或“识别”等,都指的是无线设备微处理***中的活动和过程,其可对计算机***寄存器和存储器中表示物理(电子)量的数据进行处理并转换成在无线设备存储器或寄存器或其它此类信息存储、传输或显示设备中类似地表示物理量的其它数据。
图1是整个无线设备软件维护***100的示意性方块图。在下面对软件维护***100做总的说明之后,详细说明本发明的***软件结构。总***100说明了一种用于传输***软件更新程序和指令集(程序)并在无线设备中安装传输的软件的方法。***软件更新程序和补丁管理器运行时期指令(PMRTI)(它们更通常被称作指令集或动态指令集)是由手机制造商创建的。***软件可被编制成符号库。符号库被排列进代码段。当欲更新符号库时,软件更新程序102按一个或多个代码段传输。将软件更新程序现场传播到无线通信设备104所代表的无线设备中,或使用公知的常规无线、数据或信息传输协议在单独的通信***中从基站106传输。由于无线通信设备可容易地被改进以装入任何可用的无线传输协议从而达到接受***软件和PMIS更新程序的目的,所以本发明不限于任何特定的传输形式。
***软件也可被认为是不同子***的集合。代码对象可被紧密结合地连接成这些抽象子集中的一个,所得到的集合可称为符号库。此举提供了代码库的逻辑分类,并且软件补丁和修补可与这些符号库中的一个关联。在大多数情况下,单独的更新程序与一个或至多两个符号库相关联。而源代码的其余部分、其它符号库则保持不变。
符号库的概念为处理代码和常数提供了方法。另一方面,读写(RW)数据适合于含有针对所有库的基于RAM的数据的唯一单个RW库。
一旦传输的代码段被无线设备104接收到,则其必须被处理。无线设备将覆盖写入非易失性存储器108的特定代码段。非易失性存储器108包括文件***段(FSS)110和代码存储段112。为最小化在FSS 110中的占用空间,代码段在传输前通常被压缩。更新的代码段通常伴随有其RW数据,它是含有针对各个符号库的所有RW数据的另一类符号库。尽管当执行***软件时,RW数据被装入随机存取易失性读写存储器114中,但是RW数据总归要被存储在非易失性存储器108中,所以每次无线设备被复位时,其都能被装入随机存取易失性读写存储器114中。这包括第一次被装入随机存取易失性读写存储器中的RW数据。如下面更详细地说明中的那样,RW数据通常和补丁管理器代码段排列在一起。
***100包括虚拟表的概念。使用这种表,在一个代码段中的符号库可被修补(替换),而不会破坏(替换)***软件(其它代码段)的其它部分。为了更有效率,虚拟表从随机存取易失性读写存储器114中执行。代码段地址表和符号偏移地址表都是虚拟表。
更新的代码段被无线设备104接收到并存储在FSS 110中。无线设备用户接口(UI)通常将通知用户有新软件可用。作为对UI提示的响应,用户以修补或更新操作来回答通知和信号。可选择地,更新操作可自动进行。当进行更新操作时,无线设备可能不能进行标准的通信任务。补丁管理器代码段包括也被装入随机存取易失性读写存储器114中的非易失性读写驱动符号库。非易失性读写驱动符号库使得代码段被更新的代码段盖写。补丁管理器代码段包括读写数据、代码段地址表、符号偏移地址表以及符号存取器代码和符号存取器代码地址(下面讨论)。当引入更新的代码段,并且更新的补丁管理器代码段包括读写数据、代码段地址表、以及对更新的代码段有效的符号偏移地址表时,该数据的一些部分是无效的。一旦更新的代码段被装入代码存储段112中,无线设备被复位。在复位操作之后,无线设备能执行更新的***软件。应该理解,补丁管理器代码段可包括上面没有讨论的其它符号库。这些其它的符号库不需要被装入易失性读写存储器114中。
图2是软件维护***100的示意方框图,突出显示了经无线链路(airlink)接口对指令集的安装。除了更新***软件代码段,维护***100能下载和安装在本文被称为补丁管理器运行时期指令集(PMRTI)的动态指令集、程序、或补丁管理器指令集(PMIS)。PMRTI代码段200以与上述***软件代码段同样的方式被传送到无线设备104。PMRTI代码段最初存储在FSS 110中。PMRTI代码段通常是二进制文件,可作为编译的指令显示在手机上。PMRTI代码段是足够详尽的,可用于基本数学运算和条件运算。例如,RF校准的PMRTI可能执行下列各项操作:
IF RF CAL ITEM IS LESS THAN X  (如果RE CAL项小于X)
EXECUTE INSTRUCTION  (执行指令)
ELSE  (否则)
EXECUTE INSTRUCTION  (执行指令)
PMRTI能支持基本数学运算,例如:加、减、乘、除。与***软件代码段一样,PMRTI代码段可被加载以响应UI提示,在PMRTI被装入代码存储段112之后,无线设备必须被重起。随后可以执行PMRTI代码段。如果PMRTI代码段与任何虚拟表或读-写数据有关,更新的补丁管理器代码段与PMRTI将同时被传送,以在代码存储段112内安装PMRTI。可选地,PMRTI能从FSS 110中被保持和处理。在手机104已执行了PMRTI段内的全部指令之后,可以从FSS 110中删除该PMRTI段。可选地,保留该PMRTI以便将来的操作。例如,每次无线设备开机时,可以执行PMRTI。
PMRTI是很强大的运行时期指令引擎。通过PMRTI环境,手机能执行任何传来的指令。这种机制可被用于支持RF标准。更一般的,通常是由用户抱怨而使厂商或服务提供商意识到软件问题时,PMRTI能用于远程调试无线设备软件。PMRTI也能记录诊断软件问题所需要的数据。PMRTI能启动新下载的***应用软件,用于数据分析、调试和修正。PMRTI能提供用来取代更新的***软件代码段的基于RW数据的更新材料,以针对问题进行分析和短期修正。PMRTI能提供无线设备使用的存储器压缩算法。
在本发明的一些方面中,将***软件组织进符号库的这种结构可影响执行所需要的易失性存储器114和非易失性存储器108的大小。这通常是由于代码段比排列在代码段中的符号库更大。这些较大代码段用于容纳(accommodate)更新的代码段。将***软件作为库的集合进行组织影响所需的非易失性存储器的大小。对于同样大小的代码而言,由于代码段比排列于其中的符号库更大,因而使用的非易失性存储器的量较大。
一旦软件更新资料被传输到无线设备,软件维护***100就进行支持存储器压缩。存储器压缩与台式计算机中的磁盘碎片整理程序相似。这种压缩方法可确保存储器的最佳使用并有更多的节余,以用于将来的代码段更新资料,而更新代码段的大小是不可预测的。当***100被修补(更新)时,其可分析代码存储段。***100意图将更新代码段装入由被代替的代码段所占据的存储空间。如果更新代码段比被代替的代码段更大,那么***100在存储器112中压缩代码段。可选择地,制造商或服务提供者可计算这种压缩,并且压缩指令可被传输到无线设备104。
压缩会由于算法复杂、数据移动量大而成为耗费时间的过程。压缩算法在开始处理之前进行可行性分析。在压缩开始前,可用UI提示来请求使用者的许可。
在本发明的一些情况中,所有的***软件代码段能被同时更新。但全部***软件升级需要更大的FSS 110。
图3是本发明的无线通信设备中的动态指令集的执行示意方框图。***300包括在存储器108中的代码存储段112,该代码存储段112包括被分成多个当前代码段的可执行的无线设备***软件。在图中示出了代码段一(302)、代码段二(304),代码段n(306)和补丁管理器代码段308。然而,本发明不受任何具体的代码段数的限制。进一步,***300还包含排列到第二组的代码段中的第一组符号库。如图示出了排列到代码段一(302)中的符号库一(310)、排列在代码段二(304)中的符号库二(312)和符号库三(314)、以及排列在代码段n(306)中的符号库m(316)。每个库包含具有相关功能的符号。例如,符号库一(310)可能涉及到无线设备液晶显示器(LCD)的操作。那么,该库中的符号可能与显示功能有关。正如下面详细说明的那样,其他符号库被排列在补丁管理器代码段308中。
图4是无线设备存储器的示意方框图。如图所示,存储器是图1所示的代码存储段112。存储器是可写的非易失性存储器,如闪存(Flashmemory)。应该理解,代码段不必象FSS 110那样存储在同一存储器中。而应该理解,在本发明的***软件结构中,代码段可以存储在多个相配合的存储器中。代码存储段112包括第二组连续编址的存储器块,其中每个存储器块存储来自第二组的代码段的相应代码段。因而,代码段一(302)存储在第一存储器块400中,代码段二(304)存储在第二存储器块402中,代码段n(306)存储在第n存储器块404中,补丁管理器代码段(308)在第p块存储器块406中存储。
对比图3和4,每个代码段的开始相应地存储在存储器的开始地址处,符号库被排列以在代码段的起始处起始。也就是说,每个符号库在第一地址起始并从第一地址起依次占据(run through)一定范围的地址。例如,代码段一(302)在代码存储段存储器112的第一起始地址408(标号为″S″)开始。在图3中,符号库一(310)在第一代码段的起始地址318处起始。同样地,代码段二(304)开始在第二开始地址410(图4),符号库二开始在代码段二的开始320(图3)。代码段n(306)开始在代码存储段存储器112(图4)的第三开始地址412,符号库m(316)开始在代码段n(322)的开始处(图3)。补丁管理器代码起始在代码存储段存储器112的第P开始地址414,补丁管理器代码段308的第一符号库从补丁管理器代码段的开始处324开始。因而,符号库一(310)最后存储在第一存储器块400中。如果代码段包括多个符号库,例如代码段二(304),那么多个符号库存储在相应的存储器块中,存储器块402就是这种情况。
在图3中,***300进一步包含代码段地址表326,作为一种类型的符号包括在补丁管理器代码段308中排列的符号库中。代码段地址表交叉引用(cross-reference)相应的代码段识别符与存储器中的代码起始地址。
图5是图3中326所示的代码段地址表。查询代码段地址表326以查找符号库的代码段起始地址。例如,在要求执行符号库一中的符号时,***300寻找代码段一。为查找代码段一的开始地址,并因而定位符号库一中的符号,代码段地址表326被查询(consult)。符号库在代码段中的排列以及利用表对代码段的跟踪,允许代码段被移动或扩充。在安装被升级的代码段(带有被升级的符号库)时可能需要扩充或移动操作。
回到图3,应该注意到,并不是每个符号库都必需在代码段的开始处开始。如图所示,排列在代码段二(304)中的符号库三(314)就不是排列在代码段的开始地址320处。因而,如果要执行符号库三(314)中的符号,***300查询代码段地址表326以查找代码段二(304)的开始地址。正如以下所解释的,符号偏移地址表允许定位符号库三(314)中符号。这些符号跨越多个库是没有问题的,只要这些库保持在同一代码段中即可。
如上所述,每个符号库包括与一定功能相关的符号。符号是用于定位和使用例行程序(routing body)、变量或数据结构的程序员定义的名字。因而,符号可以是地址或值。符号可以是内部的或外部的。内部符号在其所处的代码段范围之外是看不可见的。更具体地,他们不能被在其他的代码段中其他的符号库查找。外部符号被跨代码段地使用和调用,并可被在不同代码段中的库查找(seek)。符号偏移地址表通常包括全部外部符号的列表。
例如,符号库一(310)可能在无线设备显示装置上生成字符。在该库中的符号将依次生成电话号码、名字,时间,或其他的显示特性。每个特性都由例行程序生成,例行程序在本文中被引用为符号。例如,在符号库一(310)中的一个符号生成显示装置上的电话号码。该符号由″X″表示,是外部符号。当无线设备收到电话呼叫,而且呼叫方ID服务被激活,则***需要执行符号“X”以生成在显示器上显示的号码。因此,***必须定位符号“X”。
图6是对图3中的符号库一(310)的符号的详细描写。排列符号以从各自的代码段起始地址处偏移。在许多环境中,符号库的开始是代码段的开始,但如果代码段包括多于一个的符号库则不是这样,符号库1(310)在代码段一的开始处开始(见图3)。如图6所示,符号“X”定位在从符号库开始的偏移(03)处,而符号″Y″被定位在偏移(15)处。符号偏移地址存储在补丁管理器代码段的符号偏移地址表328中(见图3)。
图7是图3中的符号偏移地址表328。符号偏移地址表328交叉引用符号标识符与相应的偏移地址及存储器中的相应的代码段标识符。因而,在***搜索执行符号库一中的符号“X”时,符号偏移地址表328被查询,以查找该符号在它所排列的代码段中的精确地址。
回到图3,第一组的符号库通常都包括在执行这些符号库时必须被查询或设置的读写数据。例如,符号库可能包括依赖于条件指令的操作。读写数据段被查询以确定为完成条件指令所需的状态。本发明将来自全部符号库的读写数据集中到共享读写部分。在本发明的一些方面,读写数据330被排列在补丁管理器代码段308中。可选地(未示出),读写数据可以排列在不同的代码段,例如,代码段n(306)。
第一组的符号库也包括符号存取器代码,该符号存取器代码排列在代码段中以计算所搜索的符号的地址。符号存取器代码可以被排列和存储在独立的代码段中,例如,代码段二(304)。然而,如图所示,符号存取器代码332被排列和存储在补丁管理器代码段308中。***300进一步包括用于存储符号存取器代码地址的第一位置。第一位置可以是代码存储段112中的代码段,或在无线设备(未示出)的单独的存储器段。第一位置也可以与读写数据一样排列在同一代码段中。如图所示,第一位置334与读写数据330、符号偏移地址表328、代码段地址表326和符号存取器代码332以及补丁库(补丁符号库)336一起被存储在补丁管理器代码段308中。
符号存取器代码访问代码段地址表和符号偏移地址表以计算或查找所寻找符号在存储器中的地址。也就是说,符号存取器代码用相应的符号标识符和相应的代码段标识符计算所寻找符号的地址。例如,如果寻找在符号库一中的符号“X”,调用符号存取器以寻找与符号“X”相应的符号标识符(符号ID)″X_1″(见图7),查询符号偏移地址表以确定″X_1″符号标识符具有从代码段一开始处起的偏移(03)(见图6),寻找与代码段一相应的代码段标识符″CS_1″,查询代码段地址表以确定与代码段标识符(代码段ID)″CS_1″相关的开始地址。以此方式,符号存取器代码确定符号标识符″X_1″是从地址(00100)偏移(03),或被定位在地址(00103)。
由于符号″X″是实际代码的一部分,因而它是保留名。换句话说,它带有与之相连的确定数据。该数据可能是地址或值。符号标识符是为跟踪符号所创建的别名。符号偏移地址表和代码段地址表两者都用标识符工作,以避免与保留的符号和代码段名相混。同一符号名被许多符号库使用也是可能的。标识符的使用可防止在符号之间产生混乱。
回到图1,***300进一步包含可读写易失性存储器114,通常是随机存储器(RAM)。读写数据330、代码段地址表326、符号偏移地址表328、符号存取器代码332、和符号存取器代码地址334从补丁管理器代码段装入可读写易失性存储器114以在***软件执行期间被访问。同样是众所周知的,访问存储在RAM中的代码的时间比访问非易失性存储器(如闪存)的时间要短。
回到图3,虽然被划分的存储器块的大小正好可容纳存储于其内的相应的代码段,但应该注意到,符号库不必装满他们所排列的代码段。可选地,第二组的代码段中的每一个都具有用来容纳符号库的用字节表示的空间(size),每一个地址连续的存储器块都带有容纳相应代码段的以字节表示的空间。例如,代码段一(302)可能是100字节的段,以容纳长度为100字节的符号库。为与代码段一的字节大小相匹配,第一存储器块将是100字节。然而,装入代码段1的符号库可能比100字节小。如图3所示,由于符号库一(310)小于100字节,代码段一(302)带有未使用的段340。因而,第二组的代码段中的每一个都可能比排列符号库所需的大小要大。利用″超大的″代码段,可以容纳更大的更新符号库。
连续编址存储器块是指将物理存储器空间分区成大小可变的逻辑块。当代码段被存储在存储器中时,代码段和存储器块基本上是可互换的术语。代码段的概念被用于识别可能比符号库更大的一段代码,或用于在当移动并处理代码段时,识别代码段中的符号库集合。
如图3所示,***300包括在本文也被称为补丁库336的补丁符号库,用以在代码存储段中将当前代码段和新代码段排列在一起。新代码段和当前代码段在代码存储段中的排列可形成已更新的可执行***软件。补丁管理器336不仅可将新代码段和当前代码段排列在一起,而且可用更新代码段代替代码段。
回到图4,存储器108的文件***段110接收新代码段,如新代码段450和更新的补丁管理器代码段452。文件***段还接收初次补丁管理器运行时期指令(PMRTI)454,其包含将当前代码段和新代码段排列在一起的指令。如图1所示,无线链路接口150可接收新的或更新的代码段及初次PMRTI。尽管图中的无线链路接口150是天线,但是应该理解无线链路接口也包括RF收发机、基带电路及解调电路(未示出)。文件***段110可存储通过无线链路接口150接收的代码段。从可读写易失性存储器114中执行的补丁库336可以依据PMRTI 454用新的或更新的代码段450代替代码存储段中的第一代码段,例如代码段n(306)。通常用更新的补丁管理器代码段452代替补丁管理器代码段308。当代码段被代替时,补丁库336用文件***段110中的更新的代码段例如代码段450重写代码存储段112中的第一代码段,例如代码段n(306)。在极端情况下,存储段112中的所有代码段都被更新的代码段所代替。即FSS110接收第二组的更新代码段(图未示),并且补丁库336可用第二组的更新代码段代替代码存储段112中的第二组的代码段。当然,FSS 110必须足够大以容纳通过无线链路接口接收的第二组的更新的代码段。
如上所述,接收的更新代码段可包括读写数据代码段、代码段地址表代码段、符号库、符号偏移地址表代码段、符号存取器代码段或带有新补丁库的代码段。所有这些代码段和与它们相关的符号库及符号可被存储成不同和独立的代码段。然后这些代码段中的每一个被唯一的更新代码段所代替。即所接收的更新的读写代码段将代替代码存储段中的读写代码段。所接收的更新的代码段地址表代码段将代替代码存储段中的代码段地址表代码段。所接收的已更新的符号偏移地址表代码段将代替代码存储段中的符号偏移地址表代码段。被接收的更新的符号存取代码段将代替代码存储段中的符号存取代码段。同样地,更新的补丁管理器代码段(带有补丁库)将被接收并代替代码存储段中的补丁管理器代码段。
然而上述的代码段通常与补丁管理器代码段捆绑在一起。这样当补丁管理器代码段308被更新的补丁管理器代码段450代替时,代码存储段中的读写代码段可被来自文件***段110的读写代码段代替。同样地,当安装更新的补丁管理器代码段450时,代码段地址表、符号偏移地址表、符号存取代码段及补丁库将被取代。新读写数据、新代码段地址表、新符号偏移地址表、新符号存取代码、新补丁库和更新的补丁管理器代码段450及代码存储段中的当前代码段的排列形成更新的可执行***软件。
当文件***段110接收已更新的符号存取器代码地址时,补丁管理器用更新的符号存取器代码地址代替存储器中第一位置的符号存取器代码地址。如上所述,存储器334中的第一位置通常是在补丁管理器代码段中(参见图3)。
如图3所示,补丁库308还包括压缩器或压缩器符号库342。压缩器342也可以是独立的代码段,然而如上所述,将该与***软件升级相关的功能捆绑进补丁管理器代码段是有用和有效的。通常压缩器342也被称为重设大小代码段,从而新段可与代码存储段112中的当前代码段排列。
就目前建立的本发明的结构、下载和压缩,下面的讨论将集中在无线通信设备动态指令集执行***300。如上面所详细讨论的,***300包括可执行的被分成代码段的***软件和***数据。此外,***300包括用于操作***数据和***软件并控制***软件的执行的动态指令集。如图4所示,动态指令集470被组织进第一PMRTI 454。如图3所示,***还包括用于处理动态指令集的运行时期引擎,作为运行时期库370。与如上所述的压缩器库342和补丁库336一样,运行时期库370通常位于补丁管理器代码段308中。然而,运行时期库370可选择地位于另一个代码段中,例如第一代码段304中。
动态指令集是单一或含有条件操作代码的多重指令集,并且通常包括数据项。运行时期引擎可读取操作代码并决定需要进行何种操作。操作代码可以是条件代码、数学代码、程序代码或逻辑代码。运行时期引擎或运行时期库370处理动态指令集以执行诸如数学操作或逻辑操作等操作。即运行时期引擎可根据操作代码读取动态指令集470并进行一系列操作。尽管动态指令集不限于任何特定的语言,但由于无线设备存储器空间有限并且执行速度很重要,所以操作代码通常是机器代码的形式。由于操作代码分析数据项并根据分析结果做出决定,因而它被认为是条件代码。运行时期引擎也可决定在数据被分析之前对其进行操作。
例如操作代码可指定将从无线设备存储器来的数据项与预定值比较。如果数据项小于预定值,那么不用处理它,如果数据项大于预定值,那么就用预定值代替它。可选地,在进行上述的比较操作前,操作代码可使从无线设备存储器来的数据项增加第二预定值。
如上所述,文件***段非易失性存储器110可通过接口如无线链路150接收动态指令集。如图1所示,接口也可以是射频(RF)硬线160。这样,在没有***软件正在工作的情况下,如在工厂校准环境中,PMRTI可被FSS 110接收。PMRTI也可通过逻辑端口接口162或可安装的存储器模块164来接收。存储器模块164可安装在无线设备104中,可在初始校准时安装,或现场安装,或在工厂校准时安装。尽管没有特别说明,但PMRTI可通过红外接口或蓝牙(Bluetooth)接口来接收。
图8是对被运行时期引擎370所访问的指令的说明。图中所示的是第一指令800、第二指令802和第j指令804,然而动态指令集不限于任何特定数量的指令。在每条指令中的操作代码的长度是固定的。运行时期引擎370可获得指令的长度,即字节或位的数量,来检测指令是否包括数据项。减去操作代码后,剩余指令长度包括数据项。运行时期引擎可从指令中提取数据项。如图所示,第一指令800的长度806被测量并提取了数据项808。应注意并不是所有的指令都必须包括将被提取的数据项。在依据指令800中的操作代码810执行的一系列操作中,运行时期引擎370使用提取的数据808。
图9是图8中的第一指令800的更详细说明。以第一指令800为例,指令包括操作代码810和数据808。指令,更具体地是指数据项段808,包括符号标识符,其用于连接无线设备代码段中的符号。如上所详细说明的,符号标识符和代码段地址表326(参见图5)和符号偏移地址表328(参见图7)一起使用以定位与符号标识符相应的符号。如图所示,在第一指令800中示出了符号标识符“X_1”。符号偏移地址表328可利用标识符“CS_1”和偏移量“3”在代码段中定位相应符号。代码段地址表326可给出代码段一(302)的起始地址。以这种方式可找到符号“X”(参见图6)。
在运行时期引擎在使用代码段地址表和符号偏移地址表定位了与所接收的符号标识符相应的符号之后,在被定位的符号是数据项时它提取数据。例如,如果符号库一(310)中的符号“X”是数据项时,运行时期引擎就可提取它。可选择地,符号“X”可以是操作代码,并且当其被定位时运行时期引擎可执行符号“X”。
PMRTI可被用于更新***数据或数据项。在本发明的某些方面中,参见图4,***数据存储在文件***段110的代码段中,例如在代码段472中。运行时期引擎可访问来自于代码段472的***数据并分析该***数据。如上所述,运行时期引擎可处理动态指令集中的操作代码以对数据项执行数学或逻辑操作。此操作后,运行时期引擎可处理指令以产生更新的***数据。应注意到在某些情况下更新的***数据可包括未改变的数据项。根据操作代码,在二次代码段472中的***数据被更新的***数据代替。这样,通过运行时期引擎对指令的处理,使用代码段472中的已更新的***数据控制***软件的执行。以这种方式,***软件中的特定目标符号可被更新,而不用替换全部的代码段。通过相同的处理,可以替换代码存储段112的代码段中的***数据。例如如果***数据存储在第三代码段344中,运行时期引擎可根据操作代码用更新的***数据替换第三代码段中的***数据。
PMRTI也可被用于更新易失性存储器114中的数据项。例如参见图1,易失性存储器114接收读写数据330。读写数据可从代码存储段112和/或FSS 110中的一个或多个代码段得来。运行时期引擎可访问读写数据、分析读写数据330、产生更新的读写数据并根据操作代码用已更新的读写数据代替易失性存储器114中的读写数据330。然后使用易失性存储器114中的更新的读写数据来控制***软件的执行。
在本发明的某些方面中,运行时期引擎可监测***软件的执行。性能监测被广义地定义,以包括最大数量的无线设备活动。例如,通过一系列操作可导致特定失效条件或性能下降的诸如信道参数、信道特性、***栈、出错条件等数据或RAM中数据项记录可被收集。也可使用动态指令集分析收集到的性能数据、提供已更新的数据变量并再次捕获数据来研究针对问题的可能解决方案。也可使用PMRTI处理提供临时性的修正。
更具体地,运行时期引擎可收集性能数据并根据操作代码将性能数据存储在文件***段中。然后,利用收集的用于评估***软件性能的数据控制执行***软件。评估可以作为分析的一种形式被动态指令集操作代码进行,它也能在无线设备外部进行。在本发明的某些方面中,运行时期引擎可访问从文件***段收集的性能数据并通过无线链路接口传输性能数据以响应操作代码。从无线设备现场收集性能数据允许制造商全面地分析问题(在本地分析或全球任何地方),而不用将设备回收。
在本发明的某些方面中,文件***段110可接收包括新代码段的管理器运行时期指令。例如图4中所示的新代码段474。可选择地,新代码段可以是与PMRTI无关的,如新代码段n(450)。例如,新代码段n(450)可在早期的无线链路通信中被接收或在工厂校准期间被安装。运行时期引擎可根据操作代码将代码段474(450)加到代码存储段中。在本发明的某些方面中,新代码段代码被加到存储段112中的未用块中。可选择地,压缩操作是需要的。然后,使用新代码段474(450)控制执行***软件。在本发明的其它方面中,PMRTI 454包括更新的代码段474。可选择地,新代码段450是与PMRTI无关的更新的代码段。运行时期引擎可用更新的代码段474(450)代替代码存储段中的代码段,例如代码段二(304)以响应操作代码。使用更新的代码段474(450)控制执行***软件。在本发明的某些方面中,需要压缩操作以容纳更新的代码段。可选择地,已更新的代码段被加到代码存储段的未用段或空白段中。
如上所述,因为这些操作通常包括新的和/或变化的代码段起始地址,新代码段的加入或代码段的更新通常需要产生新代码段地址表。此外,压缩操作也需要新代码段地址表。如上所述,压缩操作也可以是压缩器342操作的结果,或者是可提供怎样压缩的细节的PMRTI指令的结果。当PMRTI包括下载和压缩指令时,PMRTI通常也包括在下载和压缩操作完成后有效的新的代码段地址表。
图10a和图10b是本发明的在无线通信设备中执行动态指令集的方法的流程图。尽管为清楚起见以连续编号的步骤描述,但是除非明确说明,不应从编号(下面列出本方法的编号)中得出先后顺序。本方法从步骤1000开始。步骤1001a将***软件形成为符号库,每个符号库包括具有相关功能的符号。步骤1001b将符号库排列进代码段。步骤1002执行***软件。步骤1003接收动态指令集。在步骤1003中接收动态指令集包括通过用选自无线链路、射频(RF)硬线、可安装的存储器模块和红外接口及逻辑端口接口的接口来接收动态指令集。在本发明的某些方面中,在步骤1003中接收动态指令集包括在文件***段永久性存储器中接收补丁管理器运行时期指令(PMRTI)。
步骤1004启动运行时期引擎。通常启动运行时期引擎包括从第一代码段中调用运行时期库。可以从易失性或永久性存储器中启动运行时期引擎。步骤1006处理动态指令集。处理动态指令集包括根据数学和逻辑运算处理指令。在本发明的某些方面中,在处理动态指令集之后,步骤1007(图未示)删除动态指令集。步骤1008操作***数据和***软件。步骤1010根据对***软件和***数据的操作,控制***软件执行。
在步骤1003中接收补丁管理器运行时期指令通常包括接收条件操作代码和数据项。然后,在步骤1006中处理动态指令集包括子步骤。步骤1006a1使用运行时期引擎读取补丁管理器运行时期指令操作代码。步骤1006b根据操作代码进行一系列操作。
在某些方面,在步骤1001b中将符号库排列进代码段的操作包括在代码段的开始处开始符号库并从各自的代码段起始地址排列需偏移的符号。本发明还包括如下步骤。步骤1001c在相应的起始地址存储起始代码段。步骤1001d维护代码段地址表(CSAT),代码段地址表交叉引用代码段标识符与相应的起始地址。步骤1001e维护符号偏移地址表(SOAT),该符号偏移地址表交叉引用符号标识符与相应的偏移地址及相应的代码段标识符。
在本发明的某些方面中,在步骤1004中接收补丁管理器运行时期指令包括接收符号标识符。本方法还包括如下步骤。步骤1006a2通过使用代码段地址表和偏移地址表定位与接收的符号标识符相应的符号。根据操作代码在步骤1006b中进行的一系列操作包括一些子步骤。当定位的符号是数据项时,步骤1006b1提取数据。当定位的符号是指令时,步骤1006b2执行符号。
在本发明的某些方面中,在步骤1006b1中处理动态指令集的步骤包括其它子步骤。步骤1006b1a利用运行时期引擎捕获管理器运行时期指令长度。步骤1006b1b根据操作代码从管理器运行时期指令中提取数据项。步骤1006b1c根据操作代码使用提取的数据进行一系列操作。
图11是动态指令集的一个例子的操作流程图。图11中的几个步骤和图10中的相同,为了简洁起见这里不再重复。在步骤1106中处理动态指令集包括一些子步骤。步骤1106a访问存储在文件***段中第二代码段中的***数据。步骤1106b分析此***数据。步骤1606c创建更新的***数据。在步骤1108中操作***数据和***软件包括用更新的***数据代替第二段中的***数据,在步骤1110中控制执行***软件包括在***软件的执行中使用更新的***数据。
图12是动态指令集另一示例的操作流程图。图12中的几个步骤和图10中的相同,为了简洁起见这里就不再重复。步骤1201c在非易失性存储器的代码存储段存储多个代码段。在步骤1206中处理动态指令集包括一些子步骤。步骤1206a访问存储在代码存储段(CSS)中第三代码段中的***数据。步骤1206b分析此***数据。步骤1206c创建更新的***数据。在步骤1208中操作***数据和***软件包括用更新的***数据代替第三代码段中的***数据。在步骤1210中控制***软件执行包括在***软件的执行中使用更新的***数据。
图13是动态指令集第三示例的操作流程图。图13中的几个步骤和图10中的相同,为了简洁起见这里不再重复。步骤1301c在非易失性存储器的代码存储段存储多个代码段。步骤1301d将读写数据加载入易失性存储器。在步骤1306中处理动态指令集包括子步骤。步骤1306a访问易失性储存器中的读写数据。步骤1306b分析此读写数据。步骤1306c创建更新的读写数据。在步骤1308中操作***数据和***软件包括用更新的读写数据代替易失性存储器中的读写数据。控制***软件执行包括在***软件的执行中使用更新的读写数据。
图14是动态指令集操作的第四示例的流程图。图14中的几个步骤和图10中的相同,为了简洁起见这里就不再重复。处理动态指令集包括子步骤。步骤1406a监测***软件的执行以响应操作代码。步骤1406b收集性能数据。步骤1406c存储此性能数据。步骤1406d通过无线链路接口传输存储的数据。在步骤1408中操作***数据和***软件包括在***软件的评估中使用此性能数据。
图15是动态指令集操作的第五示例的流程图。图15中的几个步骤和图10中的相同,为了简洁起见这里就不再重复。步骤1501c在代码存储段非易失性存储器中存储多个代码段。在步骤1503中接收补丁管理器运行时期指令包括接收新代码段。在步骤1508中操作***数据和***软件包括将新代码段加入到代码存储段中,在步骤1510中控制执行***软件包括在***软件的执行中使用新代码段。
可选择地,在步骤1503中接收新代码段包括接收更新的代码段。在步骤1508中操作***数据和***软件包括用更新的代码段代替代码存储段中的***码段。
已经提供了用于在无线通信设备中执行动态指令集的***和方法,从而有助于更新软件并监测软件性能的过程。由于代码段中符号库的排列,以及用表来访问存储器中代码段的起始地址和符号库中符号偏移地址,所以此***非常容易更新。动态指令集的使用可按设备的特殊性质对每种设备进行定制修改。已经举出了几个常用实施例用以阐明动态指令集的可能应用。然而,本发明不仅限于这些实施例。本领域所属技术人员可以想到本发明的其它变化和实施方案。

Claims (38)

1.一种在无线通信设备中执行动态指令集的方法,所述的方法包括:
执行***软件;
启动运行时期引擎;
处理动态指令集;
操作***数据和***软件;及
根据对***数据和***软件的操作控制***软件的执行。
2.如权利要求1所述的方法,还包括:
在处理动态指令集之后,删除动态指令集。
3.如权利要求1所述的方法,其中处理动态指令集包括根据数学和逻辑运算处理指令。
4.如权利要求3所述的方法,还包括接收动态指令集。
5.如权利要求4所述的方法,其中接收动态指令集包括通过用选自无线链路、射频(RF)硬线、可安装的存储器模块和红外接口及逻辑端口接口的接口来接收动态指令集。
6.如权利要求5所述的方法,还包括:
使***软件形成为符号库,每个符号库包括具有相关功能的符号;
将符号库排列进代码段;及
其中启动运行时期引擎包括调用第一代码段中的运行时期库。
7.如权利要求6所述的方法,其中接收动态指令集包括接收在文件***段永久性存储器中的补丁管理器运行时期指令(PMRTI)。
8.如权利要求7所述的方法,其中接收补丁管理器运行时期指令包括接收条件操作代码和数据项;
其中处理动态指令集包括:
使用运行时期引擎读取补丁管理器运行时期指令操作代码;及
根据操作代码执行一系列操作。
9.如权利要求8所述的方法,其中处理动态指令集包括:
利用运行时期引擎捕获补丁管理器运行时期指令的长度;
根据操作代码从补丁管理器运行时期指令中提取数据项;及
在根据操作代码进行的一系列操作中使用所提取的数据。
10.如权利要求9所述的方法,其中将符号库排列进代码段包括在代码段的开始起始符号库并排列符号使其从各自代码段起始地址偏移;
所述的方法还包括:
在相应的起始地址存储代码段的开始;
维护代码段地址表,所述代码段地址表交叉引用代码段标识符与相应起始地址;及
维护符号偏移地址表,所述符号偏移地址表交叉引用符号标识符与相应偏移地址及相应代码段标识符。
11.如权利要求10所述的方法,其中接收补丁管理器运行时期指令包括接收符号标识符;
所述的方法还包括:
使用所述代码段地址表和符号偏移地址表定位与接收的符号标识符相应的符号;
其中响应操作代码执行一系列操作包括:
当定位的符号是数据项时,提取数据;及
当定位的符号是指令时,执行符号。
12.如权利要求8所述的方法,其中处理动态指令集包括:
访问存储在文件***段第二代码段中的***数据;
分析所述的***数据;
创建更新的***数据;
其中操作***数据和***软件包括用更新的***数据代替第二段中的***数据;及
其中控制***软件的执行包括在***软件的执行中使用更新的***数据。
13.如权利要求8所述的方法,还包括:
在代码存储段非易失性存储器中存储多个代码段;
其中处理动态指令集包括:
访问存储在代码存储段第三代码段中的***数据;
分析所述的***数据;
创建更新的***数据;
其中操作***数据和***软件包括用更新的***数据代替第三代码段中的***数据;及
其中控制***软件的执行包括在***软件的执行中使用更新的***数据。
14.如权利要求8所述的方法,还包括:
在代码存储段非易失性存储器中存储多个代码段;
将读写数据装入易失性存储器;
其中处理动态指令集包括:
访问易失性存储器中的读写数据;
分析所述的读写数据;
创建更新的读写数据;
其中操作***数据和***软件包括用更新的读写数据代替易失性存储器中的读写数据;及
其中控制***软件的执行包括在***软件的执行中使用更新的读写数据。
15.如权利要求8所述的方法,其中处理动态指令集包括:
根据操作代码,监测***软件的执行;
收集性能数据;
存储所述性能数据;及
其中操作***数据和***软件包括在***软件的评估中使用所述性能数据。
16.如权利要求15所述的方法,还包括:
通过无线链路接口传输存储的数据。
17.如权利要求8所述的方法,还包括:
在代码存储段非易失性存储器存储多个代码段;
其中接收补丁管理器运行时期指令包括接收新代码段;
其中操作***数据和***软件包括将新代码段加入到代码存储段中;及
其中控制***软件的执行包括在***软件的执行中使用新代码段。
18.如权利要求17所述的方法,其中接收新代码段包括接收更新的代码段;及
其中操作***数据和***软件包括用更新的代码段代替代码存储段中的***码段。
19.一种在无线通信设备中执行动态指令集的方法,所述的方法包括:
使***软件形成为符号库,每个符号库包括具有相关功能的符号;
在代码存储段非易失性存储器中将符号库排列进代码段;
执行***软件;
在文件***段非易失性存储器中,接收包括条件操作代码和数据项的补丁管理器运行时期指令(PMRTI);
调用第一代码段的运行时期库;
处理补丁管理器运行时期指令操作代码;
操作***数据和***软件;及
控制***软件的执行以响应对***数据和***软件的操作。
20.一种在无线通信设备中的动态指令集执行***,所述的***包括:
被分入代码段的可执行***软件和***数据;
用于操作***数据和***软件并控制***软件执行的动态指令集;及
用于处理动态指令集的运行时期引擎。
21.如权利要求20所述的***,其中运行时期引擎可处理动态指令集以执行数学和逻辑运算。
22.如权利要求21所述的***,还包括:
用于接收动态指令集的文件***段非易失性存储器。
23.如权利要求22所述的***,还包括:
接口,通过所述的接口动态指令集可被接收进文件***段,其中所述的接口选自无线链路、射频(RF)硬线、可安装的存储器模块和红外接口及逻辑端口接口。
24.如权利要求23所述的***,其中所述的可执行***软件和***数据包括符号库,每个符号库包括具有相关功能排列进代码段的符号;及
其中运行时期引擎是排列在第一代码段中的运行时期库。
25.如权利要求24所述的***,其中所述动态指令集包括条件操作代码和数据项,以及其中所述动态指令集被组织进补丁管理器运行时期指令(PMRTI)中。
26.如权利要求25所述的***,还包括:
用于存储代码段的代码存储段非易失性存储器。
27.如权利要求26所述的***,其中所述运行时期引擎读取动态指令集操作代码并执行一系列操作以响应操作代码。
28.如权利要求27所述的***,其中所述运行时期引擎可捕获动态指令集的长度以确定是否包括数据项,从所述动态指令集中提取数据项,并在响应操作代码执行一系列操作时使用提取的数据。
29.如权利要求28所述的***,其中所述符号库从代码段的起始位置排列,排列符号使其从各自代码段起始地址偏移;
其中代码存储段包括与代码段起始地址相应的起始地址;
所述的***还包括:
代码段地址表,其可交叉引用代码段标识符与代码存储段中的相应的起始地址;及
符号偏移地址表,其可交叉引用符号标识符与相应的偏移地址及相应的代码段标识符。
30.如权利要求27所述的***,其中所述动态指令集包括符号标识符;及
其中所述运行时期引擎使用代码段地址表和符号偏移地址表定位同所接收的符号标识符相应的符号,并且当定位的符号是数据项时提取数据,当定位的符号是指令时执行符号。
31.如权利要求27所述的***,其中所述***数据存储在文件***段的第二代码段中;
其中所述运行时期引擎访问***数据,分析所述的***数据,创建更新的***数据,用更新的***数据代替第二代码段中的***数据以响应操作代码;及
其中使用更新的***数据来控制***软件的执行。
32.如权利要求27所述的***,其中所述***数据存储在文件***段的第三代码段中;
其中所述运行时期引擎访问***数据,分析所述的***数据,创建更新的***数据,以及响应操作代码用更新的***数据代替第三代码段中的***数据;及
其中使用更新的***数据来控制***软件的执行。
33.如权利要求27所述的***,还包括:
接收读写数据的易失性存储器;
其中所述运行时期引擎访问读写数据,分析所述的读写数据,创建更新的读写数据,以及响应操作代码用更新的读写数据替换易失性存储器中的读写数据;及
其中使用易失性存储器中更新的读写数据来控制***软件的执行。
34.如权利要求27所述的***,其中所述运行时期引擎监测***软件的执行,收集性能数据,响应操作代码在文件***段中存储所述的性能数据;及
其中通过收集用于评估***软件的所述的性能数据来控制***软件的执行。
35.如权利要求34所述的***,其中所述运行时期引擎访问文件***段的性能数据,并响应操作代码通过无线链路接口传输性能数据
36.如权利要求27所述的***,其中文件***段接收含有新代码段的补丁管理器运行时期指令;
其中运行时期引擎响应操作代码将新代码段加到代码存储段中;及
使用新代码段来控制***软件的执行。
37.如权利要求36所述的***,其中文件***段接收含有更新的代码段的补丁管理器运行时期指令;
其中运行时期引擎响应操作代码用更新的代码段代替代码存储段中的***码段;及
使用更新的代码段来控制***软件的执行。
38.一种在无线通信设备中的动态指令集执行***,所述的***包括:
被分成其内排列有符号库的代码段的可执行***软件和***数据;
作为带有操作代码和数据项的动态指令集编制的补丁管理器运行时期指令(PMRTI),用以操作***数据和***软件及控制***软件的执行;
用于接收补丁管理器运行时期指令的文件***段非易失性存储器;及
排列在第一代码段内用于处理动态指令集的运行时期库。
CNB028148320A 2001-07-26 2002-07-22 用于在无线通信设备上执行更新指令的方法 Expired - Fee Related CN1288553C (zh)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US09/917,026 2001-07-26
US09/916,900 2001-07-26
US09/917,026 US7328007B2 (en) 2001-07-26 2001-07-26 System and method for organizing wireless communication device system software
US09/916,460 2001-07-26
US09/916,460 US7159214B2 (en) 2001-07-26 2001-07-26 System and method for compacting field upgradeable wireless communication device software code sections
US09/916,900 US7027806B2 (en) 2001-07-26 2001-07-26 System and method for field downloading a wireless communications device software code section
US09/927,131 2001-08-10
US09/927,131 US7143407B2 (en) 2001-07-26 2001-08-10 System and method for executing wireless communications device dynamic instruction sets
US09/969,305 US7386846B2 (en) 2001-07-26 2001-10-02 System and method for the management of wireless communications device system software downloads in the field
US09/969,305 2001-10-02

Publications (2)

Publication Number Publication Date
CN1537272A true CN1537272A (zh) 2004-10-13
CN1288553C CN1288553C (zh) 2006-12-06

Family

ID=27542295

Family Applications (10)

Application Number Title Priority Date Filing Date
CNB028148320A Expired - Fee Related CN1288553C (zh) 2001-07-26 2002-07-22 用于在无线通信设备上执行更新指令的方法
CNB028148312A Expired - Fee Related CN1275149C (zh) 2001-07-26 2002-07-22 用于管理无线通信设备***软件现场下载的***和方法
CNB028148339A Expired - Fee Related CN1275150C (zh) 2001-07-26 2002-07-22 在无线通信设备中现场升级***软件的设备及方法
CNB028148347A Expired - Fee Related CN1235137C (zh) 2001-07-26 2002-07-23 用于压缩可现场升级的无线通信设备软件代码段的***及方法
CNB028148371A Expired - Fee Related CN1279447C (zh) 2001-07-26 2002-07-23 用于现场诊断无线通信设备***软件的***和方法
CNB028148355A Expired - Fee Related CN1235138C (zh) 2001-07-26 2002-07-23 用于现场下载无线通信设备软件代码段的***及方法
CNB02814838XA Expired - Fee Related CN1288554C (zh) 2001-07-26 2002-07-23 在无线通信设备中更新持久数据的***和方法
CNB02814841XA Expired - Fee Related CN1250035C (zh) 2001-07-26 2002-07-25 用于提高手机重建程序和重新编程的安全性的***及方法
CNB028148398A Expired - Fee Related CN100378661C (zh) 2001-07-26 2002-07-25 用于双向通信和执行动态指令集的***和方法
CNB028148401A Expired - Fee Related CN1310488C (zh) 2001-07-26 2002-07-25 用于对等手机通信的***及方法

Family Applications After (9)

Application Number Title Priority Date Filing Date
CNB028148312A Expired - Fee Related CN1275149C (zh) 2001-07-26 2002-07-22 用于管理无线通信设备***软件现场下载的***和方法
CNB028148339A Expired - Fee Related CN1275150C (zh) 2001-07-26 2002-07-22 在无线通信设备中现场升级***软件的设备及方法
CNB028148347A Expired - Fee Related CN1235137C (zh) 2001-07-26 2002-07-23 用于压缩可现场升级的无线通信设备软件代码段的***及方法
CNB028148371A Expired - Fee Related CN1279447C (zh) 2001-07-26 2002-07-23 用于现场诊断无线通信设备***软件的***和方法
CNB028148355A Expired - Fee Related CN1235138C (zh) 2001-07-26 2002-07-23 用于现场下载无线通信设备软件代码段的***及方法
CNB02814838XA Expired - Fee Related CN1288554C (zh) 2001-07-26 2002-07-23 在无线通信设备中更新持久数据的***和方法
CNB02814841XA Expired - Fee Related CN1250035C (zh) 2001-07-26 2002-07-25 用于提高手机重建程序和重新编程的安全性的***及方法
CNB028148398A Expired - Fee Related CN100378661C (zh) 2001-07-26 2002-07-25 用于双向通信和执行动态指令集的***和方法
CNB028148401A Expired - Fee Related CN1310488C (zh) 2001-07-26 2002-07-25 用于对等手机通信的***及方法

Country Status (9)

Country Link
EP (12) EP1410188A2 (zh)
JP (11) JP4104546B2 (zh)
KR (10) KR100940178B1 (zh)
CN (10) CN1288553C (zh)
AT (9) ATE387658T1 (zh)
AU (9) AU2002319568A1 (zh)
DE (7) DE60205755T2 (zh)
ES (9) ES2300454T3 (zh)
WO (10) WO2003010656A2 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
JP4417123B2 (ja) 2003-02-19 2010-02-17 パナソニック株式会社 ソフトウェア更新方法及び無線通信装置
EP1654640B1 (en) 2003-06-04 2018-08-01 Qualcomm Incorporated Network having customizable generators of sofware updates and mobile electronic devices having customizable updating software
US7873956B2 (en) 2003-09-25 2011-01-18 Pantech & Curitel Communications, Inc. Communication terminal and communication network for partially updating software, software update method, and software creation device and method therefor
US7257583B2 (en) 2004-01-09 2007-08-14 Microsoft Corporation System and method for updating an on-device application catalog in a mobile device receiving a push message from a catalog server indicating availability of an application for download
KR100620729B1 (ko) * 2004-03-31 2006-09-13 주식회사 팬택앤큐리텔 소프트웨어 이미지 생성 방법
EP1757132B1 (en) * 2004-05-18 2013-07-17 Kyocera Corporation Modular data components for wireless communication devices
GB2416876B (en) * 2004-08-03 2007-01-10 Nec Technologies Export file processing within a mobile radio communications device
US7512939B2 (en) * 2004-10-05 2009-03-31 Neopost Technologies System and method of secure updating of remote device software
EP1659810B1 (en) * 2004-11-17 2013-04-10 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Updating configuration parameters in a mobile terminal
US9148409B2 (en) 2005-06-30 2015-09-29 The Chamberlain Group, Inc. Method and apparatus to facilitate message transmission and reception using different transmission characteristics
US8422667B2 (en) 2005-01-27 2013-04-16 The Chamberlain Group, Inc. Method and apparatus to facilitate transmission of an encrypted rolling code
USRE48433E1 (en) 2005-01-27 2021-02-09 The Chamberlain Group, Inc. Method and apparatus to facilitate transmission of an encrypted rolling code
CN101040552B (zh) * 2005-04-18 2010-12-01 捷讯研究有限公司 控制软件版本更新的方法和***
CN100442708C (zh) * 2005-06-17 2008-12-10 上海华为技术有限公司 一种主备备份的方法及***
CN100476728C (zh) * 2005-08-19 2009-04-08 光宝科技股份有限公司 应用程序更新方法及使用上述方法的移动通讯装置
CN100410893C (zh) * 2005-09-28 2008-08-13 联想(北京)有限公司 自行修复嵌入式设备的主控应用程序的方法及设备
CN1980447B (zh) * 2005-12-06 2010-06-16 中兴通讯股份有限公司 一种通信***软件版本的平滑升级方法
CN101401072B (zh) * 2006-03-10 2010-12-15 富士通株式会社 应用补丁筛选装置以及应用补丁筛选方法
EP2025095A2 (en) 2006-06-08 2009-02-18 Hewlett-Packard Development Company, L.P. Device management in a network
EP2047420A4 (en) 2006-07-27 2009-11-18 Hewlett Packard Development Co USER EXPERIENCE AND DEPENDENCE MANAGEMENT IN A MOBILE DEVICE
CN100403263C (zh) * 2006-08-16 2008-07-16 华为技术有限公司 按配置下载设备软件的方法
KR100924647B1 (ko) * 2008-08-07 2009-11-02 주식회사 케이티 모바일 플랫폼 런타임 다이나믹 링킹 라이브러리 관리 방법및 시스템
JP2012523479A (ja) 2009-04-07 2012-10-04 センシエント カラーズ エルエルシー 自己分散性粒子並びにその製造方法及び使用方法
CN101539885B (zh) * 2009-04-23 2011-06-08 大唐微电子技术有限公司 一种无线通信模块软件自主空中升级的方法、装置及***
US8402217B2 (en) * 2009-09-15 2013-03-19 Marvell International Ltd. Implementing RAID in solid state memory
CN102253847A (zh) * 2010-05-19 2011-11-23 宏碁股份有限公司 制作***软件的***及***软件的部署方法
US8756256B2 (en) * 2010-05-26 2014-06-17 Qualcomm Incorporated Method and systems for the management of non volatile items and provisioning files for a communication device with multiple service accounts
JP6290913B2 (ja) * 2012-11-09 2018-03-07 コーヒレント・ロジックス・インコーポレーテッド 多重プロセッサシステムのためのリアルタイム分析及び制御
US10064251B2 (en) * 2013-03-15 2018-08-28 Cree, Inc. Updatable lighting fixtures and related components
CN103345412B (zh) * 2013-07-10 2016-08-24 华为技术有限公司 打补丁的方法及装置
US10652743B2 (en) 2017-12-21 2020-05-12 The Chamberlain Group, Inc. Security system for a moveable barrier operator
WO2019213672A1 (en) * 2018-05-04 2019-11-07 Herdx, Inc. Food supply tracking, verification, and feedback system
US11074773B1 (en) 2018-06-27 2021-07-27 The Chamberlain Group, Inc. Network-based control of movable barrier operators for autonomous vehicles
US11423717B2 (en) 2018-08-01 2022-08-23 The Chamberlain Group Llc Movable barrier operator and transmitter pairing over a network
KR102176204B1 (ko) 2018-10-15 2020-11-09 김용대 유명인 사용물품 기부 중개 서비스 방법
US10997810B2 (en) 2019-05-16 2021-05-04 The Chamberlain Group, Inc. In-vehicle transmitter training
JP7461755B2 (ja) * 2020-02-21 2024-04-04 日立Astemo株式会社 情報処理装置、プログラム更新システム、及びプログラム更新方法

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8901932D0 (en) * 1989-01-28 1989-03-15 Int Computers Ltd Data processing system
FR2662891A1 (fr) * 1990-05-30 1991-12-06 Cit Alcatel Dispositif de telechargement de logiciel pour un terminal de telecommunication.
US5193180A (en) * 1991-06-21 1993-03-09 Pure Software Inc. System for modifying relocatable object code files to monitor accesses to dynamically allocated memory
JPH07182178A (ja) * 1993-02-19 1995-07-21 Nec Corp プリロードモジュール修正システム
US5488648A (en) * 1993-08-17 1996-01-30 Telefonaktiebolaget L M Ericsson Behavior monitoring and analyzing system for stored program controlled switching system
US5845090A (en) * 1994-02-14 1998-12-01 Platinium Technology, Inc. System for software distribution in a digital computer network
JP3140906B2 (ja) 1994-04-12 2001-03-05 株式会社エヌ・ティ・ティ・データ システムファイルの更新及び復元方法
US5734904A (en) * 1994-11-14 1998-03-31 Microsoft Corporation Method and system for calling one of a set of routines designed for direct invocation by programs of a second type when invoked by a program of the first type
JPH08166877A (ja) * 1994-12-13 1996-06-25 Olympus Optical Co Ltd 修正プログラムの実行可能なワンチップマイクロコンピュータ及びrom修正可能なマイクロコンピュータ
DE19502728A1 (de) * 1995-01-28 1996-08-01 Philips Patentverwaltung Telekommunikationsvorrichtung
US5673317A (en) * 1995-03-22 1997-09-30 Ora Electronics, Inc. System and method for preventing unauthorized programming of wireless network access devices
US5699275A (en) * 1995-04-12 1997-12-16 Highwaymaster Communications, Inc. System and method for remote patching of operating code located in a mobile unit
DE19527808C2 (de) * 1995-07-28 1999-04-01 Siemens Ag Verfahren zum Modifizieren der Softwareprozeduren eines Kommunikationssystems
DE19543843C2 (de) * 1995-11-24 2001-02-08 Acer Peripherals Inc Verfahren zur Aktualisierung der Software in einem mikrocomputergestützten Telefon
JP2002515999A (ja) * 1996-08-28 2002-05-28 ウィンド リヴァー システムズ インコーポレイテッド 複数プロセッサーで分割されるソフトウエア診断のためのツール
US6247065B1 (en) * 1996-12-26 2001-06-12 At&T Corp. Messaging platform process
US6023620A (en) * 1997-02-26 2000-02-08 Telefonaktiebolaget Lm Ecrisson Method for downloading control software to a cellular telephone
US5938766A (en) * 1997-03-21 1999-08-17 Apple Computer, Inc. System for extending functionality of a digital ROM using RAM/ROM jump tables and patch manager for updating the tables
SE512110C2 (sv) * 1997-06-17 2000-01-24 Ericsson Telefon Ab L M System och förfarande för att kundanpassa trådlösa kommunikationsenheter
JPH1115689A (ja) * 1997-06-19 1999-01-22 Nec Corp ソフトウェアのデバッグ方法及びデバッグ・プログラムを記録した記録媒体
US5974312A (en) * 1997-07-10 1999-10-26 Ericsson Inc. System and method for updating a memory in an electronic device via wireless data transfer
US6496979B1 (en) * 1997-10-24 2002-12-17 Microsoft Corporation System and method for managing application installation for a mobile device
JPH11141394A (ja) * 1997-11-07 1999-05-25 Nissan Motor Co Ltd 車両制御用メモリ書き換え装置
JPH11146011A (ja) * 1997-11-11 1999-05-28 Nec Corp 電子メールシステム及び電子メールサーバ及び通信端末
JP3337062B2 (ja) * 1997-11-21 2002-10-21 日本電気株式会社 無線データ転送方法及びそのシステム
US6275694B1 (en) * 1997-12-19 2001-08-14 Vlsi Technology, Inc. Method for remotely updating software code for personal handy phone system equipment
US6438711B2 (en) * 1998-07-15 2002-08-20 Intel Corporation Method and apparatus for performing field diagnostics on a computer system
US20020073398A1 (en) * 1998-12-14 2002-06-13 Jeffrey L. Tinker Method and system for modifying executable code to add additional functionality
GB2349485B (en) * 1999-04-23 2003-12-10 Ibm Application management
SE516806C2 (sv) * 1999-05-26 2002-03-05 Ericsson Telefon Ab L M Sätt för inladdning av programvara i en radioterminal, såsom en mobiltelefon, och tillhörande radioterminal
US6282647B1 (en) * 1999-06-02 2001-08-28 Adaptec, Inc. Method for flashing a read only memory (ROM) chip of a host adapter with updated option ROM bios code
FR2800963B1 (fr) * 1999-11-09 2001-12-07 Wavecom Sa Procede de mise a jour d'un programme principal execute par un module de radiocommunication et/ou de donnees associees a ce programme principal, et module de radiocommunication correspondant
US7264532B2 (en) * 2004-12-27 2007-09-04 Tsan-Yao Chen Cup structure

Also Published As

Publication number Publication date
ATE359681T1 (de) 2007-05-15
KR100913659B1 (ko) 2009-08-24
CN1535529A (zh) 2004-10-06
JP4073399B2 (ja) 2008-04-09
WO2003010942A2 (en) 2003-02-06
KR100940178B1 (ko) 2010-02-03
WO2003010942A3 (en) 2003-05-15
JP2005502105A (ja) 2005-01-20
CN1537397A (zh) 2004-10-13
ES2249602T3 (es) 2006-04-01
WO2003010656A3 (en) 2003-11-13
KR20040017352A (ko) 2004-02-26
CN1235138C (zh) 2006-01-04
ATE387658T1 (de) 2008-03-15
EP1410193B1 (en) 2005-09-28
WO2003010663A3 (en) 2003-12-24
AU2002319572A1 (en) 2003-02-17
KR100940180B1 (ko) 2010-02-04
AU2002355308A1 (en) 2003-02-17
JP4106020B2 (ja) 2008-06-25
ATE310354T1 (de) 2005-12-15
JP2008108268A (ja) 2008-05-08
CN1235137C (zh) 2006-01-04
ES2248568T3 (es) 2006-03-16
EP1423959A2 (en) 2004-06-02
EP1610222B1 (en) 2011-03-02
EP1601217A2 (en) 2005-11-30
KR100918162B1 (ko) 2009-09-17
KR100913658B1 (ko) 2009-08-24
JP2004537123A (ja) 2004-12-09
CN1275149C (zh) 2006-09-13
DE60211719D1 (de) 2006-06-29
DE60219536D1 (de) 2007-05-24
EP1410190B1 (en) 2005-08-24
CN1535418A (zh) 2004-10-06
JP4176634B2 (ja) 2008-11-05
AU2002319568A1 (en) 2003-02-17
WO2003010662A2 (en) 2003-02-06
KR20040019334A (ko) 2004-03-05
ATE327628T1 (de) 2006-06-15
ATE302972T1 (de) 2005-09-15
EP1601217B1 (en) 2007-04-11
JP2004537120A (ja) 2004-12-09
KR100984895B1 (ko) 2010-10-01
KR100940179B1 (ko) 2010-02-03
ES2284112T3 (es) 2007-11-01
WO2003010658A2 (en) 2003-02-06
WO2003010932A3 (en) 2004-04-08
CN1310488C (zh) 2007-04-11
EP1410193A2 (en) 2004-04-21
EP1410665B1 (en) 2005-09-07
WO2003010668A2 (en) 2003-02-06
EP1410209A2 (en) 2004-04-21
EP1410188A2 (en) 2004-04-21
DE60206055T2 (de) 2006-06-29
EP1601217A3 (en) 2006-05-10
EP1410665A2 (en) 2004-04-21
CN1537276A (zh) 2004-10-13
DE60205755D1 (de) 2005-09-29
ES2253553T3 (es) 2006-06-01
KR20040017351A (ko) 2004-02-26
JP2004537121A (ja) 2004-12-09
EP1423959B1 (en) 2006-05-24
DE60207429T2 (de) 2006-07-27
WO2003012639A2 (en) 2003-02-13
EP1610222A2 (en) 2005-12-28
CN1288553C (zh) 2006-12-06
CN1535422A (zh) 2004-10-06
AU2002319573A1 (en) 2003-02-17
KR20040022464A (ko) 2004-03-12
WO2003013103A2 (en) 2003-02-13
KR100911604B1 (ko) 2009-08-07
WO2003012639A3 (en) 2003-12-24
CN1535423A (zh) 2004-10-06
JP4077408B2 (ja) 2008-04-16
CN100378661C (zh) 2008-04-02
ATE305632T1 (de) 2005-10-15
EP1410189B1 (en) 2008-02-27
JP4101752B2 (ja) 2008-06-18
DE60207429D1 (de) 2005-12-22
CN1279447C (zh) 2006-10-11
DE60205755T2 (de) 2006-06-29
EP1410189A2 (en) 2004-04-21
DE60211704D1 (de) 2006-06-29
ES2299587T3 (es) 2008-06-01
EP1410190A2 (en) 2004-04-21
WO2003010662A3 (en) 2003-12-24
EP1425894A2 (en) 2004-06-09
ES2263799T3 (es) 2006-12-16
JP2004537925A (ja) 2004-12-16
DE60206389D1 (de) 2006-02-09
WO2003010664A3 (en) 2003-12-24
EP1610222A3 (en) 2007-01-31
JP2005505813A (ja) 2005-02-24
CN1275150C (zh) 2006-09-13
DE60219536T2 (de) 2008-01-03
KR20040022463A (ko) 2004-03-12
ES2247355T3 (es) 2006-03-01
KR20040015823A (ko) 2004-02-19
WO2003010663A2 (en) 2003-02-06
KR100817387B1 (ko) 2008-03-27
KR20040022462A (ko) 2004-03-12
ATE382159T1 (de) 2008-01-15
EP1410191A2 (en) 2004-04-21
CN1535421A (zh) 2004-10-06
WO2003013103A3 (en) 2004-04-08
JP4310186B2 (ja) 2009-08-05
ATE304272T1 (de) 2005-09-15
ATE327536T1 (de) 2006-06-15
ES2263796T3 (es) 2006-12-16
WO2003010932A2 (en) 2003-02-06
DE60206389T2 (de) 2006-07-13
JP4104546B2 (ja) 2008-06-18
CN1288554C (zh) 2006-12-06
DE60211704T2 (de) 2007-05-10
EP1410192B1 (en) 2007-12-26
DE60206055D1 (de) 2005-10-13
JP2004538693A (ja) 2004-12-24
WO2003010664A2 (en) 2003-02-06
KR100932058B1 (ko) 2009-12-15
JP2004537899A (ja) 2004-12-16
KR20040022460A (ko) 2004-03-12
KR20040022461A (ko) 2004-03-12
AU2002319569A1 (en) 2003-02-17
AU2002319576A1 (en) 2003-02-17
DE60211719T2 (de) 2007-01-11
EP1425894B1 (en) 2005-11-16
WO2003010656A2 (en) 2003-02-06
CN1535419A (zh) 2004-10-06
CN1250035C (zh) 2006-04-05
KR20040022459A (ko) 2004-03-12
EP1410192A2 (en) 2004-04-21
AU2002328167A1 (en) 2003-02-17
AU2002319577A1 (en) 2003-02-17
EP1410209B1 (en) 2006-05-24
JP4278513B2 (ja) 2009-06-17
WO2003010668A3 (en) 2003-09-25
WO2003010658A3 (en) 2003-12-24
AU2002319570A1 (en) 2003-02-17
CN1535420A (zh) 2004-10-06
JP2004537895A (ja) 2004-12-16
ES2300454T3 (es) 2008-06-16
JP2004537209A (ja) 2004-12-09

Similar Documents

Publication Publication Date Title
CN1288553C (zh) 用于在无线通信设备上执行更新指令的方法
EP1973035B1 (en) System and method for the management of wireless communications device system software downloads in the field
US20050026603A9 (en) System and method for the management of wireless communications device system software downloads in the field
CN104199706A (zh) 一种eMMC的固件升级方法及其设备
CN103677931B (zh) 一种软件搬家的方法及装置
CN1309787A (zh) 改变无线网络中模块终端的功能性
CN105159673A (zh) 一种设置控件样式的方法和装置
US9554268B2 (en) System and method for updating persistent data in a wireless communications device
CN101770508B (zh) 移动通信终端中的数据访问方法和设备
CN100370750C (zh) 一种用户终端管理方法
KR20140095903A (ko) 사용자 디바이스 기반 매쉬업 서비스 제공 방법 및 장치

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
C56 Change in the name or address of the patentee

Owner name: KYOCERA CO.,LTD.

Free format text: FORMER NAME OR ADDRESS: KYOCERA WIRELESS CORP.

CP03 Change of name, title or address

Address after: American California

Patentee after: Kyocera Wireless Corp.

Address before: American California

Patentee before: Kyocera Wireless Corp.

ASS Succession or assignment of patent right

Owner name: KYOCERA CORP.

Free format text: FORMER OWNER: KYOCERA WIRELESS CORP.

Effective date: 20110630

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: STATE OF CALIFORNIA, THE USA TO: KYOTO, JAPAN

TR01 Transfer of patent right

Effective date of registration: 20110630

Address after: Kyoto Japan

Patentee after: Kyocera Corp.

Address before: American California

Patentee before: Kyocera Wireless Corp.

C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Kyoto Japan

Patentee after: KYOCERA Corporation

Address before: Kyoto Japan

Patentee before: Kyocera Corp.

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

Granted publication date: 20061206

Termination date: 20160722

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