CN117311890B - 服务器启动过程中的画面显示方法及装置 - Google Patents

服务器启动过程中的画面显示方法及装置 Download PDF

Info

Publication number
CN117311890B
CN117311890B CN202311608877.4A CN202311608877A CN117311890B CN 117311890 B CN117311890 B CN 117311890B CN 202311608877 A CN202311608877 A CN 202311608877A CN 117311890 B CN117311890 B CN 117311890B
Authority
CN
China
Prior art keywords
display
display device
root bridge
server
bus
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
CN202311608877.4A
Other languages
English (en)
Other versions
CN117311890A (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 Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain 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 Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202311608877.4A priority Critical patent/CN117311890B/zh
Publication of CN117311890A publication Critical patent/CN117311890A/zh
Application granted granted Critical
Publication of CN117311890B publication Critical patent/CN117311890B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • 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
    • 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/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Digital Computer Display Output (AREA)

Abstract

本申请提供一种服务器启动过程中的画面显示方法及装置,涉及计算机技术领域,该方法包括:在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。实现了在启动过程的早期阶段(PEI阶段),输出屏幕显示,减少黑屏时长,优化用户体验,同时将启动代码的执行节点和问题显示出来,方便测试、工厂和用户定位解决问题。

Description

服务器启动过程中的画面显示方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种服务器启动过程中的画面显示方法及装置。
背景技术
服务器启动过程中,总线设备在BDS阶段进行枚举、资源分配,并将枚举到的设备匹配、加载驱动。通过加载好的驱动接口,才能正常使用总线硬件设备。同样显示设备作为总线设备,也需要在BDS阶段,枚举、加载驱动后才能将显示画面输出到屏幕上。
然而,上述方法在按下开机键后,在BDS阶段之前很长的时间内,服务器上连接的屏幕处于黑屏状态,用户无法确定当前服务器的状态,使用户在等待服务启动的过程中,产生等待焦虑,从而降低了用户满意度。因此,亟需一种有效的方案以解决上述问题。
发明内容
本申请的目的是提供一种服务器启动过程中的画面显示方法及装置,用于解决服务器启动后屏幕的黑屏时间过程和用户满意度低的缺陷。
本申请提供一种服务器启动过程中的画面显示方法,包括:
在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;
从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;
在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
可选地,所述读取所述服务器上的至少一个根桥寄存器,包括:
确定所述服务器对应的中央处理器平台的平台特性;
根据所述平台特性,确定所述服务器上至少一个根桥寄存器的读取方式;
根据各所述读取方式,分别读取各所述根桥寄存器,得到各所述根桥寄存器的状态信息和配置信息。
可选地,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备,包括:
针对每个所述根桥寄存器,根据所述根桥寄存器的状态参数和配置信息,配置所述根桥寄存器的第一配置空间;
基于各所述根桥寄存器的第一配置空间,从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备。
可选地,所述在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段之前,还包括:
获取所述服务器对应的中央处理器平台的资源分配与控制配置规则;
基于所述资源分配与控制配置规则,配置各所述显示设备的第二配置空间,并为各所述显示设备分配资源空间;
相应地,所述在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段,包括:
在加载显示驱动程序的情况下,确定显示信息,所述显示信息表征启动代码的执行阶段;
基于驱动接口将所述显示信息写入各所述第二配置空间的共享空间;
针对每个所述显示设备,调用所述显示设备从所述显示设备对应的所述共享空间中读取所述显示信息;
针对每个所述显示设备,调用所述显示设备基于所述显示信息向所述显示设备的所述资源空间填充像素,从而使所述显示设备进行画面显示,以展示所述启动代码的执行阶段。
可选地,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备,包括:
读取显示配置界面的显示选项,所述显示配置界面用于配置显示输出类型;
根据所述显示选项,确定显示输出类型;
从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备。
可选地,所述显示输出类型为板载输出类型或显卡显示输出类型;
相应地,所述从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备,包括:
在所述显示输出类型为板载输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备;
在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
可选地,所述在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备,包括:
在所述显示输出类型为显卡显示输出类型的情况下,判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡;
若是,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
可选地,所述判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡之后,还包括:
若否,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备。
可选地,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备,包括:
读取所述显示配置界面中各初始总线显卡的开关状态;
从各所述根桥寄存器所关联的总线设备中,筛选出所述开关状态为打开状态的目标总线显卡,作为显示设备。
可选地,所述读取显示配置界面的显示选项之前,还包括:
接收并响应于界面显示指令,显示所述显示配置界面;
接收针对所述显示配置界面的第一设置指令,所述第一设置指令中携带有显示输出类型;
根据所述显示输出类型,设置所述显示配置界面的显示选项。
可选地,所述读取所述显示配置界面中各初始总线显卡的开关状态之前,还包括:
接收针对所述显示配置界面的第二设置指令,所述第二设置指令中携带有各所述初始总线显卡的开关参数;
根据各所述初始总线显卡的开关参数,设置所述显示配置界面中各初始总线显卡的开关状态。
可选地,所述方法还包括:
在检测到服务器的启动过程处于BDS阶段的情况下,清除对各所述根桥寄存器的配置。
本申请还提供一种服务器启动过程中的画面显示装置,包括:
读取模块,被配置为在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;
筛选模块,被配置为从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;
显示模块,被配置为在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
本申请还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上述任一种所述服务器启动过程中的画面显示方法的步骤。
本申请还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述服务器启动过程中的画面显示方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述服务器启动过程中的画面显示方法的步骤。
本申请提供的服务器启动过程中的画面显示方法及装置,通过在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。实现了在启动过程的早期阶段(PEI阶段),输出屏幕显示,减少黑屏时长,优化用户体验,同时将启动代码的执行节点和问题显示出来,方便测试、工厂和用户定位解决问题。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的服务器启动过程中的画面显示方法的流程示意图之一;
图2是本申请提供的服务器启动过程中的画面显示方法的流程示意图之二;
图3是本申请提供的服务器启动过程中的画面显示方法的流程示意图之三;
图4是本申请提供的服务器启动过程中的画面显示装置的结构示意图;
图5是本申请提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
首先对本申请涉及的相关知识进行介绍。
ROM(Read-Only Memory),即只读存储器。
BIOS(Basic Output and Input System),即基本输入输出***,是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和***自启动程序,它有读写***设置的具体信息。
UEFI(Unified Extensible Firmware Interface),即统一可扩展固件接口。
BMC(Baseboard Management Controller),即服务器的基板管理控制器。
VGA(Video Graphics Array),即视频图形阵列,是一种标准的显示接口,在视频和计算机领域得到了广泛的应用。
SEC(Security Phase),即BIOS启动过程中的安全验证阶段。
PEI(Pre-EFI Initialization),即BIOS启动过程中的EFI前期初始化阶段。
DXE(Driver Execution Environment),即BIOS启动过程中的驱动执行环境。
BDS(Boot Device Selection),即BIOS启动过程中的启动设备选择。
TSL(Transient System Load),即BIOS启动过程中的操作***加载器(OSLoader)执行的第一阶段。
RT(Run Time),是指控制权从UEFI内核转交到OS Loader上的阶段。
AL(After Life),在该阶段中,如果***(硬件或软件)遇到灾难性错误,***固件需要提供错误处理和灾难恢复机制。
PCIe(Peripheral Component Interconnect Express),是一种高速串行计算机扩展总线标准,以下简称总线。
根桥寄存器(Root Bridge)是PCIe控制器的一部分,主要完成对其下行设备的枚举,配置以及信息传输。
BIOS是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的开机上电自检、硬件初始化程序和***底层的服务程序等。UEFI启动是新一代的BIOS,功能更加强大,而且它是以图形图像模式显示,让用户更加便捷地操作。
UEFI***的启动遵循UEFI平台初始化标准。UEFI从加电开机到关机可分为7个阶段:SEC(安全验证)->PEI(EFI前期初始化)->DXE(驱动执行环境)->BDS(启动设备选择)->TSL(操作***加载前期)->RT(Run Time)->AL(***灾难恢复期)。
目前服务器上UEFI图形图像显示,都是在BDS阶段完成对PCIe显示设备的初始化后,将UEFI的图形图像输出到屏幕上显示。图形图像显示数据包十分巨大,同时刷新频繁。而PCIe是一种高速串行计算机扩展总线标准,所连接的设备分配独享通道带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量等功能。所以计算机上显示设备通过PCIe总线传输数据,是一种PCIe设备。
服务器上显示输出接口主要有两个方面,一是板载的BMC的VGA接口,这个接口是由CPU通过PCIe总线连接到BMC芯片,将显示数据输出到BMC芯片的VGA显示接口所连接屏幕上。二是PCIe显卡设备,通过插在服务器的PCIe插槽与CPU连接,获取显示数据输出。
随着服务器的快速发展,对服务器性能方面要求越来越高,除性能外其它各方面指标也要求越来越高。各大厂商都试图打造完美型服务器来满足客户各种需求。 开发功能的同时也需要更加注重用户体验,任何微小的不好的体验都可能让客户决定不再继续购买同品牌的服务器。
服务器启动过程中,PCIE设备在BDS阶段进行枚举、资源分配,并将枚举到的设备匹配、加载驱动。通过加载好的驱动接口,用户才能正常使用PCIe硬件设备。同样显示设备作为PCIe设备,也需要在BDS阶段,枚举、加载驱动后才能将显示画面输出到屏幕上。
但是原有服务器启动过程中显示方案存在以下问题:
1)在按下开机键后,服务器上连接的屏幕有很长时间处于黑屏状态,无法判断启动是否已经宕机以及启动代码执行到哪里;无法直观展示执行过程,在较长服务器开机过程中,容易使用户产生等待焦虑。
2)缺少对显示设备的显示画面的输出控制,用户无法控制画面从哪个设备输出,同时显示设备同时输出画面,增加服务器功耗,增加设备的运行成本。
为此,本申请提供了一种服务器启动过程中的画面显示方法及装置,通过在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。实现了在启动过程的早期阶段(PEI阶段),输出屏幕显示,减少黑屏时长,优化用户体验,同时将启动代码的执行节点和问题显示出来,方便测试、工厂和用户定位解决问题。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的服务器启动过程中的画面显示方法进行详细地说明。
图1是本申请提供的服务器启动过程中的画面显示方法的流程示意图之一。如图1所示,本申请实施例提供的一种服务器启动过程中的画面显示方法,该方法可以包括下述步骤101和步骤103:
步骤101:在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器。
具体地,服务器在上电之后,开始进入启动过程,先是进入到SEC阶段,即进行安全验证阶段,在安全验证完成后,启动过程进入到PEI阶段,即EFI前期初始化阶段。
在检测到安全验证完成或者EFI开始进行前期初始化的情况下,表明服务器的启动过程进入到PEI阶段。进入PEI阶段后,服务器的CPU基本功能和内存已经初始完成,BIOS开始进入C语言环境,此时,可以读取服务器上连接的各个Root Bridge寄存器。
步骤102:从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备。
具体地,每个Root Bridge寄存器下挂着多个PCIe设备,即每个Root Bridge寄存器关联着多个总线设备。在一定范围下,遍历每个在Root Bridge寄存器下的PCIe设备,寻找显示PCIe显示设备,即筛选出至少一个显示设备。
显示设备分为两大类:一是服务器主板上BMC的VGA显示输出,即视频图形阵列设备,作为板载输出接口;二是插在PCIe插槽上的显卡显示输出,即总线显卡(PCIe显卡),而PCIe插槽上可能插一个或多个PCIe显卡。
示例性地,显示设备为VGA,则遍历在一定范围下,遍历每个在Root Bridge寄存器下的PCIe设备,共查找到一个VGA。
示例性地,显示设备为PCIe显卡,则遍历在一定范围下,遍历每个在Root Bridge寄存器下的PCIe设备,共查找到多个PCIe显卡。
步骤103:在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
在确定了显示设备之后,加载简化的显示驱动程序,以启动显示功能,即在完成PEI阶段显示设备的初始化,进而调用字符显示接口,将启动代码执行的节点,即启动代码的执行阶段,通过显示设备输出到屏幕上,即实现画面显示。
本申请实施例提供的服务器启动过程中的画面显示方法,通过在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。实现了在启动过程的早期阶段(PEI阶段),输出屏幕显示,减少黑屏时长,优化用户体验,同时将启动代码的执行节点和问题显示出来,方便测试、工厂和用户定位解决问题。
在本申请一个或更多个可选的实施例中,所述读取所述服务器上的至少一个根桥寄存器,具体实现过程可以如下:
确定所述服务器对应的中央处理器平台的平台特性;
根据所述平台特性,确定所述服务器上至少一个根桥寄存器的读取方式;
根据各所述读取方式,分别读取各所述根桥寄存器,得到各所述根桥寄存器的状态信息和配置信息。
具体地,中央处理器平台的平台特性即CPU平台特性。不同的CPU平台特性会影响对Root Bridge寄存器的读取方式。为了保证可以快速准确地对Root Bridge寄存器进行读取,可以先确定CPU平台特性,即确定服务器对应的CPU平台的平台特性。
进一步地,基于不同的CPU平台特性,确定读取各Root Bridge寄存器的读取方式。进而,基于各Root Bridge寄存器的读取方式,读取Root Bridge寄存器,以获取RootBridge寄存器的状态参数和CPU厂商对Root Bridge配置,即Root Bridge寄存器的状态参数和配置信息。
其中,状态参数用于表征Root Bridge寄存器中内部各项设置的参数。
如此,基于CPU平台特性读取Root Bridge寄存器,可以提高读取的效率和准确率,进而提高获取状态信息和配置信息的可靠性和准确性。
在本申请一个或更多个可选的实施例中,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备,具体实现过程可以如下:
针对每个所述根桥寄存器,根据所述根桥寄存器的状态参数和配置信息,配置所述根桥寄存器的第一配置空间;
基于各所述根桥寄存器的第一配置空间,从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备。
具体地,在获取到Root Bridge寄存器的状态参数和配置信息的基础上,进一步地,配置Root Bridge寄存器的配置空间,即第一配置空间。
针对任一Root Bridge寄存器,根据当前Root Bridge寄存器的状态参数和配置信息,对当前Root Bridge寄存器的第一配置空间进行配置。遍历各Root Bridge寄存器,实现对各Root Bridge寄存器的第一配置空间的配置。如此,基于状态参数和配置信息进行第一配置空间的配置,可以提高第一配置空间的合理性和准确度。
进一步地,基于各根桥寄存器的第一配置空间,从各根桥寄存器所关联的总线设备中筛选出至少一个显示设备。如此,可以提高筛选效率。
示例性地,针对任一Root Bridge寄存器,在该Root Bridge寄存器的第一配置空间的共享区域写入筛选信息,使该Root Bridge寄存器具有遍历功能,进而使该RootBridge寄存器从其所关联的总线设备中筛选出至少一个显示设备。
在本申请一个或更多个可选的实施例中,所述在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段之前,还包括:
获取所述服务器对应的中央处理器平台的资源分配与控制配置规则;
基于所述资源分配与控制配置规则,配置各所述显示设备的第二配置空间,并为各所述显示设备分配资源空间;
相应地,所述在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段,包括:
在加载显示驱动程序的情况下,确定显示信息,所述显示信息表征启动代码的执行阶段;
基于驱动接口将所述显示信息写入各所述第二配置空间的共享空间;
针对每个所述显示设备,调用所述显示设备从所述显示设备对应的所述共享空间中读取所述显示信息;
针对每个所述显示设备,调用所述显示设备基于所述显示信息向所述显示设备的所述资源空间填充像素,从而使所述显示设备进行画面显示,以展示所述启动代码的执行阶段。
具体地,资源分配与控制配置规则即CPU平台的资源分配空间与规则。
实际应用中,可以获取服务器对应的CPU平台的资源分配与控制配置规则,然后按照该资源分配与控制配置规则,对各显示设备的第二配置空间进行配置,以及为各显示设备分配资源空间。如此,可以提高配置第二配置空间和分配资源空间的合理性和效率。
进一步地,加载简化的显示驱动程序,完成显示设备的初始化。然后确定要通过画面显示的显示信息,所述显示信息表征启动代码的执行阶段。基于驱动接口将显示信息写入每个显示设备第二配置空间的共享空间。
之后,各个显示设备从其第二配置空间的共享空间中获取显示信息,并调用驱动接口,将显示信息对应的像素填充在资源空间内,从而显示设备进行画面显示,画面显示的内容为启动代码的执行阶段。如此,可以提高画面显示的效率和准确性。
在本申请一个或更多个可选的实施例中,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备,包括:
读取显示配置界面的显示选项,所述显示配置界面用于配置显示输出类型;
根据所述显示选项,确定显示输出类型;
从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备。
具体地,可以先读取显示配置界面的显示选项,确定当前需要进行画面显示的显示设备的显示输出类型。
进一步地,从各根桥寄存器所关联的总线设备中,筛选出与该显示输出类型对应的各个显示设备。例如先筛选出从各根桥寄存器所关联的总线设备中的所有显示设备,然后将属于该显示输出类型的显示设备,作为最终进行画面显示的显示设备。
在本申请一个或更多个可选的实施例中,所述显示输出类型为板载输出类型或显卡显示输出类型;
相应地,所述从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备,包括:
在所述显示输出类型为板载输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备;
在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
具体地,显示设备分为两大类:一是服务器主板上BMC的VGA显示输出,即视频图形阵列设备,作为板载输出接口;二是插在PCIe插槽上的显卡显示输出,即总线显卡(PCIe显卡),而PCIe插槽上可能插一个或多个PCIe显卡。
在BIOS配置界面,即显示配置界面,可以选择板载显示输出或PCIe显示输出。选择板载显示,直接在BMC的VGA显示输出。选择PCIe显卡输出后,则由插槽上的PCIe显卡显示输出。
实际应用中,在显示输出类型为板载输出类型的情况下,从各Root Bridge寄存器所关联的总线设备中筛选出VGA,作为显示设备;在显示输出类型为显卡显示输出类型的情况下,从各Root Bridge寄存器所关联的总线设备中筛选出至少一个PCIe显卡作为显示设备。
在本申请一个或更多个可选的实施例中,所述在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备,具体实现过程可以如下:
在所述显示输出类型为显卡显示输出类型的情况下,判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡;
若是,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
具体地,BIOS配置界面,默认显示输出类型为板载显示输出,板载输出类型。当选择PCIe显示输出时,即默认显示输出类型为显卡显示输出类型时,需要检查插槽上没有PCIe显卡。若有PCIe显卡,则从各根桥寄存器所关联的总线设备中筛选出至少一个PCIe显卡,作为显示设备。
在本申请一个或更多个可选的实施例中,所述判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡之后,还包括:
若否,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备。
具体地,BIOS配置界面,默认显示输出类型为板载显示输出,板载输出类型。当选择PCIe显示输出时,即默认显示输出类型为显卡显示输出类型时,需要检查插槽上没有PCIe显卡。若没有PCIe显卡,则强制选择板载显示输出,即从各根桥寄存器所关联的总线设备中筛选出VGA,作为显示设备。
在本申请一个或更多个可选的实施例中,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备,具体实现过程可以如下:
读取所述显示配置界面中各初始总线显卡的开关状态;
从各所述根桥寄存器所关联的总线设备中,筛选出所述开关状态为打开状态的目标总线显卡,作为显示设备。
具体地,在BIOS配置界面可以选择板载显示输出或PCIe显示输出。选择PCIe显卡输出后,将插槽上的所有PCIe显示设备列出并增加每个显示设备的打开关闭的选项,使用户进一步自主配置显示输出设备。
进一步地,需要从显示配置界面(BIOS配置界面),读取各初始总线显卡的开关状态,并从各Root Bridge寄存器所关联的总线设备中,筛选出开关状态为打开状态的目标总线显卡,作为显示设备。
示例性地,从各Root Bridge寄存器所关联的总线设备中,筛选出所有初始总线显卡,将开关状态为打开状态的初始总线显卡,即目标总线显卡,作为显示设备。
如此,可以使用户自主配置显示输出设备。
在本申请一个或更多个可选的实施例中,所述读取显示配置界面的显示选项之前,还包括:
接收并响应于界面显示指令,显示所述显示配置界面;
接收针对所述显示配置界面的第一设置指令,所述第一设置指令中携带有显示输出类型;
根据所述显示输出类型,设置所述显示配置界面的显示选项。
具体地,用户想要设置显示设备,需要打开界面显示指令,即触发界面显示指令。相应地,服务器接收到界面显示指令,并展示显示配置界面。
然后,用户在显示配置界面的显示选项中进行显示输出类型的选择,即生成针对显示配置界面的第一设置指令。进而服务器基于第一设置指令中携带的显示输出类型设置显示选项。如此,通过人机交互,可以接收用户需求,进而可以按照用户需求进行显示输出,提高用户满意度。
在本申请一个或更多个可选的实施例中,所述读取所述显示配置界面中各初始总线显卡的开关状态之前,还包括:
接收针对所述显示配置界面的第二设置指令,所述第二设置指令中携带有各所述初始总线显卡的开关参数;
根据各所述初始总线显卡的开关参数,设置所述显示配置界面中各初始总线显卡的开关状态。
具体地,在显示选项表征为显卡显示输出类型的情况下,显示配置界面会显示列出每个总线显卡并增加每个总线显卡的打开关闭选项,使用户进一步自主配置显示输出设备。
用户在显示配置界面的打开关闭选项中进行总线显卡的打开和关闭的选择,即生成针对显示配置界面的第二设置指令。进而服务器基于第二设置指令中携带的各初始总线显卡的开关参数,设置各初始总线显卡的开关状态。如此,通过人机交互,可以接收用户需求,进而可以按照用户需求进行显示输出,提高用户满意度。
如此,增加显示输出的控制方案,丰富BIOS自身的功能,也通过定制显示配置,减少服务器功耗,增加设备的运行成本。
在本申请一个或更多个可选的实施例中,所述方法还包括:
在检测到服务器的启动过程处于BDS阶段的情况下,清除对各所述根桥寄存器的配置。
具体地,由于在PEI阶段的显示配置是临时的方案,为了避免与BDS阶段完整的PCIe设备枚举、配置等产生冲突,需要在启动程序进入BDS阶段后,清除对Root Bridge寄存器的配置。
需要说明的是,本申请提供的服务器启动过程中的画面显示方法不光在启动初期PEI阶段,初始化显示设备输出显示画面方案上控制显示输出,也在BDS阶段的完整PCIe设备枚举、配置时控制输出,来实现BIOS的整个启动过程的显示控制。
下面结合图2对本申请提供的服务器启动过程中的画面显示方法进行进一步描述。参见图2,图2是本申请提供的服务器启动过程中的画面显示方法的流程示意图之二:
在启动过程初期的PEI阶段,初始化显示设备输出显示画面:
首先,进入PEI阶段后,CPU基本功能和内存已经初始完成,BIOS开始进入C语言环境。根据不同的CPU平台特性,读取Root Bridge寄存器,获取Root Bridge的状态参数和CPU厂商对Root Bridge配置(配置信息)。接着根据状态参和配置信息,设置Root Bridge配置空间(第一配置空间)。在一定范围下,遍历Root Bridge寄存器下的PCIe设备,寻找显示设备。
判断是否是最后一个Root Bridge寄存器。若否,则返回读取Root Bridge寄存器的步骤。若是,则根据CPU平台的资源分配空间与规则,读取显示设备的配置空间并分配资源,即设置配置空间(第二配置空间)和分配资源。
进一步地,加载显示驱动程序,调用驱动接口向资源空间内填充像素,输出显示画面,即将显示信息(启动代码的执行阶段)输出到屏幕。
其中,每个CPU下都有多个Root Bridge寄存器,需要根据实际情况,循环配置遍历,将各个Root Bridge寄存器的所有PCIe显示都找到并初始化完成。在完成PEI阶段显示设备的初始化的情况下,调用字符显示接口,将启动代码的执行的节点(启动代码的执行阶段)输出到屏幕上。
需要说明的是,在PEI阶段的显示配置是临时的方案,为了避免在BDS阶段完整的PCIe设备枚举、配置冲突,需要在进入BDS阶段后,清除对Root Bridge寄存器的配置。
本实施例,通过在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。实现了在启动过程的早期阶段(PEI阶段),输出屏幕显示,减少黑屏时长,优化用户体验,同时将启动代码的执行节点和问题显示出来,方便测试、工厂和用户定位解决问题。
参见图3,图3是本申请提供的服务器启动过程中的画面显示方法的流程示意图之三:
显示设备的控制方案:显示设备分为两大类,一是服务器主板上的BMC的VGA显示输出,作为板载输出接口,二是插在PCIe插槽上的显卡显示输出。而PCIe插槽上可能插一个或多个PCIe显卡设备。在BIOS配置界面可以选择板载显示输出或PCIe显示输出。选择板载显示,直接在BMC的VGA显示输出。选择PCIe显卡输出后,将插槽上的所有PCIe显示设备列出并增加每个显示设备的打开关闭的选项,使用户进一步自主配置显示输出设备。BIOS配置界面,默认是板载显示输出。当选择PCIe显示输出时,而插槽上没有PCIe显卡设备情况下,强制选择板载显示输出。
具体地,先读取BIOS配置界面的显示选项,判断是否为板载显示。若是板载显示,则查找VGA,初始化VGA,由VGA进行画面显示。若不是板载显示,则查找PCIe显卡,进一步判断是否存在PCIe显卡,若存在PCIe显卡,则读取BIOS配置界面的开关状态,根据查找开关状态为打开状态的目标PCIe显卡,初始化目标PCIe显卡,并由目标PCIe显卡进行画面显示。若不存在PCIe显卡,则查找VGA,初始化VGA,由VGA进行画面显示。
本实施例,增加显示输出的控制方案,丰富BIOS自身的功能,也通过定制显示配置,减少服务器功耗,增加设备的运行成本。
需要说明的是,本申请实施例提供的服务器启动过程中的画面显示方法,执行主体可以为服务器启动过程中的画面显示装置,或者该服务器启动过程中的画面显示装置中的用于执行服务器启动过程中的画面显示方法的控制模块。本申请实施例中以服务器启动过程中的画面显示装置执行服务器启动过程中的画面显示方法为例,说明本申请实施例提供的服务器启动过程中的画面显示装置。
需要说明的是,本申请实施例中,上述各个方法附图所示的服务器启动过程中的画面显示方法均是以结合本申请实施例中的一个附图为例示例性的说明的。具体实现时,上述各个方法附图所示的服务器启动过程中的画面显示方法还可以结合上述实施例中示意的其它可以结合的任意附图实现,此处不再赘述。
下面对本申请提供的服务器启动过程中的画面显示装置进行描述,下文描述的与上文描述的服务器启动过程中的画面显示方法可相互对应参照。
图4是本申请实施例提供的服务器启动过程中的画面显示装置的结构示意图,如图4所示,具体包括:
读取模块401,被配置为在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;
筛选模块402,被配置为从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;
显示模块403,被配置为在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
本申请提供的服务器启动过程中的画面显示装置,通过在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。实现了在启动过程的早期阶段(PEI阶段),输出屏幕显示,减少黑屏时长,优化用户体验,同时将启动代码的执行节点和问题显示出来,方便测试、工厂和用户定位解决问题。
在本申请一个或更多个可选的实施例中,所述读取模块401,进一步被配置为:
确定所述服务器对应的中央处理器平台的平台特性;
根据所述平台特性,确定所述服务器上至少一个根桥寄存器的读取方式;
根据各所述读取方式,分别读取各所述根桥寄存器,得到各所述根桥寄存器的状态信息和配置信息。
在本申请一个或更多个可选的实施例中,所述筛选模块402,进一步被配置为:
针对每个所述根桥寄存器,根据所述根桥寄存器的状态参数和配置信息,配置所述根桥寄存器的第一配置空间;
基于各所述根桥寄存器的第一配置空间,从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备。
在本申请一个或更多个可选的实施例中,所述装置还包括获取模块,被配置为:
获取所述服务器对应的中央处理器平台的资源分配与控制配置规则;
基于所述资源分配与控制配置规则,配置各所述显示设备的第二配置空间,并为各所述显示设备分配资源空间;
相应地,所述显示模块403,进一步被配置为:
在加载显示驱动程序的情况下,确定显示信息,所述显示信息表征启动代码的执行阶段;
基于驱动接口将所述显示信息写入各所述第二配置空间的共享空间;
针对每个所述显示设备,调用所述显示设备从所述显示设备对应的所述共享空间中读取所述显示信息;
针对每个所述显示设备,调用所述显示设备基于所述显示信息向所述显示设备的所述资源空间填充像素,从而使所述显示设备进行画面显示,以展示所述启动代码的执行阶段。
在本申请一个或更多个可选的实施例中,所述筛选模块402,进一步被配置为:
读取显示配置界面的显示选项,所述显示配置界面用于配置显示输出类型;
根据所述显示选项,确定显示输出类型;
从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备。
在本申请一个或更多个可选的实施例中,所述显示输出类型为板载输出类型或显卡显示输出类型;
相应地,所述筛选模块402,进一步被配置为:
在所述显示输出类型为板载输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备;
在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
在本申请一个或更多个可选的实施例中,所述筛选模块402,进一步被配置为:
在所述显示输出类型为显卡显示输出类型的情况下,判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡;
若是,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
在本申请一个或更多个可选的实施例中,所述筛选模块402,进一步被配置为:
若否,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备。
在本申请一个或更多个可选的实施例中,所述筛选模块402,进一步被配置为:
读取所述显示配置界面中各初始总线显卡的开关状态;
从各所述根桥寄存器所关联的总线设备中,筛选出所述开关状态为打开状态的目标总线显卡,作为显示设备。
在本申请一个或更多个可选的实施例中,所述装置还包括第一设置模块,被配置为:
接收并响应于界面显示指令,显示所述显示配置界面;
接收针对所述显示配置界面的第一设置指令,所述第一设置指令中携带有显示输出类型;
根据所述显示输出类型,设置所述显示配置界面的显示选项。
在本申请一个或更多个可选的实施例中,所述装置还包括第二设置模块,被配置为:
接收针对所述显示配置界面的第二设置指令,所述第二设置指令中携带有各所述初始总线显卡的开关参数;
根据各所述初始总线显卡的开关参数,设置所述显示配置界面中各初始总线显卡的开关状态。
在本申请一个或更多个可选的实施例中,所述装置还包括清除模块,被配置为:
在检测到服务器的启动过程处于BDS阶段的情况下,清除对各所述根桥寄存器的配置。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行服务器启动过程中的画面显示方法,该方法包括:在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的服务器启动过程中的画面显示方法,该方法包括:在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
又一方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的服务器启动过程中的画面显示方法,该方法包括:在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (14)

