CN104461621B - 一种更新属性信息的方法及装置 - Google Patents
一种更新属性信息的方法及装置 Download PDFInfo
- Publication number
- CN104461621B CN104461621B CN201410712402.4A CN201410712402A CN104461621B CN 104461621 B CN104461621 B CN 104461621B CN 201410712402 A CN201410712402 A CN 201410712402A CN 104461621 B CN104461621 B CN 104461621B
- Authority
- CN
- China
- Prior art keywords
- particular community
- community information
- information
- shared drive
- read
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及计算机软件技术领域,特别涉及一种更新属性信息的方法及装置,用以解决现有技术中终端无法在系统启动后对只读属性信息进行动态更新的问题。该方法包括:终端在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要更新的特定属性信息,并存储到系统内存中,从系统内存中读取该特定属性信息,并将读取到的需要更新的特定属性信息存储到共享内存中,然后根据共享内存中需要更新的特定属性信息,更新指定闪存区域中的特定属性信息。这种技术方案由于在指定闪存区域上存储自定义的特定属性信息,并且通过存储到共享内存对指定闪存区域上的特定属性信息进行更新,从而使得用户能够根据自己的需要对只读的属性信息进行更新。
Description
技术领域
本发明涉及计算机软件技术领域,特别涉及一种更新属性信息的方法及装置。
背景技术
属性系统对于安卓设备即终端来说是一个重要的功能,它作为一个系统服务管理着系统的配置和状态,所有这些系统的配置和状态都是属性信息。属性信息是一对键/值的组合,其中,键和值都是字符串类型。安卓设备中非常多的应用程序和库直接或间接的依赖属性系统,并由此决定运行期的行为。
现有技术中,属性系统通过属性文件来加载默认的只读属性信息,由于属性文件中的内容是在系统编译时写入的,也就是说只读属性信息是在系统编译时写入的,因此一旦写入就不能在系统启动后进行更新,当需要对只读属性信息进行更新时,则需要重新对系统属性文件进行编译,而不能在系统启动后对只读属性信息进行动态的更新。
综上所述,目前终端无法在系统启动后对只读属性信息进行动态的更新。
发明内容
本发明实施例提供了一种更新属性信息的方法,用以解决现有技术中存在的终端无法在系统启动后对只读属性信息进行动态的更新的问题。
本发明实施例提供了一种更新属性信息的方法,包括:
终端在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的所述特定属性信息,并存储到系统内存中;
所述终端从系统内存中读取需要进行更新的所述特定属性信息,并将读取到的需要进行更新的所述特定属性信息存储到共享内存中;
所述终端根据共享内存中需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息。
由于将外部设备获取的属性信息为只读属性信息,将该属性信息存储到共享内存中,才能通过属性系统的设置接口使用指定闪存区域的写命令对指定闪存区域上的只读属性信息进行更新,而指定闪存区域可以通过指定闪存区域的写命令将任意信息存储到指定闪存区域中,因此通过指定闪存区域的写命令能够将该只读属性信息存储到指定闪存区域中,实现对指定闪存区域上的用户自定义的属性信息进行更新,也就使得用户能够在系统启动后根据自己的需要对只读属性信息进行更新。
较佳地,所述终端根据从共享内存中读取到的需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息,包括:
若共享内存中存储的属性信息不包括需要进行更新的所述特定属性信息,则所述终端将从共享内存中读取到的需要进行更新的所述特定属性信息添加到指定闪存区域中;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的。
由于终端通过将需要更新的特定的属性信息存储到共享内存之后,对指定闪存区域中的特定属性信息进行更新,从而实现了用户能够根据自己的需要对特定的属性信息进行更新,也就是只读属性信息的更新。
较佳地,所述终端根据从共享内存中读取到的需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息,包括:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则所述终端用需要进行更新的所述特定属性信息替换指定闪存区域中的特定属性信息;
其中,,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容不同的特定属性信息。
由于终端通过对外部设备的特定属性信息与存储在指定闪存区域上的特定进行比较,若不同则对指定闪存区域上的特定属性信息进行修改,从而实现了终端能够对只读属性信息进行相应的修改。
较佳地,所述终端将读取到的需要进行更新的所述特定属性信息存储到共享内存中之后,还包括:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则所述终端删除对应的特定属性信息。
较佳地,所述终端从共享内存中读取需要进行更新的所述特定属性信息之后,还包括:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则所述终端停止更新特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容相同的特定属性信息。
较佳地,该方法还包括:
所述终端在需要调用用户自定义的特定属性信息时,从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中;
所述终端从系统内存中读取需要调用的特定属性信息存储到共享内存中;
所述终端读取共享内存中的特定属性信息进行调用。
较佳地,所述终端从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中,包括:
所述终端通过init进程,将指定闪存区域中所有特定属性信息存储到系统内存中;或
所述终端通过uboot系统读取指定闪存区域中的所有特定属性信息,将读取到的所述属性信息增加到用于在uboot系统和操作系统内核传递分区参数的字符串中,并通过所述init进程对所述字符串的进行解析,得到所有特定属性信息,将所有特定属性信息存储到系统内存中。
由于通过init进程或uboot系统对指定闪存区域上的特定属性信息进行读取,从而实现了对新增或修改的特定的属性信息进行读取,进而通过实现终端对特定属性信息的调用。
本发明实施例提供了一种更新属性信息的装置,包括:
获取单元,用于在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的所述特定属性信息,并存储到系统内存中;
存储单元,用于从系统内存中读取需要进行更新的所述特定属性信息,并将读取到的需要进行更新的所述特定属性信息存储到共享内存中;
更新单元,用于根据共享内存中需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息。
较佳地,所述更新单元,具体用于:
若共享内存中存储的属性信息不包括需要进行更新的所述特定属性信息,则将从共享内存中读取到的需要进行更新的所述特定属性信息添加到指定闪存区域中;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的。
较佳地,所述更新单元,还用于:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则用需要进行更新的所述特定属性信息替换指定闪存区域中的特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容不同的特定属性信息。
较佳地,所述存储单元,还用于:
将读取到的需要进行更新的所述特定属性信息存储到共享内存中之后,若共享内存中存储的属性信息包括对应的所述特定属性信息,则删除对应的特定属性信息。
较佳地,所述存储单元,还用于:
从共享内存中读取需要进行更新的所述特定属性信息之后,若共享内存中存储的属性信息包括对应的所述特定属性信息,则停止更新特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容相同的特定属性信息。
较佳地,该装置还包括:
第一读取单元,用于在需要调用用户自定义的特定属性信息时,从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中;
第二读取单元,用于从系统内存中读取需要调用的特定属性信息存储到共享内存中;
调用单元,用于读取共享内存中的特定属性信息进行调用。
较佳地,所述第一读取单元,具体用于:
通过init进程,将指定闪存区域中所有特定属性信息存储到系统内存中;或
通过uboot系统读取指定闪存区域中的所有特定属性信息,将读取到的所述属性信息增加到用于在uboot系统和操作系统内核传递分区参数的字符串中,并通过所述init进程对所述字符串的进行解析,得到所有特定属性信息,将所有特定属性信息存储到系统内存中。
附图说明
图1为本发明实施例一更新属性信息的方法的流程图;
图2为本发明实施例二终端获取指定flash区域的特定属性信息的方法的流程图;
图3为本发明实施例三更新特定属性信息的方法的流程图;
图4为本发明实施例四终端获取指定flash区域的特定属性信息的方法的流程图;
图5为本发明实施例五更新属性信息的装置的示意图。
具体实施方式
本发明实施例终端在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的特定属性信息,并存储到系统内存中,从系统内存中读取需要进行更新的特定属性信息,并将读取到的需要进行更新的特定属性信息存储到共享内存中,然后根据共享内存中需要进行更新的特定属性信息,更新指定闪存区域中的特定属性信息。这种技术方案由于将外部设备获取的属性信息为只读属性信息,将该属性信息存储到共享内存中,才能通过属性系统的设置接口使用指定闪存区域的写命令对指定闪存区域上的只读属性信息进行更新,而指定闪存区域可以通过指定闪存区域的写命令将任意信息存储到指定闪存区域中,因此通过指定闪存区域的写命令能够将该只读属性信息存储到指定闪存区域中,实现对指定闪存区域上的用户自定义的属性信息进行更新,也就使得用户能够在系统启动后根据自己的需要对只读属性信息进行更新。
下面结合说明书附图对本发明实施例作进一步详细描述。
如图1所示,本发明实施例一更新属性信息的方法,包括:
步骤100,终端在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的特定属性信息,并存储到系统内存中;
步骤101,终端从系统内存中读取需要进行更新的特定属性信息,并将读取到的需要进行更新的所述特定属性信息存储到共享内存中;
步骤102,终端根据共享内存中需要进行更新的特定属性信息,更新指定闪存区域中的特定属性信息。
其中,终端可以为机顶盒、手机或其他安卓平台的设备;特定的属性信息是指根据用户需要进行自定义的属性信息,该属性信息可以为序列号、MAC地址、软件版本、硬件版本、软件发布日期、运营商号等信息。
指定的闪存区域指的是在flash上指定的一块区域,例如deviceinfo分区,其区域的大小可根据用户的需要进行相应的设定。
特定属性信息为用户自定义的只读属性信息。
在步骤100中终端在接收到触发对用户自定义的特定属性信息更新的信号或命令时,从外部设备中获取需要进行更新的特定的属性信息。
外部设备可以为扫描枪或其他能够从出厂设备中获取该终端特定属性信息的设备。
在实施中,用户需要更新属性信息时,可以通过出厂设备将需要更新的特定属性信息发给外部设备,终端在获取外部设备的特定属性信息时,不需要知道具体获取哪个特定属性信息(比如不需要知道获取的特定属性信息的名称或属性值等信息),而是将所有外部设备中的特定属性信息都获取了。
也就是说,外部设备中的所有特定属性信息都是需要更新的属性信息。而外部设备在终端获取了特定属性信息后,可以删除自身保存的特定属性信息,以便下次更新时保证自身中没有存储特定属性信息。
具体来说,将外部设备获取的属性信息为只读属性信息,将该属性信息存储到共享内存中,才能通过属性系统的设置接口使用指定闪存区域的写命令对指定闪存区域上的只读属性信息进行更新,仅通过将属性信息存储到系统内存中不能调用属性系统的设置接口使用指定闪存区域的写命令对指定闪存区域上的只读属性信息进行更新,而指定闪存区域可以通过指定闪存区域的写命令将任意信息存储到指定闪存区域中,因此通过指定闪存区域的写命令能够将该只读属性信息存储到指定闪存区域中,实现对指定闪存区域上的用户自定义的属性信息进行更新,也就使得用户能够在系统启动后根据自己的需要对只读属性信息进行更新。
进一步地,由于将从外部设备获取的特定属性信息存储到共享内存后,根据属性信息的前缀判断该属性信息是否为用户自定义的只读属性信息,若是则对指定闪存区域的只读属性信息进行更新,否则,不进行更新。
较佳地,当终端根据从共享内存中读取到的需要进行更新的特定属性信息,更新指定闪存区域中的特定属性信息时,若共享内存中存储的属性信息不包括需要进行更新的特定属性信息,则终端将从共享内存中读取到的需要进行更新的特定属性信息添加到指定闪存区域中;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的。
具体来说,终端通过属性系统判断从外部设备获取的特定的属性信息是否存储在共享内存中,若共享内存中不包括该特定属性信息,则通过属性系统的设置接口将该特定属性信息存储到指定flash区域中。
其中,属性系统指的是属性服务property_service,属性系统的设置接口也就是property_set接口。
共享内存中存储的属性信息是包括在系统启动后存储在共享内存中的属性信息,还可以包括在执行某一软件或应用存储到共享内存中的属性信息。
较佳地,当终端根据从共享内存中读取到的需要进行更新的特定属性信息,更新指定闪存区域中的特定属性信息时,若共享内存中存储的属性信息包括对应的特定属性信息,则终端用需要进行更新的特定属性信息替换指定闪存区域中的特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,对应的特定属性信息是与需要进行更新的特定属性信息名称相同,且内容不同的特定属性信息。
在终端将从外部设备获取特定属性信息存储在共享内存后,共享内存中存储的对应的与从外部设备获取的特定的属性信息的名称相同的属性信息,其属性信息的内容也就属性值不同,则通过属性系统的设置接口使用flash写命令对指定flash区域对应的特定的属性信息进行替换。
例如,终端将某软件的版本号为1.0存储在指定flash的区域中,当软件在更换版本号后,其版本为2.0后,将从外部设备获取该软件的版本号2.0,将其存储到系统内存中,终端通过驱动系统读取系统内存的版本号2.0,与指定区域该软件的版本号相匹配,由于版本号发生了变化,则将共享内存中的版本号1.0删除,并根据从共享内存中版本号2.0对指定flash的区域中的版本号进行相应的替换。
较佳地,终端将读取到的需要进行更新的特定属性信息存储到共享内存中之后,若共享内存中存储的属性信息包括对应的特定属性信息,则终端删除对应的特定属性信息。
其中,在终端将从外部设备获取特定属性信息存储在共享内存后,共享内存中存储的对应的与从外部设备获取的特定的属性信息的名称相同的属性信息,其属性信息的内容也就属性值不同时,删除共享内存中的对应的特定的属性信息,该过程可以在通过属性系统的设置接口使用flash写命令对指定flash区域对应的特定的属性信息进行替换的过程之前,也可以在通过属性系统的设置接口使用flash写命令对指定flash区域对应的特定的属性信息进行替换的过程之后,两过程也可以同时进行。
较佳地,终端从共享内存中读取需要进行更新的特定属性信息之后,若共享内存中存储的属性信息包括对应的特定属性信息,则终端停止更新特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,对应的特定属性信息是与需要进行更新的特定属性信息名称相同,且内容相同的特定属性信息。
具体来说,在终端将从外部设备获取特定属性信息存储在共享内存后,共享内存中存储的对应的与从外部设备获取的特定的属性信息的名称相同的属性信息,其属性信息的内容也就属性值也相同时,不再进行修改或增加操作。
较佳地,终端在需要调用用户自定义的特定属性信息时,从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中;
终端从系统内存中读取需要调用的特定属性信息存储到共享内存中;
终端读取共享内存中的特定属性信息进行调用。
在对指定flash区域的特定的属性信息进行调用时,终端首先在init进程中将存储在指定flash区域的特定属性信息读取并存储到系统内存中,然后从系统内存中通过属性系统将特定的属性信息存储到共享内存中,以为终端在需要调用属性信息进行相关操作时能够及时调用。
此外,在终端进行开机。重新启动或启动某一软件进行相应的操作时,都会根据需要调用共享内存中的属性信息,其中,该属性信息可以为指定flash区域中的特定的属性信息,也可以为系统自带的无法修改的属性信息。
较佳地,终端从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中,包括两种方法:
终端通过init进程,将指定闪存区域中所有特定属性信息存储到系统内存中;或
终端通过uboot系统读取指定闪存区域中的所有特定属性信息,将读取到的属性信息增加到用于在uboot系统和操作系统内核传递分区参数的字符串中,并通过init进程对字符串的进行解析,得到所有特定属性信息,将所有特定属性信息存储到系统内存中。
当终端通过init进程将将指定闪存区域中所有特定属性信息存储到系统内存中时,需要在init进程里集成flash的读写命令,init进程通过flash的读命令将特定属性信息读取到系统内存中。
而当终端通过uboot系统读取指定闪存区域中的所有特定属性信息时,无需集成flash的读写命令,直接使用init进程的flash读写命令即可,从而减少了代码的移植量。
其终端通过uboot系统读取指定闪存区域中的所有特定属性信息过程为:
uboot系统读取读取指定闪存区域中的所有特定属性信息,并将读取到的特定属性信息增加到用于在uboot系统和操作系统内核传递分区参数的bootargs字符串的最后,init进程通过属性信息的符号对bootargs字符串进行解析得到属性信息即属性名称和属性值,并存储到系统内存中。
如图2所示,本发明实施例二终端获取指定flash区域的特定属性信息的方法,包括:
步骤200,在启动终端设备后,终端启动kernel,执行init进程。
步骤201,终端通过init进程读取指定flash区域的特定属性信息,并存储到系统内存中。
步骤202,终端启动属性系统,通过属性系统将系统内存中的特定属性信息存储到共享内存中。
步骤203,终端调用共享内存中特定属性信息进行相应的操作或处理。
如图3所示,本发明实施例三更新特定属性信息的方法,包括:
步骤300,终端接收更新特定属性信息的命令。
步骤301,终端在接收更新特定属性信息的命令后,从外部设备获取特定属性信息,并将其存储到系统内存中。
步骤302,终端通过属性系统将系统内存中特定属性信息存储到共享内存中。
步骤303,终端根据属性信息的前缀判断该特定属性信息是否为系统属性信息,若是,则返回步骤301,否则直接执行步骤304。
步骤304,终端通过属性系统根据特定属性信息的名称判断共享内存中是否存在,若存在,则执行步骤305,否则,执行步骤306。
步骤305,终端通过属性系统根据特定属性信息的名称判断从外部设备获取特定属性信息与共享内存中名称对应的特定属性信息的属性值是否相同,若相同,则执行步骤307,否则执行步骤308。
步骤306,终端通过属性系统的设置接口,使用flash写命令将共享内存中的特定属性信息存储到指定flash区域中,本流程结束。
步骤307,终端不执行更新操作,本流程结束。
步骤308,终端删除共享内存中对应的特定属性信息,并将指定flash区域对应的特定属性信息替换为共享内存中从外部设备获取的特定属性信息,本流程结束。
如图4所示,本发明实施例四终端获取指定flash区域的特定属性信息的方法,包括:
步骤400,在启动终端设备后,终端启动uboot系统。
步骤401,终端通过uboot系统读取指定flash区域特定属性信息。
步骤402,终端将uboot系统读取指定flash区域特定属性信息增加到bootargs字符串的最后。
步骤403,终端启动kernel,执行init进程。
步骤404,终端通过init进程对bootargs字符串的新增字段进行解析,并保存到系统内存中。
步骤405,终端启动属性系统,通过属性系统将系统内存中的特定属性信息存储到共享内存中。
步骤406,终端调用共享内存中特定属性信息进行相应的操作或处理。
基于同一发明构思,本发明实施例中还提供了一种更新属性信息的装置,由于本发明实施例更新属性信息的装置对应的方法为更新属性信息的方法,因此本发明实施例装置的实施可以参见方法的实施,重复之处不再赘述。
如图5所示,本发明实施例五更新属性信息的装置,包括:
获取单元500,用于在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的特定属性信息,并存储到系统内存中;
存储单元501,用于从系统内存中读取需要进行更新的特定属性信息,并将读取到的需要进行更新的特定属性信息存储到共享内存中;
更新单元502,用于根据共享内存中需要进行更新的特定属性信息,更新指定闪存区域中的特定属性信息。
较佳地,更新单元502,具体用于若共享内存中存储的属性信息不包括需要进行更新的特定属性信息,则将从共享内存中读取到的需要进行更新的特定属性信息添加到指定闪存区域中;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的。
较佳地,更新单元502,还用于若共享内存中存储的属性信息包括对应的特定属性信息,则用需要进行更新的特定属性信息替换指定闪存区域中的特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,对应的特定属性信息是与需要进行更新的特定属性信息名称相同,且内容不同的特定属性信息。
较佳地,存储单元501,还用于将读取到的需要进行更新的特定属性信息存储到共享内存中之后,若共享内存中存储的属性信息包括对应的特定属性信息,则删除对应的特定属性信息。
较佳地,存储单元501,还用于从共享内存中读取需要进行更新的特定属性信息之后,若若共享内存中存储的属性信息包括对应的特定属性信息,则停止更新特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,对应的特定属性信息是与需要进行更新的特定属性信息名称相同,且内容相同的特定属性信息。
较佳地,第一读取单元503,用于在需要调用用户自定义的特定属性信息时,从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中;
第二读取单元504,用于从系统内存中读取需要调用的特定属性信息存储到共享内存中;
调用单元505,用于读取共享内存中的特定属性信息进行调用。
较佳地,第一读取单元503,具体用于通过init进程,将指定闪存区域中所有特定属性信息存储到系统内存中;或通过uboot系统读取指定闪存区域中的所有特定属性信息,将读取到的属性信息增加到用于在uboot系统和操作系统内核传递分区参数的字符串中,并通过init进程对字符串的进行解析,得到所有特定属性信息,将所有特定属性信息存储到系统内存中。
从上述内容可以看出:本发明实施例终端在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的特定属性信息,并存储到系统内存中,从系统内存中读取需要进行更新的特定属性信息,并将读取到的需要进行更新的特定属性信息存储到共享内存中,然后根据共享内存中需要进行更新的特定属性信息,更新指定闪存区域中的特定属性信息。这种技术方案由于将外部设备获取的属性信息为只读属性信息,将该属性信息存储到共享内存中,才能通过属性系统的设置接口使用指定闪存区域的写命令对指定闪存区域上的只读属性信息进行更新,而指定闪存区域可以通过指定闪存区域的写命令将任意信息存储到指定闪存区域中,因此通过指定闪存区域的写命令能够将该只读属性信息存储到指定闪存区域中,实现对指定闪存区域上的用户自定义的属性信息进行更新,也就使得用户能够在系统启动后根据自己的需要对只读属性信息进行更新。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种更新属性信息的方法,其特征在于,该方法包括:
终端在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的所述特定属性信息,并存储到系统内存中;
所述终端从系统内存中读取需要进行更新的所述特定属性信息,并将读取到的需要进行更新的所述特定属性信息存储到共享内存中;
所述终端根据共享内存中需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息;
其中,所述特定属性信息为用户自定义的只读属性信息。
2.如权利要求1所述的方法,其特征在于,所述终端根据从共享内存中读取到的需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息,包括:
若共享内存中存储的属性信息不包括需要进行更新的所述特定属性信息,则所述终端将从共享内存中读取到的需要进行更新的所述特定属性信息添加到指定闪存区域中;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的。
3.如权利要求1所述的方法,其特征在于,所述终端根据从共享内存中读取到的需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息,包括:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则所述终端用需要进行更新的所述特定属性信息替换指定闪存区域中的特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容不同的特定属性信息。
4.如权利要求3所述的方法,其特征在于,所述终端将读取到的需要进行更新的所述特定属性信息存储到共享内存中之后,还包括:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则所述终端删除对应的特定属性信息。
5.如权利要求1所述的方法,其特征在于,所述终端从共享内存中读取需要进行更新的所述特定属性信息之后,还包括:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则所述终端停止更新特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容相同的特定属性信息。
6.如权利要求1~5任一所述的方法,其特征在于,该方法还包括:
所述终端在需要调用用户自定义的特定属性信息时,从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中;
所述终端从系统内存中读取需要调用的特定属性信息存储到共享内存中;
所述终端读取共享内存中的特定属性信息进行调用。
7.如权利要求6所述的方法,其特征在于,所述终端从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中,包括:
所述终端通过init进程,将指定闪存区域中所有特定属性信息存储到系统内存中;或
所述终端通过uboot系统读取指定闪存区域中的所有特定属性信息,将读取到的所述属性信息增加到用于在uboot系统和操作系统内核传递分区参数的字符串中,并通过所述init进程对所述字符串的进行解析,得到所有特定属性信息,将所有特定属性信息存储到系统内存中。
8.一种更新属性信息的装置,其特征在于,该装置包括:
获取单元,用于在需要对用户自定义的特定属性信息进行更新时,从外部设备中获取需要进行更新的所述特定属性信息,并存储到系统内存中;
存储单元,用于从系统内存中读取需要进行更新的所述特定属性信息,并将读取到的需要进行更新的所述特定属性信息存储到共享内存中;
更新单元,用于根据共享内存中需要进行更新的所述特定属性信息,更新指定闪存区域中的特定属性信息;
其中,所述特定属性信息为用户自定义的只读属性信息。
9.如权利要求8所述的装置,其特征在于,所述更新单元,具体用于:
若共享内存中存储的属性信息不包括需要进行更新的所述特定属性信息,则将从共享内存中读取到的需要进行更新的所述特定属性信息添加到指定闪存区域中;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的。
10.如权利要求8所述的装置,其特征在于,所述更新单元,还用于:
若共享内存中存储的属性信息包括对应的所述特定属性信息,则用需要进行更新的所述特定属性信息替换指定闪存区域中的特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容不同的特定属性信息。
11.如权利要求10所述的装置,其特征在于,所述存储单元,还用于:
将读取到的需要进行更新的所述特定属性信息存储到共享内存中之后,若共享内存中存储的属性信息包括对应的所述特定属性信息,则删除对应的特定属性信息。
12.如权利要求8所述的装置,其特征在于,所述存储单元,还用于:
从共享内存中读取需要进行更新的所述特定属性信息之后,若共享内存中存储的属性信息包括对应的所述特定属性信息,则停止更新特定属性信息;
其中,共享内存中存储的属性信息是在将需要对用户自定义的特定属性信息读取到共享内存之前存储的,所述对应的特定属性信息是与需要进行更新的所述特定属性信息名称相同,且内容相同的特定属性信息。
13.如权利要求8~12任一所述的装置,其特征在于,该装置还包括:
第一读取单元,用于在需要调用用户自定义的特定属性信息时,从指定闪存区域中读取需要调用的特定属性信息,并将读取到的需要调用的特定属性信息存储到系统内存中;
第二读取单元,用于从系统内存中读取需要调用的特定属性信息存储到共享内存中;
调用单元,用于读取共享内存中的特定属性信息进行调用。
14.如权利要求13所述的装置,其特征在于,所述第一读取单元,具体用于:
通过init进程,将指定闪存区域中所有特定属性信息存储到系统内存中;或
通过uboot系统读取指定闪存区域中的所有特定属性信息,将读取到的所述属性信息增加到用于在uboot系统和操作系统内核传递分区参数的字符串中,并通过所述init进程对所述字符串的进行解析,得到所有特定属性信息,将所有特定属性信息存储到系统内存中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410712402.4A CN104461621B (zh) | 2014-11-28 | 2014-11-28 | 一种更新属性信息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410712402.4A CN104461621B (zh) | 2014-11-28 | 2014-11-28 | 一种更新属性信息的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104461621A CN104461621A (zh) | 2015-03-25 |
CN104461621B true CN104461621B (zh) | 2018-01-02 |
Family
ID=52907726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410712402.4A Active CN104461621B (zh) | 2014-11-28 | 2014-11-28 | 一种更新属性信息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104461621B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055348B (zh) * | 2016-05-19 | 2019-07-12 | 青岛海信电器股份有限公司 | 一种通知系统属性更新的方法和装置 |
CN106055937B (zh) * | 2016-05-25 | 2018-11-09 | 深圳创维数字技术有限公司 | 一种软件静态数据的加密方法及系统 |
CN107632892B (zh) * | 2016-07-18 | 2021-06-22 | 深圳市中兴微电子技术有限公司 | 一种参数传递的方法和装置 |
CN111290859B (zh) * | 2018-12-07 | 2023-08-18 | 成都鼎桥通信技术有限公司 | 一种双系统终端初始化属性同步的方法和终端 |
CN110502881B (zh) * | 2019-07-31 | 2021-09-07 | 广州微算互联信息技术有限公司 | 动态修改安卓系统只读属性的方法、系统及存储介质 |
CN116700740B (zh) * | 2022-09-29 | 2024-06-04 | 荣耀终端有限公司 | 软件修复方法和相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101014062A (zh) * | 2007-02-09 | 2007-08-08 | 华为技术有限公司 | 一种规则处理方法和装置及数据引用方法 |
CN101236549A (zh) * | 2007-01-30 | 2008-08-06 | 阿里巴巴公司 | 一种获取属性信息内容的方法及系统 |
CN102591683A (zh) * | 2011-12-28 | 2012-07-18 | 睿成汇商科技有限公司 | 一种嵌入式操作系统的更新方法及系统 |
CN102662773A (zh) * | 2012-03-13 | 2012-09-12 | 中冶南方工程技术有限公司 | 多进程间结构化文档通信系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7433887B2 (en) * | 2004-12-29 | 2008-10-07 | Microsoft Corporation | Method and apparatus for metadata driven business logic processing |
-
2014
- 2014-11-28 CN CN201410712402.4A patent/CN104461621B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101236549A (zh) * | 2007-01-30 | 2008-08-06 | 阿里巴巴公司 | 一种获取属性信息内容的方法及系统 |
CN101014062A (zh) * | 2007-02-09 | 2007-08-08 | 华为技术有限公司 | 一种规则处理方法和装置及数据引用方法 |
CN102591683A (zh) * | 2011-12-28 | 2012-07-18 | 睿成汇商科技有限公司 | 一种嵌入式操作系统的更新方法及系统 |
CN102662773A (zh) * | 2012-03-13 | 2012-09-12 | 中冶南方工程技术有限公司 | 多进程间结构化文档通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104461621A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104461621B (zh) | 一种更新属性信息的方法及装置 | |
CN108762769B (zh) | 微服务应用编排和部署方法、装置及计算机终端 | |
CN103984582B (zh) | 一种热更新方法和装置 | |
CN111190718A (zh) | 实现任务调度的方法、装置及系统 | |
CN105760199B (zh) | 一种应用资源加载方法及其设备 | |
US9652209B2 (en) | Static analysis and reconstruction of deep link handling in compiled applications | |
CN108536745B (zh) | 基于Shell的数据表提取方法、终端、设备及存储介质 | |
CN103995696B (zh) | 移动终端的程序包定制系统及定制方法 | |
US20170132020A1 (en) | Code processing method and code processing device | |
CN108776587B (zh) | 数据获取方法、装置、计算机设备以及存储介质 | |
US10338910B2 (en) | Multi-tenant upgrading | |
WO2017213846A1 (en) | Automating feature graduation | |
US20160070801A1 (en) | Augmenting Search Results With Device And Application History | |
CN104714805B (zh) | 一种控制应用程序的设置菜单的方法及装置 | |
CN106844772A (zh) | 应用数据库的更新方法及装置 | |
CN104657164A (zh) | 软件升级处理方法和装置 | |
CN107045413A (zh) | 应用程序图标的显示方法和装置 | |
CN110580284A (zh) | 一种实体消歧方法、装置、计算机设备及存储介质 | |
AU2017202945A1 (en) | Context-aware application programming interface response management | |
CN108958838A (zh) | 一种新型更新属性信息的方法及装置 | |
CN106502648A (zh) | 应用显示特定语言的方法和终端 | |
CN113641936A (zh) | 用于页面跳转的方法、装置、电子设备及存储介质 | |
CN113434173A (zh) | 数据处理方法、装置、存储介质和电子设备 | |
AU2013271399B2 (en) | Business rules manager | |
CN109284828A (zh) | 一种超参数调优方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |