一种基于嵌入式系统的保护闪存数据安全性和完整性的方法技术方案

技术编号:4157005 阅读:254 留言:0更新日期:2012-04-11 18:40
一种基于嵌入式系统的保护闪存数据安全性和完整性的方法,解决嵌入式系统中防止系统在上电、掉电过程中闪存数据丢失的技术问题,采用的技术方案是,借助闪存芯片单元中的非易失性字段以及Linux系统和配套管理软件实现,在Linux系统的内核层设置与非易失性字段配套的锁写保护驱动接口电路,CPU借助信号采集单元采集系统运行状态后,向锁写保护驱动接口发送锁或解锁控制命令,实现对闪存芯片单元中的非易失性字段的锁或解锁。本发明专利技术的优点是设备在上电和掉电的期间同样受此字段的限制,因此有效的防止了闪存单元中数据的丢失可能,在保证闪存单元中数据完整性的同时很好地避开了由于硬件或软件的原因丢失闪存数据的可能性,具有很好的社会效益和经济效益。

Method for protecting security and integrity of flash memory data based on Embedded System

A method for protecting the security and integrity of flash data based on embedded system, prevent the system embedded system off the technical problems in the process of flash data loss in electric power, and the technical scheme is that the flash chip unit in the nonvolatile fields and Linux system and supporting management software the loss of field matching lock write protection drive interface circuit in kernel layer set Linux system and non CPU, with the help of running state signal acquisition unit system, lock or unlock control commands sent to the driver interface lock write protection, realization of the flash chip unit in the nonvolatile fields and locked or unlocked. The invention has the advantages of equipment during power down on power and also by this field limit, so to prevent possible data loss, the flash memory unit, the flash memory unit data integrity is well avoided due to hardware or software the possibility of losing flash data, has the very good the social and economic benefits.

【技术实现步骤摘要】