1.一种服务器启动过程中的画面显示方法,其特征在于,包括:
在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;
从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;
在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段;
所述在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段之前,还包括:
获取所述服务器对应的中央处理器平台的资源分配与控制配置规则;
基于所述资源分配与控制配置规则,配置各所述显示设备的第二配置空间,并为各所述显示设备分配资源空间;
相应地,所述在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段,包括:
在加载显示驱动程序的情况下,确定显示信息,所述显示信息表征启动代码的执行阶段;
基于驱动接口将所述显示信息写入各所述第二配置空间的共享空间;
针对每个所述显示设备,调用所述显示设备从所述显示设备对应的所述共享空间中读取所述显示信息;
针对每个所述显示设备,调用所述显示设备基于所述显示信息向所述显示设备的所述资源空间填充像素,从而使所述显示设备进行画面显示,以展示所述启动代码的执行阶段。
2.根据权利要求1所述的服务器启动过程中的画面显示方法,其特征在于,所述读取所述服务器上的至少一个根桥寄存器,包括:
确定所述服务器对应的中央处理器平台的平台特性;
根据所述平台特性,确定所述服务器上至少一个根桥寄存器的读取方式;
根据各所述读取方式,分别读取各所述根桥寄存器,得到各所述根桥寄存器的状态信息和配置信息。
3.根据权利要求2所述的服务器启动过程中的画面显示方法,其特征在于,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备,包括:
针对每个所述根桥寄存器,根据所述根桥寄存器的状态参数和配置信息,配置所述根桥寄存器的第一配置空间;
基于各所述根桥寄存器的第一配置空间,从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备。
4.根据权利要求1所述的服务器启动过程中的画面显示方法,其特征在于,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备,包括:
读取显示配置界面的显示选项,所述显示配置界面用于配置显示输出类型;
根据所述显示选项,确定显示输出类型;
从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备。
5.根据权利要求4所述的服务器启动过程中的画面显示方法,其特征在于,所述显示输出类型为板载输出类型或显卡显示输出类型;
相应地,所述从各所述根桥寄存器所关联的总线设备中,筛选出与所述显示输出类型对应的至少一个显示设备,包括:
在所述显示输出类型为板载输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备;
在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
6.根据权利要求5所述的服务器启动过程中的画面显示方法,其特征在于,所述在所述显示输出类型为显卡显示输出类型的情况下,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备,包括:
在所述显示输出类型为显卡显示输出类型的情况下,判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡;
若是,从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备。
7.根据权利要求6所述的服务器启动过程中的画面显示方法,其特征在于,所述判断各所述根桥寄存器所关联的总线设备中是否存在总线显卡之后,还包括:
若否,从各所述根桥寄存器所关联的总线设备中筛选出视频图形阵列设备,作为显示设备。
8.根据权利要求5或6任一项所述的服务器启动过程中的画面显示方法,其特征在于,所述从各所述根桥寄存器所关联的总线设备中筛选出至少一个总线显卡,作为显示设备,包括:
读取所述显示配置界面中各初始总线显卡的开关状态;
从各所述根桥寄存器所关联的总线设备中,筛选出所述开关状态为打开状态的目标总线显卡,作为显示设备。
9.根据权利要求4所述的服务器启动过程中的画面显示方法,其特征在于,所述读取显示配置界面的显示选项之前,还包括:
接收并响应于界面显示指令,显示所述显示配置界面;
接收针对所述显示配置界面的第一设置指令,所述第一设置指令中携带有显示输出类型;
根据所述显示输出类型,设置所述显示配置界面的显示选项。
10.根据权利要求8所述的服务器启动过程中的画面显示方法,其特征在于,所述读取所述显示配置界面中各初始总线显卡的开关状态之前,还包括:
接收针对所述显示配置界面的第二设置指令,所述第二设置指令中携带有各所述初始总线显卡的开关参数;
根据各所述初始总线显卡的开关参数,设置所述显示配置界面中各初始总线显卡的开关状态。
11.根据权利要求3所述的服务器启动过程中的画面显示方法,其特征在于,所述方法还包括:
在检测到服务器的启动过程处于BDS阶段的情况下,清除对各所述根桥寄存器的配置。
12.一种服务器启动过程中的画面显示装置,其特征在于,所述装置包括:
读取模块,被配置为在检测到服务器的启动过程处于PEI阶段的情况下,读取所述服务器上的至少一个根桥寄存器;
筛选模块,被配置为从各所述根桥寄存器所关联的总线设备中筛选出至少一个显示设备;
显示模块,被配置为在加载显示驱动程序的情况下,调用各所述显示设备进行画面显示,以展示启动代码的执行阶段;
所述装置还包括获取模块,被配置为:
获取所述服务器对应的中央处理器平台的资源分配与控制配置规则;
基于所述资源分配与控制配置规则,配置各所述显示设备的第二配置空间,并为各所述显示设备分配资源空间;
相应地,所述显示模块,进一步被配置为:
在加载显示驱动程序的情况下,确定显示信息,所述显示信息表征启动代码的执行阶段;
基于驱动接口将所述显示信息写入各所述第二配置空间的共享空间;
针对每个所述显示设备,调用所述显示设备从所述显示设备对应的所述共享空间中读取所述显示信息;
针对每个所述显示设备,调用所述显示设备基于所述显示信息向所述显示设备的所述资源空间填充像素,从而使所述显示设备进行画面显示,以展示所述启动代码的执行阶段。
13.一种电子设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至11任一项所述服务器启动过程中的画面显示方法的步骤。
14.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至11中任一项所述服务器启动过程中的画面显示方法的步骤。
CN202311608877.4A 2023-11-29 2023-11-29 服务器启动过程中的画面显示方法及装置 Active CN117311890B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311608877.4A CN117311890B (zh) 2023-11-29 2023-11-29 服务器启动过程中的画面显示方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311608877.4A CN117311890B (zh) 2023-11-29 2023-11-29 服务器启动过程中的画面显示方法及装置

