存储数据的写入方法、读取方法以及智能终端的制作方法

文档序号:10594002阅读:194来源:国知局
存储数据的写入方法、读取方法以及智能终端的制作方法
【专利摘要】本发明公开了一种存储数据的写入方法、读取方法以及智能终端,存储数据的写入方法包括,智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数;根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址;将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。通过将存储于第一存储分区的地址参数与第二参数用于存储存储数据的存储单元建立重新的映射关系,不仅能够实现存储数据的加密保存,不容易被篡改,而且,操作过程也不复杂,不会额外增加智能终端的工作量,为用户提供方便。
【专利说明】
存储数据的写入方法、读取方法以及智能终端
技术领域
[0001]本发明涉及智能终端技术领域领域,特别是涉及一种存储数据的写入方法、读取方法以及智能终端。
【背景技术】
[0002]在互联网和电子发展日新月异的今天,智能终端已经成为人们日常生活中不可或缺的一部分,在使用的同时,用户对智能终端的功能的要求也越来越高,因此,生产厂商也在不断开发新功能来满足不同用户的需求。
[0003]但是无论功能如何丰富,生产厂商也会在智能终端的存储器中开辟一小块分块,用于存放少量智能终端对应的出厂数据以为后续流程提供方便,例如产品批次号、产品硬件配置、产品软件版本号以及产品返修记录等。一般情况下,上述这些出厂数据只供生产厂商内部使用,并不对用户进行开放,以免参考数据被肆意篡改。
[0004]然而,如果存粹的通过复杂的加密方法进行加密,尽管能防止数据被肆意篡改,但是由于这些出厂数据在智能终端整个生产过程中,是需要被各种生产线工具反复的读写,因此,复杂的加密方法会给整个生产过程带来麻烦。

【发明内容】

