一种利用ecrom恢复biosrom的方法及装置制造方法

文档序号:6525582阅读:389来源:国知局
一种利用ec rom恢复bios rom的方法及装置制造方法
【专利摘要】本发明公开了一种利用EC?ROM恢复BIOS?ROM的方法及装置,所述方法包括:在EC?ROM中预先保存用于对BIOS?ROM执行恢复操作所需的SEC模块和PEI模块;在计算机启动时,若监测到计算机无法正常启动,则向所述EC?ROM发送用于恢复BIOS?ROM的指令;所述EC?ROM收到所述指令后,将其存储的所述SEC模块和PEI模块复制到BIOS?ROM中;所述EC?ROM完成所述复制后,BIOS?ROM利用所复制的SEC模块和PEI模块执行所述BIOS?ROM的恢复操作,由此实现BIOS?ROM的安全恢复。本发明能够实现BIOS?ROM的安全恢复。
【专利说明】—种利用EC ROM恢复BIOS ROM的方法及装置
【技术领域】
[0001]本发明涉及BIOS ROM恢复技术,特别涉及一种利用EC ROM恢复BIOS ROM的方法
及相关的装置。
【背景技术】
[0002]目前的 UEFI (Unified Extensible Firmware Interface,通用扩展固件接口)BIOS ROM 由四部份构成:SEC (Security Phase, UEFI BIOS 的启动阶段)模块、PEI(Pre-EFI Initialization、UEFI BIOS 运行中的第二阶段)模块、DXE (Driver ExecutionEnvironment, UEFI BIOS 运行中的第三阶段)模块和 BDS (Boot Device Selection,启动设备选择阶段)模块。图1是现有技术提供的BIOS ROM构造图,如图1所示,其中,BIOS ROM的Boot Block部份保存有所述SEC模块和PEI模块,BIOS ROM的剩余部分保存有DXE模块和BDS模块。所述SEC模块用于计算机最早的启动阶段,此段时间很短,代码大约是上千行左右;所述PEI阶段是UEFI BIOS运行中的第二阶段,即预可扩展固件接口初始化阶段,该阶段CPU工作在保护模式32位状态,启动并初始化内存控制器,完成一些最基本的硬件芯片初始化工作。DXE阶段是UEFI BIOS运行中的第三阶段,即驱动执行环境阶段,该阶段CPU工作模式转为64位保护模式中的长模式,BIOS装载所有的硬件芯片驱动程序,完成所有硬件的初始化动作;BDS阶段指启动设备选择阶段,当UEFI BIOS运行到此阶段时,意味着将根据BIOS预先设定好的启动顺序,开始启动操作系统。
[0003]Boot Block是BIOS中一段特定的区域,包含有用于引导的最小指令集,正常的BIOS升级操作不能消除这段信息。当BIOS ROM资料被破坏时,BIOS会启动到恢复模式。恢复模式的原理是:提前将SEC模块及PEI模块放到BIOS ROM的Boot Block部份,且这部份代码必须确保完好无误,没有受到任何破坏。在当BIOS ROM中除了 Boot Block以外部分被破坏时,BIOS会顺序执行在Boot Block部分中的SEC模块和PEI模块,完成内存的初始化,然后从U盘或光盘等外部存储设备上寻找BIOS DXE模块,查找DXE模块成功后,即可执行上面的DXE模块及BDS模块(所述DXE模块及BDS模块实际上放在一个文件当中,找到DXE模块,也就找到了 BDS模块),最终启动到UEFI SHELL环境下,再用BIOS烧录软件烧入完整的BIOS ROM,也就是说,将SEC模块、PEI模块、DXE模块和BDS模块的程序烧入BIOSROM中,以此来实现B10SR0M的安全恢复。
[0004]由此可见,要实现上述恢复机制,所述SEC模块及PEI模块必须放在BIOS ROM的Boot Block部份,所述Boot Block部份不能受到任何形式的破坏,一旦BootBlock部份受到破坏,BIOS再也无法完成SEC模块及PEI模块,自然也无法完成BIOS ROM的安全恢复。

【发明内容】