Publications (2)

Publication Number Publication Date
CN117311890A CN117311890A (zh) 2023-12-29
CN117311890B true CN117311890B (zh) 2024-02-23

Family

ID=89285168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311608877.4A Active CN117311890B (zh) 2023-11-29 2023-11-29 服务器启动过程中的画面显示方法及装置

Country Status (1)

Country Link
CN (1) CN117311890B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105786421A (zh) * 2014-12-25 2016-07-20 中兴通讯股份有限公司 一种服务器显示方法及装置
CN106951358A (zh) * 2017-02-07 2017-07-14 深圳市智微智能科技开发有限公司 一种基于uefi标准的计算机***上电自检时的快速显示状态信息方法及***
CN109936716A (zh) * 2019-03-25 2019-06-25 龙芯中科技术有限公司 一种显示驱动的实现方法及***
CN116360886A (zh) * 2023-03-31 2023-06-30 龙芯中科(西安)科技有限公司 电子设备的开机显示方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105786421A (zh) * 2014-12-25 2016-07-20 中兴通讯股份有限公司 一种服务器显示方法及装置
CN106951358A (zh) * 2017-02-07 2017-07-14 深圳市智微智能科技开发有限公司 一种基于uefi标准的计算机***上电自检时的快速显示状态信息方法及***
CN109936716A (zh) * 2019-03-25 2019-06-25 龙芯中科技术有限公司 一种显示驱动的实现方法及***
CN116360886A (zh) * 2023-03-31 2023-06-30 龙芯中科(西安)科技有限公司 电子设备的开机显示方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN117311890A (zh) 2023-12-29

