CN101371227A - 在计算设备上永久保持定制数据 - Google Patents

在计算设备上永久保持定制数据 Download PDF

Info

Publication number
CN101371227A
CN101371227A CNA2006800495116A CN200680049511A CN101371227A CN 101371227 A CN101371227 A CN 101371227A CN A2006800495116 A CNA2006800495116 A CN A2006800495116A CN 200680049511 A CN200680049511 A CN 200680049511A CN 101371227 A CN101371227 A CN 101371227A
Authority
CN
China
Prior art keywords
customization data
data
area
customization
permanent storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2006800495116A
Other languages
English (en)
Inventor
D·W·弗兰克
E·桑伯恩阿西斯
R·兰加
M·伊斯特伍德
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
Palm 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 Palm Inc filed Critical Palm Inc
Publication of CN101371227A publication Critical patent/CN101371227A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Retry When Errors Occur (AREA)

Abstract

在计算设备中,定制数据独立于设备的操作系统被永久地保持。定制数据可以与操作系统一起被存储在计算设备的永久存储器(或者ROM或等效的存储器组件)中,但是独立于操作系统。当首次初始化计算设备或者当在硬复位事件之后立即初始化计算设备时,定制数据不会丢失。

Description

在计算设备上永久保持定制数据
技术领域
所公开的实施例一般而言涉及计算设备上的数据管理的领域。更特别地,所公开的实施例涉及在计算设备上永久保持定制数据。
背景
目前,很多类型的计算设备都被制造成具有特定的默认或出厂设置状态。通常,如果设备需要修理或者以别的方式经历复位或其他发生数据丢失的事件,那么可以恢复默认或出厂状态。从默认状态操作计算设备至少会复原操作系统,以使该计算设备是可操作的。在许多情况下,计算设备的默认状态带有应用和/或数据,这些应用和/或数据在该设备的使用或销售之前被加载到该设备上。
有时候,在数据丢失事件之后,作为设备工作状态的一部分而被存储在计算设备上的应用和数据是定制的。这种定制的最常见实例是蜂窝电话。通常,蜂窝电话是通过无线运营商和供应商出售的,这些运营商和供应商使用软品牌(soft branding)和专用数据来使任何通用硬件设备符合运营商专用的硬件设备。
然而,为计算设备定制其硬复位状态是一个昂贵且麻烦的过程。这种定制通常需要设备制造商“破解ROM”,这意味着设备制造商必须访问操作系统所在的永久存储器的一部分。这部分存储器通常是密封的。一旦这样做,就需要向设备的操作系统以及可能的其他标准或协议重新认证该设备。
为了避免在重新认证计算设备时所涉及的费用和劳动,目前一种替换方法是能够在使得设备可操作之后进行设备定制。但是,希望定制存在的一方(例如无线运营商)会丧失对定制的控制。例如,最终用户可能决定不执行导致定制的步骤,或者开发出针对定制的变通方法。为了提供更具体的实例,诸如组合式电话/消息传送设备之类的便携计算设备可以与更大的计算机系统同步。定制可以在初始同步时被执行。然而,最终用户可能总是决定不同步该设备,或者配置同步过程以使定制不会发生。
此外,在蜂窝电话设备的情况下,硬复位在任何特定设备的一生中并不罕见。在使用了给定设备之后,一旦将其硬复位,那么在工作状态中对该设备提供的定制数据可能会丢失。
附图简述
图1是在实施例中存储器组件的简化框图。
图2A和图2B分别说明根据本发明实施例的处于硬复位状态和处于工作状态的存储器组件的配置。
图3A-图3C说明在本发明实施例中供计算设备使用的存储器架构。
图4说明在本发明一个实施例中可以永久地加载和使用定制数据的方法。
图5说明根据本发明的一个或多个实施例的用于实施例如图4所示的实施例的系统。
图6说明可以选择、规定以及甚至创建在定制空白(未定制的)设备的过程中使用的定制数据的系统。
图7说明在本发明实施例中能够设计和创建定制数据集的图形用户界面工具。
图8说明供本发明的一个或多个实施例使用的简化框图。
详细描述
本发明的实施例使计算设备能够永久保持独立于其操作系统的定制数据。根据一个实施例,定制数据与操作系统一起被存储在计算设备的ROM(或等效的存储器组件)中,但是该定制数据独立于操作系统。当首次初始化计算设备时,或者当在硬复位事件之后立即初始化计算设备时,该定制数据不会丢失。
另外,一个实施例规定,为定制数据所保留的存储器量部分地基于定制数据的大小。因此,即使定制数据是在独立于操作系统的情况下被提供的,也可以在为定制数据保留存储器的同时避开未使用的存储器。
正如将要描述的,这些实施例使得在制造设备时定制数据能够以与操作系统分离的方式被加载,或者利用逻辑和软件而以别的方式被提供。在制造过程期间,定制可以针对特定类别的设备来进行,而无需“破解ROM”或者以别的方式访问操作系统。这使得设备的类别能够被定制而无需ROM和/或操作系统的重新认证。由于ROM和操作系统的重新认证可被避免,因此定制数据可以以成本效益合算得多的方式来实施,而同时还减少定制所要出售的计算设备的类别的时间量。另外,定制还可以针对相对较小类别的计算设备来进行,而以别的方式进行这种处理将是成本效益不合算的。
根据另一实施例,计算设备可以从硬复位状态来定制。一旦从硬复位状态初始化计算设备,就确定永久存储器中要被格式化的部分的大小。该大小可以基于被存储在包含了将要格式化的部分的永久存储器区域中的定制数据的数量。这个永久存储器区域独立于存储操作系统的另一永久存储器区域。第二存储器部分是在不影响定制数据的情况下格式化的。
在一个实施例中,在存储操作系统的永久存储器区域中可以存储值。该值可以基于定制数据的大小。所述值可以被用来确定将要格式化的存储器部分的大小。根据另一实施例,用于计算设备的组件包括永久存储器。该永久存储器被配置成在计算设备处于硬复位状态时存储和保持数据。在一个实施例中,在硬复位状态中,存储在永久存储器中的数据对应于操作系统和定制数据。根据一个实施例,第一逻辑描绘(delineate)永久存储器中存储了操作系统的第一区域,该区域与存储器中存储定制数据的第二区域是分离的。因此,从第二区域中可检索定制数据,而不用从第一区域中检索数据。还可以提供第二逻辑,该第二逻辑保留了存储定制数据的第二区域的位置。该位置可以基于定制数据的大小。这样,一个或多个实施例规定,第一和第二逻辑提供了存储器配置模块。
根据另一实施例,第二逻辑还可以指示处于第一区域之外的定制数据的位置。当从硬复位状态初始化包含存储器组件的计算设备时,第二区域中不包含定制数据的至少一部分能够被格式化。
在存储器的上下文中的表达“永久”(例如“永久地存储”或“永久存储器”)打算是指这样的存储器,如果数据没有被处理器操作执行的操作擦除,则只要该存储器没有受损,该存储器就可以提供其所存储的数据。例如,永久存储器能够在没电时保持数据。
术语“定制数据”指的是这样的任何数据,其中当在一个或多个设备组成的集合上实施该数据时,与其他设备相同的这组设备因该定制数据而与其他设备区分开来。
这里使用的术语“硬复位状态”指的是这样一种状态,在该状态中,除了制造商/供应商提供的数据(例如“出厂设置”或“预置设置”)或者以别的方式通过这里描述的一个或多个实施例提供的数据之外,在计算设备上不保持数据。硬复位状态的一个实例是开箱即用设备在其首次使用之前的状态。硬复位状态的另一实例是将设备返回到其“出厂设置”的某个操作或操作序列之后的状态。在一些计算设备例如新近的个人数字助理(PDA)中提供了一种硬复位协议,该协议可以由用户使用以便将设备恢复到出厂设置,为的是检修故障或者重新销售该设备。
术语“逻辑”可以指数据或者可由处理器作为指令而执行的数据。实际上,术语“第一逻辑”和“第二逻辑”可以是相同的代码、指令乃至数据值的一部分,尽管它们也可以是分离的。
在这里描述的一个或多个实施例规定,由计算设备所执行的方法、技术和动作是以编程的方式或者作为计算机实施的方法来执行的。“以编程的方式”指的是通过使用代码或计算机可执行指令。以编程的方式执行的步骤既可以是自动的,也可以不是自动的。
这里描述的一个或多个实施例可以通过使用模块来实施。模块可以包括程序、子例程、程序的一部分、或者能够执行一个或多个所述任务或功能的软件组件或硬件组件。这里使用的模块既可以独立于其他模块而在硬件组件上存在,也可以是其他模块、程序或机器的共享元件或过程。
此外,这里描述的一个或多个实施例可以通过使用可由一个或多个处理器执行的指令来实施。这些指令可以在计算机可读介质上被携带。以下的图中所示的机器提供了关于处理资源以及可以携带和/或执行用于实施本发明实施例的指令的计算机可读介质的实例。特别地,与本发明实施例一起所示的众多机器包括一个(多个)处理器以及用于保持数据和指令的各种形式的存储器。计算机可读介质的实例包括永久记忆存储设备,例如个人计算机或服务器上的硬盘驱动器。计算机存储介质的其他实例包括便携存储单元,例如CD或DVD单元、闪速存储器(例如在许多蜂窝电话和个人数字助理(PDA)上携带的闪速存储器)、以及磁存储器。计算机、终端、具有网络功能的设备(例如诸如蜂窝电话之类的移动设备)都是使用了处理器、存储器以及存储在计算机可读介质上的指令的机器和设备的实例。
图1是在一个实施例中存储器组件的简化框图。存储器组件100可以是为了与其他存储器组件(在图1中未示出)一起使用而被提供的。该存储器组件100永久地保持在从硬复位状态初始化计算设备时对计算设备的操作而言关键的数据。在一个实施方式中,存储器组件100是“ROM”组件,其保持对计算设备的操作而言关键的数据,其中包括操作系统110或BIOS数据(未示出)。作为操作系统的一部分或者除了操作系统之外,与操作系统封装在一起或者以别的方式包含在一起的一个或多个应用可以被包含在操作系统100的相同分区或区域内部。例如,用于特定操作系统的核心应用可以被包含在操作系统的分区内部。作为具体实例,PALM OS(由ACCESS INC制造)包含作为核心应用的某些个人信息管理应用,例如联系人应用。当操作系统110驻留于存储器组件100中时,操作系统110可以处于包装(wrapped)状态。设想与一个或多个实施例一起使用的特定类型的永久存储器组件是闪速存储器组件,其能够将数据以块而不是字节的形式写入组件。通常,闪速存储器是在小的或薄的计算设备(例如蜂窝电话设备和消息传送设备)中使用的。具有持久性并且通常用于保持操作系统的特定类型的闪速存储器是NAND闪速存储器组件。
在例如图1所示的实施例中,存储器组件100中的分区120将提供操作系统110的第一区域122与第二区域124分离。一定范围的存储器地址可以与存储器组件110的第一区域122和第二区域124中的每一个相关联。分区120本质上可能是逻辑的,因为该分区是通过由计算设备上的处理资源(未示出)执行的低级代码而形成和保持的。在一个实施方式中,存储器组件100是存储器架构的一部分,其中第二区域124提供用于存储来自易失存储器组件(例如设备RAM)的应用和应用数据的存储器。例如,当计算设备处于工作状态时,在该设备上运行的应用和应用数据被存储在RAM的一部分中,然后被备份成在闪速存储器组件中未使用的部分上所建立的文件格式。如果执行软件复位(有时称为“软复位”),那么闪速存储器组件不受影响,并且可以使用备份的数据来恢复RAM组件。
根据一个实施例,定制数据130被提供给存储器组件100。该定制数据130是利用软件和/或数据来配置特定计算设备、以便将该设备定制为属于某个类别、群组乃至个体的数据。在一种实施方式中,计算设备130是诸如蜂窝电话设备之类的移动计算设备,并且定制数据130使这种移动计算设备(例如“电话”)符合特定运营商的设备类别,其中该运营商将提供这些电话来进行销售和使用。例如,制造商可以制造都具有特定的硬件和软件设计(包括操作系统)的大量设备,并且定制数据130可以对一部分设备进行定制,以使其具有看起来觉得是专为某个无线运营商而产生的功能、数据和/或软件。在这种情况下,定制数据130使设备符合由为特定运营商制造的设备所组成的类别。用于无线运营商的定制数据130的更具体的实例包括:(i)利用设备来标记蜂窝运营商的软品牌的图像,(ii)用于运营商的默认应用(例如无线运营商商店定位器),(iii)用于联系供应商/无线运营商的联系人记录集合,(iv)默认书签集合,(v)壁纸图像,(vi)默认振铃音,以及(vii)允许设备从用户帐户中检索电子邮件消息的默认电子邮件设置。
在一个实施例中,定制数据130是在第二区域124中提供的,从而定制数据130独立于在存储器组件中提供操作系统110的第一区域122。同样,定制数据130可以独立于操作系统110(以及存储在其中的其他应用(例如核心应用)和数据)的存在而被存储在存储器组件100中。特别地,定制数据130可以是在操作系统110被加载、分区和密封之后存储的。因此,如果操作系统110被认证,则添加定制数据130或者对其的后续修改不需要重新打开操作系统或者使操作系统进行另一认证。例如,计算设备可以是在密封和认证了操作系统110的情况下制造的,然后,在后续制造步骤中为其提供定制数据,以使厂商或感兴趣方能够销售和/或使用该计算设备。另举一例,所制造的设备或者用户使用中的设备可以关于定制数据130被更新,而不需要改变操作系统110或者访问存储器中保持操作系统的区域。例如,当移动电话设备到其产品寿命周期的末尾时,通过改写或更新现有定制数据130,可以重新定制已经为特定运营商定制的现有设备,从而这些设备可以由需要较旧设备的另一运营商来销售。更进一步,当复原设备时,这些设备还可以被重新定制(通过更新或改写定制数据130)以便充当用于不同运营商的翻新设备。这些功能中的任何一种都可以在制造级以快速和成本效益合算的方式完成,而不需要“破解ROM”或者重新认证操作系统110。此外,软件工具或程序可以使除制造商之外的实体能够利用定制数据来配置设备类别中的设备。在一个实施例中,经销商或翻新商可以使用软件工具来加载定制数据130。在另一实施例中,用户可以通过将文件下载到将要定制的设备上(或者到与将要定制的设备同步的计算机上),然后输入定制数据并使定制数据作用于该设备,从而加载定制数据。
在一个实施方式中,存储器组件100可以与通常供更复杂的蜂窝电话设备使用的NAND闪速存储器模块相对应。操作系统110的一个实例是PALM OS或者由MICROSOFT CORP制造的WINDOWS MOBILE。存储器组件100可以在计算设备上仅仅形成整个存储器架构的一部分。根据一个设备实施方式,易失存储器被用作RAM并且执行操作系统110的展开版本。在从硬复位状态初始化时,存储器组件100的第二区域124被格式化,以便备份RAM,并且提供目录或其他存储器文件格式。该第二区域124可以具有第一区域122之外的任何存储器地址范围。对第二区域124进行结构化的过程删除了处于正被格式化的部分中的任何现有数据。定制数据130位于第二区域124中,从而当进行结构化时,第二区域中携带了定制数据的部分不受影响。这样,定制数据130从硬复位状态起保持不变。
图2A和图2B分别说明根据本发明实施例的处于硬复位状态和处于工作状态的存储器组件的配置。在图2A和图2B中,存储器组件200可以对应于闪速存储器组件(例如NAND闪存),该存储器组件保持了其所在的计算设备的操作系统210。该存储器组件200可以是例如蜂窝电话/消息传送设备中的整个存储器架构的一部分。
图2A说明在计算设备处于硬复位状态时存储器组件200的配置。该硬复位状态可以对应于一种从未使用计算设备和存储器组件200的状态,或者可选择地,它可以对应于计算设备和存储器组件刚刚在硬复位事件之后的状态,在该状态中,在计算设备投入使用之后添加到该设备中的任何数据都被擦除。该存储器组件200被分为第一区域222(对应于第一存储器地址范围)和第二区域224(对应于第二存储器地址范围)。第一区域222包含与操作系统210和令牌212相对应的数据。第二区域224包括定制数据230。正如将要解释的,令牌212可以包括或者对应于一个能对在第二区域224中提供定制数据230的存储器部分的地址范围进行识别的值。
在一个实施例中,将定制数据230写入具有至少一个已知地址的地址范围中。该已知地址充当用于定位除存储器组件200的第二区域224的剩余部分之外的定制数据230的参考点。在一种简单情况下,例如其中存储器组件200只有一个分区,这个将被提供定制数据230的地址范围可以包括存储器组件220的逻辑结尾246。存储器组件220的逻辑结尾246是提供最后一个存储器地址范围的位置,并且它可以形成在地址范围中写下定制数据的参考点。在硬复位状态中,第二区域224中不保持定制数据130的部分未被格式化。因此,在存储器组件230的底部的地址范围235提供用于定制数据230的参考点,并且这个地址范围处于第二区域224中,以便独立于操作系统210所在的第一区域222。一个部分236可以与地址范围235相对应,该部分定义定制数据230的位置。在图2A提供的实施例中,未格式化的部分233是在第二区域224中减去地址范围235所定义的部分236之后得到的剩余部分。
在一个实施例中,令牌212携带与定制数据230的大小相对应的值。由于定制数据230是从已知地址写入的(例如存储器组件230的底部或逻辑结尾246),因此,存储定制数据(部分236)的地址范围235是已知的。这能够实现在不影响定制数据230的情况下格式化第二区域224的后续过程。这种后续过程可以在从硬复位状态启动设备时被调用。在所示出的实施例中,第二区域224中将被格式化的部分的大小(即未格式化部分233或者其实质部分)取决于定制数据230的大小。
根据一个在存储器组件200的底部提供定制数据230的实施例,通过规定第二区域224中将要格式化的存储器的大小,可以对第二区域224进行格式化。具体而言,将要重新格式化的存储器大小可以对应于(i)存储器组件中的存储总量,减去(ii)提供操作系统的第一区域222中的存储器量,以及减去(iii)令牌212的值(即定制数据230的大小)的差值。在一个实施方式中,通过确定存储器组件中的空闲存储器减去令牌212所表示的值,可以做出上述判定。这导致地址范围235不受用于第二区域224的剩余部分的结构化过程的影响。
在图2B中示出当计算设备处于工作状态时的存储器组件200。在该状态中,设备已被初始化(例如首次开启)。作为初始化过程的一部分,在由存储器组件200中的第二区域224提供的空闲存储器上安装了一种格式(例如目录)。在一种实施方式中,存储器组件100的已格式化部分234提供备份存储空间,以使设备能够在软复位事件之后运行。格式化部分234的创建和存在并不影响提供定制数据230的部分236。然后,当设备处于工作状态时,该定制数据230可供应用和/或操作系统使用。
图3A-图3C说明在本发明实施例中供计算设备使用的存储器架构。根据所示出的实施例,永久存储器组件310和RAM组件320可以一起协作,以便能够在软复位事件之后保存数据,同时还在从硬复位或出厂设置状态进行任何初始化时提供定制。
在图3A中,存储器架构处于硬复位状态。永久存储器组件310包括操作系统312和令牌314。在具有已知参考地址的地址范围(例如存储器组件的底部)中写入一组定制数据330。如先前所述,令牌314可以表示定制数据330的大小。在硬复位状态中,永久存储器组件310在与该组件的剩余部分相隔离的区域中永久地保持操作系统312和令牌314。定制数据330还被包含在存储器组件310中未格式化的区域中。RAM组件320是没有数据的。
图3B示出根据本发明实施例在从硬复位状态初始化之后处于工作状态的存储器架构。在图3B中,永久存储器组件310被改变,因为该组件中用于操作系统的分区之外的空闲范围被格式化,以便用于某个目的。在所示的实施方式中,举例来说,永久存储器组件310被格式化以便提供用户存储装置(store)315。RAM组件320可被格式化,以便除了其他元件外还包含存储堆322和动态堆324。存储堆322可以存储应用325和应用数据326,该应用数据326是半永久性的,这意味着在设备开启或关闭时,该应用数据是存在的。当设备处于工作状态时,应用325和应用数据326被备份在永久存储器组件310的用户存储装置315中。
图3C示出在本发明实施例中在软复位事件之后的存储器架构。RAM组件320的一些或所有数据已被擦除。在软复位之后,用户存储装置315可以被用来恢复应用325和应用数据326。
在图3B和图3C所示的状态中,定制数据330可以包括供操作系统和/或其他应用使用以定制计算设备的数据、代码、应用和设置。举例来说,在工作状态中,定制数据330可以包括联系人记录,通过使用联系人应用来使该联系人记录可用。关于图3C,定制数据330可以包括图像,当从软复位状态重启设备时,该图像标记该设备的品牌。
正如上述实施例所说明的,计算设备的永久存储器可以具有附加逻辑分区,以便在硬复位状态中保持定制数据。这个分区可以是动态的,因为它与定制数据的大小相适合。更一般地,所形成的动态分区可以至少部分地取决于所存在的定制数据量的大小。这与在具有统一大小的分区中提供定制数据而不考虑所存在的定制数据量的处理形成了对比。在后一种情形下,在永久存储器组件中产生更多的未使用存储器。
定制数据的加载
为了在计算设备中永久地存储定制数据,需要实施一个可以将定制数据写入存储器架构的永久存储器元件的过程。存在将定制数据写入永久存储器的众多技术。
图4说明在本发明实施例中可以永久地加载和使用定制数据的方法。在步骤410中识别定制数据。在一个实施方式中,定制数据是由不同于计算设备的制造商的源来规定、设计或创建的,举例来说,例如设备的经销商或者某一其他第三方。举例来说,用于特定计算设备集合的定制数据可以采用由第三方(例如运营商)提供的或者通过第三方的输入而创建的数据文件的形式(参见图7)。
步骤420规定,将定制数据写入永久存储器组件(例如ROM组件310)的一个区域,该区域独立于操作系统分区。这可以对应于一个未被操作系统数据使用的地址范围。举个例子,如图2的实施例所示,提供定制数据的区域可以对应于一个处于永久存储器组件的底部的地址块、或者具有另一已知参考的地址块。
步骤430规定,在将定制数据写入永久存储器时识别定制数据的大小。根据一个实施方式,这个步骤是由计算设备和/或操作系统的编程元件执行的。
在步骤440中,与定制数据的大小相对应的值作为令牌与操作系统存储在一起。该令牌可以被存储在操作系统的令牌区域中。很多操作系统都作准备接收令牌值并且将其存储在其永久存储器的分区中,例如PALM OS以及为较小计算设备而制造的其他操作系统。
步骤450规定,在对保持操作系统和/或定制数据的永久存储器进行格式化时,对存储器部分进行格式化的组件判定空闲存储器的大小。该判定可以包括空闲存储器量减去操作系统的分区以及减去定制数据大小。
步骤460规定,当从硬复位状态启动设备时,对所识别的不包含定制数据的地址范围的空闲存储器进行格式化。假如在一种实施方式中将定制数据写入将要格式化的存储器部分的底部,那么结果是定制数据不受存储器的结构化的影响。在这个步骤中,所有空闲存储器(不包括操作系统分区)都可以格式化,但这不包括提供定制数据的部分。空闲存储器量可以取决于定制数据的大小。在一个实施方式中,空闲存储器是既不在操作系统分区中也没有被用于存储定制数据的所有存储器。该实施方式的变型也是存在的,例如空闲存储器量松散地依赖于定制数据量。例如,空闲存储器可以对应于未处于操作系统分区中的所有存储器减去存储定制数据所需的存储器量的两倍。
图5说明一种用于实施例如图4所示的实施例的系统。在图5中提供一种用于将定制数据写入永久存储器组件500的系统。举例来说,该系统可以在使用闪速存储器组件以及瘦操作系统(例如PALM OS)的移动计算设备上实施。与其他实例一样,可以为运营商或其他第三方或者代表运营商或其他第三方规定或者以别的方式提供定制数据。
在所示的实施例中,存储器组件500对操作系统510进行分区。当设备处于硬复位状态(T=HRESET)时,定制数据写入过程或模块516把定制数据530写入存储器组件500。创建令牌512并且将其与操作系统510存储在一起,其中该令牌携带定制数据530的大小的值。如其他实施例进一步描述的那样,一个实施例规定,定制数据是在与存储器组件500的底部相对应的地址范围被提供的。
当设备从硬复位状态移至工作状态(T=OPER)时,存储器设备驱动器520访问操作系统的分区,以便读取令牌512的值。这个值对应于定制数据的大小,并且在图5中被称为定制数据大小。存储器设备驱动器520与存储器安装模块550进行通信。该存储器安装模块550执行包括格式化存储器组件500在内的各功能。在一个实施例中,存储器安装模块550将FAT(文件访问表)文件551安装到存储器组件500中未使用的存储器上。存储器安装模块550所作的格式化的量是由存储器设备驱动器540提供的FAT文件大小552确定的。该FAT文件大小552的值考虑到定制数据530的存在。作为初始化过程的一部分,紧接在硬复位状态之后,存储器安装模块550使用FAT文件大小552来格式化永久存储器组件500,从而不会影响到定制数据530。
例如图5所示的系统不但可以用来实施定制数据,而且还可以在实施了定制数据之后更新或改写定制数据。这些活动中的每一个都是在不需要重新认证操作系统的情况下执行的,但是举例来说,如果将定制数据写入操作系统分区,那么需要重新认证操作系统。可以设想众多的方案。例如,在不同类别的定制设备中的众多设备之间可能存在不平衡性。更具体地说,举个例子,由一个运营商或厂商提供的设备可能比另一厂商提供的相同设备销售得更慢,从而在定制设备的库存方面产生不平衡性。根据例如图5所示的实施例,为特定厂商或运营商定制的设备可以为另一厂商或运营商重新定制,以便移动呆滞的库存。在例如图5所示的系统中,重新定制可以通过创建定制数据并且使用定制数据写入过程或模块516来执行,该过程或模块利用新的定制数据来改写现有定制数据。虽然新的定制数据可能具有不同的大小,但是该数据可以在包含存储器组件的底部的地址范围处被提供。新的定制数据的大小可以利用令牌512来记录,然后该令牌使用存储器设备驱动器来传送FAT文件大小552(总的存储器减去操作系统分区,再减去新的定制数据的大小)。这时,先前的定制数据完全被新的定制数据所取代。
还存在可以更新定制数据的众多其他情形。当产品在其寿命周期中变老时,这里描述的实施例设想了使用定制数据来使设备更吸引人。例如,一个或多个实施例设想了由打折厂商来定制处于其产品周期的末尾的设备,并且定制数据能使该设备更易于从这种厂商那里售出。
作为其他示例使用,可以写入或重新写入定制数据以便提供新颖的软件设计,例如名流艺术(celebrity art)、收藏版或者收藏品排序,以便使设备更加独特、可收藏或者在其他方面合乎需要。
通过使定制数据可被更新,可以容易地由生产线上被卸下的产品或者由退回的产品来解决定制数据中的任何应用或故障修复。定制数据更新可以针对在其上已经存在现有数据的永久存储器组件进行。
定制数据的创建和实施
根据一个实施例,定制数据是由希望从一定生产量的公共设备定制一种类别、群组或单独的设备的各方的输入来规定的。图6说明可以选择、规定甚至创建定制数据以便在定制空白(未定制的)设备的过程中使用的系统。图6中的系统包括实施过程610,该过程可以接收输入602、604和606,以便产生相应的定制数据集612、614和616。这些定制数据集612、614和616是用于硬复位的。
在图6提供的实例中,输入602、604和606可以源自不同的来源和/或当事方。举个例子,实施过程610可以接收来自设计者的通过例如网页、数据传输、数据文件或手动输入的定制输入。在一个实施方式中,所得到的每一个定制数据集612、614和616都可以采用XML文档和/或数据比特的形式,从而表示应用、应用数据、数据比特以及其他文件。
如所述,一个实施例规定,将硬复位定制数据612、614和616格式化成XML文件、可执行文件以及位图或二进制数据文件。XML数据可以包括应用数据,这些应用数据用于在计算设备处于工作状态时在RAM中执行的应用。利用操作系统执行的或者甚至在操作系统外部执行的某些应用可以具有允许它们从永久存储器组件中查找以及拖曳定制数据的配置。因此,一种用于使用定制数据的架构使用了应用拖曳机制来将定制数据结合到一个或多个应用的操作中。任何处于比特形式的定制数据都可以包括应用和图像,其中包括壁纸或软件皮肤。
一旦形成了定制数据集612、614和616,就可以实施不同的定制数据集,以便对未定制设备640进行分类。可以假设这些设备是未定制的,尽管如结合其他实施例所描述的那样,定制数据集可以被用来改写已经在特定设备上存在的定制数据。此外,每一个定制数据集612、614和616都可与一个数量值配对,该数量值指示将要由特定数据集定制的设备的数量。该数量值可以作为定制输入602、604和606的一部分而被包含,或者它也可以从单独的来源确定。然后,一旦实施定制数据来修改未定制设备,那么相应的设备变成定制的。特别地,实施定制数据的结果是未定制设备整体上被定制为各类别的设备,其中每一个类别表示一个具有特定定制数据集的特定设备。在图6中,举例来说,类别652、类别654和类别656中的每一个都可以表示来自特定厂商和/或提供了特定服务的设备。
特别地,对于无线计算设备(例如蜂窝电话或消息传送设备)来说,每一个设备都可以结合特定无线运营商所提供的无线服务来定制。在这种情况下,定制数据集612、614和616可以表示下列各项中的任何一项:标记特定运营商的品牌的壁纸,在设备上默认选择的音频声音信号和振铃音(也可以是品牌),某个运营商的专用应用(例如用于运营商的商店定位器),允许用户通过默认配置数据来检索电子邮件的电子邮件配置数据,默认浏览器,使用万维网浏览器时的默认主页,以及在操作系统中提供的应用的应用数据(例如用于电话应用的联系人记录)。
根据一个实施例,定制输入602、604和606可以由第三方设计者来提供。这种设计者可以包括为一种类别的设备选择定制设计的个人,或者甚至可以包括希望定制设计他们自己的个人设备的最终用户。图7说明能够设计和创建定制数据集612、614和616的图形用户界面工具700。该工具700可以基于万维网,因为该工具可以通过使用万维网浏览器或者可选择地基于万维网的客户机而被访问和使用。同样,该工具700可以在客户机终端705上被再现。该工具700允许设计者具有(i)上载特征702,用于允许上载定制数据,例如应用、图像或声音文件,(ii)选择工具704,用于允许选择某些数据,例如设置(例如假设设备将要工作所在的时区),(iii)创建工具706,用于允许创建某些数据,例如联系人记录。可以通过使用工具700来执行的其他功能包括:(i)设备选择(即用户希望把定制数据结合到什么设备),(ii)定制数据发生的日期,以及(iii)将要以特定方式定制的设备的数量。还可以使用各种用户界面特征,例如选择对象(图标和菜单)、文本输入域以及复选框,以使用户能够做出说明并操作工具700。
虽然利用图6和图7详细描述的实施例设想了特定于类别的定制数据,但是其他实施例设想了在个人用户希望定制特定设备时使用定制数据。这种定制数据可以被称为用户专用定制数据。举个例子,用户可以规定一张形成设备的壁纸并且始终在默认设置上可用的照片。此外,其他实施例设想了出于特定目的而希望定制设备的零售商和经销商。举个例子,特定厂商可能希望利用名人或历史事件的图像来定制小的选定范围中的设备,从而计算设备具有特定的标识、振铃音或声音、壁纸或应用。在每一个前述实例中,工具700都可以供个人用户或者零售商或经销商使用。
该实施过程可以包括编程组件,以便允许将定制输入变成可以被加载和存储在永久存储器中的定制数据。在一个实施例中,工具700可以由商业上可得到的工具来提供,例如EPHOX CORPORATION制造的EDIT LIVE!FOR XML,借助该工具,个人可以创建XML文件和数据映射,这些XML文件和数据映射变成存储在设备上的定制数据。一旦产生了定制数据,那么该定制数据就可以采用文件的形式来提供,其中该文件可以被“闪现”或下载到ROM中。虽然这些实施例设想了在制造时进行这种定制,但是这里描述的实施例也允许该定制在从制造到销售、使用以及重新销售之中的几乎任何时间进行。举个例子,零售商或用户可以使用一个程序来将选择的定制数据上载到ROM中。在PALMOS中,可以创建一个PRC文件以便将定制数据写入ROM。
硬件图
图8说明供本发明的一个或多个实施例使用的简化框图。计算设备800可以包括一个或多个处理器810、永久存储器(例如NAND闪速存储器组件)820、一个或多个RAM存储器830、显示器840(包括软件和硬件驱动器)、扬声器或其他音频输出850、以及众多其他驱动器。图8所说明的框图可以表示多种类型的设备,其中包括蜂窝电话设备、无线消息传送设备或者组合的电话/消息传送设备。计算设备800可以与本申请中描述的一个或多个实施例或者实施例的组合来结合使用。根据一个实施例,当使用RAM 830执行应用时,处理器810可以从永久存储器820中读取定制数据。这些应用的执行可以调用定制数据,以便加以使用。另外,定制数据还可以用来创建在显示器840上的定制壁纸和其他图像、来自音频输出设备850的音频输出(例如声音信号和/或振铃音)。定制数据还可以驱动或配置从这种驱动器运行的其他设备860或其他组件的应用。就目前而言,上述的本发明实施例至少部分地可使用受软件控制的可编程处理设备来实施,例如通用处理器或专用处理器、数字信号处理器、微处理器、或者其他处理设备、数据处理装置或计算机系统。将会认识到,用于配置可编程设备、装置或系统来实施前述方法、装置和系统的计算机程序也被认为是本发明的一个方面。该计算机程序可以作为任何合适类型的代码来实现,例如源代码、目标代码、编译代码、解释代码、可执行代码、静态代码、动态代码等等。指令可以使用任何一种合适的高级的、低级的、面向对象的、可视的、编译和/或解释编程语言来实施,例如C、C++、Java、BASIC、Perl、Matlab、Pascal、Visual BASIC、JAVA、ActiveX、汇编语言、机器码等等。技术人员将容易理解,术语“计算机”的最广泛意义包含了上文中提及的可编程设备以及数据处理装置和计算机系统。
适当的是,将计算机程序以机器可读的形式存储在载体介质上,举例来说,该载体介质可以包括存储器、可移动或不可移动介质、可擦写或不可擦写介质、可写入或可重写介质、数字或模拟介质、硬盘、软盘、光盘只读存储器(CD-ROM)、可记录光盘(CD-R)、可重写光盘(CD-RW)、光盘、磁介质、磁光介质、可移动存储卡或盘、各种类型的数字通用盘(DVD)、用户身份模块、磁带、盒式固态存储器。计算机程序可以从通信介质中所包含的远程源来提供,该通信介质例如是电子信号、射频载波或光载波。这种载波介质也被认为是本发明的若干方面。
虽然在这里参考附图对本发明的说明性实施例进行了详细描述,但是应该理解,本发明并不限于这些确切的实施例。同样,对本领域技术人员来说,许多修改和变化将是显而易见的。因此,本发明的范围打算由后面的权利要求书及其等同物来限定。此外还可以设想到,对在这里单独描述或者作为实施例一部分描述的特定特征来说,即使其他特征和实施例没有提到该特定特征,它也还是可以与其他单独描述的特征或其他实施例的部分相结合的。因此,即使没有描述这种组合,也不应该阻止发明人要求对这种组合的权利。

