logo好方法网

一种数据恢复方法、智能终端及存储介质


技术摘要:
本发明公开了一种数据恢复方法、智能终端及存储介质,所述方法包括:选取内存芯片中末尾的一段内存空间作为文件系统的写缓存;当系统重启时,在初始化内存芯片的过程中,避开对已选取的内存芯片中末尾的一段内存空间进行初始化;初始化完成后,读取末尾的一段内存空间  全部
背景技术:
文件系统广泛应用了写缓存机制,用来提高文件系统写入文件数据的性能和延长 存储体(磁盘、Flash等)的使用寿命。写缓存机制的工作原理比较简单,申请一段内存用来 临时保存写入的文件数据,避免立即执行写入到真正的存储体的操作。文件系统会周期性 的将写缓存中的文件数据写入到真正的存储体中,这个周期通常为数十秒。 不难发现,当这个周期内多次编辑写入一个文件的数据时,文件数据并不会多次 写入存储体,只会在周期结束时间到来后才将文件数据一次性的写入存储体,从而减少了 写入数据到存储体的次数,延长了存储体的使用寿命(写入数据越频繁,寿命越短)。此外由 于文件数据写入到写缓存的速度比写入到存储体的速度快很多,所以同时也大大提高了文 件系统写入数据的性能。 但是,当写缓存中的文件数据还没有写入存储体,如果此时系统被迫重启会因为 系统重新初始化内存芯片导致丢失写缓存中的文件数据,严重时造成文件损坏不可用。 因此,现有技术还有待于改进和发展。
技术实现要素:
本发明的主要目的在于提供一种数据恢复方法、智能终端及存储介质,旨在解决 现有技术中当写缓存中的文件数据还没有写入存储体,如果此时系统被迫重启会因为系统 重新初始化内存芯片导致丢失写缓存中的文件数据,严重时造成文件损坏不可用的问题。 为实现上述目的,本发明提供一种数据恢复方法,所述数据恢复方法包括如下步 骤: 选取内存芯片中末尾的一段内存空间作为文件系统的写缓存; 当系统重启时,在初始化内存芯片的过程中,避开对已选取的内存芯片中末尾的 一段内存空间进行初始化; 初始化完成后,读取末尾的一段内存空间中的数据与存储体中的数据进行比较, 将未写入存储体的数据写入到存储体。 可选地,所述的数据恢复方法,其中,所述选取内存芯片中末尾的一段内存空间作 为文件系统的写缓存,具体包括: 通过内存地址读写内存芯片的内存空间,整个内存芯片的内存空间对应一段连续 的内存地址; 将内存芯片中末尾一段内存地址对应的内存空间预留,预留的内存空间作为文件 系统的写缓存。 可选地,所述的数据恢复方法,其中,通过选中的一段内存地址访问预留的内存空 4 CN 111581018 A 说 明 书 2/6 页 间。 可选地,所述的数据恢复方法,其中,所述当系统重启时,在初始化内存芯片的过 程中,避开对已选取的内存芯片中末尾的一段内存空间进行初始化,具体包括: 当系统重启时,开始进行初始化内存芯片; 在初始化内存芯片的过程中,避开对预留的内存空间进行初始化,使得预留的内 存空间中继续保存系统重启前的缓存文件数据。 可选地,所述的数据恢复方法,其中,每次系统重启时,均需要对内存芯片进行初 始化,并且每次均避开对预留的内存空间进行初始化;通过定制修改引导程序避开初始化 预留的内存空间。 可选地,所述的数据恢复方法,其中,所述初始化完成后,读取末尾的一段内存空 间中的数据与存储体中的数据进行比较,将未写入存储体的数据写入到存储体,具体包括: 当系统重启且完成内存芯片初始化之后,读取预留的内存空间中的缓存文件数 据; 将预留的内存空间中的缓存文件数据与存储体中的文件数据进行比较,判断预留 的内存空间中是否存在未写入存储体的缓存文件数据; 当预留的内存空间中存在未写入存储体的缓存文件数据时,将预留的内存空间中 未写入存储体的缓存文件数据写入到存储体中,以恢复存储体中的文件数据。 可选地,所述的数据恢复方法,其中,所述判断预留的内存空间中是否存在未写入 存储体的缓存文件数据,之后还包括: 当预留的内存空间中不存在未写入存储体的缓存文件数据时,则不作操作。 可选地,所述的数据恢复方法,其中,末尾的一段内存空间的大小为128兆字节。 此外,为实现上述目的,本发明还提供一种智能终端,其中,所述智能终端包括:存 储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据恢复程序,所述数据 恢复程序被所述处理器执行时实现如上所述的数据恢复方法的步骤。 此外,为实现上述目的,本发明还提供一种存储介质,其中,所述存储介质存储有 数据恢复程序,所述数据恢复程序被处理器执行时实现如上所述的数据恢复方法的步骤。 本发明通过选取内存芯片中末尾的一段内存空间作为文件系统的写缓存;当系统 重启时,在初始化内存芯片的过程中,避开对已选取的内存芯片中末尾的一段内存空间进 行初始化;初始化完成后,读取末尾的一段内存空间中的数据与存储体中的数据进行比较, 将未写入存储体的数据写入到存储体。本发明将内存芯片末尾的一段内存空间用作文件系 统的写缓存,当系统重新启动时不初始化内存芯片末尾的这一段内存空间,使该段内存空 间依然保存着系统重启前的缓存文件数据,系统重新启动之后读取该段内存空间中的数 据,将未写入存储体的缓存文件数据写入存储体,达到系统重启后恢复写缓存中的文件数 据和修复受损文件的目的。 附图说明 图1是本发明数据恢复方法的较佳实施例的流程图; 图2是本发明数据恢复方法的较佳实施例中步骤S10的流程图; 图3是本发明数据恢复方法的较佳实施例中步骤S20的流程图; 5 CN 111581018 A 说 明 书 3/6 页 图4是本发明数据恢复方法的较佳实施例中步骤S30的流程图; 图5为本发明智能终端的较佳实施例的运行环境示意图。
下载此资料需消耗2积分,
分享到:
收藏