CN117407065A - 网卡预启动控制方法、装置、设备、***及存储介质 - Google Patents
网卡预启动控制方法、装置、设备、***及存储介质 Download PDFInfo
- Publication number
- CN117407065A CN117407065A CN202311278318.1A CN202311278318A CN117407065A CN 117407065 A CN117407065 A CN 117407065A CN 202311278318 A CN202311278318 A CN 202311278318A CN 117407065 A CN117407065 A CN 117407065A
- Authority
- CN
- China
- Prior art keywords
- target network
- network card
- starting
- target
- execution environment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000004519 manufacturing process Methods 0.000 claims abstract description 59
- 238000003745 diagnosis Methods 0.000 claims abstract description 48
- 230000006870 function Effects 0.000 claims description 212
- 238000004590 computer program Methods 0.000 claims description 17
- 239000000758 substrate Substances 0.000 claims description 10
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 abstract description 10
- 238000012423 maintenance Methods 0.000 abstract description 8
- 238000013515 script Methods 0.000 abstract description 8
- 239000000047 product Substances 0.000 description 130
- 238000007726 management method Methods 0.000 description 71
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 14
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000012467 final product Substances 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种网卡预启动控制方法、装置、设备、***及存储介质,涉及服务器技术领域,该方法包括:基板管理控制器获取产线诊断***中存储的产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;基于产品配置文件确定目标网卡的目标网口;向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。本申请可以满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
Description
技术领域
本申请涉及服务器技术领域,尤其涉及一种网卡预启动控制方法、装置、设备、***及存储介质。
背景技术
随着服务器技术的快速发展,为满足服务器与外界的交互功能,服务器上可以外接的外插高速串行计算机扩展总线标准(peripheral component interconnect express,PCIE)设备也越来越多,比如常用的网卡。网卡支持的功能也很多,比如常见的预启动执行环境功能,用于通过网络协议从远端服务器下载操作***镜像安装至客户端机器或者引导至远端的服务器诊断***进行服务器生产出厂前的各种检测、诊断工作。
基本输入输出***(Basic Input Output System,BIOS),作为服务器主板最底层的、最直接的硬件设置和控制的管理者,能为服务器提供更多简单的易用性功能。BIOS是一组固化到主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、***设置信息、开机后自检程序和***自启动程序,其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
通常网卡的预启动执行环境功能,都是由BIOS在开机过程中扫描PCIE设备,发现存在网卡则对网卡的每一个网口都创建一个预启动执行环境功能控制选项,供客户手动修改BIOS选项来控制每个网口的预启动执行环境功能的开启或关闭,然后在创建启动项时为开启了预启动执行环境功能的网口创建预启动执行环境选项,用于通过该网口进行预启动执行引导。
通过实际出货来看,通常机器上有配置多个网卡,但客户根据业务需要并不是会要求把所有网卡所有网口的预启动执行环境功能选项打开,而是仅想开启某个网卡的某个网口的预启动执行环境功能,那么BIOS就需要通过定制代码或定制BIOS控制选项的方式来满足客户的需求,这就额外增加了BIOS工程师的代码开发或脚本开发、维护的成本。为了减少BIOS工程师的开发、维护工作,亟需研发一种网卡预启动控制的方案,来满足客户的定制化的需求。
发明内容
本申请的目的是提供一种网卡预启动控制方法、装置、设备、***及存储介质,用于满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
第一方面,本申请提供一种网卡预启动控制方法,应用于基板管理控制器,所述方法包括:
获取产线诊断***中存储的产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
基于所述产品配置文件确定所述目标网卡的所述目标网口;
向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
可选地,所述获取产线诊断***中存储的产品配置文件,包括:
向所述产线诊断***发送产品配置文件请求;
接收所述产线诊断***通过网络接口发送的所述产品配置文件。
可选地,所述产品配置文件还包括多个网卡的PCIE插槽信息,所述目标网卡为配置的目标PCIE插槽信息对应的网卡;
所述向所述目标网卡发送控制指令,包括:
基于所述目标PCIE插槽信息向***目标PCIE插槽的所述目标网卡发送所述控制指令。
可选地,每个网卡包括多个网口,所述目标网口包括第一寄存器和第二寄存器,所述第一寄存器存储有用于实现所述目标网口的预启动执行环境功能的原始数据,所述第二寄存器用于存储所述目标网口的预启动执行环境功能的开启或关闭的目标数据;
所述目标PCIE插槽信息包括所述目标PCIE插槽对应的I2C地址,所述目标网卡的地址为所述目标PCIE插槽对应的I2C地址;所述控制指令携带有所述目标网卡的地址和所述目标网口的预启动执行环境功能的开启或关闭的信息;
所述基于所述目标PCIE插槽信息向***目标PCIE插槽的所述目标网卡发送所述控制指令,包括:
基于所述目标PCIE插槽信息确定所述目标PCIE插槽对应的I2C地址;
基于所述目标PCIE插槽对应的I2C地址确定所述目标网卡的地址;
基于所述目标网卡的地址和所述目标网口的预启动执行环境功能的开启或关闭的信息,生成所述控制指令;
基于所述目标网卡的地址,将所述控制指令发送给所述目标网卡;所述控制指令用于指示所述目标网卡将所述目标网口的预启动执行环境功能的开启或关闭的目标数据存储到所述第二寄存器中,并基于所述第二寄存器修改所述第一寄存器的所述原始数据,以使所述基本输入输出***读取修改后的所述第一寄存器,并针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
第二方面,本申请还提供一种网卡预启动控制方法,应用于目标网卡,所述方法包括:
接收基板管理控制器发送的控制指令;所述目标网卡的目标网口是所述基板管理控制器基于从产线诊断***获取的产品配置文件确定的,所述产品配置文件包括需要开启或关闭预启动执行环境功能的所述目标网卡的目标网口的定制化信息;
响应所述控制指令,修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
可选地,所述产品配置文件还包括多个网卡的PCIE插槽信息,所述目标网卡为配置的目标PCIE插槽信息对应的网卡;所述目标PCIE插槽信息包括所述目标PCIE插槽对应的I2C地址,所述目标网卡的地址为所述目标PCIE插槽对应的I2C地址;
所述目标网口包括第一寄存器和第二寄存器,所述第一寄存器存储有用于实现所述目标网口的预启动执行环境功能的原始数据,所述第二寄存器用于存储所述目标网口的预启动执行环境功能的开启或关闭的目标数据;所述控制指令携带有所述目标网卡的地址和所述目标网口的预启动执行环境功能的开启或关闭的信息;
所述接收基板管理控制器发送的控制指令,包括:
接收所述基板管理控制器基于所述目标网卡的地址发送的所述控制指令;
所述响应所述控制指令,修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,包括:
响应所述控制指令,将所述目标网口的预启动执行环境功能的开启或关闭的目标数据存储到所述第二寄存器中;
基于所述第二寄存器修改所述第一寄存器的所述原始数据,以使所述基本输入输出***读取修改后的所述第一寄存器,并针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
第三方面,本申请还提供一种网卡预启动控制方法,应用于产线诊断***,所述方法包括:
接收基板管理控制器发送的产品配置文件请求;
响应所述产品配置文件请求,通过网络接口向所述基板管理控制器发送产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;所述基板管理控制器用于基于所述产品配置文件确定所述目标网卡的所述目标网口,并向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
可选地,所述产品配置文件还包括多个网卡的PCIE插槽信息,所述目标网卡为配置的目标PCIE插槽信息对应的网卡。
第四方面,本申请还提供一种网卡预启动控制装置,应用于基板管理控制器,所述装置包括:
文件获取模块,用于获取产线诊断***中存储的产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
网口确定模块,用于基于所述产品配置文件确定所述目标网卡的所述目标网口;
指令发送模块,用于向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
第五方面,本申请还提供一种网卡预启动控制装置,应用于目标网卡,所述装置包括:
指令接收模块,用于接收基板管理控制器发送的控制指令;所述目标网卡的目标网口是所述基板管理控制器基于从产线诊断***获取的产品配置文件确定的,所述产品配置文件包括需要开启或关闭预启动执行环境功能的所述目标网卡的目标网口的定制化信息;
信息修改模块,用于响应所述控制指令,修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
第六方面,本申请还提供一种网卡预启动控制装置,应用于产线诊断***,所述装置包括:
请求接收模块,用于接收基板管理控制器发送的产品配置文件请求;
文件发送模块,用于响应所述产品配置文件请求,通过网络接口向所述基板管理控制器发送产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;所述基板管理控制器用于基于所述产品配置文件确定所述目标网卡的所述目标网口,并向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
第七方面,本申请还提供一种基板管理控制器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一方面任一种所述的网卡预启动控制方法的步骤。
第八方面,本申请还提供一种目标网卡,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第二方面任一种所述的网卡预启动控制方法的步骤。
第九方面,本申请还提供一种产线诊断***,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第三方面任一种所述的网卡预启动控制方法的步骤。
第十方面,本申请还提供一种网卡预启动控制***,包括如第七方面所述的基板管理控制器、如第八方面所述的目标网卡、如第九方面所述的产线诊断***以及基本输入输出***。
第十一方面,本申请还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上述第一方面、第二方面或第三方面任一种所述的网卡预启动控制方法的步骤。
第十二方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面、第二方面或第三方面任一种所述的网卡预启动控制方法的步骤。
本申请提供的网卡预启动控制方法、装置、设备、***及存储介质,首先,基板管理控制器获取产线诊断***中存储的产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;而后,由于产品配置文件中包括定制化信息,基于产品配置文件可以确定需要开启或关闭预启动执行环境功能的目标网卡的目标网口;接着,向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制;也即,本申请基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。因此,本申请可以满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的网卡预启动控制方法的流程示意图之一;
图2是本申请实施例提供的网卡预启动控制方法的流程示意图之二;
图3是本申请实施例提供的网卡预启动控制方法的流程示意图之三;
图4是本申请实施例提供的网卡预启动控制方法的交互流程示意图;
图5是本申请实施例提供的网卡预启动控制装置的结构示意图之一;
图6是本申请实施例提供的网卡预启动控制装置的结构示意图之二;
图7是本申请实施例提供的网卡预启动控制装置的结构示意图之三;
图8是本申请实施例提供的基板管理控制器的结构示意图;
图9是本申请实施例提供的目标网卡的结构示意图;
图10是本申请实施例提供的产线诊断***的结构示意图;
图11是本申请实施例提供的网卡预启动控制***的组成示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的网卡预启动控制方法进行详细地说明。
请参照图1,图1是本申请实施例提供的网卡预启动控制方法的流程示意图之一。该方法应用于基板管理控制器,如图1所示,该方法可以包括以下步骤:
步骤101、获取产线诊断***中存储的产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
步骤102、基于产品配置文件确定目标网卡的目标网口;
步骤103、向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
在步骤101中,工厂生产服务器之前,如果接收到客户提出的需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化需求,工程部门按照该定制化需求在现有的产品信息中进行配置,生成产品配置文件,并将该产品配置文件维护到产线诊断***中。
由于产线诊断***中存储有预先维护好的产品配置文件,基板管理控制器获取该产品配置文件,产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息,目标网卡的数量可以为一个或多个,目标网口的数量可以为一个或多个。
在步骤102中,由于产品配置文件中包括定制化信息,基于产品配置文件可以确定需要开启或关闭预启动执行环境功能的目标网卡的目标网口。
在步骤103中,基板管理控制器向目标网卡发送控制指令。目标网卡响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭。基本输入输出***在开机过程中扫描PCIE设备,判断该PCIE设备是否为目标网卡,以及目标网卡的目标网口的寄存器中是否有开启预启动执行环境功能。这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。也即,基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。
本申请实施例提供的网卡预启动控制方法,首先,基板管理控制器获取产线诊断***中存储的产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;而后,由于产品配置文件中包括定制化信息,基于产品配置文件可以确定需要开启或关闭预启动执行环境功能的目标网卡的目标网口;接着,向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制;也即,本申请实施例中基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。因此,本申请实施例可以满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
在一种示例实施例中,步骤101包括:向产线诊断***发送产品配置文件请求;接收产线诊断***通过网络接口发送的产品配置文件。
具体地,基板管理控制器向产线诊断***发送产品配置文件请求。产线诊断***响应产品配置文件请求,通过网络接口向基板管理控制器发送产品配置文件。基板管理控制器接收产线诊断***通过网络接口发送的产品配置文件。
在本实施例中,由于产线诊断***不仅可以存储产品配置文件,还提供了用于向基板管理控制器传输产品配置文件的网络接口,基板管理控制器可以通过向产线诊断***发送产品配置文件请求,来获取产线诊断***通过网络接口发送的产品配置文件。
在一种示例实施例中,产品配置文件还包括多个网卡的PCIE插槽信息,目标网卡为配置的目标PCIE插槽信息对应的网卡;步骤103包括:基于目标PCIE插槽信息向***目标PCIE插槽的目标网卡发送控制指令。
具体地,工厂生产服务器之前,将产品名称、网卡数量、多个网卡的PCIE插槽信息等产品信息录入到一份产品配置文件中。如果接收到客户提出的需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化需求,工程部门按照该定制化需求在产品配置文件中的产品信息中进行配置,例如:从多个网卡的PCIE插槽信息中标记出目标PCIE插槽信息对应的目标网卡的目标网口,得到最终的产品配置文件,并将该产品配置文件维护到产线诊断***中。
通过目标PCIE插槽信息可以查找到***目标PCIE插槽的目标网卡,然后通过I2C总线(一种简单、双向二线制同步串行总线)向目标网卡发送控制指令。
在本实施例中,可以通过目标PCIE插槽信息定位***目标PCIE插槽的目标网卡,从而可以向目标网卡发送控制指令。
在一种示例实施例中,每个网卡包括多个网口,目标网口包括第一寄存器和第二寄存器,第一寄存器存储有用于实现目标网口的预启动执行环境功能的原始数据,第二寄存器用于存储目标网口的预启动执行环境功能的开启或关闭的目标数据;
目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址,目标网卡的地址为目标PCIE插槽对应的I2C地址;控制指令携带有目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息;
基于目标PCIE插槽信息向***目标PCIE插槽的目标网卡发送控制指令,包括:
基于目标PCIE插槽信息确定目标PCIE插槽对应的I2C地址;
基于目标PCIE插槽对应的I2C地址确定目标网卡的地址;
基于目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息,生成控制指令;
基于目标网卡的地址,将控制指令发送给目标网卡;控制指令用于指示目标网卡将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中,并基于第二寄存器修改第一寄存器的原始数据,以使基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
具体地,每个网卡包括多个网口,目标网口为用户定制的需要开启或关闭预启动执行环境功能的网口,目标网口的数量为一个或多个。
目标网口包括两个寄存器。第一寄存器存储有用于实现目标网口的预启动执行环境功能的原始数据,基板管理控制器不能直接访问第一寄存器,或者可访问但不能操作第一寄存器,具体需要参考每个网卡的软件规格说明书(Software RequirementSpecification,SPEC)文档。但是,基板管理控制器可以与目标网卡之间做个约定,比如XX偏移量的第二寄存器可以直接操作使用,使用第二寄存器的某几个比特的目标数据来表示目标网口的预启动执行环境功能开启还是关闭,写1表示开始,写0表示关闭。
每个PCIE插槽都有其固定的I2C地址,目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址。目标PCIE插槽对应的I2C地址,可以作为目标PCIE插槽***的目标网卡的地址。
由于目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址,基于目标PCIE插槽信息可以确定目标PCIE插槽对应的I2C地址。由于目标PCIE插槽对应的I2C地址,可以作为目标PCIE插槽***的目标网卡的地址,基于目标PCIE插槽对应的I2C地址可以确定目标网卡的地址。生成携带目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息的控制指令。基于目标网卡的地址,将控制指令发送给目标网卡。目标网卡响应该控制指令,将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中,并基于第二寄存器修改第一寄存器的原始数据。基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
在本实施例中,将目标PCIE插槽信息中包括的目标PCIE插槽对应的I2C地址作为目标网卡的地址。生成携带目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息的控制指令。基于目标网卡的地址,将控制指令发送给目标网卡,以指示目标网卡将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中,并基于第二寄存器修改第一寄存器的原始数据,以使基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
请参照图2,图2是本申请实施例提供的网卡预启动控制方法的流程示意图之二。该方法应用于目标网卡,如图2所示,该方法可以包括以下步骤:
步骤201、接收基板管理控制器发送的控制指令;目标网卡的目标网口是基板管理控制器基于从产线诊断***获取的产品配置文件确定的,产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
步骤202、响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
在步骤201中,由于产线诊断***中存储有预先维护好的产品配置文件,基板管理控制器获取该产品配置文件,产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息。由于产品配置文件中包括定制化信息,基板管理控制器基于产品配置文件可以确定需要开启或关闭预启动执行环境功能的目标网卡的目标网口。基板管理控制器向目标网卡发送控制指令,目标网卡接收基板管理控制器发送的控制指令。
在步骤202中,目标网卡响应控制指令,从固件层面修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭。基本输入输出***在开机过程中扫描PCIE设备,判断该PCIE设备是否为目标网卡,以及目标网卡的目标网口的寄存器中是否有开启预启动执行环境功能。这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。也即,基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。其中,寄存器信息为寄存器内存储的信息。
本申请实施例提供的网卡预启动控制方法,首先,目标网卡接收基板管理控制器发送的控制指令;目标网卡的目标网口是基板管理控制器基于从产线诊断***获取的产品配置文件确定的,产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;而后,响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制;也即,本申请实施例中基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。因此,本申请实施例可以满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
在一种示例实施例中,产品配置文件还包括多个网卡的PCIE插槽信息,目标网卡为配置的目标PCIE插槽信息对应的网卡;目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址,目标网卡的地址为目标PCIE插槽对应的I2C地址;
目标网口包括第一寄存器和第二寄存器,第一寄存器存储有用于实现目标网口的预启动执行环境功能的原始数据,第二寄存器用于存储目标网口的预启动执行环境功能的开启或关闭的目标数据;控制指令携带有目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息;
步骤201包括接收基板管理控制器基于目标网卡的地址发送的控制指令;步骤202包括:响应控制指令,将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中;基于第二寄存器修改第一寄存器的原始数据,以使基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
具体地,每个网卡包括多个网口,目标网口为用户定制的需要开启或关闭预启动执行环境功能的网口,目标网口的数量为一个或多个。
目标网口包括两个寄存器。第一寄存器存储有用于实现目标网口的预启动执行环境功能的原始数据,基板管理控制器不能直接访问第一寄存器,或者可访问但不能操作第一寄存器,具体需要参考每个网卡的SPEC文档。但是,基板管理控制器可以与目标网卡之间做个约定,比如XX偏移量的第二寄存器可以直接操作使用,使用第二寄存器的某几个比特的目标数据来表示目标网口的预启动执行环境功能开启还是关闭,写1表示开始,写0表示关闭。
每个PCIE插槽都有其固定的I2C地址,目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址。目标PCIE插槽对应的I2C地址,可以作为目标PCIE插槽***的目标网卡的地址。
由于目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址,基于目标PCIE插槽信息可以确定目标PCIE插槽对应的I2C地址。由于目标PCIE插槽对应的I2C地址,可以作为目标PCIE插槽***的目标网卡的地址,基于目标PCIE插槽对应的I2C地址可以确定目标网卡的地址。生成携带目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息的控制指令。基于目标网卡的地址,将控制指令发送给目标网卡。目标网卡接收并响应该控制指令,将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中,并基于第二寄存器修改第一寄存器的原始数据。基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
在本实施例中,标网卡接收并响应控制指令,将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中,并基于第二寄存器修改第一寄存器的原始数据,以使基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
请参照图3,图3是本申请实施例提供的网卡预启动控制方法的流程示意图之三。该方法应用于产线诊断***,如图3所示,该方法可以包括以下步骤:
步骤301、接收基板管理控制器发送的产品配置文件请求;
步骤302、响应产品配置文件请求,通过网络接口向基板管理控制器发送产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;基板管理控制器用于基于产品配置文件确定目标网卡的目标网口,并向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
在步骤301中,工厂生产服务器之前,如果接收到客户提出的需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化需求,工程部门按照该定制化需求在现有的产品信息中进行配置,生成产品配置文件,并将该产品配置文件维护到产线诊断***中。
基板管理控制器向产线诊断***发送产品配置文件请求。产线诊断***接收基板管理控制器发送的产品配置文件请求。
在步骤302中,产线诊断***响应产品配置文件请求,通过网络接口向基板管理控制器发送产品配置文件。基板管理控制器接收产线诊断***通过网络接口发送的产品配置文件。由于产品配置文件中包括定制化信息,基板管理控制器基于产品配置文件可以确定需要开启或关闭预启动执行环境功能的目标网卡的目标网口。基板管理控制器向目标网卡发送控制指令。目标网卡响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭。基本输入输出***在开机过程中扫描PCIE设备,判断该PCIE设备是否为目标网卡,以及目标网卡的目标网口的寄存器中是否有开启预启动执行环境功能。这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。也即,基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。
本申请实施例提供的网卡预启动控制方法,首先,产线诊断***接收基板管理控制器发送的产品配置文件请求;而后,产线诊断***响应产品配置文件请求,通过网络接口向基板管理控制器发送产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;基板管理控制器用于基于产品配置文件确定目标网卡的目标网口,并向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,这样,可以使得基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制;也即,本申请实施例中基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。因此,本申请实施例可以满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
在一种示例实施例中,产品配置文件还包括多个网卡的PCIE插槽信息,目标网卡为配置的目标PCIE插槽信息对应的网卡。
具体地,工厂生产服务器之前,将产品名称、网卡数量、多个网卡的PCIE插槽信息等产品信息录入到一份产品配置文件中。如果接收到客户提出的需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化需求,工程部门按照该定制化需求在产品配置文件中的产品信息中进行配置,例如:从多个网卡的PCIE插槽信息中标记出目标PCIE插槽信息对应的目标网卡的目标网口,得到最终的产品配置文件,并将该产品配置文件维护到产线诊断***中。
在本实施例中,可以在多个网卡的PCIE插槽信息中配置目标PCIE插槽信息对应的目标网卡的目标网口。
需要说明的是,本申请实施例提供的网卡预启动控制方法,执行主体可以为网卡预启动控制装置,或者该网卡预启动控制装置中的用于执行网卡预启动控制方法的控制模块。本申请实施例中以网卡预启动控制装置执行网卡预启动控制方法为例,说明本申请实施例提供的网卡预启动控制装置。
需要说明的是,本申请实施例中,上述各个方法附图所示的网卡预启动控制方法均是以结合本申请实施例中的一个附图为例示例性的说明的。具体实现时,上述各个方法附图所示的网卡预启动控制方法还可以结合上述实施例中示意的其它可以结合的任意附图实现,此处不再赘述。
请参照图4,图4是本申请实施例提供的网卡预启动控制方法的交互流程示意图。如图4所示,该方法可以包括以下步骤:
步骤401、基板管理控制器向产线诊断***发送产品配置文件请求;
步骤402、产线诊断***通过网络接口向基板管理控制器发送产品配置文件;
步骤403、基板管理控制器基于产品配置文件确定目标网卡的目标网口;
步骤404、基板管理控制器向目标网卡发送控制指令;
步骤405、目标网卡响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭;
步骤406、基本输入输出***获取修改后的寄存器信息;
步骤407、基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
本申请实施例提供的网卡预启动控制方法,基本输入输出***无需通过定制代码或定制BIOS控制选项的方式来满足客户的定制化需求。因此,本申请实施例可以满足客户的定制化的需求,同时减少BIOS工程师额外开发、维护脚本或代码的工作。
下面对本申请提供的网卡预启动控制装置进行描述,下文描述的与上文描述的网卡预启动控制方法可相互对应参照。
请参照图5,图5是本申请实施例提供的网卡预启动控制装置的结构示意图之一。该装置应用于基板管理控制器,如图5所示,该装置包括:
文件获取模块501,用于获取产线诊断***中存储的产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
网口确定模块502,用于基于产品配置文件确定目标网卡的目标网口;
指令发送模块503,用于向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
可选地,文件获取模块501具体用于:
向产线诊断***发送产品配置文件请求;
接收产线诊断***通过网络接口发送的产品配置文件。
可选地,产品配置文件还包括多个网卡的PCIE插槽信息,目标网卡为配置的目标PCIE插槽信息对应的网卡;
指令发送模块503具体用于:基于目标PCIE插槽信息向***目标PCIE插槽的目标网卡发送控制指令。
可选地,每个网卡包括多个网口,目标网口包括第一寄存器和第二寄存器,第一寄存器存储有用于实现目标网口的预启动执行环境功能的原始数据,第二寄存器用于存储目标网口的预启动执行环境功能的开启或关闭的目标数据;
目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址,目标网卡的地址为目标PCIE插槽对应的I2C地址;控制指令携带有目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息;
指令发送模块503具体用于:
基于目标PCIE插槽信息确定目标PCIE插槽对应的I2C地址;
基于目标PCIE插槽对应的I2C地址确定目标网卡的地址;
基于目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息,生成控制指令;
基于目标网卡的地址,将控制指令发送给目标网卡;控制指令用于指示目标网卡将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中,并基于第二寄存器修改第一寄存器的原始数据,以使基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
请参照图6,图6是本申请实施例提供的网卡预启动控制装置的结构示意图之二。该装置应用于目标网卡,如图6所示,该装置包括:
指令接收模块601,用于接收基板管理控制器发送的控制指令;目标网卡的目标网口是基板管理控制器基于从产线诊断***获取的产品配置文件确定的,产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
信息修改模块602,用于响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
可选地,产品配置文件还包括多个网卡的PCIE插槽信息,目标网卡为配置的目标PCIE插槽信息对应的网卡;目标PCIE插槽信息包括目标PCIE插槽对应的I2C地址,目标网卡的地址为目标PCIE插槽对应的I2C地址;
目标网口包括第一寄存器和第二寄存器,第一寄存器存储有用于实现目标网口的预启动执行环境功能的原始数据,第二寄存器用于存储目标网口的预启动执行环境功能的开启或关闭的目标数据;控制指令携带有目标网卡的地址和目标网口的预启动执行环境功能的开启或关闭的信息;
指令接收模块601具体用于:接收基板管理控制器基于目标网卡的地址发送的控制指令;
信息修改模块602具体用于:
响应控制指令,将目标网口的预启动执行环境功能的开启或关闭的目标数据存储到第二寄存器中;
基于第二寄存器修改第一寄存器的原始数据,以使基本输入输出***读取修改后的第一寄存器,并针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
请参照图7,图7是本申请实施例提供的网卡预启动控制装置的结构示意图之三。该装置应用于产线诊断***,如图7所示,该装置包括:
请求接收模块701,用于接收基板管理控制器发送的产品配置文件请求;
文件发送模块702,用于响应产品配置文件请求,通过网络接口向基板管理控制器发送产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;基板管理控制器用于基于产品配置文件确定目标网卡的目标网口,并向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
可选地,产品配置文件还包括多个网卡的PCIE插槽信息,目标网卡为配置的目标PCIE插槽信息对应的网卡。
图8示例了一种基板管理控制器的实体结构示意图,如图8所示,该基板管理控制器可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行网卡预启动控制方法,该方法包括:获取产线诊断***中存储的产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;基于产品配置文件确定目标网卡的目标网口;向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
图9示例了一种目标网卡的实体结构示意图,如图9所示,该目标网卡可以包括:处理器910、通信接口920、存储器930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行网卡预启动控制方法,该方法包括:接收基板管理控制器发送的控制指令;目标网卡的目标网口是基板管理控制器基于从产线诊断***获取的产品配置文件确定的,产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;响应控制指令,修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
图10示例了一种产线诊断***的实体结构示意图,如图10所示,该产线诊断***可以包括:处理器1010、通信接口1020、存储器1030和通信总线1040,其中,处理器1010,通信接口1020,存储器1030通过通信总线1040完成相互间的通信。处理器1010可以调用存储器1030中的逻辑指令,以执行网卡预启动控制方法,该方法包括:接收基板管理控制器发送的产品配置文件请求;响应产品配置文件请求,通过网络接口向基板管理控制器发送产品配置文件;产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;基板管理控制器用于基于产品配置文件确定目标网卡的目标网口,并向目标网卡发送控制指令;控制指令用于指示目标网卡修改寄存器信息中目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
此外,上述的存储器1030中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
图11示例了一种网卡预启动控制***的组成示意图,该***包括如图8所示的基板管理控制器1101、如图9所示的目标网卡1102、如图10所示的产线诊断***1103以及基本输入输出***1104。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的网卡预启动控制方法此处不再赘述。
又一方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的网卡预启动控制方法此处不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (16)
1.一种网卡预启动控制方法,其特征在于,应用于基板管理控制器,所述方法包括:
获取产线诊断***中存储的产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
基于所述产品配置文件确定所述目标网卡的所述目标网口;
向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
2.根据权利要求1所述的网卡预启动控制方法,其特征在于,所述获取产线诊断***中存储的产品配置文件,包括:
向所述产线诊断***发送产品配置文件请求;
接收所述产线诊断***通过网络接口发送的所述产品配置文件。
3.根据权利要求1或2所述的网卡预启动控制方法,其特征在于,所述产品配置文件还包括多个网卡的PCIE插槽信息,所述目标网卡为配置的目标PCIE插槽信息对应的网卡;
所述向所述目标网卡发送控制指令,包括:
基于所述目标PCIE插槽信息向***目标PCIE插槽的所述目标网卡发送所述控制指令。
4.根据权利要求3所述的网卡预启动控制方法,其特征在于,每个网卡包括多个网口,所述目标网口包括第一寄存器和第二寄存器,所述第一寄存器存储有用于实现所述目标网口的预启动执行环境功能的原始数据,所述第二寄存器用于存储所述目标网口的预启动执行环境功能的开启或关闭的目标数据;
所述目标PCIE插槽信息包括所述目标PCIE插槽对应的I2C地址,所述目标网卡的地址为所述目标PCIE插槽对应的I2C地址;所述控制指令携带有所述目标网卡的地址和所述目标网口的预启动执行环境功能的开启或关闭的信息;
所述基于所述目标PCIE插槽信息向***目标PCIE插槽的所述目标网卡发送所述控制指令,包括:
基于所述目标PCIE插槽信息确定所述目标PCIE插槽对应的I2C地址;
基于所述目标PCIE插槽对应的I2C地址确定所述目标网卡的地址;
基于所述目标网卡的地址和所述目标网口的预启动执行环境功能的开启或关闭的信息,生成所述控制指令;
基于所述目标网卡的地址,将所述控制指令发送给所述目标网卡;所述控制指令用于指示所述目标网卡将所述目标网口的预启动执行环境功能的开启或关闭的目标数据存储到所述第二寄存器中,并基于所述第二寄存器修改所述第一寄存器的所述原始数据,以使所述基本输入输出***读取修改后的所述第一寄存器,并针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
5.一种网卡预启动控制方法,其特征在于,应用于目标网卡,所述方法包括:
接收基板管理控制器发送的控制指令;所述目标网卡的目标网口是所述基板管理控制器基于从产线诊断***获取的产品配置文件确定的,所述产品配置文件包括需要开启或关闭预启动执行环境功能的所述目标网卡的目标网口的定制化信息;
响应所述控制指令,修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
6.根据权利要求5所述的网卡预启动控制方法,其特征在于,所述产品配置文件还包括多个网卡的PCIE插槽信息,所述目标网卡为配置的目标PCIE插槽信息对应的网卡;所述目标PCIE插槽信息包括所述目标PCIE插槽对应的I2C地址,所述目标网卡的地址为所述目标PCIE插槽对应的I2C地址;
所述目标网口包括第一寄存器和第二寄存器,所述第一寄存器存储有用于实现所述目标网口的预启动执行环境功能的原始数据,所述第二寄存器用于存储所述目标网口的预启动执行环境功能的开启或关闭的目标数据;所述控制指令携带有所述目标网卡的地址和所述目标网口的预启动执行环境功能的开启或关闭的信息;
所述接收基板管理控制器发送的控制指令,包括:
接收所述基板管理控制器基于所述目标网卡的地址发送的所述控制指令;
所述响应所述控制指令,修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,包括:
响应所述控制指令,将所述目标网口的预启动执行环境功能的开启或关闭的目标数据存储到所述第二寄存器中;
基于所述第二寄存器修改所述第一寄存器的所述原始数据,以使所述基本输入输出***读取修改后的所述第一寄存器,并针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
7.一种网卡预启动控制方法,其特征在于,应用于产线诊断***,所述方法包括:
接收基板管理控制器发送的产品配置文件请求;
响应所述产品配置文件请求,通过网络接口向所述基板管理控制器发送产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;所述基板管理控制器用于基于所述产品配置文件确定所述目标网卡的所述目标网口,并向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
8.根据权利要求7所述的网卡预启动控制方法,其特征在于,所述产品配置文件还包括多个网卡的PCIE插槽信息,所述目标网卡为配置的目标PCIE插槽信息对应的网卡。
9.一种网卡预启动控制装置,其特征在于,应用于基板管理控制器,所述装置包括:
文件获取模块,用于获取产线诊断***中存储的产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;
网口确定模块,用于基于所述产品配置文件确定所述目标网卡的所述目标网口;
指令发送模块,用于向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
10.一种网卡预启动控制装置,其特征在于,应用于目标网卡,所述装置包括:
指令接收模块,用于接收基板管理控制器发送的控制指令;所述目标网卡的目标网口是所述基板管理控制器基于从产线诊断***获取的产品配置文件确定的,所述产品配置文件包括需要开启或关闭预启动执行环境功能的所述目标网卡的目标网口的定制化信息;
信息修改模块,用于响应所述控制指令,修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
11.一种网卡预启动控制装置,其特征在于,应用于产线诊断***,所述装置包括:
请求接收模块,用于接收基板管理控制器发送的产品配置文件请求;
文件发送模块,用于响应所述产品配置文件请求,通过网络接口向所述基板管理控制器发送产品配置文件;所述产品配置文件包括需要开启或关闭预启动执行环境功能的目标网卡的目标网口的定制化信息;所述基板管理控制器用于基于所述产品配置文件确定所述目标网卡的所述目标网口,并向所述目标网卡发送控制指令;所述控制指令用于指示所述目标网卡修改寄存器信息中所述目标网口的预启动执行环境功能的开启或关闭,以使基本输入输出***针对开启预启动执行环境功能的所述目标网口,创建预启动执行环境功能的启动项,从而实现网卡预启动控制。
12.一种基板管理控制器,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至4任一项所述的网卡预启动控制方法的步骤。
13.一种目标网卡,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求5或6所述的网卡预启动控制方法的步骤。
14.一种产线诊断***,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求7或8所述的网卡预启动控制方法的步骤。
15.一种网卡预启动控制***,其特征在于,包括如权利要求12所述的基板管理控制器、如权利要求13所述的目标网卡、如权利要求14所述的产线诊断***以及基本输入输出***。
16.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的网卡预启动控制方法的步骤,或者实现如权利要求5或6所述的网卡预启动控制方法的步骤,或者实现如权利要求7或8所述的网卡预启动控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311278318.1A CN117407065A (zh) | 2023-09-28 | 2023-09-28 | 网卡预启动控制方法、装置、设备、***及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311278318.1A CN117407065A (zh) | 2023-09-28 | 2023-09-28 | 网卡预启动控制方法、装置、设备、***及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117407065A true CN117407065A (zh) | 2024-01-16 |
Family
ID=89497123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311278318.1A Pending CN117407065A (zh) | 2023-09-28 | 2023-09-28 | 网卡预启动控制方法、装置、设备、***及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117407065A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117785311A (zh) * | 2024-02-27 | 2024-03-29 | 苏州元脑智能科技有限公司 | 服务器的启动方法和装置、存储介质及电子装置 |
-
2023
- 2023-09-28 CN CN202311278318.1A patent/CN117407065A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117785311A (zh) * | 2024-02-27 | 2024-03-29 | 苏州元脑智能科技有限公司 | 服务器的启动方法和装置、存储介质及电子装置 |
CN117785311B (zh) * | 2024-02-27 | 2024-05-07 | 苏州元脑智能科技有限公司 | 服务器的启动方法和装置、存储介质及电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10834586B2 (en) | System and method for controlling heterogeneous internet of things (IoT) devices using single application | |
US10514930B2 (en) | Setting a startup parameter and controlling startup of a mainboard | |
US8332490B2 (en) | Method, apparatus and program product for provisioning a computer system | |
TWI601068B (zh) | 用於接取網路之設備及方法、以及電腦可讀媒體 | |
CN105653306B (zh) | 显示启动设置界面的方法和装置 | |
US20070121527A1 (en) | System and method for remote dynamic network configuration | |
US6785807B1 (en) | Method and system for providing bootcode support in a data processing system that uses a communications port that utilizes a first communications protocol, an external device that utilizes a second communications protocol, and a device driver that is loaded in response to booting to communicate with the external device through the communications port | |
CN113434202B (zh) | 一种设备的启动方法、装置、电子设备及计算机存储介质 | |
CN109936716B (zh) | 一种显示驱动的实现方法及*** | |
CN117407065A (zh) | 网卡预启动控制方法、装置、设备、***及存储介质 | |
CN100583038C (zh) | 用于启动与电子设备的接口的方法、***和装置 | |
EP3208723A1 (en) | Usb wireless network card configuration method, host, usb wireless network card and communication system | |
CN111124508A (zh) | 一种调整网卡pxe启动顺序的方法和装置 | |
EP2354956B1 (en) | Method for controlling network controller, program, and information processing apparatus | |
US11403113B2 (en) | Server with system setting data synchronization function | |
CN108234174B (zh) | 虚拟网络功能的管理方法和装置 | |
CN108108314B (zh) | 交换器*** | |
US20150134944A1 (en) | Data terminal running mode switching method, device, and data terminal | |
CN115913913B (zh) | 网卡预启动执行环境功能故障定位方法及装置 | |
US20060080636A1 (en) | Method of building intelligent platform management interface firmware architecture | |
CN116112412A (zh) | 一种虚拟网卡绑定冗余功能测试方法、***、装置及介质 | |
KR102414206B1 (ko) | 오토사 표준 응용 소프트웨어 컴포넌트 | |
CN106445571B (zh) | 主机板及开机的方法 | |
CN113849267A (zh) | 显卡虚拟显示方法、***、终端及存储介质 | |
CN117311832B (zh) | Pcie设备启动模式的展示方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |