CN102939773B - 用于管理具有多个服务账户的通信装置的非易失性项目及预备文件的方法及系统 - Google Patents

用于管理具有多个服务账户的通信装置的非易失性项目及预备文件的方法及系统 Download PDF

Info

Publication number
CN102939773B
CN102939773B CN201180029327.6A CN201180029327A CN102939773B CN 102939773 B CN102939773 B CN 102939773B CN 201180029327 A CN201180029327 A CN 201180029327A CN 102939773 B CN102939773 B CN 102939773B
Authority
CN
China
Prior art keywords
nonvolatile memory
item value
value
operator
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201180029327.6A
Other languages
English (en)
Other versions
CN102939773A (zh
Inventor
约吉施·图纳瓦特
萨米尔·B·塔卡尔
比利·A·奥斯特拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN102939773A publication Critical patent/CN102939773A/zh
Application granted granted Critical
Publication of CN102939773B publication Critical patent/CN102939773B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/183Processing at user equipment or user record carrier

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Transceivers (AREA)
  • Telephone Function (AREA)

Abstract

方法及系统使得配备有软件定义的基于无线电的芯片组模块的通信装置能够无缝地对所述通信装置进行重新编程以在各种服务提供商网络中的任一者上操作。通过对配备有软件定义的基于无线电的芯片组模块的通信装置进行重新编程,所述通信装置可以支持UMTS及CDMA通信网络两者上的通信。提供一种环境,其允许用户快速且高效地在支持通信的服务提供商账户之间切换。

Description

用于管理具有多个服务账户的通信装置的非易失性项目及预备文件的方法及系统
相关申请案
本申请案与以下申请案有关:2009年5月17日申请的标题为“用于对具有多个服务账户的通信装置进行编程的方法及设备(MethodandApparatusforProgrammingaCommunicationdevicewithMultipleServiceAccounts)”的第12/467,281号美国专利申请案;2009年5月17日申请的标题为“用于追踪对具有多个服务帐号的通信装置的编程的方法及设备(MethodandApparatusforTrackingtheProgrammingofaCommunicationdevicewithMultipleServiceAccounts)”的第12/467,282号美国专利申请案;2009年4月28日申请的标题为“用于一般性处置对计算机蜂窝无线卡的运营商特定预备的方法(MethodforGenericallyHandlingCarrierSpecificProvisioningforComputerCellularWirelessCards)”的第12/431,050号美国专利申请案,每一申请案的整个内容以引用的方式并入本文中。
技术领域
本发明大体上涉及预备及编程蜂窝通信装置,且更具体来说涉及用于跨多种技术及/或多个运营商预备及编程单个蜂窝通信装置/单元上的多个服务提供商账户的方法及设备。
背景技术
传统上,蜂窝通信装置经设计及编程以在使用特定技术的特定运营商的网络上操作。运营商经常会试图通过提供独特的服务、特征及通信装置来吸引更多有潜力的客户接受其特定运营商网络服务。然而,因为迫使用户仅使用经设计及编程而配合特定运营商的网络使用的特定装置,所以这种做法往往让用户难以接受。
为了让用户有能够配合任何运营商网络操作的通信装置的灵活性,可以在通信装置上配备软件定义的基于无线电的芯片组模块,例如高通的芯片组。这些软件定义的基于无线电的芯片组模块允许通信装置产生、编码/解码及调制/解调可编程数字信号处理器(DSP)内的数据信号。可编程DSP使得通信信号能够由软件定义而符合任何通信技术(即,GSM/UMTSv.CDMA)的波形、频率及数据包要求。通过重新编程DSP以产生具有不同特性的信号,可以使通信装置产生与任何运营商的独特通信网络(无论特定运营商利用的是什么通信技术)兼容的通信信号。因此,配备有此软件定义的基于无线电的芯片组模块的通信装置可以向任何运营商预订获得通信支持。
虽然配备有此软件定义的基于无线电的芯片组模块的通信装置能够经编程以在几乎每个运营商的通信网络上操作,但是为了在运营商的通信网络上正确操作,还必须针对选定运营商的网络正确地预备通信装置。每个运营商要求实施许多独特的参数值,这些参数值不但在运营商之间不同,而且甚至可能在同一个运营商支持的账户之间不同。这种实施方案称为通信装置的预备。鉴于多种多样的通信装置操作、不同运营商提供的可用特征组及许多可能的预备参数,难以实现对此些通信装置的高效编程及预备。
发明内容
提供各种实施例方法及系统来分类及存储多个运营商的非易失性预备数据参数,使得经适当配备的通信装置可以在许多不同运营商通信网络中的任一者上操作。此通信装置可以包含基于软件的无线电芯片组模块,使得其能够与所有技术类型(包含UMTS、CDMA及GPS)的蜂窝网络通信。
附图说明
并入本文中并构成本说明书的部分的附图说明本发明的示范性实施例,且连同上文给出的一般性描述及下文给出的详细描述一起用以阐释本发明的特征。
图1是描绘能够支持各种实施例的通信装置的典型组件的框图。
图2是在配备有软件定义的基于无线电的芯片组模块的通信装置内操作的软件模块的硬件/软件架构图。
图3是注解文件内包含的各种类别的信息的框图。
图4是识别各种运营商预备图像中使用的各种类别的非易失性(NV)项目的图表。
图5说明静态及动态多路复用的环境中的各种NV项目值。
图6是说明根据实施例的可以经实施以读取NV项目值及将NV项目值写入到快闪存储器中的实例步骤的过程流程图。
图7是说明根据实施例的可以经实施以提供技术锁的实例步骤的过程流程图。
图8A及8B是说明根据实施例的可以经实施以安装用于支持通信装置上的通信的选定运营商的适当软件模块及NV项目的实例步骤的过程流程图。
具体实施方式
将在下文中参看附图更详细地描述本发明的系统、装置、设备、方法及机器可读媒体,附图中展示了本发明的多个方面。然而,可以许多不同形式体现所述系统、装置、设备、方法及机器可读媒体,且不应将其解释为限于本文陈述的方面;事实上,提供当前方面以使得主题揭示将是详尽且完整的,且将把本发明的范围传达给所属领域的技术人员。相同标号始终指代相同元件。
在此描述中,术语“示范性”在本文中意味着“充当实例、例子或说明”。不必将本文中描述为“示范性”的任何实施方案解释为与其它实施方案相比为优选或有利的。
在本文中使用时,术语“通信装置”意在涵盖可能存在或未来将开发的任何形式的可编程计算机,其实施用于无线语音及数据通信的通信模块,包含例如蜂窝电话、个人数据助理(PDA)、掌上计算机、膝上及笔记型计算机、无线电子邮件接收器(例如,装置)、多媒体有因特网功能的蜂窝电话(例如,Blackberry)及类似的个人电子装置,其包含无线通信模块、处理器及存储器。在优选实施例中,通信装置是具有软件定义的基于无线电的芯片组模块的便携型计算机。
通常,蜂窝通信网络的各个操作商(通常称为运营商)已对其网络付出了巨大投资,并且基于服务及特征组在市场上彼此竞争。因此,运营商有经济方面的原因限制对其网络的接入。因此,运营商通常会尝试控制谁被准予接入其通信网络。运营商控制对其通信网络的接入的一种常规的方式是通过限制哪些通信装置被准予接入运营商的通信装置。
常规的蜂窝通信装置使用两种竞争技术中的一者。经设计以根据所述竞争技术中的一者操作的通信装置不根据另一者操作,且反之亦然。这些网络技术中的一者是全球移动电信系统(UMTS)。UMTS是经设计以接替全球移动通信系统(GSM)技术的第三代(3G)技术。UMTS有时候称为3GSM。第二种网络技术是码分多址(CDMA)。虽然这两种竞争的技术之间存在许多差异,但是根本上UMTS实施时分多路复用方案,而CDMA(正如其名称所暗示)实施基于代码的多路复用方案。在UMTS网络中,网络的总带宽中的一部分被作为信道分配给通信装置。于是,网络基站在很短的时间量中选择性地“收听”所分配的信道中的每一者,以便向通信装置发送语音及/或数据信息,及从通信装置接收语音及/或数据信息。基站仅可在很短的时间量中选择性地收听所分配的信道,因为其还必须收听分配给在网络上操作的其它通信装置的其它信道。虽然有效,但是UMTS方案受到其有限带宽的妨碍,并且需要使单个信道专用于单个通信装置。
对照之下,在CDMA网络中,每一信道可以由多个通信装置利用。为了区分从在同一分配的信道上操作的不同通信装置接收的信息,给每一通信装置指派一不同的编码偏移,其中对其语音及/或数据信息进行编码。通过选择性地切换解码代码偏移,基站可以对从在同一分配的信道上操作的多个通信装置接收的信息进行解码。这很大程度上增加了在相同量的总带宽上服务于更多通信装置的能力。
除了根据竞争技术中的每一者实施的多路复用及编码方案之外,操作竞争的通信网络的各个服务提供商还可修改在其相应通信网络上发送及接收的通信信号的其它方面。这允许每个运营商彼此区分其网络,且在一些例子中向其客户提供区分特征。这些方面可包含通信信号波形、频率、幅值等等。
为了在特定运营商的网络上正确地操作,通信装置必须配备有必要的硬件来用服务提供商的网络需要的正确调制及编码方案来产生适当的波形。由于两个竞争网络之间使用的波形类型、调制及编码方案的基本差异,配备有在UMTS技术网络上操作的必要硬件的通信装置无法在CDMA技术网络上操作,且反之亦然。
运营商控制对其通信网络的接入的第二种常规的方式是通过创建仅可从运营商直接接收的独特预备信息图像。在未将适当的预备图像加载到通信装置的非易失性存储器中的情况下,通信装置可能并不接入运营商的通信网络。通过产生运营商特有的预备图像,运营商可以限制使用相同通信技术(即UMTSvs.CDMA)操作的通信装置接入运营商的网络,仅限于那些使用适当的通信技术及适当的预备图像的通信装置。
需要被加载到蜂窝通信装置上的预备信息包含通信装置需要用来接入网络的信息、待由通信装置发射到网络的识别符及用以使得通信装置无论位于何处均能够连接到蜂窝网络的信息。确切地说,需要通知通信装置用于连接到特定运营商的网络的频率及接入代码。此外,需要在通信装置上编程有识别代码,其将把所述识别代码发射到运营商的网络,使得运营商将把通信装置辨识为经授权以接入网络。预备信息还将包含称为优选漫游列表(PRL)的数据,其是待在主要网络不可用时使用的一组运营商及网络接入频率。除了此与预订有关的数据之外,预备信息还可包含特征旗标及定义,其通过将特定变量设置成特定值来激活通信装置上的特征及应用程序。举例来说,一个运营商可以选择支持3G标准中的特定任选特征,且通过设置预备中的相关联的旗标及数据值来进行此操作。出于商业原因选择不支持所述任选特征的第二运营商将在其预备数据中包含与此特征相关联的不同的一组旗标及数据。
通常将预备信息存储在收发器电路板上的非易失性(NV)存储器中,例如快闪存储器。这确保基本预备信息始终可供通信装置使用以连接到网络。因此,将预备信息称为包含各种NV项目。每一NV项目可以包含值或数据阵列。每一NV项目可以由运营商用来执行功能或特征组。目前,存在几千种可能的NV项目。常规上,通信装置制造商针对特定运营商研发出特定装置型号。因为特定装置型号是针对特定运营商设计及研发的,所以通信装置的制造商可以在快闪存储器中设置各种NV项目及NV项目值,使得通信装置及其功能及应用程序中的每一者在特定运营商的通信网络上正确工作。为了允许通信装置在多个运营商上起始通信,可能每次选择新运营商都需要更改NV项目及NV项目值。本文中揭示的各种实施例允许修改及修订存储在含有软件定义的通信模块的通信装置中的NV项目及NV项目值。
为了在特定运营商的通信网络上维持通信,通信装置必须满足某些要求。为了满足这些需要,通信装置所执行的软件实施各种NV项目及NV项目值。因此,对于在每一可能的运营商网络上操作的每一装置,可能存在一不同的预备/注解文件图像。每个运营商可以认证所述预备/注解文件图像,以确保执行预备图像的每一通信装置不会损害运营商的通信网络或影响在运营商的网络上创建的其它通信链路或其它通信装置。每一预备图像不仅可改变指派给每一NV项目的值,而且可以改变运营商特定的预备图像中包含的NV项目。运营商特定的预备图像不需要包含用于所有可能的NV项目的值。实际上,许多NV项目不包含在运营商的预备图像中,因为许多NV项目与不一定是由所有运营商提供的各种特征组有关。举例来说,一些NV项目与全球定位系统(GPS)应用有关。如果运营商不在其特征组中提供GPS应用,那么用于所述运营商的预备图像可能不包含对所述NV项目的任何参考。运营商还可通过改变指派给特定NV项目的值的格式来区分其预备图像与另一运营商的预备图像。
对于大多数预备图像共有的NV项目,每一运营商预备图像具有不同的值或用于特定共用NV项目的值的不同格式。这些值存储在通信装置的非易失性存储器中,供各种软件函数调用来存取。当针对特定运营商的软件构造试图在通信装置上执行功能时,所述软件构造可以尝试存取特定NV项目值。为了让软件正确执行,用于特定NV项目的值不但必须存储在正确的NV存储器位置中,而且其还必须具有正确的格式及值。否则,在通信装置上执行的软件将不能够正确执行功能。举例来说,如果未将正确的信道频率与用于选定运营商的正确值存储在适当NV存储器位置中,则当在通信装置上执行的软件试图在运营商的通信网络上起始调用时,将不接入正确的信道频率,且调用将失败。
此外,一些NV项目值不仅是运营商特有的,而且进一步是特定用户在运营商下的预订账户特有的。当用户起始预备过程时,向用户的预订账户指派一些NV项目值。举例来说,电话号码、用户姓名、密码等等可能不仅是运营商的预备图像特有的,而且进一步是每一个体用户的预订账户特有的。因此,用于一个预订账户的预备图像可能不同于用于不同的预订账户的预备图像,虽然同一个运营商使用同一通信技术(即UMTS、CDMA)支持这两个预订账户。
在一些设置中,例如订户身份模块(SIM)卡或类似的R-UIM卡的可装卸智能卡可允许用户交换加载到通信装置中的预备数据,而不需要运营商介入。用于不同运营商的预备信息可以存储在可装卸智能卡上。因为每张智能卡可以存储不同运营商的预备数据,所以用户可以用物理方式交换通信装置中的智能卡,以针对主要服务使用不同的运营商网络。然而,因为需要用物理方式交换智能卡,所以需要用户携带多张智能卡。此外,智能卡的物理交换很麻烦。最近,使用智能卡仍然不允许配备有在UMTS技术网络上操作所必要的硬件的通信装置在CDMA技术网络上操作,且反之亦然。
如上所述,常规通信装置已经配备及设计有硬件定义的无线电芯片组模块。因此,常规通信装置经设计以根据单个一种通信技术(例如GSM/UMTSv.CDMA)操作。虽然此些常规通信装置帮助运营商限制对其通信网络的接入,但是此些装置设计因为让用户无法配合任何运营商使用其通信装置,所以往往让用户难以接受。举例来说,拥有CDMA类型的通信装置的用户可能不能够在只有UMTS运营商网络操作的地区使用所述通信装置,且反之亦然。
此外,常规通信装置已经经过设计以配合单个运营商的通信网络操作。因此,常规通信装置的非易失性存储器可仅存储单个运营商的预备图像。如果用户试图针对另一运营商重新预备所述通信装置(假设相同通信技术,即UMTSvs.CDMA),则第一运营商的预备图像被第二运营商的预备图像盖写。第一运营商的包含用户的预订账户特有的任何NV项目值的预备图像丢失。因此,如果用户试图用第一运营商的预备图像来重新预备通信装置,则用户的预订账户特有的NV项目可能丢失。因此,可能会向用户指派新电话号码,或者要求用户重新输入用户姓名、密码等等。本质上每当用户试图重新预备通信装置时就向用户提供全新的预订账户。
为了克服一些这些困难且向用户提供配合现存的几乎任何运营商来使用其通信装置的灵活性,可以给新通信装置配备软件定义的基于无线电的芯片组模块,例如高通的此些软件定义的基于无线电的芯片组模块产生、编码/解码及调制/解调可编程数字信号处理器(DSP)内的数据信号。可编程DSP使得通信信号能够由软件定义而符合任何通信技术(即,GSM/UMTSv.CDMA)的波形、频率及数据包要求。通过重新编程DSP以产生具有不同特性的信号,可以使得通信装置产生与任何服务提供商的独特通信网络兼容的通信信号。因此,配备有软件定义的基于无线电的芯片组模块的通信装置可以向任何运营商预订获得通信支持,不论需要哪种通信技术。
然而,为了在任何运营商上正确地操作,即使配备有正确编程的软件定义的基于无线电的芯片组模块的通信装置也必须针对选定运营商加以正确预备。此前重新编程及重新预备配备有软件定义的基于无线电的芯片组模块的通信装置的尝试需要完全更换整个软件构造以及预备图像。此重新编程及重新预备可能会被认为耗时并且低效。此外,对软件构造的微小部分的更新将需要对更新后的软件构造进行完全的重新编程。
本文中揭示的各种设备及方法是针对对配备有此些软件定义的基于无线电的芯片组模块的通信装置进行高效的编程及预备。各种实施例设备及方法利用注解文件来修改/更新软件构造及预备图像。通过将运营商的预备信息中包含的一组可能的NV项目分类,可以将运营商的软件构造及预备图像需要的NV项目的值高效地封装在小型二进制格式文件中。对注解文件的更新可能会通过指导软件构造实施不同的NV项目及/或NV项目值来实行对软件构造的更新。因为注解文件的大小显著小于完整的软件构造,所以可以用很高的速度及效率对软件构造进行更新且将所述更新发射到通信装置。注解文件包含NV项目值本身或者对存储器位置及槽(其中各种NV项目的值先前已存储在存储器中)的索引。在大多数情况下,注解文件是支持通信的每一运营商特有的。然而,在一些例子中,注解文件可由多个运营商共享或共用。在不同运营商操作具有类似预备要求(即类似技术、特征、应用程序等等)的类似网络时,可能就是这种情况。因此,可以针对多个运营商实施通用注解文件。通过提取及剖析通用注解文件中包含的信息(以及对应的软件构造),通信装置10可经配置以在多个运营商网络中的任一者上操作。这可允许用户在多个运营商的网络覆盖中的一者不如多个运营商的网络中的另一者好的地区中无缝地继续通信。
图1描绘能够支持各种实施例的通信装置10的典型组件。通信装置10包含处理器191或双重(或更多)处理器191a及191b,其耦合到内部存储器192及用户接口显示器11。通信装置还可包含存储单元193,例如硬盘驱动器,其能够存储大容量的数据。通信装置10还可包含软件定义的通信模块20,其能够在多个服务提供商通信网络中的任一者上操作。软件定义的通信模块20可包含快闪存储器24及文件系统26,其可存储NV项目的索引表,供在针对选定服务提供商修改装置的软件操作时使用。快闪存储器24可包含引导信息块25及嵌入快闪文件系统26。快闪文件系统26可包含许多用于为当前未使用的服务提供商账户维护NV项目的文件。嵌入文件系统26的组件中的一者可以是NV项目,如下文更详细论述。通信装置可进一步包含内部存储器192,其为系统存储器项目提供存储。内部存储器192可以是SDRAM型存储器。
通信装置10可以包含天线194,用于发送及接收电磁辐射,所述天线连接到软件定义的通信模块20,所述通信模块耦合到处理器191。此外,通信装置10包含:扬声器18,用以产生声频声音;及麦克风19,用于感测声音,例如接收用户的语音。麦克风19及扬声器18两者均可经由声码器199连接到处理器191,声码器199将从麦克风19接收的模拟电信号转变为数字代码,并将从处理器191接收的数字代码转变为模拟电信号,扬声器18可将所述模拟电信号转变为声波。在一些实施方案中,可包含声码器199作为处理器191的电路及编程的一部分。通信装置通常还包含小键盘13及菜单选择按钮或摇臂开关12,用于接收用户输入。
处理器191可为任何可编程微处理器、微型计算机或多处理器芯片,其可通过软件指令(应用程序)来配置以执行各种功能,包含下述各种实施例的功能。在一些通信装置中,可提供多个处理器191,例如一个处理器专用于无线通信功能,且一个处理器专用于运行其它应用程序。在一些通信装置10中,可以提供多个处理器191a、191b以在其之间共享无线通信功能及/或应用程序。通常,在软件应用程序被存取且加载到处理器191中之前,其可存储在内部存储器192中。在一些通信装置中,处理器191可包含足以存储应用程序软件指令的内部存储器。在一些通信装置中,处理器191包含在软件定义的通信模块20中,例如在高通的中,除了信号产生器及调制解调器电路之外还包含两个处理器。
图2是配备有软件定义的基于无线电的芯片组模块的通信装置上的软件模块的硬件/软件架构图。如图2所示,通信装置10包含软件定义的基于无线电的芯片组通信模块20(通信模块),例如高通的软件模块及动态链接库(DLL)可以由制造商加载到通信装置10的硬盘驱动器或存储器存储单元上。在一些例子中,通信装置10可以预先加载有用于特定运营商的特定软件模块。在其它例子中,通信装置10可以预先加载有通用软件模块,其可由软件构造用于大多数运营商(如果不是用于所有运营商)。在其它实施例中,每当用户激活新运营商下的新账户时,便可将软件模块及DLL与动态预备NV项目一起加载到通信装置的存储器中。
为了在软件定义的基于无线电的芯片组内重新编程DSP以产生与选定运营商网络兼容的数据信号,通信装置10必须加载用于选定运营商的适当软件构造。每一运营商的软件构造可以包含用以产生、编码及调制待在服务提供商的通信网络上正确载运的数据信号的必要指令,并且包含用以实行服务提供商提供的所有额外特征的必要编程。通过选择性地启用不同运营商的适当软件构造,通信装置可能能够在一个或一个以上运营商支持的多个账户之间来回切换。
在先前重新编程软件定义的基于无线电的芯片组通信模块20的尝试中,将整个软件构造写入到装置10的存储器缓冲器中,且将预备图像写入到快闪存储器24中。最近的增强允许通信装置执行更小得多的注解文件。注解文件向处理器提供配置各种软件模块以产生用于特定运营商的完整软件构造的指示。因为注解文件的大小显著小于软件构造,所以注解文件更新起来容易很多。在一实施例中,提供额外的二进制格式注解文件(例如(UNDP高通压缩注解,也称为UQCN)),其对NV项目、PRL及选定运营商特有的任何非易失性设置进行编码。额外注解文件可连同运营商特定的软件图像一起作为单独文件加载,或者捆绑在运营商特定的软件图像内。注解文件指令软件构造可从哪些位置检索用于不同运营商的各种NV项目值,以及可以在哪些位置存储接收到的NV项目值的副本。
每当用户选择启用不同运营商账户时,用户可以启动用于选定运营商的各别连接管理器(61、62、63)或通过共用连接管理器60。每个运营商的连接管理器可以包含注解文件(例如,通用高通注解文件(UQCN)),其指令共用应用程序编程接口(C-API)40在多接口模块30内检索适当DLL及软件模块,以产生用于选定运营商的准确软件构造图像,且从存储器中检索选定NV项目值,且将其放置到通信模块20的快闪存储器24中。虽然整个软件构造可以包含大量软件模块及DLL,但是注解文件可以是可以容易地更新的小型离散文件。对注解文件的更新可以允许运营商通过指令C-API40及多接口模块30检索不同的预先存储的软件模块或NV项目值来快速且容易地修改其软件构造。对照之下,常规的软件构造仅可通过加载全新的软件模块及DLL来更新。通常,注解文件可以在大约10kb,这显著小于软件构造的存储大小。因此,通过发射小得多的注解文件,运营商可能能够快速且高效地对软件构造及预备图像进行改变。
图3说明注解文件内包含的各种信息块中的一些,其可以用来在通信装置10中产生准确的软件构造及预备图像。举例来说,注解文件可以包含通信装置锁数据301。如下文更详细描述,通信装置锁数据301可以用来将通信装置10限于特定运营商账户。注解文件还可包含版本号数据302,其允许通信装置10的处理器验证通信装置10具有注解文件的最新近且更新的版本,且因此具有最新近且更新的软件构造及预备图像。
注解文件还可包含启用运营商特定特征的数据。举例来说,注解文件可包含NV项目值,其启用特定运营商的GPS特征303。注解文件的替代版本可以与替代NV项目值一起加载到通信装置10上,所述替代NV项目值停用通信装置10的GPS特征功能性。以此方式,运营商可能能够通过向识别出的通信装置发射新注解文件,根据预订级别来选择性地启用及停用各种特征。类似地,注解文件可以包含与NV项目有关的数据,其由制造通信装置10的厂家预先存储在通信装置的存储器中。
如下文更详细论述,当制造通信装置10时,制造商可以将若干NV项目值预先加载到存储器中。这些NV项目中的每一者存储在特定指派的存储槽中。厂家NV项目索引304可以包含当选择启用特定运营商的账户时通信模块20检索与特定运营商有关的NV项目必要的信息。类似地,每当用户激活特定运营商下的新账户时,可以从运营商特有的注解文件中下载各种NV项目值,且将其存储在存储器中。可以产生这些NV项目值的副本,且将其存储在特定指派的存储槽中供后续检索。运营商NV项目索引可以包含含有这些NV项目值的特定指派的存储槽的记录。
与厂家NV项目索引对照之下,可能直到用户选择激活选定运营商下的账户,才实际上产生NV项目值的副本及将其存储在存储槽中。然而,一旦已经激活了账户,就可产生特定运营商NV项目值的副本,且将其存储在预先指派的存储槽中。预先指派的存储槽的索引可以容纳在运营商NV项目索引305内。
其它信息可以容纳在特定运营商特有的注解文件中,且直到加载了全新的软件构造才改变所述信息。此静态UQCN数据306可以包含(例如)SCI、MIP、再试等等。此外,注解文件可以包含多路复用的UQCN数据307。举例来说,此多路复用的UQCN数据可以包含优选漫游列表(PRL)、与启用的运营商账户相关联的移动目录号码(MDN)、包数据协议(PDP)简档等等。
前述项目中的每一者都是当前启用的运营商账户特有的,且在启用新运营商账户时可以在非易失性存储器中被盖写。
如上所述,当用户想要激活不同的运营商账户时,不但必须加载适当的软件构造,而且还必须将适当的NV项目简档值加载到通信模块20的快闪存储器24中。由于大量的可能NV项目出现在简档中,所以对所有NV项目的管理可能变得困难。因此,实施例将所有可能的NV项目分类到单个文档解决方案中,以便管理、追踪及分配所有可能的服务提供商的NV项目设置及厂家预备文件。
图4是识别NV项目的主要类别的示范性数据表以及属于识别出的类别的NV项目的实例。图4中识别的主要类别是:厂家默认、厂家预备、多路复用/厂家预备、多路复用的软件、UQCN、多路复用的UQCN,及软件。
NV项目的厂家默认类别可包含在制造通信装置10时由厂家编程的NV项目。举例来说,此类别的NV项目可以包含与通信装置的射频(RF)校准程序一起使用的参数。举例来说,这些NV项目可以包含通信装置使用的频带偏好(bandpreference)。无论当前在通信装置上启用哪个服务提供商账户,这些NV项目的值通常并不改变。此外,无论当前在通信装置上启用的服务提供商账户使用哪种通信技术,这些NV项目的值通常并不改变。
将NV项目的第二类别识别为厂家预备项目。类似于厂家默认项目,这些项目的值是在制造通信装置10时由厂家指派。厂家预备类别的NV项目是由各别运营商指定。举例来说,各别服务提供商可能想要包含特定10.key文件、增强漫游指示符(ERI)文件、卖方标识/产品标识(VID/PID)或笔记本锁。此类别中的许多NV项目是每个各别运营商或OEM特有的,且可以具有独特的运营商/OEM特定值。在许多情况下,其它运营商或OEM将不在其独特简档中包含相同NV项目。
第三类别的NV项目可以包含多路复用的厂家预备的项目。类似于NV项目的厂家预备类别,多路复用的厂家预备项目是在通信装置10制造期间由厂家预先加载到存储槽中的NV项目值。多路复用的厂家预备的NV项目存储在特定存储槽位置中。在厂家NV项目索引104中的注解文件中识别这些特定存储槽位置地址中的每一者。不同于通常包含每个各别运营商或OEM特有的NV项目的NV项目的“厂家预备”类别,NV项目的“多路复用的厂家预备”类别通常包含多个运营商或OEM使用的NV项目。然而,这些NV项目的值可能是每一运营商/OEM特有的,或者甚至是每一各别通信装置特有的。因此,指派给这些NV项目的值可以在通信装置的快闪存储器24中多路复用。举例来说,此NV项目类别可以包含特定认证密钥(Akey)文件、服务编程代码(SPC)文件或一次性小键盘辅助锁(OTKSL)文件。虽然多个服务提供商需要存储在非易失性存储器中的Akey文件,但是每一服务提供商将需要Akey的不同值。实际上,每一各别服务提供商账户将需要独特的Akey文件。因此,当在通信装置上启用不同的服务提供商账户时,必须将Akey值的不同值写入到快闪存储器24中。
NV项目的第四类别可以包含多路复用/软件NV项目。此NV项目类别包含在初始账户激活过程期间由软件构造针对每一运营商指派及初始化的动态项目。与厂家预备的NV项目对照之下,直到用户选择激活选定运营商下的账户,这些NV项目值才被产生及指派。在初始激活选定运营商下的账户期间,可以产生及指派特定NV项目的值。虽然直到用户选择激活选定运营商下的账户才存储NV项目的此类别的值,但是一旦激活过程起始,就将属于此类别的NV项目的值存储在通信装置内的预先指派的存储槽中。这些预先指派的存储槽的位置可包含在运营商NV项目索引105内,其是注解文件的一部分。多路复用/软件NV项目的实例包含MIP、用户名、密码等等。
NV项目的第五类别可包含静态注解文件(UQCN)项目。这些NV项目值是运营商特定的项目,每当加载新运营商软件构造时,所述项目就被盖写。这些NV项目的实例可包含在显示屏上显示运营商标志的桌面图像、SCI(槽循环索引)、MIP(移动IP再试)等等。只要选定运营商保持相同,此些NV项目就保持静态。因此,当用户在同一运营商内的不同账户之间切换时,这些NV项目的值不改变。当具有多个账户的用户从一个运营商切换成下一个运营商时,可以盖写静态注解文件项目。可将静态注解文件项目以使得其不被任何其它方式(例如,通过空中激活或通过连接管理器)改变的方式分类。因此,没有理由维护这些NV项目的单独副本。因此,可以回收及保留宝贵的存储空间。
NV项目的第六类别可包含多路复用的注解文件(UQCN)项目。类似于静态注解文件项目,多路复用的注解文件项目是运营商特定的,且每当加载新的运营商软件构造时就被盖写。虽然注解文件可能在服务提供商之间是不同的,但是各种NV项目可以出现在一个服务提供商的注解文件中(其还出现在另一服务提供商的注解文件中)。举例来说,每一服务提供商可以维护具有有限边界的通信网络。此通信网络通常称为订户的家庭网络。当订户在其家庭网络的范围外行进时,订户可能不再在家庭网络上进行无线通信。然而,其它服务提供商可能正在订户的当前位置中操作通信网络。这些其它通信网络可以称为漫游网络。在一些例子中,在一位置中可能存在多个可用的漫游网络。为了向其订户提供在家庭网络外继续进行无线通信的能力,订户的服务提供商往往会与其它服务提供商协商,以允许其订户接入漫游网络,且反之亦然。然而,由于协商交易的细节,订户的服务提供商可能具有在有多个漫游网络可用的例子中要接入哪个漫游网络的偏好列表。此偏好列表通常称为优选漫游列表(PRL)。虽然每一服务提供商利用一PRL,但是所述PRL文件是每一服务提供商特有且特定的。因此,虽然每一注解文件可具有一PRL文件作为其NV项目之一,但是对于每一服务提供商,PRL文件将是不同的。因此,例如PRL文件等NV项目可以是多路复用的注解文件NV项目的一实例。多路复用的UQCN项目采用在注解文件中定义的值。在某一时间点,其也可通过空中激活过程或通过连接管理器改变。多路复用的软件项目可以是具有使用网络定义的软件中的某一预先定义的算法来指派的值的NV项目。多路复用的项目的一典型实例是在针对其网络上的服务激活模块时由运营商指派的共享密钥/密码或用户名。这些值用软件中预先定义的特定格式来保存。对照之下,UQCN(注解文件)不包含此些项目文件。实情为,UQCN(注解文件)指示文件中多路复用的属性。举例来说,UQCN可以指示特定格式或长度,或者NV项目是不是多路复用的NV项目。
NV项目的第七类别可以包含软件定义的多路复用的项目。这些项目是由软件构造设置的NV项目,且一旦软件构造被激活就不会改变。这些NV项目可以包含通信装置的型号名称。这些项目的值是由软件指派,且通常是需要被保存以允许软件中的某一功能性(其使得软件构造更加高效)的设置。举例来说,网络接入识别符(NAI)是由软件自动产生以向用户提供“.com”识别符的用户名。通常,用于通信装置的电话号码可以附带有.com地址以创建独特的NAI。举例来说,如果用户的通信装置被指派了电话号码202-555-1212,则Verizon软件构造可以在电话号码202-555-1212上附带域地址(vzw3g.com,从而产生NAI“202-555-1212(vzw3g.com”。此些NV项目值是一次性产生,且随后在软件构造已经被初始激活之后不改变。因为一旦NAI已经被一次性产生之后就没必要产生NAI,所以可将多路复用的NV项目值存储在注解文件确定的位置中,且每当随后激活选定运营商的软件构造及注解文件时,便检索多路复用的NV项目值。
通过实施注解文件的使用,可以向配备有软件定义的通信模块的通信装置提供其通信受到当前不存在的运营商网络支持的额外灵活性。举例来说,随着市场演进,可能会建立额外的运营商,其未来会上线,但是当前不存在。一旦新建立的运营商上线,便可以在注解文件更新中将必要的参数值下载到通信装置,所述参数值将允许新建立的运营商支持现存通信装置上的通信。
各种实施例提供管理、存储及实施每一可能的服务提供商的每一必要的NV项目的能力。通过有效地管理及存储NV项目,用户可以在单个通信装置上在服务提供商账户之间切换,并且维护所有必要的参数值。在一实施例中,指派给特定NV项目的各种值在存储器中被分开维护及存储。可以索引单独维护及存储的NV项目值中的每一者。举例来说,NV项目值中的每一者可以存储在通信装置的RAM或硬盘驱动器存储器中。一旦启用了特定运营商账户且激活了注解文件,便可以从RAM或硬盘驱动器存储器检索各种NV项目值,且将其加载到通信模块20的快闪存储器24中。
如上所述,各种实施例利用对存储在存储器中的NV项目值进行多路复用的能力。此过程有时候称为遮蔽NV项目值。通过对NV项目进行多路复用,单个通信装置10可以经配置以支持多个运营商预订,并且增强注解文件的能力。对NV项目进行多路复用或遮蔽是管理运营商特定设置的多个副本的一种方式。其可称为索引的阵列,其中每一索引指代一运营商。图5说明在适用于厂家索引的NV项目时对NV项目进行多路复用的概念。这些项目可以称为经过统计多路复用,因为此类别中的每一NV项目的值是已知的,并且由通信装置10的制造商在工厂预先加载。用于每一经统计多路复用的NV项目的值存储在预先指派的存储槽位置中。
举例来说,服务预备代码(SPC)是厂家索引的NV项目类别中包含的NV项目。SPC被用作安全保护。只有在激活期间给出有效SPC时,才将允许通信装置10的通信模块20预备。通常,每一运营商对于SPC利用不同的值。举例来说,Verizon1可能需要SPC被设置成全部为零,而Sprint2可能需要SPC是随机产生的六个数字。其它运营商可能需要特定的六个数字的代码。在常规的通信装置中,SPC的值存储在非易失性存储器位置85中。当运营商的软件构造需要SPC的值时,软件构造锁定到存储在非易失性存储器位置85中的值。
在一实施例中,用于NV项目SPC的多个值可以存储在存储器中。用于SPC的不同值中的每一者可以存储在不同的存储器及槽位置中。存储用于NV项目SPC的不同运营商值中的每一者的不同存储器及槽位置的索引可以包含在注解文件内,供后续检索。如图5所示,通信装置10可以在存储器位置40085的不同槽中存储用于SPC的值。举例来说,用于Verizon的SPC的值可以存储在存储器位置40085,槽0中。在此实例中,值“000000”可以存储在存储器位置40085,槽0中。用于Sprint的SPC的值可以存储在存储器位置40085,槽1中。在此实例中,值“345987”可以存储在存储器位置40085,槽1中。图5还说明针对可能的未来运营商值存在额外的存储槽位置。在此实例中,未来X及未来Y表示可能的未来运营商。在此些未来运营商开始有效地支持通信的情况下,其特定SPC值中的每一者可以分别存储在存储器位置40085,槽10及槽11中。
在常规的预备操作中,用于NV项目SPC的值通常可以存储在非易失性存储器位置85中。因此,当选定运营商的软件构造执行时,其可以试图从存储器位置85检索用于NV项目SPC的值。然而,当在软件定义的基于无线电的芯片组通信模块20上实施软件构造期间,在软件构造加载之后,可以加载注解文件。当软件构造试图从非易失性存储器位置85检索用于SPC的值时,注解文件又可以指导通信模块20从存储器位置40085中的特定槽检索SPC值。可根据厂家NV项目索引来选择槽,所述索引使其软件构造正被加载的选定运营商与适当的存储槽位置相关。因此,如果正在加载Verizon软件构造,则可以存取槽0,且可将000000的值加载到非易失性存储器位置85中。然而,如果正在加载Sprint软件构造,则可以存取槽1,且可将345987的值加载到非易失性存储器位置85中。因此,可以说NV项目SPC的值被存储在新NV项目存储器位置中的SPC的多个值多路复用或遮蔽。
类似于静态厂家索引的NV项目,动态运营商索引的NV项目可以存储在存储器中,且被软件定义的基于无线电的芯片组通信模块20利用。这些NV项目可以称为动态多路复用的项目,因为直到用户选择激活选定运营商下的账户,才知道用于NV项目中的每一者的值。因此,每一通信装置10可以动态地创建副本,且按需要存储用于这些NV项目的值。但是,虽然通信装置10可能并未创建副本及存储用于选定运营商的特定NV项目的值,但是一旦接收到用于选定运营商的特定NV项目的值,就产生副本且将其存储在预先指派的存储器位置及槽中。
举例来说,SD定时器可以是被动态多路复用的NV项目。在常规操作中,当用户激活选定运营商下的账户时,由运营商产生用于SD定时器的值,且将其发射到通信装置10。接着,将接收到的用于SD定时器的值存储在NV项目3635中。每当用于选定运营商的软件构造执行且试图检索用于SD定时器的值时,便将其引导到NV存储器位置3635。
举例来说,在一实施例中,当用户激活选定运营商下的账户时,通信装置10接收用于其它NV项目当中的值,SD定时器。通信装置10可以用与常规操作中相同的方式接收用于SD定时器的NV项目值。举例来说,可在空中预备过程或在连接的电缆上接收此值。然而,为了保存这些动态NV项目值,实施例方法利用注解文件在新的存储器位置创建遮蔽的NV项目值。除了将NV项目值写入到快闪存储器24中之外,注解文件还指导软件定义的基于无线电的芯片组通信模块20在硬盘驱动器存储器或RAM中创建新存储器及槽位置,以便存储接收到的NV项目值的遮蔽副本。新存储器及槽位置是由注解文件指派。每一运营商具有用于每一NV项目值的预先指派的存储器/槽位置。注解文件包含预先指派的索引。应注意,直到用户激活了选定运营商下的账户为止,才创建存储器位置槽,因为没有动态指派的NV项目值要存储。当激活了运营商账户时,将动态指派的NV项目值存储在存储器中,且将其存储器及槽位置添加到运营商索引中。因此,如果用户仅已激活了两个运营商下的运营商账户,则仅两个条目将出现在运营商索引中。因为直到用户选择激活新运营商账户才创建NV项目的副本,所以可以保留存储器。按照需要利用通信装置的存储器中的空间。
此外,运营商索引中的条目的列表反映激活运营商账户的顺序。举例来说,Verizon注解文件可以规定所有动态产生的NV项目值存储在存储槽0中。然而,Vodafone注解文件可以规定其动态产生的NV项目值存储在存储槽16中。因此,即使Vodafone是要激活的第二运营商账户,运营商索引仍将记录Vodafone的16的索引。运营商索引中列出的运营商的相对顺序提供对激活账户的顺序的指示。
以此方式,用于每一运营商的注解文件不仅指示可以从哪些位置检索NV项目值,而且还指示应当在哪些位置存储接收到的NV项目值的副本。通过将NV项目值索引及存储到与NV存储器位置分开的存储器位置,可以保存用于用户的变化的账户中的每一者的值。在常规操作中,每当用户选择启用新运营商账户时,将盖写且不保存占据快闪存储器24中的存储器位置的先前NV项目值。当用户试图重新启用先前运营商账户时,将需要用户获得新运营商索引的NV项目值。此过程可能会引起较长的延迟以启用运营商账户。此外,每当激活运营商账户时,便产生一些NV项目值。一旦被盖写,用户的运营商账户就将要求产生新NV项目值,且将其指派给用户的运营商账户。如果每当用户启用不同运营商账户时都要复位例如指派的电话号码、用户名或密码等NV项目,则这可能让用户非常难以接受。对NV项目值进行多路复用的实施例方法允许通信装置10不仅快速地检索先前产生及指派的NV项目值,而且还维持现存的NV项目值(虽然切换启用的运营商账户)。
图6说明从通信装置的快闪存储器读取NV项目/向通信装置的快闪存储器写入NV项目的实施例方法的过程流程。如上所述,为了正确地操作,实施各种应用程序及过程的执行的软件模块需要用于特定NV项目的特定参数值。用于在特定运营商网络上操作的特定通信装置类型/型号的NV项目值通常将NV项目值存储在通信装置10的快闪存储器26中。当用户选择改变支持通信装置上的通信的运营商时,必须将新NV项目写入到快闪存储器26中,使得其可用于后续读取请求。当起始各种应用程序及/或过程时,实施其执行的软件模块可以读取存储在快闪存储器26中的NV项目值。当通信装置的处理器191接收到改变支持通信装置上的通信的运营商的请求时,可以进行写入NV项目请求600。写入NV项目请求600起始将用于在选定运营商上操作的通信装置的适当NV项目值写入到快闪存储器26中的过程。类似地,当在通信装置10上执行应用程序或过程时,可以进行从快闪存储器26读取NV项目值的读取NV项目请求600。
当通信装置的处理器191接收到读取/写入NV项目请求600时,对NV项目参数进行验证,步骤605。举例来说,NV项目可以具有一次性写入属性,其防止通信装置的处理器191不止一次将NV项目写入到快闪存储器26中。通信装置的处理器191可以确定先前是否已经写入了NV项目值,并且如果已经写入了NV项目值则结束写入过程。一旦已经验证了NV项目参数,通信装置的处理器便确定上文参照图5描述的多路复用的项目列表中是否存在NV项目,确定610。当通信装置10启动时,可以动态地创建多路复用的项目列表。如果NV项目不是多路复用的项目中的一者(即,确定610=“否”),则可以直接从快闪存储器26读取NV项目值或者直接将NV项目值写入到快闪存储器26,步骤615。一旦读取或写入了NV项目值,过程便完成,步骤630。
然而,如果多路复用的项目列表中存在NV项目(即,确定610=“是”),则处理器191可以从注解文件获得选定运营商索引,步骤620。使用选定运营商索引作为正确的偏移,处理器可以从适当的快闪存储器位置读取NV项目值/将NV项目值写入到适当的快闪存储器位置,步骤625。一旦读取或写入了NV项目值,过程便完成,步骤630。可针对待从快闪存储器26读取或写入到快闪存储器26中的每一额外NV项目值重新起始所述过程。
在另一实施例中,可以使用存储在注解文件中的数据来限制哪些通信模块20可以成功地实施运营商的软件构造及注解文件。软件定义的基于无线电的芯片组通信模块20如果被正确地编程及预备,可以接入任何运营商的通信网络。然而,一些运营商可能想要限制哪些装置接入其网络。举例来说,一些运营商可能与某些制造商结成伙伴关系,向所述制造商提供对于运营商的通信网络的专有或半专有接入。类似地,某些制造商可能想要限制其通信装置可以接入的运营商网络。为了限制哪些运营商通信网络,通信模块20可以接入技术锁(也称为装置锁、运营商锁或笔记本锁)。
图7说明实施例技术锁方法的过程流程。当用户选择激活新运营商账户时,用户可以从用户接口菜单中选择运营商,步骤701。用户的运营商选择可以临时存储在存储器缓冲器位置中,步骤702。可以经由空中编程/预备过程来下载或接收适当的软件构造及注解文件,步骤703。一旦已经接收到软件构造及注解文件,软件定义的基于无线电的芯片组通信模块便可从存储器检索其自身的技术锁ID,步骤704。技术锁ID可以包括卖方识别符/产品识别符(VID/PID)、装置识别符、运营商识别符、笔记本识别符或任意定义的识别符或其某一组合。通常,制造商在工厂里将技术锁ID作为NV项目预备到非易失性存储器中。将检索到的技术锁ID与注解文件中包含的兼容技术值比较,确定705。为了允许运营商的软件构造及注解文件完全加载及执行,必须通过注解文件将检索到的技术锁ID辨识为兼容的卖方或产品。如果检索到的技术锁值与注解文件中包含的允许的技术锁值中的一者匹配(即,确定705=“是”),那么提取注解文件的其余部分,且结合加载到模块中的软件构造一起执行,步骤707。然而,如果检索到的技术锁值不与注解文件中包含的允许的技术锁值中的一者匹配(即,确定705=“否”),那么起始错误例程,且不提取注解文件的其余部分,并且可以从模块中删除软件,步骤705。以此方式,仅可准许兼容的通信装置10加载运营商的软件构造及注解文件。在没有加载选定运营商的软件构造及注解文件的情况下,通信装置将不能够接入选定运营商的通信网络。
图8A及8B说明用于安装支持通信装置上的通信的选定运营商的适当软件模块及NV项目的实施例方法的过程流程。当用户选择改变支持通信装置10上的通信的运营商时,用户可以使用用户接口控件12、13结合显示器11从预先加载的菜单中选择一运营商,步骤805。替代实施例可以利用触摸屏显示器或其它用户接口来选择运营商。一旦接收到用户的运营商选择,处理器191便从存储装置向通信模块20下载对应的软件构造及注解文件,步骤810。通常,可以将各种软件构造及注解文件存储在通信装置的存储器单元192或例如硬盘驱动器等其它非易失性存储装置中。在替代实施例中,可以从远程存储位置下载软件构造及/或注解文件。一旦已经下载了软件构造及注解文件,便认证软件构造图像,步骤815。如果下载的软件构造图像不可信(即,确定820=“否”),则处理器191起始错误例程,步骤825。如果下载的软件构造图像可信(即,确定820=“是”),则处理器191继续从注解文件提取信息,且将提取信息存储在存储器192中以供处理,步骤830。此信息可以包含例如运营商索引以及注解文件项目标头等数据。可以剖析提取的注解文件项目标头中的每一者,以便确定选定运营商正确地支持装置上的通信所需要的NV项目的类别,步骤835。基于提取及剖析的注解文件信息,处理器191可确定特定NV项目是不是多路复用的NV项目,确定840。如果NV项目是多路复用的NV项目(即,确定840=“是”),则可以将NV项目添加到多路复用的NV项目列表,步骤845。一旦将NV项目添加到多路复用的NV项目列表或者如果确定NV项目不是多路复用的项目(即,确定840=“否”),则处理器可确定NV项目是不是一次性写入NV项目,确定850。如果NV项目是一次性写入NV项目(即,确定850=“是”),则可以将NV项目添加到一次性写入NV项目列表,步骤855。在上文参照图6所述的读取/写入NV项目过程期间,可以利用动态创建的多路复用的NV项目列表及一次性写入NV项目列表。
一旦将NV项目添加到一次性写入NV项目列表或者如果确定NV项目不是一次性写入项目(即,确定850=“否”),则处理器可确定是否所有注解文件项目已完成,确定860。换言之,处理器可确定是否应当分析任何其它NV项目。如果注解列表中列出了额外NV项目,且对注解文件项目的预先处理未完成(即,确定860=“否”),则处理器可返回到确定840且再次完成步骤840-860。然而,如果所有预先处理完成(即,确定860=“是”),则处理器可接下来检查笔记本锁及注解文件的兼容性,图8B所示的步骤865。上文参照图7论述了说明笔记本锁实施例方法的过程流程。如果笔记本锁及注解兼容性方法的结果指示对于通信装置10不允许软件构造及注解文件(即,确定870=“否”),则可以起始错误例程,且可以将模块设置成离线状态,步骤825A。
如果对于通信装置10允许软件构造及注解文件(即,确定870=“是”),则处理器可确定加载到存储器192中的注解文件是不是加载到快闪存储器26中的注解文件的相同版本,确定875。如果加载到存储器192中的注解文件的版本与加载到快闪存储器中的注解文件的版本匹配(即,确定875=“是”),则可以针对其它用途清除及回收存储器192的资源,步骤885。如果加载到存储器192中的注解文件的版本不与加载到快闪存储器中的注解文件的版本匹配(即,确定875=“否”),则可以用加载到存储器192中的注解文件来更新存储在闪存中的注解文件,步骤880。可以根据NV项目属性使用加载到存储器192中的注解文件的内容来盖写或删除存储在闪存26中的NV项目值中的每一者。一旦已经更新了加载在闪存中的注解文件,即刻可针对其它用途来清除及回收存储器192的资源,步骤885。一旦已经回收了存储器资源,处理器即刻可使用软件构造及来自注解文件的NV项目值来继续进行通信模块的初始化,步骤890。以此方式,可以快速修改具有软件定义的通信模块20的通信装置10,以启用不同运营商的通信网络上的通信,无论是哪种通信技术或哪个选定运营商。
各种实施例允许通信装置制造商简化通信装置的制造过程。在通信装置的常规制造过程中,在通信装置中加载厂家预备软件以及需要的NV项目值。然而,原始设备制造商通常使用的工具仅可写入各别NV项目。工具必须检索NV项目,将NV项目值写入到闪存中,且接着针对下一NV项目连续重复所述过程。此预备过程在很大程度上阻碍了制造过程。通过在通信装置上加载注解文件结合厂家预备软件,各种实施例可以在通信装置已经出厂之后将必要的NV项目值加载到快闪存储器中。这很大程度上优化了制造时间。此外,由于注解文件处理是在激活其它任务(例如,协议处理)之前发生,所以可快速加载注解文件NV项目的加载。此外,因为注解文件通常是可以快速且容易地更新的小型文件,所以可以快速地调适及配置制造过程以加载特定/多个运营商的NV项目。
所属领域的技术人员应了解,可将结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块、电路及算法步骤实施为电子硬件、计算机软件或两者的组合。为清楚说明硬件与软件的此互换性,上文已大致关于其功能性而描述了各种说明性组件、块、模块、电路及步骤。所述功能性是实施为硬件还是软件取决于特定应用及施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但所述实施方案决定不应被解释为会导致脱离本发明的范围。
结合本文中所揭示的实施例而描述的方法或算法的步骤可直接体现于硬件中、由处理器执行的软件模块中或所述两者的组合中。处理器可执行软件指令的软件模块可存储在非暂时性处理器可读存储器中,其可为RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可装卸盘、CD-ROM中的任一者,或此项技术中已知的任何其它形式的存储媒体。示范性非暂时性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息及将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器及存储媒体可驻留在ASIC中。ASIC可驻留在用户终端或通信装置中。在替代方案中,处理器及存储媒体可作为离散组件驻留在用户终端或通信装置中。此外,在一些方面中,方法或算法的步骤及/或动作可作为代码及/或指令中的一者或任何组合或集合而驻留在可并入到计算机程序产品中的非暂时性处理器可读媒体及/或非暂时性计算机可读媒体上。
提供各种实施例的上述描述以使任何所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易明白对这些实施例的各种修改,且在不脱离本发明的精神或范围的情况下,本文所界定的一般原理可应用于其它实施例。因此,并不希望将本发明限于本文中所示的实施例,而是,应赋予权利要求书与本文中所揭示的原理及新颖特征一致的最广泛范围。

Claims (18)

1.一种对包含软件定义的基于无线电的芯片组模块的通信装置进行编程的方法,其包括:
从预先加载的菜单中选择用以支持所述通信装置的通信的运营商;
将所选择的所述运营商的软件构造图像加载到所述通信装置的易失性存储器中;
将所选择的所述运营商的注解文件加载到所述易失性存储器中,所述注解文件包含指派给所选择的所述运营商的索引值以及注解文件标头,其中所述索引值与所述易失性存储器的存储器位置的存储槽相关;
从所述注解文件提取所述索引值和所述注解文件标头;
剖析经提取的所述注解文件标头,以确定非易失性存储器项目值的类别;
基于经确定的所述非易失性存储器项目值的所述类别,确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值;
响应于基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值为多路复用的非易失性存储器项目值,从与包括在所述注解文件中的所述索引值相关的所述易失性存储器的所述存储器位置的所述存储槽中检索所述非易失性存储器项目值;
将所述检索到的非易失性存储器项目值加载到非易失性存储器中;以及
使用所述检索到的加载到所述非易失性存储器中的非易失性存储器项目值来执行所述软件构造图像。
2.根据权利要求1所述的方法,其进一步包括:
在预备过程期间从所选择的所述运营商接收所产生的非易失性存储器项目值;
产生所述接收到的所产生的非易失性存储器项目值的副本;以及
将所述接收到的所产生的非易失性存储器项目值的所述副本存储在所述易失性存储器中的与所述注解文件中的指派给所选择的所述运营商的所述索引值对应的槽位置中。
3.根据权利要求1所述的方法,其进一步包括:
确定存储在所述非易失性存储器中的非易失性存储器项目值是否与存储在所述易失性存储器中的所述非易失性存储器项目值匹配;以及
当确定存储在所述非易失性存储器中的所述非易失性存储器项目值与存储在易失性存储器中的所述非易失性存储器项目值匹配时,回收指派给所述非易失性存储器项目值的易失性存储空间。
4.根据权利要求1所述的方法,其进一步包括:
确定存储在所述非易失性存储器中的非易失性存储器项目值是否与存储在易失性存储器中的所述非易失性存储器项目值匹配;
当确定存储在所述非易失性存储器中的所述非易失性存储器项目值与存储在易失性存储器中的所述非易失性存储器项目值匹配时,用存储在所述易失性存储器中的所述非易失性存储器项目值来更新存储在所述非易失性存储器中的所述非易失性存储器项目值;以及
在已经更新存储在所述非易失性存储器中的所述非易失性存储器项目值以与存储在所述易失性存储器中的所述非易失性存储器项目值匹配之后,回收指派给所述非易失性存储器项目值的易失性存储空间。
5.一种用于限制包含软件定义的基于无线电的芯片组模块的通信装置可接入哪个运营商通信网络的方法,所述方法包括:
在所述通信装置中选择一运营商;
将所选择的所述运营商的软件构造图像加载到所述通信装置的易失性存储器中;
将所选择的所述运营商的注解文件加载到所述易失性存储器中,所述注解文件包含指派给所选择的所述运营商的索引值、注解文件标头以及兼容的技术锁ID,其中所述索引值与所述易失性存储器的存储器位置的存储槽相关;
从非易失性存储器中检索技术锁ID,其中所述技术锁ID包括卖方识别符和产品识别符中的至少一者;
从所选择的所述运营商的所述注解文件中检索所述兼容的技术锁ID;
确定所述兼容的技术锁ID是否与从所述非易失性存储器中检索的所述技术锁ID匹配;
从所述注解文件提取所述索引值和所述注解文件标头;
剖析经提取的所述注解文件标头,以确定非易失性存储器项目值的类别;
基于经确定的所述非易失性存储器项目值的所述类别,确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值;
响应于基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值为多路复用的非易失性存储器项目值,并响应于确定从所述非易失性存储器中检索的所述技术锁ID与所述兼容的技术锁ID匹配,从与包含在所述注解文件中的所述索引值相关的所述易失性存储器的所述存储器位置的所述存储槽中检索所述非易失性存储器项目值;
将所述检索到的非易失性存储器项目值加载到所述非易失性存储器中;以及
使用所述检索到的加载到所述非易失性存储器中的非易失性存储器项目值来执行所述软件构造图像。
6.根据权利要求5所述的方法,其进一步包括:
在预备过程期间从所选择的所述运营商接收所产生的非易失性存储器项目值;
产生所述接收到的所产生的非易失性存储器项目值的副本;以及
根据所述注解文件中包含的索引将所述接收到的所产生的非易失性存储器项目值的所述副本存储在所述易失性存储器中的与包含在所述注解文件中的指派给所选择的所述运营商的所述索引值对应的槽位置中。
7.一种通信装置,其包括:
软件定义的基于无线电的芯片组模块;
用于从预先加载的菜单中选择用以支持所述通信装置的通信的运营商的装置;
用于将所选择的所述运营商的软件构造图像加载到易失性存储器中的装置;
用于将所选择的所述运营商的注解文件加载到所述易失性存储器中的装置,所述注解文件包含指派给所选择的所述运营商的索引值以及注解文件标头,其中所述索引值与所述易失性存储器的存储器位置的存储槽相关;
用于从所述注解文件提取所述索引值和所述注解文件标头的装置;
用于剖析经提取的所述注解文件标头的装置;
用于基于经提取和剖析的所述注解文件标头来确定非易失性存储器项目值的类别的装置;
用于基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值的装置;
用于响应于用于确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值的装置基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值为多路复用的非易失性存储器项目值,从所述易失性存储器的所述存储器位置的所述存储槽中检索所述非易失性存储器项目值的装置;
用于将所述检索到的非易失性存储器项目值加载到非易失性存储器中的装置;以及
用于使用所述检索到的加载到所述非易失性存储器中的非易失性存储器项目值来执行所述软件构造图像的装置。
8.根据权利要求7所述的通信装置,其进一步包括:
用于在预备过程期间从所选择的所述运营商接收所产生的非易失性存储器项目值的装置;
用于产生所述接收到的所产生的非易失性存储器项目值的副本的装置;以及
用于将所述接收到的所产生的非易失性存储器项目值的所述副本存储在所述易失性存储器中的与所述注解文件中的指派给所选择的所述运营商的所述索引值对应的槽位置中的装置。
9.根据权利要求7所述的通信装置,其进一步包括:
用于确定存储在所述非易失性存储器中的非易失性存储器项目值是否与存储在所述易失性存储器中的所述非易失性存储器项目值匹配的装置;以及
用于当确定存储在所述非易失性存储器中的所述非易失性存储器项目值与存储在所述易失性存储器中的所述非易失性存储器项目值匹配时回收指派给所述非易失性存储器项目值的易失性存储空间的装置。
10.根据权利要求7所述的通信装置,其进一步包括:
用于确定存储在所述非易失性存储器中的非易失性存储器项目值是否与存储在所述易失性存储器中的所述非易失性存储器项目值匹配的装置;
用于当确定存储在所述非易失性存储器中的所述非易失性存储器项目值与存储在所述易失性存储器中的所述非易失性存储器项目值匹配时用存储在所述易失性存储器中的所述非易失性存储器项目值来更新存储在所述非易失性存储器中的所述非易失性存储器项目值的装置;以及
用于在已经更新存储在所述非易失性存储器中的所述非易失性存储器项目值以与存储在所述易失性存储器中的所述非易失性存储器项目值匹配之后回收指派给所述非易失性存储器项目值的易失性存储空间的装置。
11.一种通信装置,其包括:
软件定义的基于无线电的芯片组模块;
用于在所述通信装置中选择一运营商的装置;
用于将所选择的所述运营商的软件构造图像加载到所述通信装置的易失性存储器中的装置;
用于将所选择的所述运营商的注解文件加载到所述易失性存储器中的装置,所述注解文件包含指派给所选择的所述运营商的索引值、注解文件标头以及兼容的技术锁ID,其中所述索引值与所述易失性存储器的存储器位置的存储槽相关;
用于从非易失性存储器中检索技术锁ID的装置,其中所述技术锁ID包括卖方识别符和产品识别符中的至少一者;
用于从所选择的所述运营商的所述注解文件中检索所述兼容的技术锁ID的装置;
用于确定所述兼容的技术锁ID是否与从所述非易失性存储器中检索的所述技术锁ID匹配的装置;
用于从所述注解文件提取所述索引值和所述注解文件标头的装置;
用于剖析经提取的所述注解文件标头的装置;
用于从经提取和剖析的所述注解文件来确定非易失性存储器项目值的类别的装置;
用于基于经确定的所述非易失性存储器项目值的所述类别,确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值的装置;
用于响应于基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值为多路复用的非易失性存储器项目值,从与包含在所述注解文件中的所述索引值相关的所述易失性存储器的所述存储器位置的所述存储槽中检索所述非易失性存储器项目值的装置;
用于确定从所述非易失性存储器中检索的所述技术锁ID与所述兼容的技术锁ID匹配的装置;
用于将所述检索到的非易失性存储器项目值加载到所述非易失性存储器中的装置;以及
用于使用所述检索到的加载到所述非易失性存储器中的非易失性存储器项目值来执行所述软件构造图像的装置。
12.根据权利要求11所述的通信装置,其进一步包括:
用于在预备过程期间从所选择的所述运营商接收所产生的非易失性存储器项目值的装置;
用于产生所述接收到的所产生的非易失性存储器项目值的副本的装置;以及
用于将所述接收到的所产生的非易失性存储器项目值的所述副本存储在所述易失性存储器中的与所述注解文件中的指派给所选择的所述运营商的所述索引值对应的槽位置中的装置。
13.一种通信装置,其包括:
软件定义的基于无线电的芯片组模块;
非易失性存储器;
易失性存储器;以及
处理器,其耦合到所述非易失性存储器、所述易失性存储器及所述软件定义的基于无线电的芯片组模块,其中所述处理器经配置以:
从预先加载的菜单中选择用以支持来自所述通信装置的通信的运营商;
将所选择的所述运营商的软件构造图像加载到所述易失性存储器中;
将所选择的所述运营商的注解文件加载到所述易失性存储器中,所述注解文件包含指派给所选择的所述运营商的索引值以及注解文件标头,其中所述索引值与所述易失性存储器的存储器位置的存储槽相关;
从所述注解文件提取所述索引值和所述注解文件标头;
剖析经提取的所述注解文件标头,以确定非易失性存储器项目值的类别;
基于经确定的所述非易失性存储器项目值的所述类别,确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值;
响应于基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值为多路复用的非易失性存储器项目值,从与包括在所述注解文件中的所述索引值相关的所述易失性存储器的所述存储器位置的所述存储槽中检索所述非易失性存储器项目值;
将所述检索到的非易失性存储器项目值加载到所述非易失性存储器中;以及
使用所述检索到的加载到所述非易失性存储器中的非易失性存储器项目值来执行所述软件构造图像。
14.根据权利要求13所述的通信装置,其中所述处理器进一步经配置以:
在预备过程期间从所选择的所述运营商接收所产生的非易失性存储器项目值;
产生所述接收到的所产生的非易失性存储器项目值的副本;以及
将所述接收到的非易失性存储器项目值的所述副本存储在所述非易失性存储器中的与所述注解文件中的指派给所选择的所述运营商的所述索引值对应的槽位置中。
15.根据权利要求13所述的通信装置,其中所述处理器进一步经配置以:
确定存储在所述非易失性存储器中的非易失性存储器项目值是否与存储在所述易失性存储器中的所述非易失性存储器项目值匹配;以及
当确定存储在所述非易失性存储器中的所述非易失性存储器项目值与存储在所述易失性存储器中的所述非易失性存储器项目值匹配时,回收指派给所述非易失性存储器项目值的易失性存储空间。
16.根据权利要求13所述的通信装置,其中所述处理器经进一步配置以:
确定存储在所述非易失性存储器中的非易失性存储器项目值是否与存储在所述易失性存储器中的所述非易失性存储器项目值匹配;
当确定存储在所述非易失性存储器中的所述非易失性存储器项目值与存储在所述易失性存储器中的所述非易失性存储器项目值匹配时,用存储在所述易失性存储器中的所述非易失性存储器项目值来更新存储在所述非易失性存储器中的所述非易失性存储器项目值;以及
在已经更新存储在所述非易失性存储器中的所述非易失性存储器项目值以与存储在所述易失性存储器中的所述非易失性存储器项目值匹配之后,回收指派给所述非易失性存储器项目值的易失性存储空间。
17.一种通信装置,其包括:
软件定义的基于无线电的芯片组模块;
非易失性存储器;
易失性存储器;以及
处理器,其耦合到所述非易失性存储器、所述易失性存储器及所述软件定义的基于无线电的芯片组模块,其中所述处理器经配置以:
选择一运营商;
将所选择的所述运营商的软件构造图像加载到所述易失性存储器中;
将所选择的所述运营商的注解文件加载到所述易失性存储器中,所述注解文件包含指派给所选择的所述运营商的索引值、注解文件标头以及兼容的技术锁ID,其中所述索引值与所述易失性存储器的存储器位置的存储槽相关;
从所述非易失性存储器中检索技术锁ID,其中所述技术锁ID包括卖方识别符和产品识别符中的至少一者;
从所选择的所述运营商的所述注解文件中检索所述兼容的技术锁ID;
确定所述兼容的技术锁ID是否与从所述非易失性存储器中检索的所述技术锁ID匹配;
从所述注解文件提取所述索引值和所述注解文件标头;
剖析经提取的所述注解文件标头,以确定非易失性存储器项目值的类别;
基于经确定的所述非易失性存储器项目值的所述类别,确定所述非易失性存储器项目值是否为多路复用的非易失性存储器项目值;
响应于基于经确定的所述非易失性存储器项目值的所述类别来确定所述非易失性存储器项目值为多路复用的非易失性存储器项目值,从与包括在所述注解文件中的所述索引值相关的所述易失性存储器的所述存储器位置的所述存储槽中检索所述非易失性存储器项目值;
将所述检索到的非易失性存储器项目值加载到非易失性存储器中;以及
使用所述检索到的加载到所述非易失性存储器中的非易失性存储器项目值来执行所述软件构造图像。
18.根据权利要求17所述的通信装置,其中所述处理器进一步经配置以:
在预备过程期间从所选择的所述运营商接收所产生的非易失性存储器项目值;
产生所述接收到的所产生的非易失性存储器项目值的副本;以及
将所述接收到的所产生的非易失性存储器项目值的所述副本存储在所述易失性存储器中的与所述注解文件中的指派给所选择的所述运营商的所述索引值对应的槽位置中。
CN201180029327.6A 2010-05-26 2011-05-23 用于管理具有多个服务账户的通信装置的非易失性项目及预备文件的方法及系统 Expired - Fee Related CN102939773B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/787,955 US8756256B2 (en) 2010-05-26 2010-05-26 Method and systems for the management of non volatile items and provisioning files for a communication device with multiple service accounts
US12/787,955 2010-05-26
PCT/US2011/037542 WO2011149831A1 (en) 2010-05-26 2011-05-23 Method and systems for the management of non volatile items and provisioning files for a communication device with multiple service accounts

Publications (2)

Publication Number Publication Date
CN102939773A CN102939773A (zh) 2013-02-20
CN102939773B true CN102939773B (zh) 2016-05-11

Family

ID=44343019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180029327.6A Expired - Fee Related CN102939773B (zh) 2010-05-26 2011-05-23 用于管理具有多个服务账户的通信装置的非易失性项目及预备文件的方法及系统

Country Status (5)

Country Link
US (1) US8756256B2 (zh)
EP (1) EP2578005B1 (zh)
JP (1) JP2013526818A (zh)
CN (1) CN102939773B (zh)
WO (1) WO2011149831A1 (zh)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9088341B2 (en) * 2006-04-28 2015-07-21 Telefonaktiebolaget L M Ericsson (Publ) Software defined radio device and configuration method of the same
US9170870B1 (en) 2013-08-27 2015-10-27 Sprint Communications Company L.P. Development and testing of payload receipt by a portable electronic device
US8453140B2 (en) * 2009-04-28 2013-05-28 Qualcomm Incorporated Method for generically handling carrier specific provisioning for computer cellular wireless cards
US8417231B2 (en) * 2009-05-17 2013-04-09 Qualcomm Incorporated Method and apparatus for programming a mobile device with multiple service accounts
US8417234B2 (en) * 2009-05-17 2013-04-09 Qualcomm Incorporated Method and apparatus for tracking the programming of a mobile device with multiple service accounts
KR101785116B1 (ko) * 2010-12-24 2017-10-17 한양대학교 산학협력단 모뎀 하드웨어에 독립적인 라디오 어플리케이션을 위한 소프트웨어 정의 라디오 단말 장치
US8612967B1 (en) 2011-05-31 2013-12-17 Sprint Communications Company L.P. Loading branded media outside system partition
US8683457B1 (en) * 2011-06-17 2014-03-25 Western Digital Technologies, Inc. Updating firmware of an electronic device by storing a version identifier in a separate header
US8666383B1 (en) 2011-12-23 2014-03-04 Sprint Communications Company L.P. Automated branding of generic applications
CA2867360C (en) * 2012-03-13 2021-11-16 Cognilore Inc. Method of navigating through digital content
US10455071B2 (en) 2012-05-09 2019-10-22 Sprint Communications Company L.P. Self-identification of brand and branded firmware installation in a generic electronic device
US9672519B2 (en) * 2012-06-08 2017-06-06 Fmr Llc Mobile device software radio for securely passing financial information between a customer and a financial services firm
US9389794B2 (en) * 2012-08-03 2016-07-12 Intel Corporation Managing consistent data objects
US20140079202A1 (en) * 2012-09-14 2014-03-20 Zultys, Inc. Method and system for universal internet protocol (ip) phone provisioning
US9198027B2 (en) 2012-09-18 2015-11-24 Sprint Communications Company L.P. Generic mobile devices customization framework
US8909291B1 (en) 2013-01-18 2014-12-09 Sprint Communications Company L.P. Dynamic remotely managed SIM profile
US9100819B2 (en) 2013-02-08 2015-08-04 Sprint-Communications Company L.P. System and method of provisioning and reprovisioning a mobile device based on self-locating
US9549009B1 (en) 2013-02-08 2017-01-17 Sprint Communications Company L.P. Electronic fixed brand labeling
US9100769B2 (en) 2013-02-08 2015-08-04 Sprint Communications Company L.P. System and method of storing service brand packages on a mobile device
US9204286B1 (en) 2013-03-15 2015-12-01 Sprint Communications Company L.P. System and method of branding and labeling a mobile device
US9491048B2 (en) * 2013-03-28 2016-11-08 Qualcomm Incorporated Devices and methods for facilitating automated configuration of communications interfaces
US9280483B1 (en) 2013-05-22 2016-03-08 Sprint Communications Company L.P. Rebranding a portable electronic device while maintaining user data
US9535744B2 (en) 2013-06-29 2017-01-03 Intel Corporation Method and apparatus for continued retirement during commit of a speculative region of code
US9532211B1 (en) 2013-08-15 2016-12-27 Sprint Communications Company L.P. Directing server connection based on location identifier
US9161209B1 (en) 2013-08-21 2015-10-13 Sprint Communications Company L.P. Multi-step mobile device initiation with intermediate partial reset
US9143924B1 (en) 2013-08-27 2015-09-22 Sprint Communications Company L.P. Segmented customization payload delivery
US9125037B2 (en) 2013-08-27 2015-09-01 Sprint Communications Company L.P. System and methods for deferred and remote device branding
US9204239B1 (en) 2013-08-27 2015-12-01 Sprint Communications Company L.P. Segmented customization package within distributed server architecture
US9743271B2 (en) 2013-10-23 2017-08-22 Sprint Communications Company L.P. Delivery of branding content and customizations to a mobile communication device
US9516006B2 (en) * 2013-10-23 2016-12-06 Google Inc. Re-programmable secure cryptographic device
US10506398B2 (en) 2013-10-23 2019-12-10 Sprint Communications Company Lp. Implementation of remotely hosted branding content and customizations
US9301081B1 (en) 2013-11-06 2016-03-29 Sprint Communications Company L.P. Delivery of oversized branding elements for customization
US9363622B1 (en) 2013-11-08 2016-06-07 Sprint Communications Company L.P. Separation of client identification composition from customization payload to original equipment manufacturer layer
US9161325B1 (en) 2013-11-20 2015-10-13 Sprint Communications Company L.P. Subscriber identity module virtualization
US9392395B1 (en) 2014-01-16 2016-07-12 Sprint Communications Company L.P. Background delivery of device configuration and branding
US9420496B1 (en) 2014-01-24 2016-08-16 Sprint Communications Company L.P. Activation sequence using permission based connection to network
US9603009B1 (en) 2014-01-24 2017-03-21 Sprint Communications Company L.P. System and method of branding a device independent of device activation
US9681251B1 (en) 2014-03-31 2017-06-13 Sprint Communications Company L.P. Customization for preloaded applications
CN105101171A (zh) * 2014-05-16 2015-11-25 中兴通讯股份有限公司 一种终端网络参数配置方法及终端
US9426641B1 (en) 2014-06-05 2016-08-23 Sprint Communications Company L.P. Multiple carrier partition dynamic access on a mobile device
US9307400B1 (en) 2014-09-02 2016-04-05 Sprint Communications Company L.P. System and method of efficient mobile device network brand customization
US9571339B2 (en) * 2014-10-30 2017-02-14 Amazon Technologies, Inc. Configuring an electronic device for wireless communications
US9992326B1 (en) 2014-10-31 2018-06-05 Sprint Communications Company L.P. Out of the box experience (OOBE) country choice using Wi-Fi layer transmission
US9398462B1 (en) 2015-03-04 2016-07-19 Sprint Communications Company L.P. Network access tiered based on application launcher installation
US9357378B1 (en) 2015-03-04 2016-05-31 Sprint Communications Company L.P. Subscriber identity module (SIM) card initiation of custom application launcher installation on a mobile communication device
CN106034265B (zh) 2015-03-13 2020-01-10 上海诺基亚贝尔股份有限公司 用于无源光网络中的混合复用/解复用的方法及装置
CN106488433A (zh) * 2015-08-24 2017-03-08 中兴通讯股份有限公司 一种实现用户识别卡数据更新的方法、用户终端及网元
US9913132B1 (en) 2016-09-14 2018-03-06 Sprint Communications Company L.P. System and method of mobile phone customization based on universal manifest
US10021240B1 (en) 2016-09-16 2018-07-10 Sprint Communications Company L.P. System and method of mobile phone customization based on universal manifest with feature override
US10306433B1 (en) 2017-05-01 2019-05-28 Sprint Communications Company L.P. Mobile phone differentiated user set-up
CN114793290A (zh) * 2021-01-25 2022-07-26 艾锐势企业有限责任公司 用于交换式数字视频系统的设备和方法
US11991525B2 (en) 2021-12-02 2024-05-21 T-Mobile Usa, Inc. Wireless device access and subsidy control

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1537397A (zh) * 2001-07-26 2004-10-13 用于提高手机重建程序和重新编程的安全性的系统及方法
CN101171861A (zh) * 2005-03-14 2008-04-30 高通股份有限公司 用于对无线通信网络上的无线装置进行服务编程的设备和方法

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI106902B (fi) 1992-02-28 2001-04-30 Nokia Networks Oy Radiopuhelin
JPH05336035A (ja) 1992-06-03 1993-12-17 Nec Commun Syst Ltd 無線電話端末
US5564020A (en) 1994-06-30 1996-10-08 Compaq Computer Corporation Apparatus for reducing interference between a computer device and a radio transceiver utilizing separated units with an infrared link
GB2292047B (en) 1994-07-28 1998-09-16 Motorola Ltd Communications system
DE19543843C2 (de) 1995-11-24 2001-02-08 Acer Peripherals Inc Verfahren zur Aktualisierung der Software in einem mikrocomputergestützten Telefon
US5887254A (en) 1996-04-26 1999-03-23 Nokia Mobile Phones Limited Methods and apparatus for updating the software of a mobile terminal using the air interface
JPH11205406A (ja) 1998-01-19 1999-07-30 Mitsubishi Electric Corp データ通信カード
US6876295B1 (en) 1998-12-16 2005-04-05 Symbol Technologies, Inc. Wireless communication devices configurable via passive tags
US6975632B2 (en) 1999-03-15 2005-12-13 Cisco Technology, Inc. Multi-service architecture with any port any service (APAS) hardware platform
JP2000324043A (ja) 1999-05-13 2000-11-24 Hitachi Ltd ダウンロード方法及びソフトウェア無線システム
KR20010050212A (ko) 1999-09-13 2001-06-15 스테븐 디.피터스 메모리 카드에 기록된 파일에 대한 접근 제어 시스템
US6829222B2 (en) 2000-04-25 2004-12-07 Board Of Regents The University Of Texas System Clusterhead selection in wireless ad hoc networks
US6880086B2 (en) 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
GB0103918D0 (en) 2001-02-16 2001-04-04 Pathfinder Tech Resources Ltd Mobile telephone operation
JP2002251326A (ja) 2001-02-22 2002-09-06 Hitachi Ltd 耐タンパ計算機システム
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
GB2386504B (en) 2002-03-12 2005-03-02 Toshiba Res Europ Ltd Alternative radio system monitoring
JP2004064289A (ja) 2002-07-26 2004-02-26 Ntt Docomo Inc 複数無線通信システム対応の通信端末、ソフトウェア送信サーバ及びicカード書き込み装置
US7529559B2 (en) 2002-10-07 2009-05-05 Panasonic Corporation Communication apparatus and method for reconfiguring communication apparatus
US6978453B2 (en) * 2002-10-21 2005-12-20 Bitfone Corporation System with required enhancements to syncML DM environment to support firmware updates
US20080177994A1 (en) 2003-01-12 2008-07-24 Yaron Mayer System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows
US20040230965A1 (en) 2003-02-28 2004-11-18 Harri Okkonen Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server
US7139372B2 (en) 2003-03-07 2006-11-21 July Systems, Inc Authorized distribution of digital content over mobile networks
EP1473845A1 (en) 2003-04-29 2004-11-03 Sony Ericsson Mobile Communications AB Front end of a multi-standard two-channel direct-conversion quadrature receiver
US20040237081A1 (en) 2003-05-19 2004-11-25 Homiller Daniel P. Methods and apparatus for generating upgraded software from initial software and software upgrade packages
US20050010916A1 (en) 2003-05-24 2005-01-13 Hagen David A. System for providing software application updates to multiple clients on a network
US7359698B2 (en) 2003-09-08 2008-04-15 Kyocera Wireless Corp. Systems and methods for enhanced over-the-air programming
US20050055689A1 (en) 2003-09-10 2005-03-10 Abfalter Scott A. Software management for software defined radio in a distributed network
US7305090B1 (en) 2003-09-12 2007-12-04 Sprint Spectrum L.P. Method and system for use of common provisioning data to activate cellular wireless devices
US7565650B2 (en) 2003-10-23 2009-07-21 International Business Machines Corporation Method, apparatus and computer program product for deploying software via post-load images
US7461374B1 (en) 2003-12-01 2008-12-02 Cisco Technology, Inc. Dynamic installation and activation of software packages in a distributed networking device
US7260382B1 (en) 2004-09-21 2007-08-21 Sprint Spectrum L.P. Method and system for customizing a wireless device's user-interface based on which vendor distributed the wireless device
JP4815782B2 (ja) 2004-10-22 2011-11-16 ソニー株式会社 プログラム更新方法、情報処理装置およびプログラム
US7200390B1 (en) * 2004-12-30 2007-04-03 Cellco Partnership Device software update transport and download
CN101107869A (zh) 2005-01-18 2008-01-16 交互数字技术公司 用于系统发现和用户选择的方法和系统
US7516206B2 (en) 2005-01-28 2009-04-07 Cassatt Corporation Management of software images for computing nodes of a distributed computing system
JP2006270910A (ja) 2005-02-22 2006-10-05 Mitsubishi Electric Corp ソフトウェア無線携帯電話通信システム及びソフトウェア無線携帯電話端末
US7355509B2 (en) 2005-02-25 2008-04-08 Iwapi Inc. Smart modem device for vehicular and roadside applications
US20060203722A1 (en) 2005-03-14 2006-09-14 Nokia Corporation System and method for managing performance of mobile terminals via remote diagnostics
US20060221918A1 (en) 2005-04-01 2006-10-05 Hitachi, Ltd. System, method and computer program product for providing content to a remote device
JP2006309533A (ja) 2005-04-28 2006-11-09 Hitachi Kokusai Electric Inc 分散処理プログラム
JP2006331307A (ja) 2005-05-30 2006-12-07 Hitachi Kokusai Electric Inc 分散システム
WO2006133222A2 (en) 2005-06-07 2006-12-14 Vmware, Inc. Constraint injection system for immunizing software programs against vulnerabilities and attacks
ES2339677T3 (es) 2005-09-01 2010-05-24 France Telecom Personalizacion de estaciones moviles.
EP1977312A2 (en) 2006-01-16 2008-10-08 Zlango Ltd. Iconic communication
JP4684909B2 (ja) 2006-02-16 2011-05-18 富士通株式会社 ソフトウエア無線装置
US20080266595A1 (en) 2006-09-11 2008-10-30 Christopher Wright Independently-addressable cellular wireless digital network-based fax machine
US7950045B2 (en) 2006-12-13 2011-05-24 Cellco Partnership Techniques for managing security in next generation communication networks
US8150425B1 (en) 2007-03-16 2012-04-03 At&T Mobility Ii Llc Systems and methods for merchandising new offers to mobile telephone users based on changes to the mobile telephone's components
JP4842183B2 (ja) 2007-03-20 2011-12-21 Kddi株式会社 ソフトウェア無線端末および端末管理装置
US9451450B2 (en) * 2007-09-01 2016-09-20 Apple Inc. Postponed carrier configuration
US8839221B2 (en) 2007-09-10 2014-09-16 Moka5, Inc. Automatic acquisition and installation of software upgrades for collections of virtual machines
US20090075698A1 (en) 2007-09-14 2009-03-19 Zhimin Ding Removable Card And A Mobile Wireless Communication Device
US7934083B2 (en) 2007-09-14 2011-04-26 Kevin Norman Taylor Configurable access kernel
US8189549B2 (en) 2007-10-22 2012-05-29 T-Mobile Usa, Inc. System and method for indicating a subscriber's zone within converged telecommunications networks
US20090215449A1 (en) 2008-02-26 2009-08-27 Netanel Avner System and Method for Virtual Roaming of Mobile Communication Devices
AU2010221174A1 (en) 2009-03-06 2011-09-29 Interdigital Patent Holdings, Inc. Platform validation and management of wireless devices
US8453140B2 (en) * 2009-04-28 2013-05-28 Qualcomm Incorporated Method for generically handling carrier specific provisioning for computer cellular wireless cards
US8417231B2 (en) * 2009-05-17 2013-04-09 Qualcomm Incorporated Method and apparatus for programming a mobile device with multiple service accounts
US8417234B2 (en) * 2009-05-17 2013-04-09 Qualcomm Incorporated Method and apparatus for tracking the programming of a mobile device with multiple service accounts
US8966101B2 (en) * 2009-08-10 2015-02-24 Sling Media Pvt Ltd Systems and methods for updating firmware over a network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1537397A (zh) * 2001-07-26 2004-10-13 用于提高手机重建程序和重新编程的安全性的系统及方法
CN101171861A (zh) * 2005-03-14 2008-04-30 高通股份有限公司 用于对无线通信网络上的无线装置进行服务编程的设备和方法

Also Published As

Publication number Publication date
US20110296399A1 (en) 2011-12-01
EP2578005A1 (en) 2013-04-10
WO2011149831A1 (en) 2011-12-01
CN102939773A (zh) 2013-02-20
EP2578005B1 (en) 2020-04-08
US8756256B2 (en) 2014-06-17
JP2013526818A (ja) 2013-06-24

Similar Documents

Publication Publication Date Title
CN102939773B (zh) 用于管理具有多个服务账户的通信装置的非易失性项目及预备文件的方法及系统
US11039301B2 (en) Apparatuses, methods and systems for implementing a system-on-chip with integrated reprogrammable cellular network connectivity
US8892083B2 (en) System and method for locking and branding a mobile communication device to a network
CN102308561B (zh) 通过uicc进行的me网络参数配置
US8391837B2 (en) Method, system and trusted service manager for securely transmitting an application to a mobile phone
KR100911604B1 (ko) 무선 통신 장치의 시스템 소프트웨어 다운로드 관리시스템 및 방법
US10003956B2 (en) Method for performing a remote management of a multi-subscription SIM module
AU2003226998B2 (en) System and method for managing resources of portable module resources
US20080086614A1 (en) Application dependent storage control
US8863240B2 (en) Method and system for smart card migration
RU2004119554A (ru) Система и способ идентификации и доступа к услугам сети
US8146153B2 (en) Method and system for creating and accessing a secure storage area in a non-volatile memory card
US11051160B2 (en) Apparatuses, methods and systems for implementing a system-on-chip with integrated reprogrammable cellular network connectivity
EP3023904B1 (en) Implicit File creation in APDU scripts
CN102196413B (zh) 实现空中配号的方法、系统、服务器和用户身份识别卡
EP3257281A1 (en) Communication with plurality of cellular networks using cellular modem and virtual subscriber identity modules stored in software-based embedded universal integrated circuit card (euicc)
CA2694194C (en) System and method for locking and branding a mobile communication device to a network
CN101895883A (zh) 一种支持鉴权算法更新的智能卡及方法
US20050177658A1 (en) Data organization in a smart card
US11106472B2 (en) Method for managing multiple operating systems in integrated circuit cards, corresponding system and computer program product
CN113950035A (zh) 动态更新nfc能力的方法、终端及uicc
US20230007465A1 (en) Backlog mechanism for subscriber profiles on euiccs
KR20090066175A (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160511

Termination date: 20210523

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