[0005]本发明的目的在于提供一种利用EC ROM恢复BIOS ROM的方法及装置,能更好地解决BIOS ROM的安全恢复问题。
[0006]根据本发明的一个方面,提供了一种利用EC ROM恢复BIOS ROM的方法,包括:[0007]在EC ROM中预先保存用于对BIOS ROM执行恢复操作所需的SEC模块和PEI模块;
[0008]在计算机启动时,若监测到计算机无法正常启动,则向所述EC ROM发送用于恢复BIOS ROM的指令;
[0009]所述EC ROM收到所述指令后,将其存储的所述SEC模块和PEI模块复制到BIOSROM 中;
[0010]所述EC ROM完成所述复制后,BIOS ROM利用所复制的SEC模块和PEI模块执行所述BIOS ROM的恢复操作,由此实现BIOS ROM的安全恢复;
[0011]其中,EC ROM是嵌入式控制器存储器,BIOS ROM是基本输入输出系统存储器,SEC是UEFI BIOS的启动阶段,PEI是UEFI BIOS运行中的第二阶段。
[0012]优选地,通过按下预定组合热键或跳线,向所述EC ROM发送用于恢复B10SR0M的指令。
[0013]优选地,还包括:
[0014]预先设置连接所述BIOS ROM、EC ROM和南桥的切换开关,使所述BIOS ROM连接南桥或EC ROM。
[0015]优选地,所述EC ROM收到所述指令后,通过控制切换开关与所述BIOS ROM连接,从而将其存储的所述SEC模块和PEI模块复制到BIOS ROM中Boot Block部分。
[0016]优选地,所述EC ROM完成所述复制后,通过控制切换开关与所述BIOS ROM断开。
[0017]优选地,所述EC ROM与所述BIOS ROM断开后,执行所述BIOS ROM的恢复操作,所述BIOS ROM的恢复操作的步骤包括:
[0018]BIOS顺序执行所复制的SEC模块和PEI模块,完成计算机内存初始化;
[0019]计算机内存初始化完成后,所述BIOS读取外部存储设备,得到DXE模块和BDS模块;
[0020]BIOS顺序执行所述DXE模块和BDS模块,将计算机启动到UEFI SHELL环境下;
[0021]其中,DXE是UEFI BIOS运行中的第三阶段,BDS是启动设备选择阶段。
[0022]优选地,所述的实现BIOS ROM的安全恢复的步骤包括:
[0023]将SEC模块、PEI模块、DXE模块和BDS模块烧入BIOS ROM中。
[0024]根据本发明的另一方面,提供了一种利用EC ROM恢复BIOS ROM的装置,包括:
[0025]EC ROM,用于预先保存用于对BIOS ROM执行恢复操作所需的SEC模块和PEI模块,并在计算机启动时,若监测到计算机无法正常启动,则接收用于恢复BIOS ROM的指令,在收到所述指令后,将其存储的所述SEC模块和PEI模块复制到BIOS ROM中;
[0026]BIOS ROM,用于在所述EC ROM完成所述复制后,利用所复制的SEC模块和PEI模块执行所述BIOS ROM的恢复操作,由此实现BIOS ROM的安全恢复;
[0027]其中,EC ROM是嵌入式控制器存储器,BIOS ROM是基本输入输出系统存储器,SEC是UEFI BIOS的启动阶段,PEI是UEFI BIOS运行中的第二阶段。
[0028]优选地,通过按下预定组合热键或跳线,使所述EC ROM接收到所述用于恢复BIOSROM的指令。
[0029]优选地,还包括:
[0030]预先设置连接所述BIOS ROM、EC ROM和南桥的切换开关,用于使所述B10SR0M连接南桥或EC ROM。
[0031]与现有技术相比较,本发明的有益效果在于:
[0032]本发明在BIOS ROM的Boot Block部分受到破坏时,能够利用EC ROM实现BIOSROM的安全恢复。
【专利附图】

