苏州建网站的公司外包服务,建筑工程公司名录,为什么不建议去代账公司,电脑制作网站教程本发明属linux嵌入式芯片安全技术领域于领域#xff0c;尤其是涉及一种nandflash写保护应用方法。背景技术#xff1a;目前很多公司都纷纷尝试智能设备(sd,smartdevice)领域#xff0c;sd设备功能越来越多#xff0c;使用的flash(闪存)大多为spinor、spinand、emmc等等。sd…本发明属linux嵌入式芯片安全技术领域于领域尤其是涉及一种nandflash写保护应用方法。背景技术目前很多公司都纷纷尝试智能设备(sd,smartdevice)领域sd设备功能越来越多使用的flash(闪存)大多为spinor、spinand、emmc等等。sd在使用过程中由于硬件设备老化、某些特殊原因(如突然断电、软件bug等)导致了flash中存放的数据被篡改可能导致sd设备某些功能无法正常使用最严重的的是直接导致系统瘫痪无法启动。现有技术只在uboot实现了写保护解保护智能设备的升级业务大多数升级业务需要系统启动后才能运行现有方案无法满足。技术实现要素有鉴于此本发明旨在克服上述现有技术中存在的缺陷提出一种基于flash写保护的防止flash被意外篡改的方法。为达到上述目的本发明的技术方案是这样实现的一种基于flash写保护的防止flash被意外篡改的方法所述方法包括以下步骤s1.启动bootloader并对需要保护的分区设置写保护s2.判断智能设备是否需要升级a1.需要升级进入步骤s3a2.不需要升级进入步骤s4s3.执行步骤s1中设置的解保护方法解保护并在写入flash后重启设备s4.启动内核与核心业务程序s5.判断智能设备是否需要升级b1.需要升级执行下面步骤b2.不需要升级则轮询检测s6.调用内核驱动添加的解保护方法进行解保护s7.写入flash后重启设备。进一步的所述步骤s1具体方法包括c1.将只读与可读文件划分不同分区c2.设置对应分区为不同保护状态。进一步的步骤s1所述的写保护方法具体包括d1.spinornandflash配置状态寄存器的bp位d2.emmc需要发送写保护相关命令。相对于现有技术本发明具有以下优势现有技术只在uboot实现了写保护解保护智能设备的升级业务大多数升级业务需要系统启动后才能运行现有方案无法满足在kernel实现写保护解保护后可以满足升级逻辑在系统起来运行的设备。附图说明构成本发明的一部分的附图用来提供对本发明的进一步理解本发明的示意性实施例及其说明用于解释本发明并不构成对本发明的不当限定。在附图中图1为本发明实施例所述的整体流程示意图具体实施方式需要说明的是在不冲突的情况下本发明中的实施例及实施例中的特征可以相互组合。在本发明的描述中需要理解的是术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系仅是为了便于描述本发明和简化描述而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作因此不能理解为对本发明的限制。此外术语“第一”、“第二”等仅用于描述目的而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中除非另有说明“多个”的含义是两个或两个以上。在本发明的描述中需要说明的是除非另有明确的规定和限定术语“安装”、“相连”、“连接”应做广义理解例如可以是固定连接也可以是可拆卸连接或一体地连接可以是机械连接也可以是电连接可以是直接相连也可以通过中间媒介间接相连可以是两个元件内部的连通。对于本领域的普通技术人员而言可以通过具体情况理解上述术语在本发明中的具体含义。下面将参考附图并结合实施例来详细说明本发明。一种基于flash写保护的防止flash被意外篡改的方法所述方法包括以下步骤s1.启动bootloader并对需要保护的分区设置写保护s2.判断是否需要升级a1.需要升级进入步骤s3a2.不需要升级进入步骤s4s3.执行步骤s1中设置的解保护方法解保护并在写入flash后重启设备s4.启动内核与核心业务程序s5.判断是否需要升级b1.需要升级执行下面步骤b2.不需要升级则轮询检测s6.调用内核驱动添加的解保护方法进行解保护s7.写入flash后重启设备。所述步骤s1具体方法包括c1.将只读与可读文件划分不同分区c2.设置对应分区为不同保护状态。步骤s1所述的写保护具体包括d1.spinornandflash配置状态寄存器的bp位d2.emmc需要发送写保护相关命令。设备启动阶段分为bootloader与内核两个阶段bootloader的主要作用是初始化硬件引导内核启动两个阶段都可实现升级逻辑各有优缺点bootloader阶段升级一般都是本地升级针对某个设备如u盘烧写串口烧写。内核启动后可以通过服务器远程升级适合大量设备升级。由于bootloader阶段已设置写保护当业务程序检测到升级时也需要先解保护所以内核驱动也需要实现加保护解保护接口(应用程序无法调用bootloader的接口)。以上所述仅为本发明的较佳实施例而已并不用以限制本发明凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等均应包含在本发明的保护范围之内。