CN114385537A - 一种页槽号动态分配方法、装置、设备及介质 - Google Patents
一种页槽号动态分配方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114385537A CN114385537A CN202210292430.XA CN202210292430A CN114385537A CN 114385537 A CN114385537 A CN 114385537A CN 202210292430 A CN202210292430 A CN 202210292430A CN 114385537 A CN114385537 A CN 114385537A
- Authority
- CN
- China
- Prior art keywords
- slot number
- page slot
- preset
- page
- determining
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4081—Live connection to bus, e.g. hot-plugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/30—Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种页槽号动态分配方法、装置、设备及介质,应用于计算机领域,该方法包括:当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值;基于通用输入输出值确定通过预设主板接口与服务器进行连接的各设备所对应的槽位信息,并基于槽位信息确定各设备所各自对应的页槽号;将各设备所对应的页槽号分别更新至各设备中的预设页槽号寄存器;重新启动操作***,并进入正常的***运行状态。这样一来,通过添加***管理中断机制,在无需关机的情况下,动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,增加了***容错性,并为***运行提供了更稳定的运行环境。
Description
技术领域
本发明涉及计算机领域,特别涉及一种页槽号动态分配方法、装置、设备及介质。
背景技术
如今人们对于手机电脑等电子设备的依赖越来越强,大量的信息可以通过网络瞬间传遍大江南北,在进行网络购物,浏览,存储时,这背后都是有不计其数的服务器在支撑。市场上也对服务器功能的多样化,有越来越多的需求,一台能够随意改配的服务器,成为当前市面上热捧的概念。而若想实现服务器的任意改配,主板上需要有数量足够的槽位来支持,在开机时设备会被分配Slotnumber(即页槽号),此标识为设备获得功能初始化的根基。
在现有技术中,在每次外接设备插拔更替后,需要重新启动服务器,再通过完整的UEFI(即Unified Extensible Firmware Interface))启动流程完成Slotnumber的更新。对Slotnumber的更新方式一般是在PEI(即Pre-EFI Initialization,预先EFI初始化)启动阶段,由硬件监测识别并初始化,然后利用BIOS(即Basic Input Output System,基本输入输出***)通过PCIE(即peripheral component interconnect express,高速串行计算机扩展总线标准)协议遍历总线设备树,来获取硬件提供的该设备的标志flag值,并将页槽号添加到对应设备的PCI(即Peripheral Component Interconnect)配置空间中根网桥的Slotnumber寄存器中,从而完成第一阶段信息的配置。在DXE(即Driver ExecutionEnvironment)阶段通过读取IO空间内存储的寄存器信息,来调取设备Option Rom信息,完成设备驱动的安装以及功能初始化。在整个设备更替过程中,若用户不能及时重启服务器,则会造成Slotnumber错乱,导致设备功能失效,因服务器频繁重启会造成许多不必要的资源消耗,且设备更替过程中信息更新的效率也较为低下。
由上可见,在服务器主板外接设备的过程中,由于传统的设备更替操作流程导致设备在插拔更替时资源消耗严重,且整个过程中信息更新的效率低下是本领域有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种页槽号动态分配方法、装置、设备及介质,能够在无需关机的情况下实时获取设备槽位信息,并将设备的页槽号进行相应的分配与更新,在高兼容的同时实现设备热插拔,大大减少重启时浪费的时间,最大化实现配置的任意切换。其具体方案如下:
第一方面,本申请公开了一种页槽号动态分配方法,应用于服务器,包括:
当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值;
基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;
将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;
重新启动操作***,并进入正常的***运行状态。
可选的,所述当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,包括:
读取预设标志位的标志位信息;
若所述标志位信息为表征预设引脚的电平发生变化的信息,则触发***管理中断。
可选的,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器,包括:
确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备;
确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号;
将所述目标页槽号更新至所述目标设备的预设寄存器中。
可选的,所述将所述目标页槽号更新至所述目标设备的预设页槽号寄存器中,包括:
利用基本输入输出***遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器;
将所述目标页槽号更新至所述页槽号寄存器。
可选的,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器中之后,还包括:
利用基本输入输出***确定***相关参数,并将所述***相关参数更新至硬件配置数据中;所述***相关参数为***正常运行时所需的参数。
可选的,所述重新启动操作***,并进入正常的***运行状态之后,还包括:
通过预设命令获取接口获取目标命令;
利用操作***通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。
可选的,所述获取到用于表征预设引脚的电平发生变化的变化信号,则触发***管理中断之前,还包括:
通过预设代码获取接口获取基于***管理中断机制创建的代码片段;
在监测到预设引脚的电平发生变化时通过所述代码片段触发***管理中断。
第二方面,本申请公开了一种页槽号动态分配装置,包括:
***管理中断模块,用于当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值;
页槽号确定模块,用于基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;
页槽号更新模块,用于将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;
***运行模块,用于重新启动操作***,并进入正常的***运行状态。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的页槽号动态分配方法。
第四方面,本申请公开了一种计算机存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的页槽号动态分配方法的步骤。
本申请提出当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值,接着基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,然后将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器,最后重新启动操作***,并进入正常的***运行状态。这样一来,本申请通过添加***管理中断机制,在无需关机的情况下,动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,使***运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,为***运行提供了更稳定的运行环境。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种页槽号动态分配方法的流程图;
图2为本申请提供的一种具体的页槽号动态分配方法的流程图;
图3为本申请提供的一种页槽号动态分配方法的过程示意图;
图4为本申请提供的一种页槽号动态分配装置结构示意图;
图5为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,在每次外接设备插拔更替后,需要重新启动服务器,再通过完整的启动流程扫描Slotnumber,整个过程服务器频繁重启造成了许多不必要的资源消耗,且设备的外接过程效率低下。在本申请中,能够在无需关机的情况下实时获取设备槽位信息,并将外接设备的页槽号进行相应的分配,在高兼容的同时实现设备热插拔,大大减少重启时浪费的时间,最大化实现配置的任意切换。
本发明实施例公开了一种页槽号动态分配方法,应用于服务器,参见图1所述,该方法包括:
步骤S11:当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值。
可以理解的是,本方法通过添加***管理中断机制的方式在特定情况下将操作***管理中断,并利用BIOS完成页槽号的动态获取与分配过程。本实施例中所述的特定情况即为预设引脚的电平发生变化的情况。
本实施例中,所述获取到用于表征预设引脚的电平发生变化的变化信号,则触发***管理中断之前,还可以包括:通过预设代码获取接口获取基于***管理中断机制创建的代码片段;在监测到预设引脚的电平发生变化时通过所述代码片段触发***管理中断。本方法先获取基于SMI(即System Management Interrupt,***管理中断)机制创建的代码片段,并利用所述代码片段触发***管理中断。可以理解的是,所述代码片段用于在设备热插拔引起电平变化后,触发***中断。
本实施例中,所述当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,可以包括:读取预设标志位的标志位信息;若所述标志位信息为表征预设引脚的电平发生变化的信息,则触发***管理中断。
需要指出的是,本实施例中所述的用于表征预设引脚的电平发生变化的变化信息可能有多种,其中包括但不限于当预设标志位的标识信息变化的情况。在一种具体的实施方式中,所述用于表征预设引脚的电平发生变化的变化信息可以是预设标志位的标识信息,即在读取预设标志位后,若所述标志位为1,则表示预设引脚的电平发生变化,此时便随即触发***管理中断。
步骤S12:基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号。
本实施例中,在设备插拔更替后,当前与服务器主板进行连接的设备将会发生变化,相应的,槽位信息也会发生变化。进一步的,本步骤完成的是获取槽位信息并确定设备所各自对应的页槽号的过程。
可以理解的是,在步骤S11中获取所述通用输入输出值后,则会利用所述通用输入输出值确定通过主板接口与当前服务器进行连接的槽位信息。所述槽位信息可以是表征设备与主板槽位之间的对应关系的信息。在一种可能的实施方式中,可以根据所述设备与主板槽位之间的对应关系确定每个设备所对应的页槽号。
步骤S13:将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器。
本实施例中,可以通过遍历设备树给相应的设备分配资源,然后将页槽号更新至各设备中的预设页槽号寄存器中。
步骤S14:重新启动操作***,并进入正常的***运行状态。
本实施例中,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器中之后,还可以包括:利用基本输入输出***确定***相关参数,并将所述***相关参数更新至硬件配置数据中;所述***相关参数为***正常运行时所需的参数。
可以理解的是,在将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器后,便完成了基本输入输出***对于页槽号的资源分配过程。在所述资源分配结束后,进行SMI callback,为后续操作***的正常运行做准备,即对于***带宽以及其他***正常运行时所需的参数进行重新分配,并将这些重新分配后的参数更新到ACPITable(即硬件配置数据)中,所述ACPI Table为基本输入输出***提供给操作***的硬件配置数据。
本实施例中,所述重新启动操作***,并进入正常的***运行状态之后,还可以包括:通过预设命令获取接口获取目标命令;利用操作***通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。
可以理解的是,在操作***重新运行时,便可通过获取的目标命令对更新后的页槽号进行查看。在一种具体的实施方式中,所述目标命令可以是lspci命令。
本申请提出当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值,接着基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,然后将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器,最后重新启动操作***,并进入正常的***运行状态。这样一来,在无需关机或重启的情况下,在待机状态即可完成设备更替中的信息更新,大大节省了测试时间,提升便利性。本申请通过添加***管理中断机制,实现动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,使***运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,减少因页槽号错乱而引发的宕机、蓝屏等问题,为***运行提供了更稳定的运行环境。
图2为本申请实施例提供的一种具体的页槽号动态分配方法流程图。参见图2所示,该方法包括:
步骤S21:当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值。
步骤S22:基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号。
步骤S23:确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备。
可以理解的是,在设备插拔更替后,当前与服务器主板进行连接的设备将会发生变化,相应的,槽位信息也会发生变化。此时,为确保各设备按照插拔更替后的槽位信息进行更新,此时可以从当前通过预设主板接口与所述服务器进行连接的所有设备中确定出目标设备,所述目标设备可以是一个,也可以是多个。
步骤S24:确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号。
在确定目标设备后,接着对所述目标设备的页槽号进行确定,便可对所述目标设备进行页槽号的分配。
步骤S25:利用基本输入输出***遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器。
需要指出的是,本实施例中所述的通过预设主板接口与所述服务器进行连接的各设备均为包含PCI配置空间的设备,并且可以理解的是,所述配置空间中包括所述根网桥(即rootbridge)所对应的预设链表,且所述预设链表中包含所述页槽号寄存器。
步骤S26:将所述目标页槽号更新至所述页槽号寄存器。
在一种可能的实施方式中,可以在定位到设备的PCI配置空间内的PCI ExpressCapability Structure链表后,将目标页槽号更新至以表头为offset 0h,偏移量为14h的slotnumber寄存器中。
步骤S27:重新启动操作***,并进入正常的***运行状态。
可以理解的是,在上述将各设备所对应的页槽号分配至各设备中后,则完成了利用基本输入输出***对于设备更替的相关配置,此时则由操作***继续运行,并进入正常的***运行状态。
图3为本申请提供的一种页槽号动态分配方法的过程示意图,图中展示了当外接设备更换时,则触发SMI中断,然后通过BIOS向硬件获取新的Slotnumber,并将Slotnumber写入设备的Slotnumber寄存器中,将更新后的各种参数信息写入ACPI Table的过程,然后最后OS(即operating system,操作***)便可以向ACPI Table获取到更新后的Slotnumber。
本实施例通过当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值,基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备,确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号,利用基本输入输出***遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器,将所述目标页槽号更新至所述页槽号寄存器,重新启动操作***,并进入正常的***运行状态。这样一来,通过实时对设备插拔状态进行监测,当利用***管理中断机制,并使用基本输入输出***进行槽位信息的确定,进而基于所述槽位信息对当前与服务器主板进行连接的各设备进行页槽号的分配与配置,最后利用重新启动操作***,并利用操作***进入正常的***运行状态。本方法在无需关机的情况下,实现设备热插拔时的配置切换,使***运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,为***运行提供了更稳定的运行环境。
参见图4所示,本申请实施例公开了一种页槽号动态分配装置,具体可以包括:
***管理中断模块11,用于当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值;
页槽号确定模块12,用于基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;
页槽号更新模块13,用于将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;
***运行模块14,用于重新启动操作***,并进入正常的***运行状态。
本申请提出当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值,接着基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,然后将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器,最后重新启动操作***,并进入正常的***运行状态。这样一来,本申请通过添加***管理中断机制,在无需关机的情况下,动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,使***运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,为***运行提供了更稳定的运行环境。
在一些具体实施例中,所述***管理中断模块11,包括:
标志位读取单元,用于读取预设标志位的标志位信息;
触发中断单元,用于若所述标志位信息为表征预设引脚的电平发生变化的信息,则触发***管理中断。
在一些具体实施例中,所述页槽号更新模块13,包括:
目标设备确定单元,用于确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备;
目标页槽号确定单元,用于确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号;
第一目标页槽号更新单元,用于将所述目标页槽号更新至所述目标设备的预设寄存器中。
在一些具体实施例中,所述页槽号更新模块13,包括:
配置空间遍历单元,用于利用基本输入输出***遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器;
第二目标页槽号更新单元,用于将所述目标页槽号更新至所述页槽号寄存器。
在一些具体实施例中,所述页槽号动态分配方法,还包括:
参数更新单元,用于利用基本输入输出***确定***相关参数,并将所述***相关参数更新至硬件配置数据中;所述***相关参数为***正常运行时所需的参数。
在一些具体实施例中,所述页槽号动态分配方法,还包括:
目标命令获取单元,用于通过预设命令获取接口获取目标命令;
页槽号查询单元,用于利用操作***通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。
在一些具体实施例中,所述页槽号动态分配方法,还包括:
代码获取单元,用于通过预设代码获取接口获取基于***管理中断机制创建的代码片段;
代码应用单元,用于在监测到预设引脚的电平发生变化时通过所述代码片段触发***管理中断。
进一步的,本申请实施例还公开了一种电子设备,图5是根据示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、显示屏24、输入输出接口25、通信接口26和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的页槽号动态分配方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口26能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作***221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作***221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的页槽号动态分配方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,这里所说的计算机可读存储介质包括随机存取存储器(Random Access Memory,RAM)、内存、只读存储器(Read-OnlyMemory,ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、磁碟或者光盘或技术领域内所公知的任意其他形式的存储介质。其中,所述计算机程序被处理器执行时实现前述公开的页槽号动态分配方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的页槽号动态分配方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种页槽号动态分配方法,其特征在于,应用于服务器,包括:
当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值;
基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;
将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;
重新启动操作***,并进入正常的***运行状态。
2.根据权利要求1所述的页槽号动态分配方法,其特征在于,所述当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,包括:
读取预设标志位的标志位信息;
若所述标志位信息为表征预设引脚的电平发生变化的信息,则触发***管理中断。
3.根据权利要求1所述的页槽号动态分配方法,其特征在于,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器,包括:
确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备;
确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号;
将所述目标页槽号更新至所述目标设备的预设寄存器中。
4.根据权利要求3所述的页槽号动态分配方法,其特征在于,所述将所述目标页槽号更新至所述目标设备的预设页槽号寄存器中,包括:
利用基本输入输出***遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器;
将所述目标页槽号更新至所述页槽号寄存器。
5.根据权利要求1所述的页槽号动态分配方法,其特征在于,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器中之后,还包括:
利用基本输入输出***确定***相关参数,并将所述***相关参数更新至硬件配置数据中;所述***相关参数为***正常运行时所需的参数。
6.根据权利要求5所述的页槽号动态分配方法,其特征在于,所述重新启动操作***,并进入正常的***运行状态之后,还包括:
通过预设命令获取接口获取目标命令;
利用操作***通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。
7.根据权利要求1至6任一项所述的页槽号动态分配方法,其特征在于,所述获取到用于表征预设引脚的电平发生变化的变化信号,则触发***管理中断之前,还包括:
通过预设代码获取接口获取基于***管理中断机制创建的代码片段;
在监测到预设引脚的电平发生变化时通过所述代码片段触发***管理中断。
8.一种页槽号动态分配装置,其特征在于,包括:
***管理中断模块,用于当获取到用于表征预设引脚的电平发生变化的变化信息,则触发***管理中断,然后利用基本输入输出***获取通用输入输出值;
页槽号确定模块,用于基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;
页槽号更新模块,用于将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;
***运行模块,用于重新启动操作***,并进入正常的***运行状态。
9.一种电子设备,其特征在于,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的计算机程序时实现如权利要求1至7任一项所述的页槽号动态分配方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的页槽号动态分配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210292430.XA CN114385537A (zh) | 2022-03-24 | 2022-03-24 | 一种页槽号动态分配方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210292430.XA CN114385537A (zh) | 2022-03-24 | 2022-03-24 | 一种页槽号动态分配方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114385537A true CN114385537A (zh) | 2022-04-22 |
Family
ID=81205610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210292430.XA Pending CN114385537A (zh) | 2022-03-24 | 2022-03-24 | 一种页槽号动态分配方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114385537A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114780325A (zh) * | 2022-06-21 | 2022-07-22 | 新华三信息技术有限公司 | 一种PCIe设备检测方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001050248A2 (en) * | 1999-12-30 | 2001-07-12 | Cardiac Pacemakers, Inc. | Quick starting microprocessor-based system |
CN108647169A (zh) * | 2018-05-14 | 2018-10-12 | 杭州宏杉科技股份有限公司 | 一种热插拔处理方法及装置 |
CN109614286A (zh) * | 2018-12-04 | 2019-04-12 | 郑州云海信息技术有限公司 | 一种PCIe设备的热插拔识别方法、装置和介质 |
CN109933376A (zh) * | 2019-02-28 | 2019-06-25 | 苏州浪潮智能科技有限公司 | 一种BIOS setup中PCIE丝印信息更新方法、装置、受控终端及存储介质 |
CN111209151A (zh) * | 2019-12-31 | 2020-05-29 | 苏州浪潮智能科技有限公司 | 基于linux的NVME SSD热拔插测试方法、***、终端及存储介质 |
CN111767184A (zh) * | 2020-09-01 | 2020-10-13 | 苏州浪潮智能科技有限公司 | 一种故障诊断方法、装置及电子设备和存储介质 |
CN112905376A (zh) * | 2021-02-10 | 2021-06-04 | 山东英信计算机技术有限公司 | 一种错误上报的方法、装置及介质 |
CN114064541A (zh) * | 2022-01-18 | 2022-02-18 | 苏州浪潮智能科技有限公司 | 一种硬盘模拟插拔方法、装置、设备及存储介质 |
-
2022
- 2022-03-24 CN CN202210292430.XA patent/CN114385537A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001050248A2 (en) * | 1999-12-30 | 2001-07-12 | Cardiac Pacemakers, Inc. | Quick starting microprocessor-based system |
CN108647169A (zh) * | 2018-05-14 | 2018-10-12 | 杭州宏杉科技股份有限公司 | 一种热插拔处理方法及装置 |
CN109614286A (zh) * | 2018-12-04 | 2019-04-12 | 郑州云海信息技术有限公司 | 一种PCIe设备的热插拔识别方法、装置和介质 |
CN109933376A (zh) * | 2019-02-28 | 2019-06-25 | 苏州浪潮智能科技有限公司 | 一种BIOS setup中PCIE丝印信息更新方法、装置、受控终端及存储介质 |
CN111209151A (zh) * | 2019-12-31 | 2020-05-29 | 苏州浪潮智能科技有限公司 | 基于linux的NVME SSD热拔插测试方法、***、终端及存储介质 |
CN111767184A (zh) * | 2020-09-01 | 2020-10-13 | 苏州浪潮智能科技有限公司 | 一种故障诊断方法、装置及电子设备和存储介质 |
CN112905376A (zh) * | 2021-02-10 | 2021-06-04 | 山东英信计算机技术有限公司 | 一种错误上报的方法、装置及介质 |
CN114064541A (zh) * | 2022-01-18 | 2022-02-18 | 苏州浪潮智能科技有限公司 | 一种硬盘模拟插拔方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
华锦忠: ""***管理中断"", 《INTEL 386 SL SUPERSET***设计指南 上》 * |
华锦忠: ""***管理中断"", 《INTEL 386 SL SUPERSET***设计指南 上》, 31 December 1992 (1992-12-31), pages 132 - 133 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114780325A (zh) * | 2022-06-21 | 2022-07-22 | 新华三信息技术有限公司 | 一种PCIe设备检测方法及装置 |
CN114780325B (zh) * | 2022-06-21 | 2022-09-30 | 新华三信息技术有限公司 | 一种PCIe设备检测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100088448A1 (en) | Virtual computing accelerator and program downloading method for server-based virtual computing | |
CN109375956B (zh) | 一种重启操作***的方法、逻辑设备以及控制设备 | |
CN114024853A (zh) | 一种裸金属节点的硬件信息收集方法、***及相关组件 | |
CN111124437A (zh) | 一种基于OpenStack的裸机资源配置信息获取方法、***及设备 | |
CN104375854A (zh) | 一种应用更新下载方法及用户终端 | |
CN114020340B (zh) | 一种服务器***及其数据处理方法 | |
CN114385537A (zh) | 一种页槽号动态分配方法、装置、设备及介质 | |
CN115114219A (zh) | 一种pci-e拓扑方法、装置、设备及存储介质 | |
CN113626276B (zh) | 服务器hba卡型号的识别方法、***、终端及存储介质 | |
CN112965806B (zh) | 用于确定资源的方法和装置 | |
CN114185734A (zh) | 一种监控集群的方法、装置及电子设备 | |
CN110365839B (zh) | 关机方法、装置、介质及电子设备 | |
CN117193936A (zh) | 超融合架构下的虚拟机管理方法、装置及设备 | |
CN116450224A (zh) | 基于清除cmos的数据的恢复方法及装置、*** | |
CN107911816B (zh) | 用于多模IoT设备的启动方法、多模IoT设备及存储介质 | |
US11868769B1 (en) | Automatically determining and modifying environments for running microservices in a performant and cost-effective manner | |
CN116450165A (zh) | 一种快速搭建环境及部署程序的方法、***、终端及存储介质 | |
CN116450046A (zh) | 云盘实现方法、装置、智能网卡、服务器及存储介质 | |
CN114020344B (zh) | 一种总线资源预留方法、装置、设备及存储介质 | |
CN113704177B (zh) | 一种服务器固件升级文件的存储方法、***及相关组件 | |
CN110058866B (zh) | 集群组件安装方法及设备 | |
CN115221092A (zh) | Pci-e卡可分配的总线确定方法、装置、设备及存储介质 | |
CN115296994A (zh) | 一种池化异构计算资源的启动配置方法、装置以及介质 | |
CN114356970A (zh) | 一种存储***资源缓存方法及装置 | |
CN114968386A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220422 |