可扩展固件接口下硬盘测试方法

文档序号:6564464阅读:209来源:国知局
专利名称:可扩展固件接口下硬盘测试方法
技术领域
本发明涉及一种硬盘测试方法,特别涉及一种可扩展固件接口 (EFI) 系统运行环境下的硬盘测试方法。
背景技术
硬盘装置为计算机的主要部件,是计算机储存系统中最为重要的装置, 不仅具有记录数据信息的作用,其性能还对整个计算机系统的性能有直接的 影响。硬盘作为储存设备,其是否存在损坏区域就是显示其性能的重要指标。 因此,能否全面测试整个磁盘的储存空间则为目前技术的一个亟待解决的问 题。
在可扩展固件接口 (EFI, Extensible Firmware Interface)外壳的测试环 境下,对硬盘的储存区域进行读写时,当读到某些可扩展固件接口系统占据 的扇区时,如果安装普通文件的处理方式进行直接读写,则由于可扩展固件 接口没有对这些系统文件进行保护,因此结果会导致整个系统的崩溃。因此 需要对系统文件区域进行保护,如此则需要因为系统本身原因而在硬盘上储 存相关的系统文件,储存的系统文件会占据一定硬盘空间,因此在测试这些 系统文件及其它文件占据的储存空间时,很难实现储存空间的全面测试。

发明内容
为了解决上述公知技术中的问题与缺陷,本发明的目的在于提供一种可 扩展固件接口下硬盘测试方法,以能够既保护计算机系统的安全,又能实现 整个硬盘的全面测试。
为此,本发明所提供的可扩展固件接口下硬盘测试方法,其应用于可扩 展固件界面环境中,并包含以下步骤备份一硬盘的可扩展固件接口 (EFI)
的系统文件至一存储器中一存放区域中;映像系统文件的备份区域为一具体
硬盘;于此存储器中建立一非系统文件的存放区域,用于存放硬盘测试的文
件区域中的非系统文件;获取系统文件与硬盘测试的非系统文件的信息,分 别生成一系统文件链表及一非系统文件链表;执行硬盘测试时,备份硬盘测 试的非系统文件至非系统文件存放区域中;以及访问系统文件链表及/或非系 统文件链表,以直接自存储器的存放区域中加载该系统文件及/或硬盘测试的非系统文件。
所述的可扩展固件接口下硬盘测试方法中,所述备份该可扩展固件接口 系统文件的步骤还包含如下步骤获取该系统文件的大小及储存路径;计算 该系统文件的占据空间大小,以分配相应的存储器存放区域;以及存放该系 统文件至该存储器的存放区域中。
所述的可扩展固件接口下硬盘测试方法中,当重新加载新的硬盘测试的非系统文件至该存储器的非系统文件存放区域中时,包含依照该新的非系统 文件的信息更新该非系统文件链表的步骤。
所述的可扩展固件接口下硬盘测试方法中,还包含依照该硬盘测试的文件区域大小扩充该非系统文件存放区域的步骤。
所述的可扩展固件接口下硬盘测试方法中,还包含在该硬盘测试完毕后恢复该存储器中该备份系统文件及/或该备份非系统文件至该硬盘中的步骤。
所述的可扩展固件接口下硬盘测试方法中,还包含在该非系统文件存放区域中预先设置一预留存储器的步骤。
本发明通过备份可扩展固件接口系统运行时所需的系统配置文件及测 试硬盘区块对应的非系统文件至存储器区域中,以及建立系统文件与非系统 文件的链表,测试时则能够直接从存储器中加载对应测试文件,避免对硬盘 的读写操作。因此,本发明不仅可加快测试的速度,还保护系统不受到破坏, 同时又能够实现硬盘的全面测试。


