CN113867743B - 网络操作系统加载烧录方法、装置、电子设备及存储介质 - Google Patents

网络操作系统加载烧录方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113867743B
CN113867743B CN202111151309.7A CN202111151309A CN113867743B CN 113867743 B CN113867743 B CN 113867743B CN 202111151309 A CN202111151309 A CN 202111151309A CN 113867743 B CN113867743 B CN 113867743B
Authority
CN
China
Prior art keywords
network
equipment
mac address
starting
item
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.)
Active
Application number
CN202111151309.7A
Other languages
English (en)
Other versions
CN113867743A (zh
Inventor
王文志
朱英澍
王安平
王鹏
张轶杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202111151309.7A priority Critical patent/CN113867743B/zh
Publication of CN113867743A publication Critical patent/CN113867743A/zh
Application granted granted Critical
Publication of CN113867743B publication Critical patent/CN113867743B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种网络操作系统加载烧录方法、装置、电子设备及可读存储介质。方法适用于同时具有内部专用网络接口和外接网卡的服务器,包括:获取BIOS枚举的所有启动项,并读取各启动项;若存在读取信息中包括MAC地址的目标启动项,则判断MAC地址是否为内部专用网络接口的MAC地址;若MAC地址不为内部专用网络接口的MAC地址,则标记目标启动项对应的设备为网络设备,同时为网络设备构建对应的网络启动项,以基于网络启动项执行网络操作系统加载烧录操作;若MAC地址为内部专用网络接口的MAC地址,则目标启动项对应设备不设置对外显示的网络启动项,从而可确保自动化加载烧录网络操作系统的正常进行。

Description

网络操作系统加载烧录方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种网络操作系统加载烧录方法、装置、电子设备及可读存储介质。
背景技术
目前基于X86体系的芯片设计以及开发环境都已经趋于成熟,UEFI(UnifiedExtensible Firmware Interface,通用可扩展固件接口)的提出更是让传统的BIOS(BasicInput Output System,基本输入输出系统)逐渐退出了历史舞台。EDK-II作为UEFI的框架下的代码实现,已成为众多基于X86架构设计的芯片最基本的代码实现。随着自动化技术普及,全自动化式的生产标准也越来越高,在基于X86_BIOS的设备生产中,最后均需要进行操作系统OS(operating system)的自动烧录。其中,PXE(Preboot eXecution Environment,预启动执行环境)提供了一种使用网络接口(Network Interface)启动计算机的机制,让计算机的启动可以不依赖本地数据存储设备如硬盘或本地已安装的系统,需要基于BIOS的PXE(Preboot eXecution Environment,预启动执行环境)网络启动进行操作系统的启动和烧录。BIOS需要针对MAC(Media Access Control Address,媒体存取控制位址)地址构建对应的网络启动项,在启动过程中自动通过网络启动项进行操作系统的加载以及烧录。
相关技术的网络操作系统的自动化烧录方法为:在基于PXE加载的基础上,确保操作系统可以通过PXE加载网络服务端的操作系统环境。完成方案为BIOS通过PXE技术加载BIOS下网络启动项,完成OS启动,然后在OS下执行安装程序,完成系统的自动烧录。目前各大厂商的BIOS均参照UEFI标准的Device Path标准,来进行启动项的构建描述。DevicePath用于描述的是设备或总线或legacy启动项,这对形成统一的规范接口提供了有力帮助,对于网络启动项的接口标准采用MAC地址进行描述。但是,如果硬件设计支持外接PCIE(peripheral component interconnect express,高速串行计算机扩展总线标准)接口的网卡,同时CPU(central processing unit,中央处理器)本身支持相关网络接口,如10G-KR,10GBASE-KR主要用于背板应用,如刀片服务器、路由器和交换机的集群线路卡等,其中K代表背板,R代表64/66B编码,10G则代表通信速率。在全新的设备中,由于还未对各网卡的固件进行更新配置,对于BIOS来说,其通过设备路径Device_Path描述网络启动项,而Device_Path的主要内容是网卡对应的MAC地址,由于初始固件还未烧录,也未进行网卡固件配置,CPU所支持的网络接口如10G_KR网络接口和外接PCIE接口网卡的MAC地址相同,所以极容易出现两个相同的网络启动项,相应的,BIOS将会构建两个完全相同的网络启动项。而BIOS基于10G_KR和外接网卡的MAC地址构建的网络启动项将完全相同,无法区分,这种情况就会导致无法区别从哪个选项启动加载网络操作系统,为自动化加载烧录网络操作系统带来不便和困难。
鉴于此,如何确保自动化加载烧录网络操作系统的正常进行,是所属领域技术人员需要解决的技术问题。
发明内容
本申请提供了一种网络操作系统加载烧录方法、装置、电子设备及可读存储介质,可确保基于BIOS PXE的全自动化网络加载烧录流程的正常进行。
为解决上述技术问题,本发明实施例提供以下技术方案:
本发明实施例一方面提供了一种网络操作系统加载烧录方法,适用于同时具有内部专用网络接口和外接网卡的服务器,包括:
获取BIOS枚举的所有启动项,并读取各启动项;
若存在读取信息中包括MAC地址的目标启动项,则判断所述MAC地址是否为所述内部专用网络接口的MAC地址;
若所述MAC地址不为所述内部专用网络接口的MAC地址,则标记所述目标启动项对应的设备为网络设备,同时为所述网络设备构建对应的网络启动项,以基于所述网络启动项执行网络操作系统加载烧录操作;
若所述MAC地址为所述内部专用网络接口的MAC地址,则所述目标启动项对应设备不设置对外显示的网络启动项。
可选的,所述目标启动项对应设备不设置对外显示的网络启动项,包括:
为所述目标启动项对应的设备构建隐藏网络启动项,并设置所述隐藏网络启动项的显示属性为不对外显示,以使服务器在执行网络操作系统加载烧录操作过程中无法获取所述隐藏网络启动项。
可选的,所述目标启动项对应设备不设置对外显示的网络启动项,包括:
删除所述目标启动项对应设备为网络设备的标注信息。
可选的,所述目标启动项对应设备不设置对外显示的网络启动项,包括:
隐藏所述目标启动项对应设备为网络设备的标注信息。
可选的,所述判断所述MAC地址是否为所述内部专用网络接口的MAC地址,包括:
循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备;
基于所述预设物理参数条件,从配置空间读取设备标识信息和厂商标识信息;
若所述设备标识信息和所述厂商标识信息均与所述内部专用网络接口的相应标识信息一致,则根据所述设备标识信息和所述厂商标识信息读取所述内部专用网络接口对应的目标MAC地址;
判断所述MAC地址与所述目标MAC地址是否相同。
可选的,所述循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备,包括:
循环扫描PCIE设备树中的各PCIE设备;
判断当前PCIE设备的总线号是否大于第一预设阈值;
若当前PCIE设备的总线号小于等于第一预设阈值,则判断所述当前PCIE设备的设备号是否大于第二预设阈值;
若所述当前PCIE设备的设备号大于第二预设阈值,则将所述当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行所述判断当前PCIE设备的总线号是否小于第一预设阈值的步骤;若所述当前PCIE设备的设备号小于等于第二预设阈值,则判断所述当前PCIE设备的功能号是否大于第三预设阈值;
若所述当前PCIE设备的功能号大于第三预设阈值,则将所述当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行所述判断所述当前PCIE设备的设备号是否大于第二预设阈值的步骤;若所述当前PCIE设备的设备号小于等于第三预设阈值,则判定所述当前PCIE设备为满足所述预设物理参数条件的目标PCIE设备。
可选的,所述读取各启动项,包括:
基于枚举的所有启动项构建启动列表,并将所述启动列表中的每个启动项作为一个对象;
从所述启动列表中读取各对象信息。
本发明实施例另一方面提供了一种网络操作系统加载烧录装置,适用于同时具有内部专用网络接口和外接网卡的服务器,包括:
启动项获取模块,用于获取BIOS枚举的所有启动项;
信息读取模块,用于读取各启动项;
地址识别模块,用于若存在读取信息中包括MAC地址的目标启动项,则判断所述MAC地址是否为所述内部专用网络接口的MAC地址;
网络启动项设置模块,用于若所述MAC地址不为所述内部专用网络接口的MAC地址,则标记所述目标启动项对应的设备为网络设备,同时为所述网络设备构建对应的网络启动项,以基于所述网络启动项执行网络操作系统加载烧录操作;
显示隐藏模块,用于若所述MAC地址为所述内部专用网络接口的MAC地址,则所述目标启动项对应设备不设置对外显示的网络启动项。
本发明实施例还提供了一种电子设备,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述网络操作系统加载烧录方法的步骤。
本发明实施例最后还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前任一项所述网络操作系统加载烧录方法的步骤。
本申请提供的技术方案的优点在于,在BIOS所枚举出来的所有启动项中找到内部专用网络接口对应的启动项,通过将该启动项对应的网络启动项不对外显示可规避内部专用网络接口,最终呈现的网络启动项就只剩下外接网卡对应的网络启动项,解决了由于外置网卡存在导致BIOS建立两个完全一致的网络启动项所导致自动化烧录加载操作系统无法正常执行的弊端,通过在启动项中仅保留一个有效的网络启动项,从而确保自动化加载烧录网络操作系统的正常进行。
此外,本发明实施例还针对网络操作系统加载烧录方法提供了相应的实现装置、电子设备及可读存储介质,进一步使得所述方法更具有实用性,所述装置、电子设备及可读存储介质具有相应的优点。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
为了更清楚的说明本发明实施例或相关技术的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种网络操作系统加载烧录方法的流程示意图;
图2为本发明实施例提供的一个示意性场景中的网络操作系统加载烧录方法的流程示意图;
图3为本发明实施例提供的一个示例性应用场景的MAC地址获取流程示意图;
图4为本发明实施例提供的网络操作系统加载烧录装置的一种具体实施方式结构图;
图5为本发明实施例提供的电子设备的一种具体实施方式结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
在介绍了本发明实施例的技术方案后,下面详细的说明本申请的各种非限制性实施方式。
首先参见图1,图1为本发明实施例提供的一种网络操作系统加载烧录方法的流程示意图,本实施例适用于同时具有内部专用网络接口和外接网卡的服务器,内部专用网络接口如10G_KR用于接给网络交换芯片以完成对应的网络报文交换转发,而外接网卡如PCIE外接的网卡为整机设备提供网络功能。本发明实施例可包括以下内容:
S101:获取BIOS枚举的所有启动项,并读取各启动项。
在本实施例中,BIOS会按照现有方案执行启动项的枚举操作,在执行后期,会枚举所有的启动项,启动项包括网络启动项,硬盘,可移除设备如U盘等。对于同时具有内部专用网络接口和外接网卡的情况,在完成启动项枚举后,BIOS将会构建得到两个完全一致的网络启动项,一为内部专用网络接口如10G_KR接口,另一为外接网卡的网卡启动项。在获取到所有启动项之后,依次读取各启动项的相关信息,如MAC地址。为了便于管理,本实施例可基于枚举的所有启动项构建启动列表,并将启动列表中的每个启动项作为一个对象;从启动列表中读取各对象信息。
S102:若存在读取信息中包括MAC地址的目标启动项,则判断MAC地址是否为内部专用网络接口的MAC地址,若是,则执行S104;若否,则执行S103。
为了有效的完成网络启动项的区别,避免BIOS的误加载,可在加载最后的网络启动项之前,对内部专用网络接口和外接网卡的Device Path进行单独标记,确定最终硬件方案最终将要通过哪个网络启动项加载操作系统。由于内部专用网络接口,其主要功能是接给网络交换芯片以完成对应的网络报文交换转发,而PCIE外接的网卡主要为整机设备提供网络功能。也就是说,在BIOS启动方面内部专用网络接口启动项无实际用途,BIOS可以将其进行规避隐藏。而可以理解的是,MAC地址可作为物理地址,故可其来确认网络设备位置的位址,通过判断MAC地址是否与内部专用网络接口的MAC地址相同,来识别当前启动项是不是内部专用网络接口。
S103:标记目标启动项对应的设备为网络设备,同时为网络设备构建对应的网络启动项,以基于网络启动项执行网络操作系统加载烧录操作。
S104:目标启动项对应设备不设置对外显示的网络启动项。
基于步骤,在BIOS对所有的启动项进行读取,如果目标启动项中能够读到MAC地址,则表明该目标启动项对应的硬件设备具有以太网地址或者是局域网地址,则其为一个网络设备。可根据MAC构建一个对应的网络启动项,如果能在循环的扫描中,判断读到的MAC地址是内部专用网络接口的MAC地址,可对其对应的网络启动项进行标注和隐藏,仅保留使用的网卡启动项,并构建最终只包含一个对外显示网络启动项的启动列表,来确保BIOS自动化启动流程可以顺利执行,有效解决了BIOS将会构建两个完全相同的网络启动项,导致无法区别从哪个选项启动加载网络OS,为自动化烧录OS提供了困难的现状。
在本发明实施例提供的技术方案中,在BIOS所枚举出来的所有启动项中找到内部专用网络接口对应的启动项,通过将该启动项对应的网络启动项不对外显示可规避内部专用网络接口,最终呈现的网络启动项就只剩下外接网卡对应的网络启动项,解决了由于外置网卡存在导致BIOS建立两个完全一致的网络启动项所导致自动化烧录加载操作系统无法正常执行的弊端,通过在启动项中仅保留一个有效的网络启动项,从而确保自动化加载烧录网络操作系统的正常进行。
上述实施例通过对内部专用网络接口如10G_KR和外接网卡所构建的网络启动项进行区别规避,最终直接将区别结果体现在启动列表中,确保启动列表中仅存在一个有效的网络启动项,进一步保证自动化流程准确执行,但至于如何进行规避,并未给出实施方式,本实施例还给出了多种规避内部专用网络接口的方式,可包括:
作为一种可选的实施方式,可为目标启动项对应的设备构建隐藏网络启动项,并设置隐藏网络启动项的显示属性为不对外显示,以使服务器在执行网络操作系统加载烧录操作过程中无法获取隐藏网络启动项。通过不对外显示,在执行网络操作系统加载烧录时,该网络启动项形同虚设,系统便不会识别到2个网络启动项。
作为另外一种可选的实施方式,还可删除目标启动项对应设备为网络设备的标注信息,这样BIOS便不会为该其设置网络启动项,进而也不会导致最终网络启动项中有2项。
作为再一种可选的实施方式,还可隐藏目标启动项对应设备为网络设备的标注信息,通过隐藏网络设备的标注信息,同样BIOS不会将该设备作为网络设备,进而也不会为之构建网络启动项。
通过提供多种规避方式,提升服务器使用灵活性,提升用户使用体验。
可以理解的是,规避内部专用网络接口的过程中需要识别内部专用网络接口,基于此,为了更高效、准确地识别内部专用网络接口,基于上述实施例,还可包括:
循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备;基于预设物理参数条件,从配置空间读取设备标识信息和厂商标识信息;若设备标识信息和厂商标识信息均与内部专用网络接口的相应标识信息一致,则根据设备标识信息和厂商标识信息读取内部专用网络接口对应的目标MAC地址;判断MAC地址与目标MAC地址是否相同。
在本实施例中,物理参数条件由内部专用网络接口的设备参数相关信息相确定,目的是为了从众多PCIE设备中定位内部专用网络接口。作为一种可选的实施方式,循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备的实施过程可包括:
循环扫描PCIE设备树中的各PCIE设备;
判断当前PCIE设备的总线号是否大于第一预设阈值;
若当前PCIE设备的总线号小于等于第一预设阈值,则判断当前PCIE设备的设备号是否大于第二预设阈值;若当前PCIE设备的总线号大于第一预设阈值,则结束,判定不存在满足条件的PCIE设备。
若当前PCIE设备的设备号大于第二预设阈值,则将当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行判断当前PCIE设备的总线号是否小于第一预设阈值的步骤;若当前PCIE设备的设备号小于等于第二预设阈值,则判断当前PCIE设备的功能号是否大于第三预设阈值;
若当前PCIE设备的功能号大于第三预设阈值,则将当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行判断当前PCIE设备的设备号是否大于第二预设阈值的步骤;若当前PCIE设备的设备号小于等于第三预设阈值,则判定当前PCIE设备为满足预设物理参数条件的目标PCIE设备。
其中,第一预设阈值、第二预设阈值和第三预设阈值可根据实际情况进行灵活选择,这均不影响本申请的实现。本实施例可根据DeviceID和VendorID更加方便、快捷地获得到指定网络接口的MAC地址方式,有利于提升整体效率。
为了使所属领域技术人员更加清楚明白本申请的技术方案,本申请以服务器的处理器具有10G_KR接口和外接PCIE设备具有外接网络为例,结合图2和图3,通过对10G_KR接口进行规避,确保网络操作系统加载烧录的正常运行,可包括下述内容:
如图2所示,BIOS开始执行,扫描启动项,构建Devcice Path列表,扫描该DevcicePath列表,筛选网络类型并构建启动列表,并读取启动列表中各启动项的MAC地址。对每个启动项,判断是否可以读取到当前启动项的MAC地址,若当前启动项含有MAC地址,判断该MAC地址与10G_KR接口的MAC地址是否一致,若一致,则该启动项为10G_KR干扰项,可直接标记删除,不加入启动列表。若不一致,则该启动项为网络启动项,构建MAC地址启动名称并加入到启动列表中,判断当前启动项是否为尾节点设备,若是,则完成启动列表的构建,若否,则将当前启动项的下一个启动项作为当前启动项跳回执行步骤“判断是否可以读取到当前启动项的MAC地址”中。
对于如何识别扫描启动设备得到属于10G_KR接口的MAC地址,请参阅图3所示。根据Intel 10G_KR接口的特点,其内部控制器controller采用内部PCIE寻址,也就是说可以把10G_KR的controller理解为一个内置的PCIE设备。同时Intel内部10G_KR的接口的重要特性是,在其PCIE设备的配置空间内,偏移0x40位置,存放着该10G_KR的MAC地址。基于此特性,BIOS将对PCIE设备树进行扫描,根据Device ID和Vendor ID(厂商标识或运营商代码或厂商ID)唯一标识确定10G_KR设备,并读到其对应的MAC地址。然后,在原有流程中根据Devcice Path对象构建启动列表时,将网络设备的MAC地址与之前读到的10G_KR MAC地址进行比对,如果一致,则可判断,该Device Path对象代表10G_KR的网络启动项,从而能准确找到无关项10G_KR的网络启动项,并将其标记隐藏,且不会影响外接网卡,能够确保BIOS启动时,可精准找到唯一的网络启动项,实现自动化烧录流程。
由上可知,本实施例根据Device ID和Vendor ID可便捷有效地获得到指定网络接口的MAC地址,在构建最终启动列表时,将每个启动项的MAC地址与10G_KR的MAC地址进行比对,如果一致,则表明该启动项为多余干扰项,从列表中删除,仅保留实际可用的网卡启动项,通过这样的设计可以解决BIOS启动时,存在多个网络启动项,导致工厂自动化烧录流程无法正常执行的现状,有效避免工厂通过PXE网络启动项进行自动化烧录流程收到干扰。
需要说明的是,本申请中各步骤之间没有严格的先后执行顺序,只要符合逻辑上的顺序,则这些步骤可以同时执行,也可按照某种预设顺序执行,图1-图3只是一种示意方式,并不代表只能是这样的执行顺序。
本发明实施例还针对网络操作系统加载烧录方法提供了相应的装置,进一步使得方法更具有实用性。其中,装置可从功能模块的角度和硬件的角度分别说明。下面对本发明实施例提供的网络操作系统加载烧录装置进行介绍,下文描述的网络操作系统加载烧录装置与上文描述的网络操作系统加载烧录方法可相互对应参照。
基于功能模块的角度,参见图4,图4为本发明实施例提供的网络操作系统加载烧录装置在一种具体实施方式下的结构图,适用于同时具有内部专用网络接口和外接网卡的服务器,该装置可包括:
启动项获取模块401,用于获取BIOS枚举的所有启动项。
信息读取模块402,用于读取各启动项。
地址识别模块403,用于若存在读取信息中包括MAC地址的目标启动项,则判断MAC地址是否为内部专用网络接口的MAC地址。
网络启动项设置模块404,用于若MAC地址不为内部专用网络接口的MAC地址,则标记目标启动项对应的设备为网络设备,同时为网络设备构建对应的网络启动项,以基于网络启动项执行网络操作系统加载烧录操作。
显示隐藏模块405,用于若MAC地址为内部专用网络接口的MAC地址,则目标启动项对应设备不设置对外显示的网络启动项。
可选的,在本实施例的一些实施方式中,上述显示隐藏模块405可用于:为目标启动项对应的设备构建隐藏网络启动项,并设置隐藏网络启动项的显示属性为不对外显示,以使服务器在执行网络操作系统加载烧录操作过程中无法获取隐藏网络启动项。
作为与上述实施例并列的另一种可选的实施方式,上述显示隐藏模块405还可用于:删除目标启动项对应设备为网络设备的标注信息。
作为与上述实施例并列的再一种可选的实施方式,上述显示隐藏模块405还可用于:隐藏目标启动项对应设备为网络设备的标注信息。
可选的,在本实施例的另一些实施方式中,上述地址识别模块403可进一步用于:循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备;基于预设物理参数条件,从配置空间读取设备标识信息和厂商标识信息;若设备标识信息和厂商标识信息均与内部专用网络接口的相应标识信息一致,则根据设备标识信息和厂商标识信息读取内部专用网络接口对应的目标MAC地址;判断MAC地址与目标MAC地址是否相同。
作为本实施例的一种可选的实施方式,上述地址识别模块403还可进一步用于:循环扫描PCIE设备树中的各PCIE设备;判断当前PCIE设备的总线号是否大于第一预设阈值;若当前PCIE设备的总线号小于等于第一预设阈值,则判断当前PCIE设备的设备号是否大于第二预设阈值;若当前PCIE设备的设备号大于第二预设阈值,则跳回执行判断当前PCIE设备的总线号是否小于第一预设阈值的步骤;若当前PCIE设备的设备号小于等于第二预设阈值,则判断当前PCIE设备的功能号是否大于第三预设阈值;若当前PCIE设备的功能号大于第三预设阈值,则跳回执行判断当前PCIE设备的设备号是否大于第二预设阈值的步骤;若当前PCIE设备的设备号小于等于第三预设阈值,则判定当前PCIE设备为满足预设物理参数条件的目标PCIE设备。
作为本实施例的另一种可选的实施方式,上述启动项获取模块401可进一步用于:基于枚举的所有启动项构建启动列表,并将启动列表中的每个启动项作为一个对象;从启动列表中读取各对象信息。
本发明实施例所述网络操作系统加载烧录装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例可确保基于BIOS PXE的全自动化网络加载烧录流程的正常进行。
上文中提到的网络操作系统加载烧录装置是从功能模块的角度描述,进一步的,本申请还提供一种电子设备,是从硬件角度描述。图5为本申请实施例提供的电子设备在一种实施方式下的结构示意图。如图5所示,该电子设备包括存储器50,用于存储计算机程序;处理器51,用于执行计算机程序时实现如上述任一实施例提到的网络操作系统加载烧录方法的步骤,且电子设备部署于同时具有内部专用网络接口和外接网卡的服务器中。
其中,处理器51可以包括一个或多个处理核心,比如4核心处理器、8核心处理器,处理器51还可为控制器、微控制器、微处理器或其他数据处理芯片等。处理器51可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable GateArray,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器51也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器51可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器51还可以包括AI(ArtificialIntelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器50可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器50还可包括高速随机存取存储器以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。存储器50在一些实施例中可以是电子设备的内部存储单元,例如服务器的硬盘。存储器50在另一些实施例中也可以是电子设备的外部存储设备,例如服务器上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器50还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器50不仅可以用于存储安装于电子设备的应用软件及各类数据,例如:执行漏洞处理方法的程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。本实施例中,存储器50至少用于存储以下计算机程序501,其中,该计算机程序被处理器51加载并执行之后,能够实现前述任一实施例公开的网络操作系统加载烧录方法的相关步骤。另外,存储器50所存储的资源还可以包括操作系统502和数据503等,存储方式可以是短暂存储或者永久存储。其中,操作系统502可以包括Windows、Unix、Linux等。数据503可以包括但不限于网络操作系统加载烧录结果对应的数据等。
在一些实施例中,上述电子设备还可包括有显示屏52、输入输出接口53、通信接口54或者称为网络接口、电源55以及通信总线56。其中,显示屏52、输入输出接口53比如键盘(Keyboard)属于用户接口,可选的用户接口还可以包括标准的有线接口、无线接口等。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。通信接口54可选的可以包括有线接口和/或无线接口,如WI-FI接口、蓝牙接口等,通常用于在电子设备与其他电子设备之间建立通信连接。通信总线56可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extendedindustry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本领域技术人员可以理解,图5中示出的结构并不构成对该电子设备的限定,可以包括比图示更多或更少的组件,例如还可包括实现各类功能的传感器57。
本发明实施例所述电子设备的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例可确保基于BIOS PXE的全自动化网络加载烧录流程的正常进行。
可以理解的是,如果上述实施例中的网络操作系统加载烧录方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电可擦除可编程ROM、寄存器、硬盘、多媒体卡、卡型存储器(例如SD或DX存储器等)、磁性存储器、可移动磁盘、CD-ROM、磁碟或者光盘等各种可以存储程序代码的介质。
基于此,本发明实施例还提供了一种可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时如上任意一实施例所述网络操作系统加载烧录方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的硬件包括装置及电子设备而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上对本申请所提供的一种网络操作系统加载烧录方法、装置、电子设备及可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (8)

1.一种网络操作系统加载烧录方法,其特征在于,适用于同时具有内部专用网络接口和外接网卡的服务器,包括:
获取BIOS枚举的所有启动项,并读取各启动项;
若存在读取信息中包括MAC地址的目标启动项,则判断所述MAC地址是否为所述内部专用网络接口的MAC地址;
若所述MAC地址不为所述内部专用网络接口的MAC地址,则标记所述目标启动项对应的设备为网络设备,同时为所述网络设备构建对应的网络启动项,以基于所述网络启动项执行网络操作系统加载烧录操作;
若所述MAC地址为所述内部专用网络接口的MAC地址,则所述目标启动项对应设备不设置对外显示的网络启动项;
其中,所述判断所述MAC地址是否为所述内部专用网络接口的MAC地址,包括:
循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备;基于所述预设物理参数条件,从配置空间读取设备标识信息和厂商标识信息;若所述设备标识信息和所述厂商标识信息均与所述内部专用网络接口的相应标识信息一致,则根据所述设备标识信息和所述厂商标识信息读取所述内部专用网络接口对应的目标MAC地址;判断所述MAC地址与所述目标MAC地址是否相同;
其中,所述循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备,包括:
循环扫描PCIE设备树中的各PCIE设备;
判断当前PCIE设备的总线号是否大于第一预设阈值;
若当前PCIE设备的总线号小于等于第一预设阈值,则判断所述当前PCIE设备的设备号是否大于第二预设阈值;
若所述当前PCIE设备的设备号大于第二预设阈值,则将所述当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行所述判断当前PCIE设备的总线号是否小于第一预设阈值的步骤;若所述当前PCIE设备的设备号小于等于第二预设阈值,则判断所述当前PCIE设备的功能号是否大于第三预设阈值;
若所述当前PCIE设备的功能号大于第三预设阈值,则将所述当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行所述判断所述当前PCIE设备的设备号是否大于第二预设阈值的步骤;若所述当前PCIE设备的设备号小于等于第三预设阈值,则判定所述当前PCIE设备为满足所述预设物理参数条件的目标PCIE设备。
2.根据权利要求1所述的网络操作系统加载烧录方法,其特征在于,所述目标启动项对应设备不设置对外显示的网络启动项,包括:
为所述目标启动项对应的设备构建隐藏网络启动项,并设置所述隐藏网络启动项的显示属性为不对外显示,以使服务器在执行网络操作系统加载烧录操作过程中无法获取所述隐藏网络启动项。
3.根据权利要求1所述的网络操作系统加载烧录方法,其特征在于,所述目标启动项对应设备不设置对外显示的网络启动项,包括:
删除所述目标启动项对应设备为网络设备的标注信息。
4.根据权利要求1所述的网络操作系统加载烧录方法,其特征在于,所述目标启动项对应设备不设置对外显示的网络启动项,包括:
隐藏所述目标启动项对应设备为网络设备的标注信息。
5.根据权利要求1所述的网络操作系统加载烧录方法,其特征在于,所述读取各启动项,包括:
基于枚举的所有启动项构建启动列表,并将所述启动列表中的每个启动项作为一个对象;
从所述启动列表中读取各对象信息。
6.一种网络操作系统加载烧录装置,其特征在于,适用于同时具有内部专用网络接口和外接网卡的服务器,包括:
启动项获取模块,用于获取BIOS枚举的所有启动项;
信息读取模块,用于读取各启动项;
地址识别模块,用于若存在读取信息中包括MAC地址的目标启动项,则判断所述MAC地址是否为所述内部专用网络接口的MAC地址;
网络启动项设置模块,用于若所述MAC地址不为所述内部专用网络接口的MAC地址,则标记所述目标启动项对应的设备为网络设备,同时为所述网络设备构建对应的网络启动项,以基于所述网络启动项执行网络操作系统加载烧录操作;
显示隐藏模块,用于若所述MAC地址为所述内部专用网络接口的MAC地址,则所述目标启动项对应设备不设置对外显示的网络启动项;
其中,所述地址识别模块还用于:
循环扫描PCIE设备树,直至确定存在满足预设物理参数条件的目标PCIE设备;基于所述预设物理参数条件,从配置空间读取设备标识信息和厂商标识信息;若所述设备标识信息和所述厂商标识信息均与所述内部专用网络接口的相应标识信息一致,则根据所述设备标识信息和所述厂商标识信息读取所述内部专用网络接口对应的目标MAC地址;判断所述MAC地址与所述目标MAC地址是否相同;
其中,所述地址识别模块进一步还用于:
循环扫描PCIE设备树中的各PCIE设备;判断当前PCIE设备的总线号是否大于第一预设阈值;若当前PCIE设备的总线号小于等于第一预设阈值,则判断所述当前PCIE设备的设备号是否大于第二预设阈值;若所述当前PCIE设备的设备号大于第二预设阈值,则将所述当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行所述判断当前PCIE设备的总线号是否小于第一预设阈值的步骤;若所述当前PCIE设备的设备号小于等于第二预设阈值,则判断所述当前PCIE设备的功能号是否大于第三预设阈值;若所述当前PCIE设备的功能号大于第三预设阈值,则将所述当前PCIE设备的下一个PCIE设备作为当前PCIE设备跳回执行所述判断所述当前PCIE设备的设备号是否大于第二预设阈值的步骤;若所述当前PCIE设备的设备号小于等于第三预设阈值,则判定所述当前PCIE设备为满足所述预设物理参数条件的目标PCIE设备。
7.一种电子设备,其特征在于,包括处理器和存储器,所述处理器用于执行所述存储器中存储的计算机程序时实现如权利要求1至5任一项所述网络操作系统加载烧录方法的步骤。
8.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述网络操作系统加载烧录方法的步骤。
CN202111151309.7A 2021-09-29 2021-09-29 网络操作系统加载烧录方法、装置、电子设备及存储介质 Active CN113867743B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111151309.7A CN113867743B (zh) 2021-09-29 2021-09-29 网络操作系统加载烧录方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111151309.7A CN113867743B (zh) 2021-09-29 2021-09-29 网络操作系统加载烧录方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN113867743A CN113867743A (zh) 2021-12-31
CN113867743B true CN113867743B (zh) 2023-11-14

Family

ID=78992641

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111151309.7A Active CN113867743B (zh) 2021-09-29 2021-09-29 网络操作系统加载烧录方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113867743B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546431A (zh) * 2022-02-25 2022-05-27 智道网联科技(北京)有限公司 网络设备的mac地址烧录方法、设备和计算机可读存储介质
CN115314471A (zh) * 2022-08-08 2022-11-08 福州创实讯联信息技术有限公司 一种mac地址分配方法及终端

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109002330A (zh) * 2018-07-27 2018-12-14 郑州云海信息技术有限公司 一种识别uefi os启动项的方法、装置及设备
CN109240754A (zh) * 2017-07-03 2019-01-18 中兴通讯股份有限公司 一种配置bios启动项的逻辑器件及方法、系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109240754A (zh) * 2017-07-03 2019-01-18 中兴通讯股份有限公司 一种配置bios启动项的逻辑器件及方法、系统
CN109002330A (zh) * 2018-07-27 2018-12-14 郑州云海信息技术有限公司 一种识别uefi os启动项的方法、装置及设备

Also Published As

Publication number Publication date
CN113867743A (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
CN113867743B (zh) 网络操作系统加载烧录方法、装置、电子设备及存储介质
US20120191960A1 (en) Booting computing devices
CN103593281B (zh) 测试系统及测试方法
WO2018076792A1 (zh) 一种arm设备中磁盘管理的方法、装置和arm设备
CN106155657A (zh) Uefi 固件的方法及其计算机系统
CN109408122B (zh) 一种设备启动方法、电子设备和计算机存储介质
CN104679540A (zh) 计算机系统与计算机系统启动方法
CN107729071B (zh) 一种初始化网卡的方法及装置
CN112506745B (zh) 内存温度读取方法、装置及计算机可读存储介质
CN109936716B (zh) 一种显示驱动的实现方法及系统
CN109189486B (zh) 显示屏驱动的加载方法、装置、终端及存储介质
CN102073514A (zh) 基本输入输出系统的更新方法
CN113849272A (zh) 在虚拟机中添加gpu资源的方法及装置
CN116009921A (zh) 一种嵌入式操作系统升级方法、装置及其介质
CN113204384A (zh) 设备启动方法、装置及计算机可读存储介质
CN113190279A (zh) 一种预启动功能控制方法、系统及介质
CN112667442A (zh) 基于非易失内存器件启动系统的控制方法、装置及设备
US8452949B1 (en) Optical boot to eliminate changing BIOS to boot externally attached storage device
CN116775413A (zh) 一种pcie拓扑扫描方法、装置、设备及可读存储介质
US11816058B2 (en) Method for dynamically modifying PCH PCIE root port where onboard VGA is located
CN113849229A (zh) 服务器开机方法、装置、电子设备及可读存储介质
CN106095643A (zh) 系统参数存取的设定方法及其服务器
CN115878327A (zh) 总线预留方法、装置、服务器、电子设备和存储介质
CN113721993A (zh) 一种系统启动方法、装置、设备和计算机可读存储介质
CN115664953B (zh) 一种外接设备的资源分配方法及相关装置

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
GR01 Patent grant
GR01 Patent grant