CN1949902A - 一种手机配置方法 - Google Patents
一种手机配置方法 Download PDFInfo
- Publication number
- CN1949902A CN1949902A CNA200610063438XA CN200610063438A CN1949902A CN 1949902 A CN1949902 A CN 1949902A CN A200610063438X A CNA200610063438X A CN A200610063438XA CN 200610063438 A CN200610063438 A CN 200610063438A CN 1949902 A CN1949902 A CN 1949902A
- Authority
- CN
- China
- Prior art keywords
- configuration
- mapping table
- file
- index
- size
- 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
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种手机配置方法,包括如下步骤:将手机的配置按照配置的功能分成不同的配置文件;建立映射表,所述的映射表是一维数组,其内容包括,数组下标、配置文件句柄、配置距配置文件开头的偏移量和配置占用存储的大小;建立配置标识号,所述标识号的内容包括配置在映射表中的下标索引;建立标识号同配置的关联;在查询或修改手机配置的时候,首先通过关联获取该配置的标识号;通过标识号从映射表中查到配置文件句柄、配置距配置文件开头的偏移量和配置占用存储的大小;通过上述3个参数操作配置所在的文件,读取该配置的实际内容,进行处理。本发明能大量节省配置的内存耗费,同时也可以降低手机的生产成本。
Description
[技术领域]
本发明涉及移动通讯技术,尤其涉及一种手机配置的方法。
[背景技术]
现在,手机的功能越来越强大,从2G、2.5G、到3G,附加在手机上的功能已从简单的电话通信,到网络浏览、多媒体应用。功能的增加,必然需要更多的配置。在这种情况下,按照传统的方法,将手机的所有配置在开机后从文件系统全部导入手机内存以便快速存取,就需要耗费相当多的内存来存放配置文件。消耗内存多也就意味着手机成本的提高,这对大部分用户来说是不够经济的。
[发明内容]
本发明要解决的技术问题是提供一种能够节省内存耗费,降低手机生产成本的手机配置方法。
为了解决上述技术问题,本发明采用的技术方案是,一种手机配置方法,包括如下步骤:
101.将手机的配置按照配置的功能分成不同的配置文件;
102.建立映射表,所述的映射表是一维数组,其内容包括,数组下标、配置文件句柄、配置距配置文件开头的偏移量和配置占用存储的大小;
103.建立配置标识号,所述标识号的内容包括配置在映射表中的下标索引;
104.建立标识号同配置的关联;
105.在查询或修改手机配置的时候,首先通过关联获取该配置的标识号;通过标识号从映射表中查到配置文件句柄、配置距配置文件开头的偏移量和配置占用存储的大小;通过上述3个参数操作配置所在的文件,读取该配置的实际内容,进行处理。以上所述的手机配置方法,所述的映射表可以分为映射表a和映射表b;映射表a包括数组下标和配置文件句柄,映射表b包括数组下标、配置距配置文件开头的偏移量和配置占用存储的大小;所述的配置标识号包括配置在映射表a和映射表b中的下标索引。
以上所述的手机配置方法,其特征在于,所述映射表a的数组大小为具体配置文件的个数,映射表b的数组大小为具体配置的个数;所述的配置标识号至少为2个字节,其中第1字节为文件句柄索引,用于在映射表a查找文件句柄,以后的字节为映射表b的索引,用来在映射表b查找该配置对应的距离文件开头的偏移量和占用的存储大小。
以上所述的手机配置方法,其特征在于,还包括如下步骤:
401.按配置标识号在映射表a中的下标索引将配置文件排序;
402.在手机开机初始化时,打开这些配置文件并取得它们的文件句柄;
403.按按配置标识号在映射表a中的下标索引将配置文件的句柄写入映射表a。
以上所述的手机配置方法,在步骤104中在查询或修改手机配置的时候,通过标识号的第1字节从映射表a中查到配置文件句柄;通过标识号的以后的字节从映射表b中查到配置距配置文件开头的偏移量和配置占用存储的大小。
本发明建立配置标识号,通过映射表就可以很快的检索到配置的对应的文件句柄、距离文件开头的偏移量占用的存储大小,然后通过文件操作就可以快捷地找到该配置真正存储的物理位置,完成查询和修改操作。本发明不仅在开机时不需要将所有配置从文件系统全部导入手机内存,在查询和修改操作时也无需将整个配置文件导入内存,而是仅将要查询和修改的内容部分加载到临时申请的内存(用完会释放该临时申请的内存),来实现操作。本发明能大量节省配置的内存耗费,同时也可以降低手机的生产成本。
[附图说明]
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明一种手机配置方法实施例1的流程图。
图2是本发明一种手机配置方法实施例2的流程图。
[具体实施方式]
本发明的实现方法是:
将手机的配置按照配置的功能来分类,分成不同的小文件(假设这n个配置文件分别称作A1,A2,-An)进行存储。如电话相关的设置是一个文件,短信相关的设置又是另外一个文件,手机界面设置则是另一个文件。并按配置标识号在映射表a中的下标索引将配置文件排序。在手机开机后并不将这些手机配置文件从文件系统读取到手机内存,而是仅仅打开这些文件并取得它们的文件句柄F1,F2,-Fn,按配置标识号在映射表a中的下标索引将配置文件的句柄写入映射表a,实现映射表a的初始化。映射表b的数据是固定的,在编程时写入。当需要用到某个配置时,通过这些配置文件的句柄可以读取到相关配置。所以,通过这些文件句柄我们就可以读取、修改手机配置。
本发明读取和修改某个配置S的基本方法如下:
1.建立映射表a和b,通过映射表来查询到配置S在哪个文件(假设该文件句柄为F)和在文件中的具体位置。(假设其距离文件开头的偏移量为X,其占用的存储大小为Y个字节)。然后利用文件句柄F、距离文件开头的偏移量X、占用的存储大小Y这三个位置信息来操作文件指针使其移动到配置S所在的文件具体位置,然后再读取Y个字节的配置S,最后返回给查询方。
2.对于修改配置的情况和查询配置的情况是类似的,也是通过映射表来查找到该配置对应的文件句柄F、距离文件开头的偏移量X、占用的存储大小Y,然后定位到具体的文件所在位置,最后将Y个字节的新配置写入到该文件该位置。
为了操作映射表,要在程序中建立手机的配置标识号(ID)为S1,S2,…Sn。标识号可定为共3个字节,标识号的第1个字节为文件句柄索引,用来在映射表a来查找文件句柄,标识号的第2和3个字节为映射表b的索引,用来在映射表b查找该配置对应的距离文件开头的偏移量X和占用的存储大小Y。
上述手机的配置标识号为3个字节,但不以此为限。随着手机的配置增加,可以把3个字节扩充为4个字节、5个字节,甚至更多,然后用其中的一部分作为映射表a的数组下标索引,剩余的部分作为映射表b的数组下标索引。
映射表a实际就是一个一维数组,数组大小为256,标识号的第1个字节就是该数组的下标,如下所示:
数组下标 | 文件句柄F |
0 | 配置文件1的文件句柄F1 |
1 | 配置文件2的文件句柄F2 |
2 | 配置文件3的文件句柄F3 |
3 | 配置文件4的文件句柄F4 |
... | |
255 | 配置文件256的文件句柄F256 |
实际使用中,手机所需的配置文件如果没有256个这么多,则映射表a就不会有256这么大,换句话说,就是手机目前有n个配置文件的话,那么映射表a大小就是n。
映射表b实际上也是一个1维数组,数组大小为65536,标识号的第2、3个字节就是该数组的下标,如下所示:
数组下标 | 该配置距离文件开头的偏移量X | 该配置占用的存储大小Y |
0 | 配置1距离文件开头的偏移量X1 | 配置1占用的存储大小Y1 |
1 | 配置2距离文件开头的偏移量X2 | 配置2占用的存储大小Y2 |
2 | 配置3距离文件开头的偏移量X3 | 配置3占用的存储大小Y3 |
3 | 配置4距离文件开头的偏移量X4 | 配置4占用的存储大小Y4 |
... | ||
65535 | 配置65536距离文件开头的偏移量X65536 | 配置65536占用的存储大小Y65536 |
实际使用中,手机所需的配置如果没有65536个这么多,则映射表b就不会有65536这么大,换句话说,就是手机目前有m个配置的话,那么映射表b大小就是m。
在具体取和修改某个配置S时,首先要确定手机配置S对应的配置标识号(ID)。配置同配置标识号是相互关联的,具体做法是,在程序中定义类似下面的宏:
#define KK_POWER_ON_MUSIC 0x010001/*开机音乐*/
#define KK_POWER_OFF_MUSIC 0x010002/*关机音乐*/
上述的0x010001和0x010002分别为开机音乐和关机音乐的配置标识号。
在用户设置关机音乐,开机音乐时,就会在程序中直接使用该配置号KK_POWER_ON_MUSIC和KK_POWER_OFF_MUSIC来调用函数,例如调用函数getMusic(KK_POWER_ON_MUSIC),这样就可以了。实际上KK_POWER_OFF_MUSIC和KK_POWER_ON_MUSIC是一个数字,也就是0x010001和0x010002。
有了配置标识号(ID),通过映射表a和b,就可以很快的检索到配置S的对应的文件句柄F、距离文件开头的偏移量X、占用的存储大小Y,然后通过文件操作就可以快捷的找到该配置真正存储的物理位置,最后就可以完成查询和修改操作。
下面以查询手机来电铃声为例说明本发明实施例1的工作过程。如图1所示,手机收到来电后,系统通过手机来电配置的关联查到该配置标识号为0x031234。通过配置标识号的第1个字节0x03在映射表a来查找文件句柄。映射表a的例子如下:
数组下标 | 文件句柄F |
0 | 0x78340ac0 |
1 | 0x78340ac4 |
2 | 0x78340ac8 |
3 | 0x78340acc |
... | |
255 | 0 |
系统检索到文件句柄为0x78340acc。
系统再通过配置标识号的第2和第3个字节在映射表b查找该配置对应的距离文件开头的偏移量X和占用的存储大小Y,配置标识号的第2和第3个字节是0x1234。映射表b的例子如下:
数组下标 | 该配置距离文件开头的偏移量X | 该配置占用的存储大小Y |
0 | 配置1距离文件开头的偏移量X1 | 配置1占用的存储大小Y1 |
1 | 配置2距离文件开头的偏移量X2 | 配置2占用的存储大小Y2 |
2 | 配置3距离文件开头的偏移量X3 | 配置3占用的存储大小Y3 |
3 | 配置4距离文件开头的偏移量X4 | 配置4占用的存储大小Y4 |
... | ||
256 | 0x14 | 0xfa |
.. |
. | ||
4660 | 0x04 | 0x1e |
... | ||
65535 | 配置65536距离文件开头的偏移量X65536 | 配置65536占用的存储大小Y65536 |
0x1234换算成十进制就是4660,系统找到4660对应的表项得到该配置距离文件开头的偏移量X为0x04个字节,该配置占用的存储大小Y为0x1e(30)个字节。
最后系统通过文件句柄为0x78340acc,该配置距离文件开头的偏移量X为0x04个字节,该配置占用的存储大小Y为0x1E个字节,这三个参数就可以直接操作该配置所在文件并快速索引到该配置的实际内容,然后读取这30个字节的内容。这30个字节的内容为:fs:/music/comingcall/waltz.mp3。这样,系统通过这个方法快速的读取到了当前设置的手机铃声是fs:/music/comingcall/waltz.mp3。接着播放这个文件作为来电响铃声。
通过这个例子我们看到,配置的实际内容占用了30个字节,但是系统仅仅使用了4/N+2+1个字节的内存就可以快速查找到该配置。上述的4/N指:4是映射表a的一个文件句柄,N是这个文件句柄对应的文件总共存储的配置总数目。因为一个文件可以存储N条配置,所以每个配置在配置表a的内存消耗就是4/N。上述的2指偏移量,偏移量占用2个字节,也就是每个配置文件的最大偏移量为65536个字节。上述的1指的是配置的存储大小,在映射表b中占用了一个字节来说明,每个配置的占用存储控件最大为256个字节。如果单个配置超过这个数目,可以通过将该配置分解为几个子配置来解决该问题。)所以,在该配置上面就节省了30-(4/N+2+1)个字节。假定N为200,那么4/N可以几乎忽略,也就是说我们通过这个方法在该配置的内存占用上节省了27个字节。本发明的方法实际上是一种以时间换取空间的方法,用来节省昂贵的手机内存,这种方法特别适用于内存小的低端手机。
下面再以修改手机的来电黑名单为例说明本发明实施例2的工作过程,如图2所示。手机的来电黑名单假设最多支持10个黑名单号码,每个号码最大长度为25位号码长。
系统通过手机的来电黑名单配置的关联查到手机来电黑名单的配置标识号为0X021000
通过标识号的第1个字节0x02在映射表a来查找文件句柄为0x78340ac8。(映射表a见实施例1)
再通过标识号的第2和3个字节在映射表b查找该配置对应的距离文件开头的偏移量X和占用的存储大小Y
标识号的第2和3个字节为0x0100,换算成十进制就是256,那么我们找到256对应的表项得到该配置距离文件开头的偏移量X为0x14个字节,该配置占用的存储大小Y为0xfa(250)个字节。(映射表b见实施例1)
通过文件句柄为0x78340ac8,偏移量X为0x14个字节,存储大小Y为0xfa个字节,这三个参数就可以直接操作该配置所在文件并快速索引到该配置的位置,仅将这部分内容加载到内存中进行修改或将新的手机黑名单(250个字节)的内容写入。
最后,保存该配置文件。
通过这个例子我们看到,配置的实际内容占用了250个字节,但是我们仅仅使用了4/N+2+1个字节的内存就可以快速查找到该配置。上述的4/N指:4是映射表a的一个文件句柄,N是这个文件句柄对应的文件总共存储的配置总数目。因为一个文件可以存储N条配置,所以每个配置在配置表a的内存消耗就是4/N。上述的2指偏移量,偏移量占用2个字节,也就是每个配置文件的最大偏移量为65536个字节。上述的1指的是配置的存储大小,在映射表b中占用了1个字节来说明。我们可知每个配置的占用存储控件最大为256个字节。如果单个配置超过这个数目,那么我们可以通过将该配置分解为几个子配置来解决该问题。所以,我们在该配置上面就节省了250-(4/N+2+1)个字节。假定N为2000,那么4/N可以几乎忽略,也就是说我们通过这个方法在该配置的内存占用上节省了247个字节。
Claims (5)
1.一种手机配置方法,其特征在于,包括如下步骤:
101.将手机的配置按照配置的功能分成不同的配置文件;
102.建立映射表,所述的映射表是一维数组,其内容包括,数组下标、配置文件句柄、配置距配置文件开头的偏移量和配置占用存储的大小;
103.建立配置标识号,所述标识号的内容包括配置在映射表中的下标索引;
104.建立标识号同配置的关联;
105.在查询或修改手机配置的时候,首先通过关联获取该配置的标识号;通过标识号从映射表中查到配置文件句柄、配置距配置文件开头的偏移量和配置占用存储的大小;通过上述3个参数操作配置所在的文件,读取该配置的实际内容,进行处理。
2.根据权利要求1所述的手机配置方法,其特征在于,所述的映射表分为映射表a和映射表b;映射表a包括数组下标和配置文件句柄,映射表b包括数组下标、配置距配置文件开头的偏移量和配置占用存储的大小;所述的配置标识号包括配置在映射表a和映射表b中的下标索引。
3.根据权利要求2所述的手机配置方法,其特征在于,所述映射表a的数组大小为具体配置文件的个数,映射表b的数组大小为具体配置的个数;所述的配置标识号至少为2个字节,其中第1字节为文件句柄索引,用于在映射表a查找文件句柄,以后的字节为映射表b的索引,用来在映射表b查找该配置对应的距离文件开头的偏移量和占用的存储大小。
4.根据权利要求3所述的手机配置方法,其特征在于,还包括如下步骤:
401.按配置标识号在映射表a中的下标索引将配置文件排序;
402.在手机开机初始化时,打开这些配置文件并取得它们的文件句柄;
403.按按配置标识号在映射表a中的下标索引将配置文件的句柄写入映射表a。
5.根据权利要求3或4所述的手机配置方法,其特征在于,在步骤104中在查询或修改手机配置的时候,通过标识号的第1字节从映射表a中查到配置文件句柄;通过标识号的以后的字节从映射表b中查到配置距配置文件开头的偏移量和配置占用存储的大小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200610063438XA CN1949902A (zh) | 2006-11-01 | 2006-11-01 | 一种手机配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200610063438XA CN1949902A (zh) | 2006-11-01 | 2006-11-01 | 一种手机配置方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1949902A true CN1949902A (zh) | 2007-04-18 |
Family
ID=38019249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200610063438XA Pending CN1949902A (zh) | 2006-11-01 | 2006-11-01 | 一种手机配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1949902A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902748A (zh) * | 2012-09-18 | 2013-01-30 | 上海移远通信技术有限公司 | 文件系统建立方法、管理方法及其ram和通信芯片 |
CN102929626A (zh) * | 2012-10-30 | 2013-02-13 | Tcl通讯(宁波)有限公司 | 基于安卓系统的功能查询模块实现方法、系统及手机 |
CN104166626A (zh) * | 2013-05-16 | 2014-11-26 | 上海斐讯数据通信技术有限公司 | 数通设备的配置文件的存储和恢复方法以及数通设备 |
CN113467853A (zh) * | 2021-05-31 | 2021-10-01 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、设备、存储介质和程序产品 |
-
2006
- 2006-11-01 CN CNA200610063438XA patent/CN1949902A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902748A (zh) * | 2012-09-18 | 2013-01-30 | 上海移远通信技术有限公司 | 文件系统建立方法、管理方法及其ram和通信芯片 |
CN102929626A (zh) * | 2012-10-30 | 2013-02-13 | Tcl通讯(宁波)有限公司 | 基于安卓系统的功能查询模块实现方法、系统及手机 |
WO2014067308A1 (zh) * | 2012-10-30 | 2014-05-08 | Tcl通讯(宁波)有限公司 | 基于安卓系统的功能查询模块实现方法、系统及手机 |
CN102929626B (zh) * | 2012-10-30 | 2016-06-22 | Tcl通讯(宁波)有限公司 | 基于安卓系统的功能查询模块实现方法、系统及手机 |
CN104166626A (zh) * | 2013-05-16 | 2014-11-26 | 上海斐讯数据通信技术有限公司 | 数通设备的配置文件的存储和恢复方法以及数通设备 |
CN104166626B (zh) * | 2013-05-16 | 2018-01-02 | 上海斐讯数据通信技术有限公司 | 数通设备的配置文件的存储和恢复方法以及数通设备 |
CN113467853A (zh) * | 2021-05-31 | 2021-10-01 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、设备、存储介质和程序产品 |
CN113467853B (zh) * | 2021-05-31 | 2024-04-16 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、设备、存储介质和程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1581193A (zh) | 电子通信设备以及通过电子通信设备接收电子邮件的方法 | |
CN1913546A (zh) | 一种手机短信分类存储的方法 | |
CN1361971A (zh) | 移动电话的扩展电话本 | |
CN1949907A (zh) | 移动终端及其网络搜索方法 | |
CN1885869A (zh) | 一种通讯录系统及其使用方法 | |
CN101227685A (zh) | 一种移动终端的号码归属地获取方法及装置 | |
CN1855954A (zh) | 在移动通信终端电话簿中搜索目录条目的方法和装置 | |
CN101046807A (zh) | 存储数据已读的方法及装置 | |
CN101938550A (zh) | 一种移动终端及其电话簿的排序方法和装置 | |
CN1949902A (zh) | 一种手机配置方法 | |
CN102541925A (zh) | 一种实现详细话单的快速存储和检索的方法及装置 | |
CN1976522A (zh) | 一种支持不同类型智能卡的移动终端设备及方法 | |
CN100534112C (zh) | 大容量sim卡上电话簿的数据结构协同使用的方法 | |
CN101937271A (zh) | 一种输入联系人信息的方法、装置及移动终端 | |
CN1756273A (zh) | 一种在手持设备电话簿中增加联系人信息的方法 | |
CN116301656A (zh) | 基于日志结构合并树的数据存储方法、系统及设备 | |
CN101056442A (zh) | 短消息处理方法及使用该方法的移动终端 | |
CN101051294A (zh) | 多功能蓝牙优盘及其交换系统 | |
CN1434619A (zh) | 实现电话记录动态显示的系统及方法 | |
CN1492705A (zh) | 电话号码按照使用频率的排序方法 | |
CN1829352A (zh) | 利用sim卡的移动通信终端的数据管理方法 | |
CN1195359C (zh) | 数据同步系统及方法 | |
CN1687899A (zh) | 将应用程序动态下载到用户识别模块的方法、系统及模块 | |
CN101014059A (zh) | 电子电话簿的数据信息存储和扩展的方法 | |
CN1863235A (zh) | 对用户识别卡中的电话薄联系人记录进行分组的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20070418 |