一种BIOS的配置项设置方法、系统、设备以及介质与流程

文档序号:24121397发布日期:2021-03-02 11:40阅读:63来源:国知局
一种BIOS的配置项设置方法、系统、设备以及介质与流程
一种bios的配置项设置方法、系统、设备以及介质
技术领域
[0001]
本发明涉及bios领域,具体涉及一种bios的配置项设置方法、系统、设备以及存储介质。


背景技术:

[0002]
bios是固化在计算机内主板上rom内的程序,其主要功能是提供计算机最底层和最基础的硬件设置和控制,包括计算机基本输入输出、设置系统信息、开机自检程序、系统启动等功能。当计算机启动后bios执行系统各部分硬件的自检流程,并启动系统开机引导程序或装载操作系统到内存中。
[0003]
现有技术中通常采用bmc与bios利用ipmi命令交互的方式来实现bios配置项保留,bios主动发送配置页配置信息到bmc,bm接收到bios配置信息后将配置页信息写入bmc管理的eeprom中,其过程依赖于bmc运行状态,若bios处于复位或初始化状态,则bios配置信息无法进行更新保留。


技术实现要素:

[0004]
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种bios的配置项设置方法,包括以下步骤:
[0005]
响应于bmc上电启动,bmc获取bios配置文件并将所述bios配置文件中的配置项数据写入内部存储器中;
[0006]
通过bmc使能外部总线访问所述内部存储器的访问配置;
[0007]
响应于bios上电启动,所述bios通过所述外部总线访问所述内部存储器以获取所述配置项数据;
[0008]
所述bios根据所述配置项数据进行配置项设置。
[0009]
在一些实施例中,还包括:
[0010]
响应于bios接收到通过配置页面更新的配置项数据,将所述更新的配置项数据写入所述内部存储器,并将同步标志位置位。
[0011]
在一些实施例中,还包括:
[0012]
响应于bmc检测到所述内部存储器的所述同步标志位置位,获取所述内部存储器中所述更新的配置项数据,并写入所述bios配置文件中。
[0013]
在一些实施例中,还包括:
[0014]
响应于bmc接收到对bios的配置项的修改的请求,将所述请求中对应的配置项数据更新到所述内部存储器,并将同步标志位置位。
[0015]
在一些实施例中,还包括:
[0016]
响应于所述bmc检测到所述同步标志位置位,获取所述内部存储器中更新的配置项数据,并写入所述bios配置文件中。
[0017]
在一些实施例中,还包括:
[0018]
控制所述bios重新上电;
[0019]
响应于所述bios重新上电,获取所述存储器中的配置项数据,以根据所述配置项数据进行配置项设置。
[0020]
在一些实施例中,所述bios通过所述外部总线访问所述内部存储器以获取所述配置项数据,进一步包括:
[0021]
获取所述内部存储器的内部区域划分规则;
[0022]
根据所述内部区域划分规则在所述内部存储器中获取相应的所述配置项数据。
[0023]
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种bios的配置项设置系统,包括:
[0024]
bmc模块,所述bmc模块配置为响应于bmc上电启动,使bmc获取bios配置文件并将所述bios配置文件中的配置项数据写入内部存储器中;
[0025]
使能模块,所述使能模块配置为通过bmc使能外部总线访问所述内部存储器的访问配置;
[0026]
bios模块,所述bios模块配置为响应于bios上电启动,使所述bios通过所述外部总线访问所述内部存储器以获取所述配置项数据;
[0027]
设置模块,所述设置模块配置为使所述bios根据所述配置项数据进行配置项设置。
[0028]
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机设备,包括:
[0029]
至少一个处理器;以及
[0030]
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如上所述的任一种bios的配置项设置方法的步骤。
[0031]
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时执行如上所述的任一种bios的配置项设置方法的步骤。
[0032]
本发明具有以下有益技术效果之一:本发明提供的方案使用lpc接口与bmc通信,同时bmc内部中配置内部桥接ahb总线功能,使得bios能够通过lpc总线访问bmc内部nvram存储器。这样bios启动完成后,bios可以直接与bmc的内部存储器进行数据交互,中间避免了与bmc运行系统进行交互,使得bios修改配置项数据时无需依赖于bmc的运行状态。
附图说明
[0033]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
[0034]
图1为本发明的实施例提供的bios的配置项设置方法的流程示意图;
[0035]
图2为本发明的实施例提供的bios、bmc以及内部存储器的连接示意图;
[0036]
图3为本发明的实施例提供的bios的配置项设置系统的结构示意图;
[0037]
图4为本发明的实施例提供的计算机设备的结构示意图;
[0038]
图5为本发明的实施例提供的计算机可读存储介质的结构示意图。
具体实施方式
[0039]
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
[0040]
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
[0041]
根据本发明的一个方面,本发明的实施例提出一种bios的配置项设置方法,如图1所示,其可以包括步骤:
[0042]
s1,响应于bmc上电启动,bmc获取bios配置文件并将所述bios配置文件中的配置项数据写入内部存储器中;
[0043]
s2,通过bmc使能外部总线访问所述内部存储器的访问配置;
[0044]
s3,响应于bios上电启动,所述bios通过所述外部总线访问所述内部存储器以获取所述配置项数据;
[0045]
s4,所述bios根据所述配置项数据进行配置项设置。
[0046]
本发明提供的方案通过bios直接与bmc的内部存储器(nvram)进行数据交互,中间避免了与bmc运行系统进行交互,使得bios修改配置项数据时无需依赖于bmc的运行状态。
[0047]
在一些实施例中,如图2所示,bios可以通过pch芯片的lpc总线连接到bmc芯片,bmc内部使能lpc访问配置,使之能够通过lpc总线访问bmc内部的总线(例如ahb总线),从而实现bios通过外部总线lpc和bmc的内部总线(例如ahb总线)直接访问内部nvram存储器。
[0048]
在一些实施例中,方法还包括:
[0049]
响应于bios接收到通过配置页面更新的配置项数据,将所述更新的配置项数据写入所述内部存储器,并将同步标志位置位。
[0050]
具体的,当进入bios的setup界面手动修改配置项数据并保存配置后,然后直接通过外部总线(lpc总线)和bmc的内部总线(ahb总线)将更新的配置项数据更新到bmc的内部存储器中,并将同步标志位置位,以表示bios的配置项数据已更新。
[0051]
在一些实施例中,还包括:
[0052]
响应于bmc检测到所述内部存储器的所述同步标志位置位,获取所述内部存储器中所述更新的配置项数据,并写入所述bios配置文件中。
[0053]
具体的,当bmc检测到内部存储器中关于bios配置项数据部分对应的同步标志位置位,则获取内部存储器中所述更新的配置项数据,并写入对应的所述bios配置文件中。当bmc将内部存储器中更新的配置项数据写入bios配置文件中后,可以修改同步标志位,以表明bmc已经将更新的配合项数据写入配置文件中。
[0054]
在一些实施例中,在bmc上电启动阶段,可以加载bios配置文件到内存进行初始化,若内部存储器没有bios的配置项数据,则加载配置文件数据到内部存储器中,完成bios配置数据初始化。若通过同步标志位判断出内部存储器中已存在bios的配置项数据,则加载内部存储器中的配置项数据,并与配置文件内容进行比较,更新配置文件内容。若配置文件和内部存储器的数据均为空,则代码中初始化bios配置数据,并同步更新到内部存储器
和配置文件中。
[0055]
在一些实施例中,方法还包括:
[0056]
响应于bmc接收到对bios的配置项的修改的请求,将所述请求中对应的配置项数据更新到所述内部存储器,并将同步标志位置位。
[0057]
具体的,还可以通过bmc配置页面更新bios配置项并保存配置后。bmc将配置项数据写入内部存储器,并置位同步标志位。
[0058]
需要说明的是,通过bios置位后的同步标志位和通过bmc置位后的同步标志位是不同的,这样无论是bios更新配置项数据对同步标志位置位还是bmc更新配置项数据对同步标志位置位,均可以通过同步标志位判断出更新配置项数据的是bmc还是bios。
[0059]
在一些实施例中,还包括:
[0060]
响应于所述bmc检测到所述同步标志位置位,获取所述内部存储器中更新的配置项数据,并写入所述bios配置文件中。
[0061]
具体的,bmc对配置项数据进行更新可以分为两个过程,一是获取更新的配置项数据然后写入内部的存储器,并置位同步标志位,二是检查到同步标志位置位,获取所述内部存储器中更新的配置项数据,并写入所述bios配置文件中。或者,获取更新的配置项数据然后写入内部存储器,并置位同步标志位,同时将获取到的更新的配置项数据写入配置文件中。
[0062]
在一些实施例中,还包括:
[0063]
控制所述bios重新上电;
[0064]
响应于所述bios重新上电,获取所述存储器中的配置项数据,以根据所述配置项数据进行配置项设置。
[0065]
具体的,通过bmc更新bios的配置项数据,需要控制bios重新上电,当bios重新上电后,直接获取所述存储器中的配置项数据,以根据所述配置项数据进行配置项设置。
[0066]
在一些实施例中,所述bios通过所述外部总线访问所述内部存储器以获取所述配置项数据,进一步包括:
[0067]
获取所述内部存储器的内部区域划分规则;
[0068]
根据所述内部区域划分规则在所述内部存储器中获取相应的所述配置项数据。
[0069]
具体的,由于bios是直接读取内部存储器中配置项数据,而不是通过与bmc的交互获取配置项数据,因此在获取内部存储器中的配置项数据前可以获取内部存储器的内部区域划分规则,例如内部存储器的内部区域分别存储的是哪一个配置项的数据,这样即可根据所述内部区域划分规则在所述内部存储器中获取相应的所述配置项数据。
[0070]
本发明提供的方案使用lpc接口与bmc通信,同时bmc内部中配置内部桥接ahb总线功能,使得bios能够通过lpc总线访问bmc内部nvram存储器。这样bios启动完成后,bios可以直接与bmc的内部存储器进行数据交互,中间避免了与bmc运行系统进行交互,使得bios修改配置项数据时无需依赖于bmc的运行状态。
[0071]
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种bios的配置项设置系统400,如图3所示,包括:
[0072]
bmc模块401,所述bmc模块401配置为响应于bmc上电启动,使bmc获取bios配置文件并将所述bios配置文件中的配置项数据写入内部存储器中;
[0073]
使能模块402,所述使能模块402配置为通过bmc使能外部总线访问所述内部存储器的访问配置;
[0074]
bios模块403,所述bios模块403配置为响应于bios上电启动,使所述bios通过所述外部总线访问所述内部存储器以获取所述配置项数据;
[0075]
设置模块404,所述设置模块404配置为使所述bios根据所述配置项数据进行配置项设置。
[0076]
基于同一发明构思,根据本发明的另一个方面,如图4所示,本发明的实施例还提供了一种计算机设备501,包括:
[0077]
至少一个处理器520;以及
[0078]
存储器510,存储器510存储有可在处理器上运行的计算机程序511,处理器520执行程序时执行如上的任一种bios的配置项设置方法的步骤。
[0079]
基于同一发明构思,根据本发明的另一个方面,如图5所示,本发明的实施例还提供了一种计算机可读存储介质601,计算机可读存储介质601存储有计算机程序指令610,计算机程序指令610被处理器执行时执行如上的任一种bios的配置项设置方法的步骤。
[0080]
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。
[0081]
此外,应该明白的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。
[0082]
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
[0083]
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
[0084]
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
[0085]
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
[0086]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0087]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发
明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1