Similar Documents

Publication Publication Date Title
US10019253B2 (en) Systems and methods of updating hot-pluggable devices
CN109542744B (zh) 检测终端开机异常问题的方法、装置、存储介质及终端
CN110134446B (zh) 启动pcie设备扫描的方法
EP3163441A1 (en) Computer device and memory starting method for computer device
US10572434B2 (en) Intelligent certificate discovery in physical and virtualized networks
CN112506745B (zh) 内存温度读取方法、装置及计算机可读存储介质
US8335891B2 (en) Method and system for configuring a storage array
US20170168845A1 (en) Managing dependencies for human interface infrastructure (hii) devices
CN112306581B (zh) 一种基板管理控制器管理bios配置的方法及介质
CN115357310A (zh) ***启动方法、装置、电子设备和存储介质
CN113867814A (zh) 基于uefi接口实现服务器多类型重启的方法及装置
CN109614156B (zh) 支持启动类外部设备的驱动的方法、装置和***
JP2002288104A (ja) コンピュータシステム、そのリソース割り当て方法及びプログラム
CN117311890B (zh) 服务器启动过程中的画面显示方法及装置
CN111045789B (zh) 一种虚拟机开机方法、装置及电子设备和存储介质
CN111857854A (zh) 关机资源加载方法、装置、存储介质和电子设备
CN111708662A (zh) 调试方法及装置
CN116627472A (zh) 高速***组件设备的固件程序升级方法及服务器
CN116795394A (zh) 嵌入式设备固件升级方法、装置、电子设备和存储介质
US20150212866A1 (en) Management system for service of multiple operating environments, and methods thereof
CN115878327A (zh) 总线预留方法、装置、服务器、电子设备和存储介质
CN113821265B (zh) 操作***控制方法、装置、计算机主板和可读存储介质
CN116360886A (zh) 电子设备的开机显示方法、装置、设备及存储介质
US20140136777A1 (en) Method and system for configuring a storage array
CN113849233A (zh) Bios空启动项删除方法、***、终端及存储介质

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