Claims (26)

1.一种用于配置永久存储器的存储器配置模块,该模块可操作用来:
描绘永久存储器中用于存储操作系统的第一区域,其中该第一区域与该存储器中用于存储定制数据的第二区域相分离,从而可从该第二区域中检索该定制数据而不用从该第一区域中检索数据;以及
基于该定制数据的大小来保留该第二区域中用于存储该定制数据的位置。
2.根据权利要求1所述的模块,还可操作用来:响应于所述模块为其工作的计算设备从硬复位状态的初始化,格式化该第二区域中不包含定制数据的至少一部分。
3.根据权利要求1或2所述的模块,其中对所述模块为其工作的计算设备来说,该定制数据是特定于类别的。
4.根据权利要求1或2所述的模块,其中对所述模块为其工作的计算设备来说,该定制数据是特定于用户的。
5.根据权利要求1或2所述的模块,其中该定制数据包括与应用或图像中的至少一个相对应的二进制数据。
6.根据权利要求1或2所述的模块,其中该定制数据包括供应用使用的应用数据,该应用是当所述模块为其工作的计算设备处于工作状态时执行的。
7.根据权利要求1或2所述的模块,其中该定制数据包括与应用、应用数据、图像或音频文件中的一个或多个相对应的数据集。
8.根据任何一项在前权利要求所述的模块,其中第二逻辑包括与存储在所述永久存储器中的操作系统存储在一起的令牌。
9.根据权利要求8所述的模块,其中该令牌识别用于指示该定制数据的大小的值。
10.根据任何一项在前权利要求所述的模块,其中第一逻辑或第二逻辑中的至少一个被存储在该永久存储器中。
11.根据权利要求8或9所述的模块,其中所述第二逻辑可操作用来格式化第二存储器的段,该段不包含提供该定制数据的部分,其中该段的大小至少部分地根据所存储的用于指示该定制数据的大小的值来确定。
12.一种用于计算设备的组件,该组件包括:
永久存储器,其被配置成存储在硬复位状态中与操作系统相对应的数据以及定制数据;以及
根据任何一项在前权利要求所述的存储器配置模块。
13.根据权利要求12所述的组件,其中该永久存储器是闪速存储器。
14.根据权利要求12所述的组件,其中该永久存储器是NAND闪速存储器。
15.权利要求11-14中任何一项所述的组件,其中响应于包含该存储器组件的计算设备从硬复位状态进行初始化,第二区域中不包含该定制数据的至少一部分能够通过使用第二逻辑而被格式化。
16.一种计算设备,包括:
根据权利要求11-15中任何一项所述的组件,并且其中所述永久存储器保持与下列各项相对应的数据:(i)处于永久存储器的所述第一区域中的操作系统,以及(ii)处于永久存储器的所述第二区域中的定制数据,其中该第二区域不与该第一区域相重叠,其中在硬复位状态中,除了定制数据之外,第二区域实质上未被格式化;
所述第一逻辑定义了该第一区域和该第二区域;以及
至少指示该定制数据的大小的所述值与该操作系统一起被存储。
17.权利要求16所述的计算设备,其中该定制数据是在永久存储器的逻辑结尾被提供的,从而所存储的值识别了定制数据在永久存储器中的位置。
18.权利要求16或17所述的计算设备,还包括:
第二存储器,其被配置成在计算设备处于工作状态时保持数据;
第三逻辑,当将计算设备从硬复位状态置于工作状态时,该逻辑将至少对应于操作系统的数据从第一存储器转移到第二存储器。
19.权利要求18所述的计算设备,其中永久存储器被配置成提供用于在计算设备处于工作状态时备份与第二存储器一起使用的数据的存储装置。
20.权利要求18或19所述的计算设备,其中第二存储器被配置成在计算设备经受复位事件时进行擦除。
21.一种用于定制计算设备的方法,该方法包括:
将操作系统存储在计算设备的永久存储器的第一区域中;
独立于该存储器的第一区域,将定制数据存储在该存储器的第二区域中;
从硬复位状态初始化计算设备时,格式化第二区域中不包含定制数据的部分,以便供处于工作状态的计算设备使用;以及
其中第二区域中被格式化的部分基于定制数据的大小。
22.权利要求21所述的方法,其中格式化第二区域中不包含定制数据的部分包括:通过确定第二区域的全部减去第二区域中提供定制数据的部分来确定第二区域的该部分的大小。
23.权利要求21或22所述的方法,还包括:
将对应于定制数据的大小的值与操作系统存储在一起;以及
其中格式化第二区域中不包含定制数据的部分包括:使用与操作系统存储在一起的值来识别第二区域中包含定制数据的部分。
24.权利要求23所述的方法,其中格式化第二区域中不包含定制数据的部分包括:在第二区域的逻辑结尾提供定制数据,以及使用与操作系统存储在一起的值来确定第二区域中不包含定制数据的部分的大小。
25.一种用于定制计算设备的方法,该方法包括:
在从硬复位状态中初始化计算设备时,确定计算设备的永久存储器中将要格式化的部分的大小,其中该大小基于存储在包含了将要格式化的部分的永久存储器的区域中的定制数据量,并且其中永久存储器的该区域独立于存储操作系统的另一个永久存储器区域;以及
在不影响定制数据的情况下格式化第二存储器的该部分。
26.权利要求24所述的方法,还包括:在存储操作系统的永久存储器区域中存储基于定制数据的大小的值,并且其中确定永久存储器的部分的大小包括:使用存储在永久存储器区域中的值来确定该部分的大小。
CNA2006800495116A 2005-12-12 2006-12-12 在计算设备上永久保持定制数据 Pending CN101371227A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/302,313 US20070169084A1 (en) 2005-12-12 2005-12-12 Persistent maintenance of customization data on computing devices
US11/302,313 2005-12-12