本专利技术属于嵌入式系统中的闪存数据保护
,涉及到一种闪存 中数据的保护方法,特别是在系统上电或掉电期间保护闪存数据安全性和 完整性的方法。
技术介绍
随着社会的进步,科技的发展,多元的化设备也是日新月异,用户的 对嵌入式的设备也提出了更高的要求,需要能够提供完备的功能,安全, 快捷,稳定,易操作等优点的嵌入式设备,其中的系统简称为嵌入式系统, 用来管理嵌入式设备的系统,对整个系统中存在的用户接口和内部接口之 间协调和操作,为用户提供更加人性化的操作。统一对系统中资源分配调度,为了保存嵌入式系统(Embedded Operating System)中的数据和代码, 必须有一种非易失性存储器,即Flash闪存存储器。同时对用户提供存储私 人数据,也是多功能,低能耗,高可靠的嵌入式系统设备(Embedded Operating System unit)必不可少的器件。今后的社会发展过程中这种嵌入 式系统设备会越来越多,嵌入式系统中Flash闪存数据的完整性和安全性越 来越需要得到保证。目前比较常见的嵌入式系统有Linux, WinCE, VxWorks, UC/OS, Nucleus,其中Lhiux的特点是开源,免费,并且存在一个庞大的开源组织 不管在实际开发过程遇到什么问题都可以通过开源论坛,或者是其它途径找解决方案,该系统为嵌入式系统(Embedded Operating System)注入了活 力,使今后嵌入式系统的发展历上添加了重重的一笔。如上所述,由于嵌入式设备的需求量大加速了嵌入式系统(Embedded Operating System)的发展,对嵌入式系统的发展也是个契机,其中Flash 闪存数据的安全性和完整性就显得尤其的重要。系统在加电后所有的程序 都开始加载,程序加载结束后程序的运行所有的这些一切的操作都依靠着 Flash闪存中存储的数据和代码,所以嵌入式系统中flash数据的安全性和完 整性是必须的性能指标。闪存数据容易丢失的原因有以下几种1、 Flash数据丢失的硬件原因Flash操作由硬件控制,所以硬件上的不稳定可能造成Flash操作错误。 硬件原因主要是能影响CPU正常运行的因素,以及能影响Flash操作环境的 因素。这些因素包括操作电压、温度以及外部干扰脉冲等,具体如下① 能影响CPU运行可靠性的参数有系统时钟源。如果系统时钟由外部 晶振提供,外部的电磁干扰引起尖脉冲,并耦合到系统时钟上,则会导致 不可预知的操作。② 系统在CPU的工作电压没有稳定(VDD上升时间低于规定的1 ms) 时就已经完成复位,由于系统复位时需要从Flash读出代码数据,Flash电压 不稳定会出现不可预测的错误。③ 在对Flash的操作过程中,如果温度、电压不稳定,也可能造成Flash 数据错误。2、 Flash数据丢失的软件原因代码设计的缺陷是程序丢失的原因之一,因为Flash是由硬件来控制 的,不能由软件来控制操作的细节,所以程序的不完善可能造成Flash的访 问出错,从而使Flash数据出现错误。这些操作包括在使能flash写之后, 由于软件设计的缺陷导致错误的将数据写到Flash中了,从而出现问题。另 外,如果使用外部晶振作系统时钟,在时钟没有稳定时就对Flash进行写操 作,也可能造成程序丢失。以上问题单纯从硬件或软件角度并不能很好地解决闪存数据完整性的 问题,但是我们发现它们的共同特点是都无法防止系统在上电、掉电过程 丢失资料的技术缺陷,因此,虽然不能使上述问题逐一解决,但是只要解 决了系统在上电、掉电过程丢失资料的技术缺陷,就可以避免上述的所有 问题的发生。现有技术并不能很好的解决,给本领域带来了不便。
技术实现思路
本专利技术的目的是为了解决嵌入式系统中防止系统在上电、掉电过程中 闪存数据丢失的技术问题,设计了一种基于嵌入式系统的保护闪存数据安 全性和完整性的方法,使系统在上电或掉电时将闪存单元中的非易失性字 段完全锁住,在此期间不可以对闪存单元中的数据进行写操作,保证了闪 存数据的完整性。本专利技术为实现专利技术目的采用的技术方案是, 一种基于嵌入式系统的保 护闪存数据安全性和完整性的方法,该方法借助闪存芯片单元中的非易失 性字段以及Linux系统和配套管理软件实现,在Linux系统的内核层设置与 非易失性字段配套的锁写保护驱动接口电路,CPU借助信号采集单元采集 系统运行状态后,向锁写保护驱动接口发送锁或解锁控制命令,实现对闪存芯片单元中的非易失性字段的锁或解锁。本专利技术利用了 flash闪存芯片自带的锁写保护的一个非易失性字段,通 过设置锁写保护驱动接口来控制闪存的锁和解锁。即当该字段被关闭(锁) 时,任何的数据修改都无法操作,只有当它为打开(解锁)状态才可以写 flash闪存数据。重要的是, 一旦设置了该字段,即使系统掉电,同样保留 了该字段值,通过本方法,设备在上电和掉电的期间同样受此字段的限制, 因此有效的防止了闪存单元中数据的丢失可能,在保证闪存单元中数据完 整性的同时很好地避开了由于硬件或软件的原因丢失闪存数据的可能性, 具有很好的社会效益和经济效益。下面结合附图对本专利技术进行详细说明。 附图说明图1是本专利技术在系统启动前引导加载程序中应用的步骤流程图。 图2是本专利技术在系统启动后应用的步骤流程图。 图3是本专利技术在系统异常掉电时的步骤流程图。 具体实施例方式参看附图, 一种基于嵌入式系统的保护闪存数据安全性和完整性的方 法,该方法借助闪存芯片单元中的非易失性字段以及Linux系统和配套管理 软件实现,在Linux系统的内核层设置与非易失性字段配套的锁写保护驱动 接口电路,CPU借助信号采集单元采集系统运行状态后,向锁写保护驱动 接口发送锁或解锁控制命令,实现对闪存芯片单元中的非易失性字段的锁 或解锁。本专利技术利用了 flash闪存芯片自带的锁写保护的一个非易失性字段, 通过设置锁写保护驱动接口来控制闪存的锁和解锁。即当该字段被关闭(锁)时,任何的数据修改都无法操作,只有当它为打开(解锁)状态才可以写flash闪存数据。重要的是, 一旦设置了该字段,即使系统掉电,同 样保留了该字段值。为了便于系统控制,设置非易失性字段的二进制数据状态参数,在CPU 发送锁或解锁控制命令之前,首先借助驱动接口电路读取二进制数据状态 参数,根据状态参数决定CPU进行、或不进行发送锁或解锁的控制命令。 若要进行锁命令,当闪存已是锁状态,无需动作;当内存是解锁状态,则 进行锁动作。若要进行解锁命令,当内存是锁状态,则进行解锁动作,当 内存已是解锁状态,则无需动作。为方便随时锁定、解锁或者读取内存状态,上述的方法借助计算机在 CPU的输入端设置命令行输入接口电路,通过命令行输入接口实现人为对 闪存芯片单元中的非易失性字段的锁或解锁。上述的方法在引导加载程序中或系统启动后实现。下面举出具体实施例来解释本方法在引导加载程序以及系统启动后中应用的流程。参看图l,当系统上电后、引导加载程序启动,为防止此阶段闪存单元 中数据丢失,要进行锁程序。首先CPU借助锁写保护驱动接口读取当前闪 存的状态,如果此时已为锁状态,那么直接结束锁程序;如果是解锁状态, CPU则执行锁命令,发送锁定编码信号至锁写保护驱动接口,使本文档来自技高网
...

【技术保护点】
一种基于嵌入式系统的保护闪存数据安全性和完整性的方法,该方法借助闪存芯片单元中的非易失性字段以及Linux系统和配套管理软件实现,其特征在于:在Linux系统的内核层设置与非易失性字段配套的锁写保护驱动接口电路,CPU借助信号采集单元采集系统运行状态后,向锁写保护驱动接口发送锁或解锁控制命令,实现对闪存芯片单元中的非易失性字段的锁或解锁。

【技术特征摘要】
1、一种基于嵌入式系统的保护闪存数据安全性和完整性的方法,该方法借助闪存芯片单元中的非易失性字段以及Linux系统和配套管理软件实现,其特征在于在Linux系统的内核层设置与非易失性字段配套的锁写保护驱动接口电路,CPU借助信号采集单元采集系统运行状态后,向锁写保护驱动接口发送锁或解锁控制命令,实现对闪存芯片单元中的非易失性字段的锁或解锁。2、 根据权利要求1所述的一种基于嵌入式系统的保护闪存数据安全性 和完整性的方法,其特征在于设置非易失性字段的二进制数据状态参数, 在CPU发送锁...

【专利技术属性】
技术研发人员:雷校邓永坚王志波汪澜张锡健
申请(专利权)人:深圳市共进电子有限公司
类型:发明
国别省市:94[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1