[0005]本发明主要解决的技术问题是提供一种存储数据的写入方法、读取方法以及智能终端,能够方便有效的对智能终端的存储数据进行保密存储与写入。
[0006]为解决上述技术问题,本发明采用的一个技术方案是:提供一种存储数据的写入方法,包括
[0007]智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数;
[0008]根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址;
[0009]将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。
[0010]其中,所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址的步骤包括:
[0011]根据公式一:PA= (R*LA+X)%PS来确定所述第二存储分区的物理地址PA,其中,R为加密因子,X为所述地址参数,PS为所述第二存储分区的存储容量。
[0012]其中,在所述根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址的步骤之前,还包括:
[0013I判断所述地址参数是否有效;
[0014]若有效,则执行所述根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址的步骤
[0015]其中,所述判断所述地址参数是否有效的步骤之后还包括如下步骤:
[0016]如果所述地址参数无效,则生成待定物理地址,并判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲;
[0017]若空闲,则根据所述待定物理地址计算出所述地址参数,并将所述待存储数据存储在所述第二存储分区中所述待定物理地址对应的存储单元;
[0018]若不空闲,则将所述待定物理地址增加设定步长后,执行所述判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲的步骤。
[0019]其中,所述根据所述待定物理地址计算出所述地址参数的步骤包括:
[0020]根据公式二:X = (PA’ _R*LA) %PS来确定所述地址参数X,其中PA’为所述待定物理地址,R为所述加密因子,LA为所述待存储数据的逻辑地址,PS为所述第二存储分区的存储容量。
[0021]其中,所述判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲的步骤包括:
[0022]判断所述第一存储分区中所述待定物理地址对应的存储单元是否空闲,若是,则确定所述第二存储分区中的所述待定物理地址对应的存储单元空闲;
[0023]所述将所述待存储数据存储在所述第二存储分区中所述待定物理地址对应的存储单元的步骤之后,还包括:
[0024]将所述第一存储分区中所述待定物理地址对应的存储单元设置为占用状态。
[0025]其中,所述生成待定物理地址的步骤包括:
[0026]利用随机算法生成随机数RN,并根据公式三:A= RN%PS而得到所述待定物理地址A,其中,所述PS为第二存储分区的存储容量。
[0027]为解决上述技术问题,本发明采用的另一个技术方案是:提供一种存储数据的读取方法,包括
[0028]智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数;
[0029]根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址;
[0030]读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。
[0031]为解决上述技术问题,本发明采用的再一个技术方案是:提供一种智能终端,所述智能终端包括地址参数确定模块、物理地址确定模块以及数据存储模块,
[0032]所述地址参数确定模块用于获取待存储数据的逻辑地址以及第一存储分区存储的地址参数;
[0033]所述物理地址确定模块用于根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址;
[0034]所述数据存储模块用于将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。
[0035]为解决上述技术问题,本发明采用的又一个技术方案是:提供一种智能终端,所述智能终端包括地址参数确定模块、物理地址确定模块以及数据读取模块,
[0036]所述地址参数确定模块用于获取待存储数据的逻辑地址以及第一存储分区存储的地址参数;
[0037]所述物理地址确定模块用于根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址;
[0038]所述数据读取模块用于读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。
[0039]本发明的有益效果是:区别于现有技术的情况,本实施方式的存储数据的写入方法包括智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数,根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址,将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。通过将存储于第一存储分区的地址参数与第二参数用于存储存储数据的存储单元建立重新的映射关系,不仅能够实现存储数据的加密保存,不容易被篡改,而且,操作过程也不复杂,不会额外增加智能终端的工作量,为用户提供方便。
【附图说明】
[0040]图1是本发明存储数据的写入方法一实施方式的流程示意图;
[0041]图2是本发明存储数据的写入方法另一实施反射的流程示意图;
[0042]图3是本发明存储数据的读取方法一实施方式的流程示意图;
[0043]图4是本发明智能终端一实施方式的结构示意图;
[0044]图5是本发明智能终端另一实施方式的结构示意图。
【具体实施方式】
[0045]参阅图1,图1是本发明存储数据的写入方法一实施方式的流程示意图。如图1所示,本实施方式的写入方法包括如下步骤:
[0046]101:智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数。
[0047]为了将智能终端的例如产品批次号、产品硬件配置、产品软件版本号以及产品返修记录的出厂数据进行一定保密存储,本实施方式的智能终端在其存储器开辟两个存储分区,即第一存储分区以及第二粗糙你分区,其中,第一存储分区用于存储地址参数,第二分区用于存储上述包括出厂数据的存储数据。其中,该第一存储分区中与第二存储分区都包括多个存储单元,且第一存储分区的存储单元的数量与第二存储分区的存储单元的数量相同。因此,在一个优选的实施方式中,第一存储分区的存储空间与第二存储分区的存储空间的大小相等。且该第一存储分区与第二存储分区存储逻辑上的对应关系。
[0048]其中,该地址参数还可以称作待存储数据在第一存储分区的对应物理偏移量。
[0049]其中,存储数据不限于智能终端的出厂数据,也可以智能终端其他需要保护的数据,在此不做限定。
[0050]另外,智能终端在对存储数据进行写入之前,先分别将第一存储分区以及第二存储分区进行初始化,例如进行格式化,可将分区中的每个字节都设置为OxFF,在其他实施方式中,也可以同时设置成其他数值,在此不做限定。
[0051]具体地,智能终端要往第二存储分区写入存储数据时,首先获取待存储数据的逻辑地址,其中,该逻辑地址为待存储数据对应的地址参数在第一存储分区的逻辑地址,该逻辑地址可以为智能终端根据一定规则进行设定,也可以根据用户的需求自由设定,在此不做限定。
[0052]在获取到待存储数据的逻辑地址后,进一步判断该逻辑地址对应的第一存储分区存储的地址参数是否有效,即判断该逻辑地址对应的第一存储分区的存储单元中是否已经写入有效的地址参数,具体地,智能终端可根据该该逻辑地址对应的第一存储分区的存储单元的物理地址对应的标志位是否为有效值,如当该存储单元的物理地址用32bit表示时,可通过判断低31bit的值是否为0x7FFFFFFF来确定该存储单元中是否已经写入有效的地址参数,如低31bit的值为0x7FFFFFFF,表示该存储单元中未存储地址参数,此时为空闲状态。如低31bit的值发生改变,则表示该存储单元中已经存储地址参数。其中,由于32bit所代表的最大值是2xl0~9,能够满足绝大部分的数据存储,在其他实施方式中,也可以根据存储数据的大小按需分配,如通过16bit来表示等,在此不做限定。
[0053]102:根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址。
[0054]当确定该地址参数有效,即该逻辑地址对应的第一存储分区的存储单元已经存储有对应的地址参数时,表明该地址参数已经与第二存储分区的对应的存储单元建立映射关系,智能终端根据该地址参数即可确定该待存储数据在第二存储分区的物理地址。
[0055]具体地,智能终端根据公式一:PA=(R*LA+X)%PS来确定所述第二存储分区的物理地址PA,其中,R为加密因子,X为所述地址参数,PS为所述第二存储分区的存储容量。
[0056]其中,该加密因子R根据预定规则生成,在一个优选的实施方式中,为了使加密因子的获取方法具有通用性,智能终端可通过唯一的形如GIC6YPCY45V4JBM的序列号来获取,首先将该序列号按照36进制展开,得到一个数值V,然后用求余运算公式R=V%PS来计算加密因子R,其中,PS为第二存储分区的存储容量。
[0057]103:将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单
J L ο
[0058]确定该待存储数据在第二存储分区中所述物理地址对应的存储单元后,进一步地将该存储数据存储在该存储单元中,完成对该待存储数据的写入操作。
[0059]在另一个实施方式中,当地址参数无效时,即待存储数据逻辑地址对应的第一存储分区的存储单元为空闲时,智能终端进一步生成待定物理地址。具体地,如图2所示,图2为本发明存储数据的写入方法的另一实施方式的流程示意图。
[0060]201:智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数,并判断所述地址参数是否有效。
[0061 ]本步骤与上述实施方式的执行方法相同,在此不再赘述。
[0062]202:如果所述地址参数无效,生成待定物理地址,并判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲。
[0063]具体地,智能终端利用随机算法生成随机数RN,例如可通过随机数生成库函数来生成该随机数RN,再根据公式三:A = RN%PS而得到所述待定物理地址A,其中,所述PS为第二存储分区的存储容量。
[0064]在确定该待定物理地址A后,由于该物理地址是随机形成的,智能终端要进一步地判断该待定物理地址在第二存储分区对应的存储单元是否空闲。具体地,由于该第二存储分区对应的存储单元在第一存储分区都有其与其逻辑地址对应的存储单元与其对应,智能终端通过判断该待定物理地址在第一存储分区中对应的存储单元是否空闲来确定该第二存储分区中的所述待定物理地址对应的存储单元是否空闲。
[0065]如当该第一存储单元的存储单元的物理地址用32bit表示时,可通过判断最高bit的值是否为0x01来确定该该第二存储分区中的所述待定物理地址对应的存储单元是否空闲,如果是0x01,表示待定物理地址空闲,如果不是0x01,表明待定物理地址已经被占用。
[0066]203:若空闲,则根据所述待定物理地址计算出所述地址参数,并将所述待存储数据存储在所述第二存储分区中所述待定物理地址对应的存储单元。
[0067]经过上述判断,如果确定该待定物理地址为空闲的,则进一步根据该待定物理地址确定地址参数。具体地,智能终端根据公式二:X= (PA’-R*LA) %PS来确定所述地址参数X,其中PA为所述待定物理地址,R为所述加密因子,LA为所述待存储数据的逻辑地址,PS为所述第二存储分区的存储容量。
[0068]在其他实施方式中,由于地址参数是对第二存储分区的存储容量PS的求余,因此可知-PS〈 = X〈PS。根据公式二计算得到的X可能为负值止,例如当PS = 4096,R= 1001,LA =5,PA = 900,此时计算得到的X = -9,为一个负数,但是当负数为地址参数,在后续的应用和程序编译中,会不可避免的增大工作量,为操作带来麻烦,因此,本实施方式中,在确定地址参数X为负数时,对该地址参数X进行修正,并且为了保证修正后的X为正数,本实施方式的修正数位PS,即在X的基础上加上PS,如X = -9+4096,得到修正后的地址参数为4087。
[0069]如果确定经过判断,确定该待定物理地址并非空闲,即该待定物理地址已经被写入数据,智能终端将该待定物理地址增加设定步长后,如I个步长或2个3个步长后继续判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲,直至找到对应的空闲的待定物理地址。
[0070]在确定该地址参数后,将该地址参数存储到第一存储分区中与该待定物理地址对应的即与该逻辑地址对应的存储单元中,并将待存储数据存储在该待定物理地址对应的存储单元中。
[0071 ]为了方便后续对该待定物理地址的检测,智能终端在将待存储数据存储在该待定物理地址对应的存储单元后,进一步还将该第一存储分区中所述待定物理地址对应的存储单元设置为占用状态。例如,将该存储单元的物理地址的最高bit值修改为区别为0x01以外的其他数值,如0x02或0x05等,在此不做限定。
[0072]区别于现有技术,本实施方式的存储数据的写入方法包括智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数,根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址,将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。通过将存储于第一存储分区的地址参数与第二参数用于存储存储数据的存储单元建立重新的映射关系,不仅能够实现存储数据的加密保存,不容易被篡改,而且,操作过程也不复杂,不会额外增加智能终端的工作量,为用户提供方便。
[0073]参阅图3,图3是本发明存储数据的读取方法一实施方式的流程示意图。本实施方式的读取方法包括如下步骤:
[0074]301:智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数。
[0075]本实施方式的智能终端在其存储器开辟两个存储分区,即第一存储分区以及第二粗糙你分区,其中,第一存储分区用于存储地址参数,第二分区用于存储上述包括出厂数据的存储数据。其中,该第一存储分区中与第二存储分区都包括多个存储单元,且第一存储分区的存储单元的数量与第二存储分区的存储单元的数量相同。因此,在一个优选的实施方式中,第一存储分区的存储空间与第二存储分区的存储空间的大小相等。且该第一存储分区与第二存储分区存储逻辑上的对应关系。
[0076]其中,存储数据不限于智能终端的出厂数据,也可以智能终端其他需要保护的数据,在此不做限定。该地址参数还可以称作待存储数据在第一存储分区的对应物理偏移量。
[0077]当待存储数据已经存储在第二存储分区对应的存储单元中时,要读取出存储数据,智能终端首先获取待存储数据的逻辑地址,其中,该逻辑地址为待存储数据对应的地址参数在第一存储分区的逻辑地址以及存储在第一存储分区中的地址参数。
[0078]302:根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址。
[0079]具体地,智能终端根据公式一:PA=(R*LA+X)%PS来确定所述第二存储分区的物理地址PA,其中,R为加密因子,X为所述地址参数,PS为所述第二存储分区的存储容量。
[0080]其中,该加密因子R根据预定规则生成,在一个优选的实施方式中,为了使加密因子的获取方法具有通用性,智能终端可通过唯一的形如GIC6YPCY45V4JBM的序列号来获取,首先将该序列号按照36进制展开,得到一个数值V,然后用求余运算公式R=V%PS来计算加密因子R,其中,PS为第二存储分区的存储容量。
[0081 ] 303:读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。
[OO82 ]智能终端在确定物理地址后,即确定待存储数据所在的存储单元,智能终端读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据即可。
[0083]区别于现有技术,本实施方式的智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数;根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址;读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。通过将存储于第一存储分区的地址参数与第二参数用于存储存储数据的存储单元建立重新的映射关系,不仅能够实现存储数据的加密保存,不容易被篡改,而且,操作过程也不复杂,不会额外增加智能终端的工作量,为用户提供方便。
[0084]参阅图4,图4是本发明智能终端一实施方式的结构示意图。如图4所示,本实施方式的智能终端包括地址参数确定模块401、物理地址确定模块402以及数据存储模块403.
[0085]地址参数确定模块401用于获取待存储数据的逻辑地址以及第一存储分区存储的地址参数。
[0086]为了将智能终端的例如产品批次号、产品硬件配置、产品软件版本号以及产品返修记录的出厂数据进行一定保密存储,本实施方式的智能终端在其存储器开辟两个存储分区,即第一存储分区以及第二粗糙你分区,其中,第一存储分区用于存储地址参数,第二分区用于存储上述包括出厂数据的存储数据。其中,该第一存储分区中与第二存储分区都包括多个存储单元,且第一存储分区的存储单元的数量与第二存储分区的存储单元的数量相同。因此,在一个优选的实施方式中,第一存储分区的存储空间与第二存储分区的存储空间的大小相等。且该第一存储分区与第二存储分区存储逻辑上的对应关系。
[0087]其中,该地址参数还可以称作待存储数据在第一存储分区的对应物理偏移量。存储数据不限于智能终端的出厂数据,也可以智能终端其他需要保护的数据,在此不做限定。
[0088]另外,智能终端在对存储数据进行写入之前,先分别将第一存储分区以及第二存储分区进行初始化,例如进行格式化,可将分区中的每个字节都设置为OxFF,在其他实施方式中,也可以同时设置成其他数值,在此不做限定。
[0089]具体地,要向第二存储分区写入存储数据时,地址参数确定模块401首先获取待存储数据的逻辑地址,其中,该逻辑地址为待存储数据对应的地址参数在第一存储分区的逻辑地址,该逻辑地址可以为智能终端根据一定规则进行设定,也可以根据用户的需求自由设定,在此不做限定。
[0090]在获取到待存储数据的逻辑地址后,地址参数确定模块401进一步判断该逻辑地址对应的第一存储分区存储的地址参数是否有效,即判断该逻辑地址对应的第一存储分区的存储单元中是否已经写入有效的地址参数,具体地,智能终端可根据该该逻辑地址对应的第一存储分区的存储单元的物理地址对应的标志位是否为有效值,如当该存储单元的物理地址用32bit表示时,可通过判断低31bit的值是否为0x7FFFFFFF来确定该存储单元中是否已经写入有效的地址参数,如低31bit的值为0x7FFFFFFF,表示该存储单元中未存储地址参数,此时为空闲状态。如低31bit的值发生改变,则表示该存储单元中已经存储地址参数。其中,由于32bit所代表的最大值是2xl(T9,能够满足绝大部分的数据存储,在其他实施方式中,也可以根据存储数据的大小按需分配,如通过16bit来表示等,在此不做限定。
[0091]物理地址确定模块402用于根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址。
[0092]当地址参数确定模块401确定该地址参数有效,即该逻辑地址对应的第一存储分区的存储单元已经存储有对应的地址参数时,表明该地址参数已经与第二存储分区的对应的存储单元建立映射关系,物理地址确定模块402根据该地址参数即可确定该待存储数据在第二存储分区的物理地址。
[0093]具体地,物理地址确定模块402根据公式一:PA=(R*LA+X) %PS来确定所述第二存储分区的物理地址PA,其中,R为加密因子,X为所述地址参数,PS为所述第二存储分区的存储容量。
[0094]其中,该加密因子R根据预定规则生成,在一个优选的实施方式中,为了使加密因子的获取方法具有通用性,物理地址确定模块402可通过唯一的形如GIC6YPCY45V4JBM的序列号来获取,首先将该序列号按照36进制展开,得到一个数值V,然后用求余运算公式R =V % PS来计算加密因子R,其中,PS为第二存储分区的存储容量。
[0095]数据存储模块403用于将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。
[0096]数据存储模块403在物理地址确定模块402确定该待存储数据在第二存储分区中所述物理地址对应的存储单元后,进一步地将该存储数据存储在该存储单元中,完成对该待存储数据的写入操作。
[0097]在另一个实施方式中,当地址参数无效时,即待存储数据逻辑地址对应的第一存储分区的存储单元为空闲时,物理地址确定模块402进一步生成待定物理地址。
[0098]具体地,物理地址确定模块402在确定地址参数无效,生成待定物理地址,并判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲。
[0099]在一个可选的实施方式中,物理地址确定模块402利用随机算法生成随机数RN,例如可通过随机数生成库函数来生成该随机数RN,再根据公式三:A = RN%PS而得到所述待定物理地址A,其中,所述PS为第二存储分区的存储容量。
[0100]物理地址确定模块402在确定该待定物理地址A后,由于该物理地址是随机形成的,要进一步地判断该待定物理地址在第二存储分区对应的存储单元是否空闲。具体地,由于该第二存储分区对应的存储单元在第一存储分区都有其与其逻辑地址对应的存储单元与其对应,物理地址确定模块402通过判断该待定物理地址在第一存储分区中对应的存储单元是否空闲来确定该第二存储分区中的所述待定物理地址对应的存储单元是否空闲。
[0101]如当该第一存储单元的存储单元的物理地址用32bit表示时,可通过判断最高bit的值是否为0x01来确定该该第二存储分区中的所述待定物理地址对应的存储单元是否空闲,如果是0x01,表示待定物理地址空闲,如果不是0x01,表明待定物理地址已经被占用。[0?02]如果确定该待定物理地址为空闲的,物理地址确定模块402进一步根据该待定物理地址确定地址参数。具体地,智能终端根据公式二:X= (PA’-R*LA) %PS来确定所述地址参数X,其中PA为所述待定物理地址,R为所述加密因子,LA为所述待存储数据的逻辑地址,PS为所述第二存储分区的存储容量。
[0103]在其他实施方式中,由于地址参数是对第二存储分区的存储容量PS的求余,因此可知-PS〈 = X〈PS。根据公式二计算得到的X可能为负值止,例如当PS = 4096,R= 1001,LA =5,PA = 900,此时计算得到的X = -9,为一个负数,但是当负数为地址参数,在后续的应用和程序编译中,会不可避免的增大工作量,为操作带来麻烦,因此,本实施方式中,在确定地址参数X为负数时,对该地址参数X进行修正,并且为了保证修正后的X为正数,本实施方式的修正数位PS,即在X的基础上加上PS,如X = -9+4096,得到修正后的地址参数为4087。
[0?04] 如果确定经过判断,确定该待定物理地址并非空闲,即该待定物理地址已经被写入数据,物理地址确定模块402将该待定物理地址增加设定步长后,如I个步长或2个3个步长后继续判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲,直至找到对应的空闲的待定物理地址。
[0105]数据存储模块403在确定该地址参数后,将该地址参数存储到第一存储分区中与该待定物理地址对应的即与该逻辑地址对应的存储单元中,并将待存储数据存储在该待定物理地址对应的存储单元中。
[0106]为了方便后续对该待定物理地址的检测,数据存储模块403在将待存储数据存储在该待定物理地址对应的存储单元后,进一步还将该第一存储分区中所述待定物理地址对应的存储单元设置为占用状态。例如,将该存储单元的物理地址的最高bit值修改为区别为0x01以外的其他数值,如0x02或0x05等,在此不做限定。
[0107]区别于现有技术,本实施方式的智能终端通过将存储于第一存储分区的地址参数与第二参数用于存储存储数据的存储单元建立重新的映射关系,不仅能够实现存储数据的加密保存,不容易被篡改,而且,操作过程也不复杂,不会额外增加智能终端的工作量,为用户提供方便。
[0108]参阅图5,图5是本发明智能终端另一实施方式的结构示意图。本实施方式的智能终端包括地址参数确定模块501、物理地址确定模块502以及数据读取模块503。
[0109]地址参数确定模块501用于获取待存储数据的逻辑地址以及第一存储分区存储的地址参数。
[0110]本实施方式的智能终端在其存储器开辟两个存储分区,即第一存储分区以及第二粗糙你分区,其中,第一存储分区用于存储地址参数,第二分区用于存储上述包括出厂数据的存储数据。其中,该第一存储分区中与第二存储分区都包括多个存储单元,且第一存储分区的存储单元的数量与第二存储分区的存储单元的数量相同。因此,在一个优选的实施方式中,第一存储分区的存储空间与第二存储分区的存储空间的大小相等。且该第一存储分区与第二存储分区存储逻辑上的对应关系。
[0111]其中,存储数据不限于智能终端的出厂数据,也可以智能终端其他需要保护的数据,在此不做限定。该地址参数还可以称作待存储数据在第一存储分区的对应物理偏移量。
[0112]当待存储数据已经存储在第二存储分区对应的存储单元中时,要读取出存储数据,地址参数确定模块501首先获取待存储数据的逻辑地址,其中,该逻辑地址为待存储数据对应的地址参数在第一存储分区的逻辑地址以及存储在第一存储分区中的地址参数。
[0113]物理地址确定模块502用于根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址。
[0114]具体地,物理地址确定模块502根据公式一:PA=(R*LA+X)%PS来确定所述第二存储分区的物理地址PA,其中,R为加密因子,X为所述地址参数,PS为所述第二存储分区的存储容量。
[0115]其中,该加密因子R根据预定规则生成,在一个优选的实施方式中,为了使加密因子的获取方法具有通用性,智能终端可通过唯一的形如GIC6YPCY45V4JBM的序列号来获取,首先将该序列号按照36进制展开,得到一个数值V,然后用求余运算公式R=V%PS来计算加密因子R,其中,PS为第二存储分区的存储容量。
[0116]数据存储模块503用于读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。
[0117]数据存储模块503在物理地址确定模块502确定物理地址后,即确定待存储数据所在的存储单元,智能终端读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据即可。
[0118]区别于现有技术,本实施方式的智能终端通过将存储于第一存储分区的地址参数与第二参数用于存储存储数据的存储单元建立重新的映射关系,不仅能够实现存储数据的加密保存,不容易被篡改,而且,操作过程也不复杂,不会额外增加智能终端的工作量,为用户提供方便。
[0119]以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种存储数据的写入方法,其特征在于,包括: 智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数; 根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址; 将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。2.根据权利要求1所述的写入方法,其特征在于,所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址的步骤包括: 根据公式一:PA= (R*LA+X) %PS来确定所述第二存储分区的物理地址PA,其中,R为加密因子,X为所述地址参数,PS为所述第二存储分区的存储容量。3.根据权利要求1或2所述的写入方法,其特征在于,在所述根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址的步骤之前,还包括: 判断所述地址参数是否有效; 若有效,则执行所述根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址的步骤。4.根据权利要求3所述的写入方法,其特征在于,所述判断所述地址参数是否有效的步骤之后还包括如下步骤: 如果所述地址参数无效,则生成待定物理地址,并判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲; 若空闲,则根据所述待定物理地址计算出所述地址参数,并将所述待存储数据存储在所述第二存储分区中所述待定物理地址对应的存储单元; 若不空闲,则将所述待定物理地址增加设定步长后,执行所述判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲的步骤。5.根据权利要求4所述的写入方法,其特征在于,所述根据所述待定物理地址计算出所述地址参数的步骤包括: 根据公式二: X = (PA ’ -R*LA) % PS来确定所述地址参数X,其中PA ’为所述待定物理地址,R为所述加密因子,LA为所述待存储数据的逻辑地址,PS为所述第二存储分区的存储容量。6.根据权利要求4的写入方法,其特征在于,所述判断所述第二存储分区中的所述待定物理地址对应的存储单元是否空闲的步骤包括: 判断所述第一存储分区中所述待定物理地址对应的存储单元是否空闲,若是,则确定所述第二存储分区中的所述待定物理地址对应的存储单元空闲; 所述将所述待存储数据存储在所述第二存储分区中所述待定物理地址对应的存储单元的步骤之后,还包括: 将所述第一存储分区中所述待定物理地址对应的存储单元设置为占用状态。7.根据权利要求4所述的写入方法,其特征在与,所述生成待定物理地址的步骤包括: 利用随机算法生成随机数RN,并根据公式三:A = RN%PS而得到所述待定物理地址A,其中,所述PS为第二存储分区的存储容量。8.一种存储数据的读取方法,其特征在于,包括: 智能终端获取待存储数据的逻辑地址以及第一存储分区存储的地址参数; 根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址; 读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。9.一种智能终端,其特征在于,所述智能终端包括地址参数确定模块、物理地址确定模块以及数据存储模块, 所述地址参数确定模块用于获取待存储数据的逻辑地址以及第一存储分区存储的地址参数; 所述物理地址确定模块用于根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址; 所述数据存储模块用于将所述待存储数据存储在所述第二存储分区中所述物理地址对应的存储单元。10.一种智能终端,其特征在于,所述智能终端包括地址参数确定模块、物理地址确定模块以及数据读取模块, 所述地址参数确定模块用于获取待存储数据的逻辑地址以及第一存储分区存储的地址参数; 所述物理地址确定模块用于根据所述逻辑地址以及所述地址参数确定所述待存储数据在第二存储分区的物理地址; 所述数据读取模块用于读取所述第二存储分区中所述物理地址对应的存储单元中的存储数据。
【文档编号】G06F12/06GK105955893SQ201610293855
【公开日】2016年9月21日
【申请日】2016年5月5日
【发明人】邓铁军
【申请人】捷开通讯(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1