Publications (1)

Publication Number Publication Date
CN101371227A true CN101371227A (zh) 2009-02-18

Family

ID=38163473

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800495116A Pending CN101371227A (zh) 2005-12-12 2006-12-12 在计算设备上永久保持定制数据

Country Status (5)

Country Link
US (1) US20070169084A1 (zh)
EP (1) EP1969464A2 (zh)
CN (1) CN101371227A (zh)
TW (1) TW200731069A (zh)
WO (1) WO2007070510A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102520983A (zh) * 2011-11-25 2012-06-27 中兴通讯股份有限公司 一个软件版本定制多种默认设置的方法、装置及终端
CN103649949A (zh) * 2011-01-27 2014-03-19 韦斯技术有限公司 从公共云服务器传送配置数据并且施加到移动客户机上
CN104793998A (zh) * 2014-01-20 2015-07-22 中兴通讯股份有限公司 终端系统资源管理方法及装置
CN109997118A (zh) * 2016-11-14 2019-07-09 华为技术有限公司 在永久存储器系统中以超高速一致地存储大量数据的方法

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961567B1 (en) * 2000-12-07 2005-11-01 Palm, Inc. Generic activation and registration framework for wireless devices
US7555571B1 (en) 2001-01-05 2009-06-30 Palm, Inc. Activation of mobile computing device on a cellular network
US8812398B2 (en) 2001-05-08 2014-08-19 Qualcomm Incorporated Key for a wireless-enabled device
US7992203B2 (en) 2006-05-24 2011-08-02 Red Hat, Inc. Methods and systems for secure shared smartcard access
US8495380B2 (en) 2006-06-06 2013-07-23 Red Hat, Inc. Methods and systems for server-side key generation
US8180741B2 (en) 2006-06-06 2012-05-15 Red Hat, Inc. Methods and systems for providing data objects on a token
US8332637B2 (en) 2006-06-06 2012-12-11 Red Hat, Inc. Methods and systems for nonce generation in a token
US8364952B2 (en) 2006-06-06 2013-01-29 Red Hat, Inc. Methods and system for a key recovery plan
US7822209B2 (en) 2006-06-06 2010-10-26 Red Hat, Inc. Methods and systems for key recovery for a token
US8098829B2 (en) 2006-06-06 2012-01-17 Red Hat, Inc. Methods and systems for secure key delivery
US8412927B2 (en) 2006-06-07 2013-04-02 Red Hat, Inc. Profile framework for token processing system
US9769158B2 (en) 2006-06-07 2017-09-19 Red Hat, Inc. Guided enrollment and login for token users
US8589695B2 (en) 2006-06-07 2013-11-19 Red Hat, Inc. Methods and systems for entropy collection for server-side key generation
US8707024B2 (en) 2006-06-07 2014-04-22 Red Hat, Inc. Methods and systems for managing identity management security domains
US8099765B2 (en) 2006-06-07 2012-01-17 Red Hat, Inc. Methods and systems for remote password reset using an authentication credential managed by a third party
US8806219B2 (en) 2006-08-23 2014-08-12 Red Hat, Inc. Time-based function back-off
US8787566B2 (en) 2006-08-23 2014-07-22 Red Hat, Inc. Strong encryption
US8074265B2 (en) 2006-08-31 2011-12-06 Red Hat, Inc. Methods and systems for verifying a location factor associated with a token
US9038154B2 (en) 2006-08-31 2015-05-19 Red Hat, Inc. Token Registration
US8356342B2 (en) 2006-08-31 2013-01-15 Red Hat, Inc. Method and system for issuing a kill sequence for a token
US8977844B2 (en) * 2006-08-31 2015-03-10 Red Hat, Inc. Smartcard formation with authentication keys
US8693690B2 (en) 2006-12-04 2014-04-08 Red Hat, Inc. Organizing an extensible table for storing cryptographic objects
US8813243B2 (en) 2007-02-02 2014-08-19 Red Hat, Inc. Reducing a size of a security-related data object stored on a token
US8832453B2 (en) 2007-02-28 2014-09-09 Red Hat, Inc. Token recycling
US8639940B2 (en) 2007-02-28 2014-01-28 Red Hat, Inc. Methods and systems for assigning roles on a token
US9081948B2 (en) 2007-03-13 2015-07-14 Red Hat, Inc. Configurable smartcard
US8671390B2 (en) * 2007-11-01 2014-03-11 Microsoft Corporation Resolving conflicts when importing an application customization
US9170870B1 (en) 2013-08-27 2015-10-27 Sprint Communications Company L.P. Development and testing of payload receipt by a portable electronic device
US8640226B2 (en) * 2008-06-27 2014-01-28 Novell, Inc. Mechanisms to secure data on hard reset of device
US8938524B2 (en) 2011-01-27 2015-01-20 Wyse Technology L.L.C. Comparing and provisioning configurations for a client having a windows-based embedded image
US9274851B2 (en) 2009-11-25 2016-03-01 Brocade Communications Systems, Inc. Core-trunking across cores on physically separated processors allocated to a virtual machine based on configuration information including context information for virtual machines
US8406125B2 (en) 2010-03-19 2013-03-26 Brocade Communications Systems, Inc. Synchronization of multicast information using incremental updates
US8495418B2 (en) 2010-07-23 2013-07-23 Brocade Communications Systems, Inc. Achieving ultra-high availability using a single CPU
US9104619B2 (en) * 2010-07-23 2015-08-11 Brocade Communications Systems, Inc. Persisting data across warm boots
US9075585B2 (en) 2010-08-06 2015-07-07 International Business Machines Corporation Initializing components of an integrated circuit
US8260281B2 (en) * 2010-12-07 2012-09-04 Sprint Communications Company L.P. System and method of wireless communication
US8725997B2 (en) 2011-01-27 2014-05-13 Wyse Technology L.L.C. Self-provisioning of configuration for a specific-purpose client having a windows-based embedded image with a write-filter
US8825990B2 (en) 2011-01-27 2014-09-02 Wyse Technology L.L.C. Configuring and customizing a specific-purpose client having a windows-based embedded image using extensible markup language (XML) configuration
US8700888B2 (en) 2011-01-27 2014-04-15 Wyse Technology L.L.C. Specific-purpose client with configuration history for self-provisioning of configuration and obviating reinstallation of embedded image
US8495183B2 (en) 2011-01-27 2013-07-23 Wyse Technology Inc. State-based provisioning of a client having a windows-based embedded image
US8751778B2 (en) 2011-01-27 2014-06-10 Wyse Technology L.L.C. Generating, validating and applying custom extensible markup language (XML) configuration on a client having a windows-based embedded image
JP2012234334A (ja) * 2011-04-28 2012-11-29 Toshiba Corp メモリ装置
US8612967B1 (en) 2011-05-31 2013-12-17 Sprint Communications Company L.P. Loading branded media outside system partition
US9171314B2 (en) * 2011-06-16 2015-10-27 Microsoft Technology Licensing, Llc Cloud based management of an in-store device experience
US9143335B2 (en) 2011-09-16 2015-09-22 Brocade Communications Systems, Inc. Multicast route cache system
US8666383B1 (en) 2011-12-23 2014-03-04 Sprint Communications Company L.P. Automated branding of generic applications
CN102541475B (zh) * 2012-03-12 2015-02-04 华为数字技术(成都)有限公司 数据存储方法和数据存储装置
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
US9198027B2 (en) 2012-09-18 2015-11-24 Sprint Communications Company L.P. Generic mobile devices customization framework
US10581763B2 (en) 2012-09-21 2020-03-03 Avago Technologies International Sales Pte. Limited High availability application messaging layer
US9203690B2 (en) 2012-09-24 2015-12-01 Brocade Communications Systems, Inc. Role based multicast messaging infrastructure
US9967106B2 (en) 2012-09-24 2018-05-08 Brocade Communications Systems LLC Role based multicast messaging infrastructure
US9451446B2 (en) 2013-01-18 2016-09-20 Sprint Communications Company L.P. SIM profile brokering system
US8909291B1 (en) 2013-01-18 2014-12-09 Sprint Communications Company L.P. Dynamic remotely managed SIM profile
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
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
US10217064B2 (en) 2013-02-21 2019-02-26 Apple Inc. Intelligent home screen for mobile and desktop operating systems
US9026105B2 (en) 2013-03-14 2015-05-05 Sprint Communications Company L.P. System for activating and customizing a mobile device via near field communication
US9204286B1 (en) 2013-03-15 2015-12-01 Sprint Communications Company L.P. System and method of branding and labeling a mobile device
CN103235703B (zh) * 2013-04-11 2016-08-03 东莞宇龙通信科技有限公司 预置资源存储方法和装置
US9042877B1 (en) * 2013-05-21 2015-05-26 Sprint Communications Company L.P. System and method for retrofitting a branding framework into a mobile communication device
US9280483B1 (en) 2013-05-22 2016-03-08 Sprint Communications Company L.P. Rebranding a portable electronic device while maintaining user data
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
US9204239B1 (en) 2013-08-27 2015-12-01 Sprint Communications Company L.P. Segmented customization package within distributed server architecture
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
US9743271B2 (en) 2013-10-23 2017-08-22 Sprint Communications Company L.P. Delivery of branding content and customizations to a mobile communication 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
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
US9619349B2 (en) 2014-10-14 2017-04-11 Brocade Communications Systems, Inc. Biasing active-standby determination
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
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
US9398462B1 (en) 2015-03-04 2016-07-19 Sprint Communications Company L.P. Network access tiered based on application launcher installation
CN104932955A (zh) * 2015-05-29 2015-09-23 深圳市创维电器科技有限公司 移动终端恢复出厂设置时的数据备份方法及移动终端
US9858412B2 (en) * 2015-06-25 2018-01-02 Intel Corporation Secure trusted execution environment data store
US11146449B2 (en) 2016-02-19 2021-10-12 Intel Corporation Network architecture for internet-of-things device
US10310832B2 (en) 2016-02-19 2019-06-04 Intel Corporation Internet-of-things device blank
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
CN109801625A (zh) * 2018-12-29 2019-05-24 百度在线网络技术(北京)有限公司 虚拟语音助手的控制方法、装置、用户设备及存储介质
US11991525B2 (en) 2021-12-02 2024-05-21 T-Mobile Usa, Inc. Wireless device access and subsidy control

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5307497A (en) * 1990-06-25 1994-04-26 International Business Machines Corp. Disk operating system loadable from read only memory using installable file system interface
TW249877B (zh) * 1993-11-23 1995-06-21 Bellsouth Int Inc
GB2294844B (en) * 1994-11-07 1999-05-26 Motorola Inc Communications operating system and method therefor
US5956636A (en) * 1996-07-16 1999-09-21 At&T Wireless Services Inc. Method and system for automatic activation of a wireless device
US6636489B1 (en) * 1997-11-03 2003-10-21 Bell South Wireless Data. L.P. Wireless management system and a method for an automated over-the-air managing process for wireless communication device
FI105986B (fi) * 1997-11-26 2000-10-31 Nokia Networks Oy Tilaajan palveluprofiilit tietoliikennejärjestelmässä
US6208853B1 (en) * 1998-02-24 2001-03-27 Lucent Technologies Inc. Methods for registering a warranty for a wireless device
FI105978B (fi) * 1998-05-12 2000-10-31 Nokia Mobile Phones Ltd Menetelmä langattoman päätelaitteen kytkemiseksi tiedonsiirtoverkkoon ja langaton päätelaite
US7010603B2 (en) * 1998-08-17 2006-03-07 Openwave Systems Inc. Method and apparatus for controlling network connections based on destination locations
US6600743B1 (en) * 1998-08-25 2003-07-29 International Business Machines Corporation IP multicast interface
FI109756B (fi) * 1998-09-21 2002-09-30 Nokia Corp Menetelmä tiedonsiirtojärjestelmässä paikallisten resurssien hyödyntämiseksi, tiedonsiirtojärjestelmä ja langaton viestin
AU2001289591A1 (en) * 2000-09-19 2002-04-02 Xponcard A/S A method and a system for the management of memory space in a subscriber identity module
JP2002111845A (ja) * 2000-09-27 2002-04-12 Nec Corp 共用携帯電話機、及び、携帯電話機の共用方法
US6961567B1 (en) * 2000-12-07 2005-11-01 Palm, Inc. Generic activation and registration framework for wireless devices
US7359516B1 (en) * 2000-12-07 2008-04-15 Palmsource, Inc. User interface technique for selection and activation of wireless services from among multiple transport carriers
FR2831218B1 (fr) * 2001-10-22 2004-03-19 Peugeot Citroen Automobiles Sa Systeme d'injection de carburant pour moteur diesel avec recyclage
US6599098B2 (en) * 2001-12-31 2003-07-29 Industrial Technology Research Institute Thermolysis reaction actuating pump
US7017004B1 (en) * 2002-03-29 2006-03-21 Microsoft Corporation System and method for updating contents of a flash ROM
KR100448905B1 (ko) * 2002-07-29 2004-09-16 삼성전자주식회사 낸드플래쉬메모리를 시스템구동 및 저장용으로 사용하는장치
US20040254827A1 (en) * 2003-06-13 2004-12-16 Hind John R. Methods, systems and computer program products for indirect profiling of web users
US20050009514A1 (en) * 2003-07-08 2005-01-13 Ajit Mathews Resource efficient content management and delivery without using a file system
CN1867886B (zh) * 2003-09-02 2010-06-16 捷讯研究有限公司 提供用户界面定制文件的自动化方法
FR2864742B1 (fr) * 2003-12-30 2006-03-10 Sagem Procede de personnalisation automatique d'un terminal mobile en fonction du module d'identification de l'utilisateur et terminal mobile personnalisable
US7636333B2 (en) * 2004-11-16 2009-12-22 Qualcomm Incorporated Method and apparatus for carrier customization in communication systems
JP2006260058A (ja) * 2005-03-16 2006-09-28 Fujitsu Ltd 計算機サーバ・システムにおけるファームウェアアップデート方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103649949A (zh) * 2011-01-27 2014-03-19 韦斯技术有限公司 从公共云服务器传送配置数据并且施加到移动客户机上
CN103649949B (zh) * 2011-01-27 2016-12-28 韦斯技术有限公司 从公共云服务器传送配置数据并且施加到移动客户机上
CN102520983A (zh) * 2011-11-25 2012-06-27 中兴通讯股份有限公司 一个软件版本定制多种默认设置的方法、装置及终端
WO2013075538A1 (zh) * 2011-11-25 2013-05-30 中兴通讯股份有限公司 一个软件版本定制多种默认设置的方法、装置及终端
CN102520983B (zh) * 2011-11-25 2015-06-10 中兴通讯股份有限公司 一个软件版本定制多种默认设置的方法、装置及终端
CN104793998A (zh) * 2014-01-20 2015-07-22 中兴通讯股份有限公司 终端系统资源管理方法及装置
WO2015106529A1 (zh) * 2014-01-20 2015-07-23 中兴通讯股份有限公司 终端系统资源管理方法及装置
US10078532B2 (en) 2014-01-20 2018-09-18 Zte Corporation Resource management method and device for terminal system among multiple operating systems
CN104793998B (zh) * 2014-01-20 2019-04-16 中兴通讯股份有限公司 终端系统资源管理方法及装置
CN109997118A (zh) * 2016-11-14 2019-07-09 华为技术有限公司 在永久存储器系统中以超高速一致地存储大量数据的方法
CN109997118B (zh) * 2016-11-14 2022-04-29 华为技术有限公司 在永久存储器系统中以超高速一致地存储大量数据的方法

