可选内存数据的获取方法及电子设备、计算机存储介质与流程

文档序号:15384748发布日期:2018-09-08 00:26阅读:195来源:国知局
本发明涉及基本输入输出系统(bios,basicinputoutputsystem)数据获取技术,尤其涉及一种可选内存数据的获取方法及电子设备、计算机存储介质。
背景技术
:随着电子设备的飞速发展,bios所支撑的启动项越来越多,导致基本输入输出系统内存(biosrom)大小也逐年增加,如曾经的biosrom大小为512k,目前达到了16m;随之而来的就是支持bios的芯片的成本不断增加。目前,有些讨论方案将8m的bios芯片换成16m的bios芯片,以解决芯片容量不足的问题,这样虽然增加了biosrom的容量,但是会导致产品成本的增加。技术实现要素:为解决上述技术问题,本发明实施例提供了一种可选内存数据的获取方法及电子设备、计算机存储介质。本发明实施例提供的可选内存数据的获取方法,包括:运行bios时,从biosrom之外的第一存储区域中读取目标oprom数据;基于所述目标oprom数据,对与所述目标oprom数据对应的目标装置进行初始化。本发明实施例中,所述方法还包括:如果从所述第一存储区域中读取目标oprom数据失败,则从网络下载所述目标oprom数据,并将所述目标oprom数据存储在所述第一存储区域。本发明实施例中,所述如果从所述第一存储区域中读取目标oprom数据失败,则从网络下载所述目标oprom数据,包括:如果从所述第一存储区域中读取目标oprom数据失败,则bios记录所述目标oprom数据对应的第一标识,并将所述第一标识发送给pm驱动器,以触发所述pm驱动器基于所述第一标识从网络下载所述目标oprom数据。本发明实施例中,所述方法还包括:将所述第一标识发送给pm驱动器后,继续运行bios并进入操作系统;所述pm驱动器基于所述第一标识从网络下载所述目标oprom数据,包括:在进入操作系统后,所述pm驱动器基于所述第一标识从网络下载所述目标oprom数据。本发明实施例中,所述方法还包括:将所述目标oprom数据存储在所述第一存储区域后,重新运行bios。本发明实施例中,所述第一存储区域位于硬盘的esp分区。本发明实施例提供的电子设备,包括:处理器和存储器,其中,所述存储器至少具有用于存储目标oprom数据的第一存储区域、以及用于存储bios的biosrom;所述处理器运行所述bios时,执行如下操作:从biosrom之外的第一存储区域中读取目标oprom数据;基于所述目标oprom数据,对与所述目标oprom数据对应的目标装置进行初始化。本发明实施例中,所述处理器运行所述bios时,还执行如下操作:如果从所述第一存储区域中读取目标oprom数据失败,则从网络下载所述目标oprom数据,并将所述目标oprom数据存储在所述第一存储区域。本发明实施例中,所述存储器还具有用于存储pm驱动器的第二存储区域,如果从所述第一存储区域中读取目标oprom数据失败,则bios记录所述目标oprom数据对应的第一标识,并将所述第一标识发送给pm驱动器;所述处理器运行所述pm驱动器时,还执行如下操作:基于所述第一标识从网络下载所述目标oprom数据。本发明实施例提供的计算机存储介质,其上存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述的可选内存数据的获取方法。本发明实施例的技术方案中,运行bios时,从biosrom之外的第一存储区域中读取目标oprom数据;基于所述目标oprom数据,对与所述目标oprom数据对应的目标装置进行初始化。采用本发明实施例的技术方案,oprom数据存储在了位于biosrom之外的第一存储区域,从而为biosrom节省了较大的空间,此外,利用biosrom中节省下的空间可以解决spi空间不足的问题。附图说明图1为本发明实施例的可选内存数据的获取方法的流程示意图一;图2为本发明实施例的可选内存数据的获取方法的流程示意图二;图3为本发明实施例的可选内存数据的获取方法的流程示意图三;图4为本发明实施例的电子设备的结构组成示意图。具体实施方式为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。biosrom容量变大的原因是biosrom中包入了太多的oprom,而这些oprom的容量每年都在增大;一个例子中,biosrom需要包入的rom文件如表1所示:rom文件名称容量在bios中是否是可选的gop63kmust(vgainitialize)pxe303kmust(lanpxeboot)raid205kmust(satacontroller)computrace54kbytesoptional(很少被使用)fingerprint539kbytesoptional(很少被使用)lenovoin-romdiagnostic2942kbytesoptional(很少被使用)………………表1从表格中可以看出oprom部分占据了3.6mbytes的空间,如果将oprom数据安装于biosrom之外,将会为biosrom省下不少的存储空间,这就可以有效地减小芯片中biosrom的存储尺寸。图1为本发明实施例的可选内存数据的获取方法的流程示意图一,如图1所示,所述可选内存数据的获取方法包括以下步骤:步骤101:运行bios时,从biosrom之外的第一存储区域中读取目标oprom数据。本发明实施例的技术方案应用于计算机设备中,所述计算机设备例如是服务器。在计算机设备中,至少包括存储器和处理器,其中,存储器可以是rom、固态硬盘等等,处理器用于执行存储器上的程序,也即可执行指令。本发明实施例中,biosrom中存储有bios(也即bios程序),bios是计算机设备启动时加载的第一个程序,bios保存着计算机设备最重要的基本输入输出程序、开机后自检程序和系统自启动程序,它可从互补金属氧化物半导体(cmos,complementarymetaloxidesemiconductor)中读写系统设置的具体信息。bios的主要功能是为计算机设备提供最底层的、最直接的硬件设置和控制。本发明实施例中,在计算机设备上预装载(preload)系统时,将需要的oprom数据(也可简称为oprom)写入biosrom之外的第一存储区域,在一实施方式中,所述第一存储区域位于硬盘的esp分区。之后,用户打开计算机设备的电源触发计算机设备开机,bios正常运行,运行bios时,会进行post过程,具体地,计算机设备接通电源后,系统将有一个对内部各个设备进行检查的过程,这是由post程序来完成的,post程序是bios的一部分。完整的post包括:cpu、内存、扩展内存、rom、主板、cmos存储器、串并口、显示卡、软硬盘子系统及键盘测试。自检中若发现问题,系统将给出提示信息或鸣笛警告。在完成post过程后,bios将按照系统cmos设置中的启动顺序搜寻软硬盘驱动器及cdrom、网络服务器等有效的启动驱动器,读入操作系统引导记录,然后将系统控制权交给引导记录,由引导记录完成系统的启动。本发明实施例中,在运行bios时,从biosrom之外的第一存储区域中读取目标可选内存oprom数据,这里,第一存储区域中包括多个oprom数据,每个oprom数据对应一个目标装置,运行oprom数据可以实现对目标装置的初始化。因此,在对所有的目标装置初始化之前,就需要从第一存储区域中读取所述目标oprom数据。步骤102:基于所述目标oprom数据,对与所述目标oprom数据对应的目标装置进行初始化。例如:从第一存储区域中读取到3个目标oprom数据,分别为:指纹装置(fp,fingerprint)对应的oprom1、跟踪装置(computrace)对应的oprom2、诊断装置(in-romdiagnostic)对应的oprom3,其中,oprom1、oprom2和oprom3的容量尺寸可参照前述表1。在一示例中,运行bios的过程中,bios从硬盘的esp分区(即第一存储区域)读取oprom1、oprom2,读取成功后,利用oprom1对fp进行初始化,利用oprom2对computrace进行初始化;oprom3与oprom1和oprom2区别在于,需要基于用户的按键触发(如homekey)从硬盘的esp分区读取oprom3,读取成功后,利用oprom3对in-romdiagnostic初始化。此外,利用oprom1和oprom2对各自的目标装置进行初始化后,便可以继续正常的运行进入到操作系统(os)。应理解,如果计算机设备没有目标装置或者无需对目标装置进行初始化(如不需要使用目标装置的功能的情况),可以直接运行bios进入os。本发明实施例的技术方案,将oprom数据存放到biosrom之外的硬盘的esp分区,减少了biosrom的尺寸,减少了产品成本。图2为本发明实施例的可选内存数据的获取方法的流程示意图二,如图2所示,所述可选内存数据的获取方法包括以下步骤:步骤201:运行bios时,从biosrom之外的第一存储区域中读取目标oprom数据。本发明实施例的技术方案应用于计算机设备中,所述计算机设备例如是服务器。在计算机设备中,至少包括存储器和处理器,其中,存储器可以是rom、固态硬盘等等,处理器用于执行存储器上的程序,也即可执行指令。本发明实施例中,biosrom中存储有bios(也即bios程序),bios是计算机设备启动时加载的第一个程序,bios保存着计算机设备最重要的基本输入输出程序、开机后自检程序和系统自启动程序,它可从cmos中读写系统设置的具体信息。bios的主要功能是为计算机设备提供最底层的、最直接的硬件设置和控制。本发明实施例中,在计算机设备上预装载(preload)系统时,将需要的oprom数据(也可简称为oprom)写入biosrom之外的第一存储区域,在一实施方式中,所述第一存储区域位于硬盘的esp分区。之后,用户打开计算机设备的电源触发计算机设备开机,bios正常运行,运行bios时,会进行post过程,具体地,计算机设备接通电源后,系统将有一个对内部各个设备进行检查的过程,这是由post程序来完成的,post程序是bios的一部分。完整的post包括:cpu、内存、扩展内存、rom、主板、cmos存储器、串并口、显示卡、软硬盘子系统及键盘测试。自检中若发现问题,系统将给出提示信息或鸣笛警告。在完成post过程后,bios将按照系统cmos设置中的启动顺序搜寻软硬盘驱动器及cdrom、网络服务器等有效的启动驱动器,读入操作系统引导记录,然后将系统控制权交给引导记录,由引导记录完成系统的启动。本发明实施例中,在运行bios时,从biosrom之外的第一存储区域中读取目标可选内存oprom数据,这里,第一存储区域中包括多个oprom数据,每个oprom数据对应一个目标装置,运行oprom数据可以实现对目标装置的初始化。因此,在对所有的目标装置初始化之前,就需要从第一存储区域中读取所述目标oprom数据。步骤202:判断所述目标oprom数据是否读取成功,是时,执行步骤203,否时,执行步骤204。在一场景中,用户更换了硬盘,新的硬盘的esp分区中并没有存储目标oprom数据,就会导致目标oprom数据读取失败。在另一场景中,硬盘的esp分区出现了故障或者esp分区中的目标oprom数据被毁,就会导致目标oprom数据读取失败。步骤203:基于所述目标oprom数据,对与所述目标oprom数据对应的目标装置进行初始化。例如:从第一存储区域中读取到3个目标oprom数据,分别为:指纹装置(fp,fingerprint)对应的oprom1、跟踪装置(computrace)对应的oprom2、诊断装置(in-romdiagnostic)对应的oprom3,其中,oprom1、oprom2和oprom3的容量尺寸可参照前述表1。在一示例中,运行bios的过程中,bios从硬盘的esp分区(即第一存储区域)读取oprom1、oprom2,读取成功后,利用oprom1对fp进行初始化,利用oprom2对computrace进行初始化;oprom3与oprom1和oprom2区别在于,需要基于用户的按键触发(如homekey)从硬盘的esp分区读取oprom3,读取成功后,利用oprom3对in-romdiagnostic初始化。此外,利用oprom1和oprom2对各自的目标装置进行初始化后,便可以继续正常的运行进入到操作系统(os)。应理解,如果计算机设备没有目标装置或者无需对目标装置进行初始化(如不需要使用目标装置的功能的情况),可以直接运行bios进入os。本发明实施例的技术方案,将oprom数据存放到biosrom之外的硬盘的esp分区,减少了biosrom的尺寸,减少了产品成本。步骤204:如果从所述第一存储区域中读取目标oprom数据失败,则从网络下载所述目标oprom数据,并将所述目标oprom数据存储在所述第一存储区域。具体地,如果从所述第一存储区域中读取目标oprom数据失败,则bios记录所述目标oprom数据对应的第一标识,并将所述第一标识发送给pm驱动器,以触发所述pm驱动器基于所述第一标识从网络下载所述目标oprom数据。上述方案中,将所述第一标识发送给pm驱动器后,继续运行bios并进入操作系统,在进入操作系统后,所述pm驱动器基于所述第一标识从网络下载所述目标oprom数据。例如:bios从硬盘的esp分区读取oprom1失败,则记录oprom1对应的标识1,将标识1上报给pm驱动器,继续启动并进入os,pm驱动器根据标识1从网络下载oprom1,并将oprom1存储在硬盘的esp分区;oprom2和oprom3读取失败的情况同理。在一实施方式中,所述方法还包括如下步骤:步骤205:将所述目标oprom数据存储在所述第一存储区域后,重新运行bios,执行步骤201。值得注意的是,如果用户不需要使用目标装置的功能,则将所述目标oprom数据存储在所述第一存储区域后,无需重新运行bios执行步骤201。在一种特殊的情况下,在os中没有pm驱动器或者用户无法进入os的情况下,用户需使用in-romdiagnostic,则bios会弹出报警信息(warningmeseage)告知用户去下载in-romdiagnostic。本发明实施例的技术方案,当读取目标oprom数据失败时,通过bios设置第一标识来通知pm驱动器从网络下载目标oprom数据,以保证用户的正常使用,解决了esp发生故障和更换硬盘导致目标oprom数据读取失败的问题。图3为本发明实施例的可选内存数据的获取方法的流程示意图三,如图3所示,所述可选内存数据的获取方法包括以下步骤:步骤301:计算机设备开机上电。步骤302:bios从硬盘的esp分区读取oprom数据:fp对应的oprom1、computrace对应的oprom2、in-romdiagnostic对应的oprom3。步骤303:判断哪个oprom数据读取失败,oprom1读取失败执行步骤304,oprom2读取失败执行步骤305,oprom3读取失败执行步骤306。步骤304:记录oprom1对应的标识1。步骤305:记录oprom2对应的标识2。步骤306:记录oprom3对应的标识3。步骤307:bios将记录的标识上报给pm驱动器。步骤308:运行bios进入os。步骤309:pm驱动器根据标识去网络下载对应的oprom,并存储在硬盘的esp分区。步骤310:重启系统,执行步骤302。应理解,如果用户不需要相关的功能,就不需要执行步骤310。图4为本发明实施例的电子设备的结构组成示意图,如图4所示,所述电子设备包括:处理器401和存储器402,其中,所述存储器402至少具有用于存储目标oprom数据的第一存储区域、以及用于存储bios的biosrom;所述处理器401运行所述bios时,执行如下操作:从biosrom之外的第一存储区域中读取目标oprom数据;基于所述目标oprom数据,对与所述目标oprom数据对应的目标装置进行初始化。在一实施方式中,所述处理器401运行所述bios时,还执行如下操作:如果从所述第一存储区域中读取目标oprom数据失败,则从网络下载所述目标oprom数据,并将所述目标oprom数据存储在所述第一存储区域。在一实施方式中,所述存储器402还具有用于存储pm驱动器的第二存储区域,如果从所述第一存储区域中读取目标oprom数据失败,则bios记录所述目标oprom数据对应的第一标识,并将所述第一标识发送给pm驱动器;所述处理器401运行所述pm驱动器时,还执行如下操作:基于所述第一标识从网络下载所述目标oprom数据。具体地,bios将所述第一标识发送给pm驱动器后,继续运行bios并进入操作系统;在进入操作系统后,所述pm驱动器基于所述第一标识从网络下载所述目标oprom数据。在一实施方式中,pm驱动器将所述目标oprom数据存储在所述第一存储区域后,重新运行bios。在一实施方式中,所述第一存储区域位于硬盘的esp分区。本领域技术人员应当理解,图4所示的电子设备中的各器件的实现功能可参照前述可选内存数据的获取方法的相关描述而理解。本发明实施例上述资源指示装置如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,readonlymemory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。相应地,本发明实施例还提供一种计算机存储介质,其中存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现本发明实施例的上述资源指示方法。本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。在本发明所提供的几个实施例中,应该理解到,所揭露的方法和智能设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本发明各实施例中的各功能单元可以全部集成在一个第二处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1