图1为本发明的可扩展固件接口下硬盘测试方法中硬盘储存示意图;以及
图2、图3及图4为本发明的可扩展固件接口下硬盘测试方法的方法流程图。
其中,附图标记说明如下10 存储器
12 系统文件存放区域
14 非系统文件存放区域
16 非系统文件
18 预留存储器
20 硬盘
22 系统文件
24 非系统文件
步骤102获取系统文件信息,生成系统文件链表
步骤104计算系统文件占据的空间,分配相应存储器空间,并存放系 统文件至存储器
步骤106映像存放系统文件的存储器区域为系统盘
步骤108建立非系统文件存放区域
步骤110判断硬盘是否已测试完毕?
步骤112获取非系统文件信息,生成非系统文件链表
步骤114读入部分非系统文件至非系统文件存放区域
步骤116测试硬盘上已经备份的区域
步骤118非系统文件存放区域是否有日志文件?
步骤120设定日志部分的储存存储器区域为可写
步骤122运行测试程序
步骤124是否需要读出硬盘中的文件?
步骤126硬盘中的文件已经备份于存储器中
步骤128自存储器中加载所需文件
步骤130自硬盘中加载所需文件
步骤132是否需要读写存储器中日志文件?
步骤134是否此区域为可写区域?
步骤136是否此区域己达到备份区域的边界?
步骤138是否区域已经达到系统允许最大值?
步骤140扩大备份区域
步骤142写入日志文件内容并保存步骤144是否已测试完备份的硬盘区域? 步骤146继续运行测试程序
具体实施例方式
有关本发明的特征与实例,在此配合附图作最佳实施例详细说明如下。
请参考图1及图2至图4,其中图1为本发明的可扩展固件接口下硬盘 测试方法中硬盘储存示意图,图2至图4为本发明的可扩展固件接口下硬盘 测试方法的方法流程图。
请参考图2,首先获取可扩展固件接口系统的系统文件,以生成系统文 件链表(步骤102)。系统文件的定义为,在可扩展固件接口系统运行时, 需要建立可扩展固件接口程序能够运行的环境,包含访问各种设备的驱动程 序,系统运行时的配置文件,这些文件为系统运行时所必需的,不能够有所 损坏,否则整个系统将会崩溃。如背景技术所提到,在可扩展固件接口的测 试环境下,由于没有存在对系统文件的保护,若直接读写硬盘中系统文件则 会导致系统的崩溃。因此,这里本发明对这些系统文件进行保护,将系统文 件备份至一存储器中。在备份系统文件时,采取文件备份而非分区备份,以 减少备份空间的浪费,并减小文件恢复时的难度。
通过扫描硬盘获取硬盘的相关信息,进而获知硬盘上具有的系统文件类 型,及占用区域。依照这些数据采集文件大小及储存路径,形成一文件链表 来储存各自的信息,并以此计算储存文件所需的存储器空间。然后,分配相 应存储器空间,以存放系统文件至其中(步骤104)。请参考图1所示的实 施例,存储器10中具有一系统文件存放区域12,在硬盘20中的系统文件 22的内容全部备份于存储器的系统文件存放区域12之后,映像系统文件的 存储器存放区域12为具体的硬盘(步骤106)。待系统测试完毕后,可以将 此部分内容再恢复至硬盘中。
对于硬盘测试的非系统文件,则于存储器中建立一非系统文件存放区域 14 (步骤108),用以存放备份至存储器中的测试非系统文件16。非系统文 件24为除去可扩展固件接口系统运行的系统文件之外的其余文件,保护- 些系统日志、辅助工具及诊断程序等。非系统文件分散存放于硬盘的其它分 区中,其占据较大空间,若同时存放系统文件22与非系统文件24至存储器1O中是非常困难的。因此划分出一部分存储器空间,即非系统文件存放区域
14作为非系统文件24的储存空间,仅当需要测试这些文件时才备份至其中。 此外,为了保证以后信息的储存,还可以在非系统文件存放区域14中预先 设置一部分预留存储器18,以防止以后的访问出现空间不足的问题。
在完成上述系统文件及非系统文件的备份步骤之后,则可以执行硬盘的 测试。测试时判断硬盘是否己经测试完毕(步骤110),若是则结束,否则, 获取硬盘测试区块的非系统文件信息,并生成非系统文件链表(步骤112)。 将此部分非系统文件读入至非系统文件存放区域中(步骤114),并测试硬 盘上已经备份至存储器中区域(步骤116)。在测试时,可进一步判断非系 统文件存放区域中是否有日志文件(步骤118)。若存在,则设定日志部分 的储存存储器区域为可写(步骤120);否则,直接运行测试程序(步骤122)。
然后,判断是否需要读出硬盘中的文件(步骤124),若需要则进一步 判断是否硬盘中需测试的文件已经备份于存储器中(步骤126);否则,前 进至步骤132。若文件已备份于存储器中,则自存储器中加载所需的文件(步 骤128);否则,自硬盘中加载所需文件(步骤130)。在加载存储器的文 件时,通过对储存在存储器中的系统文件及非文件系统进行访问时形成的动 态链表,可记录当前的储存情况。当访问某个文件时,首先访问此系统文件 链表或非系统文件链表,若文件记录于上述链表中,则表明此文件储存于存 储器中。因此,访问时不需从硬盘中读取,而是直接自存储器中加载此文件, 进而加快了测试的速度。
此外,为了防止对重要文件执行了错误操作,需要对这些文件进行保护, 进而将文件的备份区域设定为只读属性。在执行备份内容至存储器中的操作 时,为了保护测试内容,首先判断设定属性是否写保护。若没有相应限制才 可以对此区域进行写操作。同时,为了防止操作区域发生越界,导致硬盘在 测试完成时不能完整的恢复,要判断操作区域是否越界,并对超出界限的存 储器空间进行扩充。例如,当对日志文件进行储存时,判断是否需要读写存 储器中的日志文件(步骤132),若不需要,则前进至步骤144;否则,接 着判断日志文件的储存存储器区域是否为可写区域(步骤134)。若不可写, 则系统报错退出而结束;如果可写,日志文件会随着写入内容的增加而Ji加,因此当内容增加时需要进一步判断日志储存区域是否已达到备份区i的边界(步骤136)。若是,则接着判断非系统文件的备份区域是否超出系统存 储器允许的最大值(步骤138),若没有超出存储器的最大值,则对非系统 文件的备份区域进行扩充(步骤140)。存储器扩充可采用渐进的方式,例 如,为了考虑既不浪费系统存储器资源,又能够很好地扩充备份区域,可设 定每次扩充所占有的存储器为1M字节。换言之,在这种情况下,当非系统 文件的备份区域容量增加1M字节后,再判断备份区域是否超过系统存储器 的最大值。若超出,则报告错误;否则,将非系统文件备份区域扩充1M字
在扩充备份区域后,写入日志文件内容并保存(步骤142)。测试过程 中需判断备份的硬盘区域是否测试完毕(步骤144),若硬盘测试完毕,则 结束。若测试没有结束,则继续运行测试程序(步骤146),并重复步骤122 至步骤144。同时,在完成硬盘某区块区域的测试后,需要重新加载新的测 试文件至存储器的非系统文件备份区域中,并将存储器中备份的文件还原至 硬盘中。并且在加载新文件的同时,依照新的文件信息更新非系统文件链表 来记录这些文件信息。需要指出的是,上述步骤中日志文件仅为非系统文件 的实施例,本发明并不局限于上述实施例,包含日志文件的各种非系统文件 均执行上述相应步骤,进行文件保护及存储器扩充。
虽然本发明以前述的较佳实施方式披露如上,然其并非用以限定本发 明。本领域的技术人员应当意识到在不脱离本发明所附的权利要求书所揭示 的本发明的范围和精神的情况下,所作的变动与修饰,均属本发明的保护范 围之内。关于本发明所界定的保护范围请参考所附的权利要求书。
权利要求
1.一种可扩展固件接口下硬盘测试方法,其应用于可扩展固件界面环境中,该方法包含以下步骤备份一硬盘的可扩展固件接口的系统文件至一存储器中的一存放区域中;映像该系统文件的备份区域为一具体硬盘;于该存储器中建立一非系统文件的存放区域,用于存放该硬盘测试的文件区域中的非系统文件;获取该系统文件与该硬盘测试的非系统文件的信息,分别生成一系统文件链表及一非系统文件链表;执行该硬盘测试时,备份该硬盘测试的非系统文件至该非系统文件的存放区域中;以及访问该系统文件链表及/或该非系统文件链表,以直接自该存储器的存放区域中加载该系统文件及/或该硬盘测试的非系统文件。
2. 如权利要求1所述的可扩展固件接口下硬盘测试方法,其中所述备份 该可扩展固件接口系统文件的步骤还包含如下步骤获取该系统文件的大小及储存路径;计算该系统文件的占据空间大小,以分配相应的存储器存放区域;以及 存放该系统文件至该存储器的存放区域中。
3. 如权利要求1所述的可扩展固件接口下硬盘测试方法,其中当重新加 载新的硬盘测试的非系统文件至该存储器的非系统文件存放区域中时,包含 依照该新的非系统文件的信息更新该非系统文件链表的步骤。
4. 如权利要求1所述的可扩展固件接口下硬盘测试方法,其中还包含依 照该硬盘测试的文件区域大小扩充该非系统文件的存放区域的步骤。
5. 如权利要求1所述的可扩展固件接口下硬盘测试方法,其中还包含在 该硬盘测试完毕后恢复该存储器中该备份系统文件及/或该备份非系统文件 至该硬盘中的步骤。
6. 如权利要求1所述的可扩展固件接口下硬盘测试方法,其中还包含在 该非系统文件的存放区域中预先设置一预留存储器的步骤。
全文摘要
一种可扩展固件接口(EFI)下硬盘测试方法,包含以下步骤备份硬盘的可扩展固件接口的系统文件至存储器中的存放区域中;映像系统文件的备份区域为一具体硬盘;于存储器中建立一非系统文件的存放区域,用于存放硬盘测试的文件区域中的非系统文件;获取系统文件与硬盘测试的非系统文件的信息,分别生成一系统文件链表及一非系统文件链表;执行硬盘测试时,备份硬盘测试的非系统文件至非系统文件的存放区域中;以及访问系统文件链表及/或非系统文件链表,以直接自存储器的存放区域中加载系统文件及/或硬盘测试的非系统文件。本发明不仅可加快测试的速度,还保护系统不受到破坏,同时又能够实现硬盘的全面测试。
文档编号G06F11/22GK101201778SQ20061016880
公开日2008年6月18日 申请日期2006年12月14日 优先权日2006年12月14日
发明者刘文涵, 志 王, 陈玄同 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1