Also Published As

Publication number Publication date
EP1969464A2 (en) 2008-09-17
WO2007070510A3 (en) 2007-11-29
WO2007070510A2 (en) 2007-06-21
TW200731069A (en) 2007-08-16
US20070169084A1 (en) 2007-07-19

Similar Documents

Publication Publication Date Title
CN101371227A (zh) 在计算设备上永久保持定制数据
CN101432690B (zh) Bios配置更新技术
CN1327341C (zh) 基板管理控制器的固件自动配置系统及方法
CN106227494A (zh) 一种应用操作方法以及终端
CN104063495A (zh) 表单扩展方法与表单扩展装置
CN101663664B (zh) 具有用于传递html数据的增强的性能的个人令牌
CN102999349A (zh) 一种软件升级方法
CN114443058A (zh) 一种在公有云创建私有镜像的方法及相关设备
CN101835088A (zh) 将移动通信设备锁定和标记至网络的系统和方法
US9058188B2 (en) Transformative user interfaces
CN104133706A (zh) 固件修改方法及固件修改装置
CN107220044B (zh) 基于元模型驱动业务对象的方法和装置
CN105227441A (zh) 云端服务器、联系人身份确定方法和系统
CN103309696A (zh) 一种Java卡扩展库更新方法、装置和Java卡
CN106528140A (zh) 规格适配方法及装置
CN111142882A (zh) 一种用于大型微服务部署的服务附加依赖管理方法
US11429796B2 (en) Method and apparatus for virtually writing to a NFC chip
CN104156209A (zh) 跨平台应用界面建模方法及装置
CN112346961B (zh) 一种客户端的调试方法及装置
CN112416442A (zh) 一种设备流程控制方法、设备及介质
CN113094048A (zh) 数据显示规则确定方法、显示方法、装置、设备及介质
CN112182115A (zh) 关系的展示方法和装置、存储介质、电子装置
US20220043620A1 (en) Screen creation assistance device, display device, and computer readable storage medium
CN103927199A (zh) 一种启动项的管理方法及终端设备
CN113469678B (zh) 交易提醒方法、刷卡方法及DESFire卡

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: HEWLETT PACKARD CO.

Free format text: FORMER OWNER: PALM CORP.

Effective date: 20110919

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

Effective date of registration: 20110919

Address after: American Texas

Applicant after: Hewlett-Packard Development Corp.

Address before: American California

Applicant before: Palm Inc.

ASS Succession or assignment of patent right

Owner name: QUALCOMM INC.

Free format text: FORMER OWNER: HEWLETT PACKARD CO.

Effective date: 20140303

TA01 Transfer of patent application right

Effective date of registration: 20140303

Address after: American California

Applicant after: Qualcomm Inc.

Address before: American Texas

Applicant before: Hewlett-Packard Development Corp.

TA01 Transfer of patent application right
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20090218