【附图说明】
[0033]图1是现有技术提供的BIOS ROM构造图;
[0034]图2是本发明实施例提供的利用EC ROM恢复BIOSROM的方法原理框图;
[0035]图3是本发明实施例提供的利用EC ROM恢复BIOSROM的原理图。
【具体实施方式】
[0036]以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
[0037]本发明将BIOS ROM中的SEC模块及PEI模块放置在EC ROM中,当BIOS ROM受到破坏,需要进行恢复操作时,EC ROM取出备份在EC ROM中的SEC模块及PEI模块,将之恢复到BIOS ROM中的Boot Block区域。然后,再跳转到BIOS ROM, BIOS即可进行正常的恢复BIOS操作步骤。
[0038]BIOS会顺序执行在Boot Block部份中的SEC模块和PEI模块,完成内存的初始化,然后从U盘或光盘等 外部存储设备上寻找BIOS DXE模块,查找DXE模块成功后,即可执行上面的DXE及BDS模块,最终启动到UEFI SHELL环境下,再用BIOS烧录软件烧入完整的BIOS ROM,以此来实现BIOS ROM的安全恢复。
[0039]图2是本发明实施例提供的利用EC ROM恢复BIOS ROM的方法原理框图,如图2所示,步骤包括:
[0040]步骤S201、在EC ROM中预先保存用于对BIOS ROM执行恢复操作所需的SEC模块和PEI模块。
[0041]步骤S202、在计算机启动时,若监测到计算机无法正常启动,则向所述EC ROM发送用于恢复BIOS ROM的指令。
[0042]具体地说,通过按下预定组合热键或跳线,向所述EC ROM发送用于恢复BIOS ROM的指令。
[0043]步骤S203、所述EC ROM收到所述指令后,将其存储的所述SEC模块和PEI模块复制到BIOS ROM中。
[0044]步骤S204、所述EC ROM完成所述复制后,BIOS ROM利用所复制的SEC模块和PEI模块执行所述BIOS ROM的恢复操作,由此实现BIOS ROM的安全恢复。
[0045]此外,本发明还提供了一种利用EC ROM恢复BIOS ROM的装置,包括EC ROM和BIOSROM,其中:
[0046]所述EC ROM,用于预先保存用于对BIOS ROM执行恢复操作所需的SEC模块和PEI模块,并在计算机启动时,若监测到计算机无法正常启动,则接收用于恢复BIOS ROM的指令,在收到所述指令后,将其存储的所述SEC模块和PEI模块复制到BIOS ROM中。其中,通过按下预定组合热键或跳线,使所述EC ROM接收到所述用于恢复BIOS ROM的指令。[0047]所述BIOS ROM,用于在所述EC ROM完成所述复制后,利用所复制的SEC模块和PEI模块执行所述BIOS ROM的恢复操作,由此实现BIOS ROM的安全恢复。
[0048]这里可以预先设置连接所述BIOS ROM、EC ROM和南桥的切换开关,使所述BIOSROM连接南桥或EC R0M,例如,EC ROM可以利用电平信号控制切换开关,切换开关收到高电平时使BIOS ROM连接南桥,收到低电平信号时使BIOS ROM连接EC ROM,等等。具体地说,所述EC ROM收到所述用于恢复BIOS ROM的指令后,所述EC ROM通过控制切换开关与所述BIOS ROM连接,从而将其存储的所述SEC模块和PEI模块复制到BIOS ROM中Boot Block部分,此时,BIOS ROM与南桥之间的连接是断开的。所述EC ROM完成所述复制后,所述ECROM通过控制切换开关与所述BIOS ROM断开。所述EC ROM与所述BIOS ROM断开后,BIOS顺序执行所复制的SEC模块和PEI模块,实现计算机内存初始化,计算机内存初始化完成后,BIOS通过读取U盘或光盘等外部存储设备,得到DXE模块和BDS模块,BIOS顺序执行所述DXE模块和BDS模块,将计算机启动到UEFI SHELL环境下,从而利用BIOS烧录软件将SEC模块、PEI模块、DXE模块和BDS模块烧入BIOS ROM中,实现BIOS ROM的安全恢复。
[0049]其中,对于现代计算机加构体系,南桥的主要功能是用来实现周边外围设备的输入输出。BIOS芯片就连接在南桥蕊片后面。
[0050]图3是本发明实施例提供的利用EC ROM恢复BIOS ROM的原理图,如图3所示。
[0051]3.1、当BIOS ROM正常启动时
[0052]3.1.UEC ROM利用EC ROM控制开关线-A线对切换开关进行控制。
[0053]EC ROM包含有EC控制程序,EC ROM中的EC控制程序利用EC ROM控制开关线-A线对切换开关进行控制,使切换开关关闭其与EC ROM之间的LPC总线-C线,打开其与南桥之间的SPI或LPC总线-B线,此时,BIOS ROM相当于直接连接在南桥的SPI或LPC总线-B线上。
[0054]3.1.2,EC ROM按顺序完成电源启动顺序等任务后,直接跳转到BIOS ROM上,控制权交由BIOS完成系统启动任务。
[0055]3.2、当BIOS ROM受到破坏,不能正常启动时:
[0056]3.2.1、用户按下预定组合热键,或者跳线等特定手段,通知EC ROM知晓系统BIOSROM已被破坏,需执行下列步骤,从EC ROM中恢复BIOS中的SEC模块及PEI模块。
[0057]3.2.2,EC ROM利用EC ROM控制开关线-A线对切换开关进行控制,使切换开关关闭SPI或LPC总线-B线,打开LPC总线-C线,此时,BIOS ROM相当于直接连接在EC ROM后部。
[0058]3.2.3,EC ROM将其存储的SEC模块及PEI模块复制到BIOS ROM中的Boot Block部份。
[0059]3.2.4,EC ROM复制SEC模块及PEI模块完成后,再利用EC ROM控制开关线-A线对切换开关进行控制,切换开关关闭LPC总线-C线,打开SPI或LPC总线-B线。BIOS ROM相当于直接连接在南桥的SPI或LPC总线-B线上。
[0060]3.2.5、BIOS顺序执行SEC模块及PEI模块,完成内存的初始化。
[0061]3.2.6、BIOS会顺序执行在Boot Block部份中的SEC模块和PEI模块,完成内存的初始化,然后从U盘或光盘等外部存储设备上寻找BIOS DXE模块。
[0062]3.2.7、查找DXE模块成功后,即可执行上面的DXE模块及BDS模块,最终启动到UEFI SHELL 环境下。
[0063]3.2.8、利用BIOS烧录软件烧入完整的BIOS ROM,即将SEC、PE1、DXE和BDS四个模块的程序烧入BIOS ROM中,从而实现BIOS ROM的安全恢复。
[0064]综上所述,本发明通过能够实现BIOS ROM的安全恢复。
[0065]尽管上文对本发明进行了详细说明,但是本发明不限于此,本【技术领域】技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。
【权利要求】
1.一种利用EC ROM恢复BIOS ROM的方法,其特征在于,包括: 在EC ROM中预先保存用于对BIOS ROM执行恢复操作所需的SEC模块和PEI模块; 在计算机启动时,若监测到计算机无法正常启动,则向所述EC ROM发送用于恢复BIOSROM的指令; 所述EC ROM收到所述指令后,将其存储的所述SEC模块和PEI模块复制到BIOS ROM中; 所述EC ROM完成所述复制后,BIOS ROM利用所复制的SEC模块和PEI模块执行所述BIOS ROM的恢复操作,由此实现BIOS ROM的安全恢复; 其中,EC ROM是嵌入式控制器存储器,BIOS ROM是基本输入输出系统存储器,SEC是UEFI BIOS的启动阶段,PEI是UEFI BIOS运行中的第二阶段。
2.根据权利要求1所述的方法,其特征在于,通过按下预定组合热键或跳线,向所述ECROM发送用于恢复BIOS ROM的指令。
3.根据权利要求1或2所述的方法,其特征在于,还包括: 预先设置连接所述BIOS ROM,EC ROM和南桥的切换开关,使所述BIOS ROM连接南桥或EC ROM。
4.根据权利要求3所述的方法,其特征在于,所述ECROM收到所述指令后,通过控制切换开关与所述BIOS ROM连接,从而将其存储的所述SEC模块和PEI模块复制到BIOS ROM中 Boot Block 部分。`
5.根据权利要求4所述的方法,其特征在于,所述ECROM完成所述复制后,通过控制切换开关与所述BIOS ROM断开。
6.根据权利要求4或5任意一项所述的方法,其特征在于,所述ECROM与所述BIOSROM断开后,执行所述BIOS ROM的恢复操作,所述BIOS ROM的恢复操作的步骤包括: BIOS顺序执行所复制的SEC模块和PEI模块,完成计算机内存初始化; 计算机内存初始化完成后,所述BIOS读取外部存储设备,得到DXE模块和BDS模块; BIOS顺序执行所述DXE模块和BDS模块,将计算机启动到UEFI SHELL环境下; 其中,DXE是UEFI BIOS运行中的第三阶段,BDS是启动设备选择阶段。
7.根据权利要求6所述的方法,其特征在于,所述的实现BIOSROM的安全恢复的步骤包括: 将SEC模块、PEI模块、DXE模块和BDS模块烧入BIOS ROM中。
8.一种利用EC ROM恢复BIOS ROM的装置,其特征在于,包括: EC R0M,用于预先保存用于对BIOS ROM执行恢复操作所需的SEC模块和PEI模块,并在计算机启动时,若监测到计算机无法正常启动,则接收用于恢复B10SR0M的指令,在收到所述指令后,将其存储的所述SEC模块和PEI模块复制到B10SR0M中; BIOS ROM,用于在所述EC ROM完成所述复制后,利用所复制的SEC模块和PEI模块执行所述BIOS ROM的恢复操作,由此实现BIOS ROM的安全恢复; 其中,EC ROM是嵌入式控制器存储器,BIOS ROM是基本输入输出系统存储器,SEC是UEFI BIOS的启动阶段,PEI是UEFI BIOS运行中的第二阶段。
9.根据权利要求8所述的装置,其特征在于,通过按下预定组合热键或跳线,使所述ECROM接收到所述用于恢复BIOS ROM的指令。
10.根据权利要求8或9所述的装置,其特征在于,还包括: 预先设置连接所述BIOS ROM、EC ROM和南桥的切换开关,用于使所述B10SR0M连接南桥或EC ROM。
【文档编号】G06F11/07GK103729220SQ201310726418
【公开日】2014年4月16日 申请日期:2013年12月25日 优先权日:2013年12月25日
【发明者】郑红文 申请人:合肥联宝信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1