一种基于智能终端的分区保护方法及系统的制作方法

文档序号:9350308阅读:501来源:国知局
一种基于智能终端的分区保护方法及系统的制作方法
【技术领域】
[0001]本发明涉及智能终端领域,尤其涉及一种基于智能终端的分区保护方法及系统。
【背景技术】
[0002]目前智能终端例如手机的EMMC(内嵌式存储器)一般会按照功能使用的不同划分成若干个分区。其中某些分区十分重要,比如uboot分区,kernel分区,system分区。这些分区一旦被破坏,往往是会出现无法正常开机或手机使用过程中系统崩溃。现实中会有部分用户root手机(刷机),root成功后常常有意无意地破坏了手机上这些重要分区中的数据,导致手机无法正常使用,退回厂家售后网点维修,所以分区保护十分重要。
[0003]目前一般的写保护方案只是通过软件方式进行分区写保护,即简单地通过把分区加载为ReadOnly (只读)分区。但该方法很容易被破解,并不能做到真正意义上的写保护。
[0004]因此,现有技术还有待于改进和发展。

【发明内容】

[0005]鉴于上述现有技术的不足,本发明的目的在于提供一种基于智能终端的分区保护方法及系统,旨在解决现有的智能终端写保护方案容易被破解、安全性不高的问题。
[0006]本发明的技术方案如下:
一种基于智能终端的分区保护方法,其中,包括步骤:
A、选择需保护的分区,对分区的排列顺序、起始地址和大小进行调整;
B、调整完毕后,在智能终端启动时的LK阶段对分区添加EMMC上电写保护机制,以对分区进行写保护。
[0007]所述的基于智能终端的分区保护方法,其中,所述步骤A包括:
对需保护的分区进行对齐操作;
将需保护的分区进行分组,使每组大小为写保护组的整数倍。
[0008]所述的基于智能终端的分区保护方法,其中,将EMMC的硬件复位引脚设置为禁能状态,以避免在EMMC出错时复位EMMC。
[0009]所述的基于智能终端的分区保护方法,其中,在智能终端进行fota升级时,通过设置E丽C的P頂C,使E丽C掉电。
[0010]所述的基于智能终端的分区保护方法,其中,写保护组write_protect_group_size的大小为:
write_protect_group_size=512KB*HC_ERASE_GRP_SIZE* HC_ffP_GRP_SIZE其中 HC_ERASE_GRP_SIZE 和 HC_WP_GRP_SIZE 为 EMMC 器件固有参数。
[0011]所述的基于智能终端的分区保护方法,其中,EMMC上电写保护机制有三种:永久保护、上电保护及临时保护。
[0012]一种基于智能终端的分区保护系统,其中,包括:
调整模块,用于选择需保护的分区,对分区的排列顺序、起始地址和大小进行调整; 保护模块,用于调整完毕后,在智能终端启动时的LK阶段对分区添加EMMC上电写保护机制,以对分区进行写保护。
[0013]所述的基于智能终端的分区保护系统,其中,所述调整模块具体包括:
对齐单元,用于对需保护的分区进行对齐操作;
分组单元,用于将需保护的分区进行分组,使每组大小为写保护组的整数倍。
[0014]所述的基于智能终端的分区保护系统,其中,写保护组write_protect_group_size的大小为:
write_protect_group_size=512KB*HC_ERASE_GRP_SIZE* HC_ffP_GRP_SIZE其中 HC_ERASE_GRP_SIZE 和 HC_WP_GRP_SIZE 为 EMMC 器件固有参数。
[0015]所述的基于智能终端的分区保护系统,其中,EMMC上电写保护机制有三种:永久保护、上电保护及临时保护。
[0016]有益效果:本发明根据EMMC 特性,采用 EMMC Power On Write Protect1n (EMMC上电写保护)机制对重要分区进行EMMC上电写保护。而EMMC Power On Write Protect1n机制属于硬件级别的写保护,可以从根本上防止用户root行为和某些程序上的错误带来的对分区的破坏。其难以被破解,安全性高。
【附图说明】
[0017]图1为本发明一种基于智能终端的分区保护方法较佳实施例的流程图。
[0018]图2为采用本发明的方法对system分区进行写保护时的结构框图。
[0019]图3为采用本发明的方法对分区进行分组的结构示意图。
[0020]图4为本发明一种基于智能终端的分区保护系统较佳实施例的结构框图。
【具体实施方式】
[0021]本发明提供一种基于智能终端的分区保护方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0022]请参阅图1,图1为本发明一种基于智能终端的分区保护方法较佳实施例的流程图,如图所示,其包括步骤:
5101、选择需保护的分区,对分区的排列顺序、起始地址和大小进行调整;
5102、调整完毕后,在智能终端启动时的LK阶段对分区添加EMMC上电写保护机制,以对分区进行写保护。
[0023]本发明中,采用EMMC上电写保护机制对分区进行写保护,在智能终端启动后,使EMMC上的某块或多块区域处于写保护状态,保证智能终端重要数据的完整性,防止数据被删除改写。例如图2中的system分区,添加EMMC上电写保护机制进行写保护后,则Host(主机)可以对该分区进行读操作,但写操作是无效的。
[0024]EMMC存在Write Protect Group (写保护组)的概念,即可以将EMMC的存储区域作为一个个的Write Protect Group (写保护组)组成。对于每个Write Protect Group,提供三种写保护机制,每种机制对于上电/复位又有不同的反应。三种写保护机制包括:永久保护(Permanent)、上电保护(Power-on )及临时保护(Temporary )。
[0025]对于永久保护,写保护一旦设置会一直生效,无法撤销,并且在复位后写保护仍然有效,也无法撤销;对于上电保护,其在设置后生效,无法撤销,但在复位后失效;对于临时保护,在设置后生效,可以随时撤销或再次设置生效,复位不影响临时写保护的状态。
[0026]每个写保护组Write Protect Group 的大小 write_protect_group_size 可由如下公式得出:
write_protect_group_size=512KB*HC_ERASE_GRP_SIZE* HC_ffP_GRP_SIZE其中HC_ERASE_GRP_SIZE和HC_WP_GRP_SIZE为EMMC器件固有参数,可以通过查询EMMC spec 得到。
[0027]所述步骤SlOl中,先选择需保护的分区,例如选择Preloader、MBR、EBRl、UB00T,EBR2等分区。然后进行布局调整操作,具体包括如下步骤:
S201、对需保护的分区进行对齐操作;
首先需要确定分区的alignment_size,并让需要写保护的分区的起始地址和大小等于alignment_size的整数倍,此即为对齐。alignment_size —般选择为主流使用的EMMC的write_protect_group_size 的整数倍。
[0028]S202、将需保护的分区进行分组,使每组大小为写保护组的整数倍。
[0029]为避免由于分区对齐带来空间浪费,可以将多个分区组合成一组占用一个或多个Write Protect1n Group。如图3所示,将各个分区进行分组,组合成一个组,按组的形式进行同时保护。
[0030]其中,Preloader分区虽然需要写保护,但属于EMMC的Bootl区域,不需要设置大小为对齐。
[0031]其他的如MBR, EBR1, UB00T, EBR2, LOGO分区组成一个组,避免每个分区设成Alignment_size大小带来空间浪费。该组起始地址为0,大小为8M,即符合“让分区的起始地址和分区的大小等于Alignment_size的整数倍”的原则。
[0032]另外,智能终端的启动模式有多种,不同模式下对各个分区的写操作需求是不一致的。所以先确定在各种模式下哪些分区应该并且可以写保护,哪些分区不可以写保护。
[0033]例如在N0RMAL_B00T 启动模式下,Preloader、LK、boot、secro 及 system 分区需要写保护,recovery、seccfg及nvram分区不需要写保护。
[0034]在ΜΕΤΑ_Β00Τ 启动模式下,Preloader、LK、recovery、boot、secro 及 system 分区需要写保护,seccfg及nvram分区不需要写保护。
[0035]在SW_REB00T 启动模式下,Preloader、LK、recovery、boot、secro 及 system 分区需要写保护,s
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1