一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种页槽号动态分配方法、装置、设备及介质与流程

2022-04-24 22:13:07 来源:中国专利 TAG:
1.本发明涉及计算机领域,特别涉及一种页槽号动态分配方法、装置、设备及介质。
背景技术
::2.如今人们对于手机电脑等电子设备的依赖越来越强,大量的信息可以通过网络瞬间传遍大江南北,在进行网络购物,浏览,存储时,这背后都是有不计其数的服务器在支撑。市场上也对服务器功能的多样化,有越来越多的需求,一台能够随意改配的服务器,成为当前市面上热捧的概念。而若想实现服务器的任意改配,主板上需要有数量足够的槽位来支持,在开机时设备会被分配slotnumber(即页槽号),此标识为设备获得功能初始化的根基。3.在现有技术中,在每次外接设备插拔更替后,需要重新启动服务器,再通过完整的uefi(即unifiedextensiblefirmwareinterface))启动流程完成slotnumber的更新。对slotnumber的更新方式一般是在pei(即pre-efiinitialization,预先efi初始化)启动阶段,由硬件监测识别并初始化,然后利用bios(即basicinputoutputsystem,基本输入输出系统)通过pcie(即peripheralcomponentinterconnectexpress,高速串行计算机扩展总线标准)协议遍历总线设备树,来获取硬件提供的该设备的标志flag值,并将页槽号添加到对应设备的pci(即peripheralcomponentinterconnect)配置空间中根网桥的slotnumber寄存器中,从而完成第一阶段信息的配置。在dxe(即driverexecutionenvironment)阶段通过读取io空间内存储的寄存器信息,来调取设备optionrom信息,完成设备驱动的安装以及功能初始化。在整个设备更替过程中,若用户不能及时重启服务器,则会造成slotnumber错乱,导致设备功能失效,因服务器频繁重启会造成许多不必要的资源消耗,且设备更替过程中信息更新的效率也较为低下。4.由上可见,在服务器主板外接设备的过程中,由于传统的设备更替操作流程导致设备在插拔更替时资源消耗严重,且整个过程中信息更新的效率低下是本领域有待解决的问题。技术实现要素:5.有鉴于此,本发明的目的在于提供一种页槽号动态分配方法、装置、设备及介质,能够在无需关机的情况下实时获取设备槽位信息,并将设备的页槽号进行相应的分配与更新,在高兼容的同时实现设备热插拔,大大减少重启时浪费的时间,最大化实现配置的任意切换。其具体方案如下:第一方面,本技术公开了一种页槽号动态分配方法,应用于服务器,包括:当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值;基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;重新启动操作系统,并进入正常的系统运行状态。6.可选的,所述当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,包括:读取预设标志位的标志位信息;若所述标志位信息为表征预设引脚的电平发生变化的信息,则触发系统管理中断。7.可选的,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器,包括:确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备;确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号;将所述目标页槽号更新至所述目标设备的预设寄存器中。8.可选的,所述将所述目标页槽号更新至所述目标设备的预设页槽号寄存器中,包括:利用基本输入输出系统遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器;将所述目标页槽号更新至所述页槽号寄存器。9.可选的,所述将所述各设备所对应的页槽号分别更新至各设备的预设页槽号寄存器中之后,还包括:利用基本输入输出系统确定系统相关参数,并将所述系统相关参数更新至硬件配置数据中;所述系统相关参数为系统正常运行时所需的参数。10.可选的,所述重新启动操作系统,并进入正常的系统运行状态之后,还包括:通过预设命令获取接口获取目标命令;利用操作系统通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。11.可选的,所述获取到用于表征预设引脚的电平发生变化的变化信号,则触发系统管理中断之前,还包括:通过预设代码获取接口获取基于系统管理中断机制创建的代码片段;在监测到预设引脚的电平发生变化时通过所述代码片段触发系统管理中断。12.第二方面,本技术公开了一种页槽号动态分配装置,包括:系统管理中断模块,用于当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值;页槽号确定模块,用于基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;页槽号更新模块,用于将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;系统运行模块,用于重新启动操作系统,并进入正常的系统运行状态。13.第三方面,本技术公开了一种电子设备,包括:存储器,用于保存计算机程序;处理器,用于执行所述计算机程序,以实现前述的页槽号动态分配方法。14.第四方面,本技术公开了一种计算机存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的页槽号动态分配方法的步骤。15.本技术提出当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值,接着基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,然后将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器,最后重新启动操作系统,并进入正常的系统运行状态。这样一来,本技术通过添加系统管理中断机制,在无需关机的情况下,动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,使系统运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,为系统运行提供了更稳定的运行环境。附图说明16.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。17.图1为本技术提供的一种页槽号动态分配方法的流程图;图2为本技术提供的一种具体的页槽号动态分配方法的流程图;图3为本技术提供的一种页槽号动态分配方法的过程示意图;图4为本技术提供的一种页槽号动态分配装置结构示意图;图5为本技术提供的一种电子设备结构图。具体实施方式18.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。19.现有技术中,在每次外接设备插拔更替后,需要重新启动服务器,再通过完整的启动流程扫描slotnumber,整个过程服务器频繁重启造成了许多不必要的资源消耗,且设备的外接过程效率低下。在本技术中,能够在无需关机的情况下实时获取设备槽位信息,并将外接设备的页槽号进行相应的分配,在高兼容的同时实现设备热插拔,大大减少重启时浪费的时间,最大化实现配置的任意切换。20.本发明实施例公开了一种页槽号动态分配方法,应用于服务器,参见图1所述,该方法包括:步骤s11:当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值。table(即硬件配置数据)中,所述acpitable为基本输入输出系统提供给操作系统的硬件配置数据。33.本实施例中,所述重新启动操作系统,并进入正常的系统运行状态之后,还可以包括:通过预设命令获取接口获取目标命令;利用操作系统通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。34.可以理解的是,在操作系统重新运行时,便可通过获取的目标命令对更新后的页槽号进行查看。在一种具体的实施方式中,所述目标命令可以是lspci命令。35.本技术提出当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值,接着基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,然后将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器,最后重新启动操作系统,并进入正常的系统运行状态。这样一来,在无需关机或重启的情况下,在待机状态即可完成设备更替中的信息更新,大大节省了测试时间,提升便利性。本技术通过添加系统管理中断机制,实现动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,使系统运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,减少因页槽号错乱而引发的宕机、蓝屏等问题,为系统运行提供了更稳定的运行环境。36.图2为本技术实施例提供的一种具体的页槽号动态分配方法流程图。参见图2所示,该方法包括:步骤s21:当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值。37.步骤s22:基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号。38.步骤s23:确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备。39.可以理解的是,在设备插拔更替后,当前与服务器主板进行连接的设备将会发生变化,相应的,槽位信息也会发生变化。此时,为确保各设备按照插拔更替后的槽位信息进行更新,此时可以从当前通过预设主板接口与所述服务器进行连接的所有设备中确定出目标设备,所述目标设备可以是一个,也可以是多个。40.步骤s24:确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号。41.在确定目标设备后,接着对所述目标设备的页槽号进行确定,便可对所述目标设备进行页槽号的分配。42.步骤s25:利用基本输入输出系统遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器。43.需要指出的是,本实施例中所述的通过预设主板接口与所述服务器进行连接的各设备均为包含pci配置空间的设备,并且可以理解的是,所述配置空间中包括所述根网桥(即rootbridge)所对应的预设链表,且所述预设链表中包含所述页槽号寄存器。44.步骤s26:将所述目标页槽号更新至所述页槽号寄存器。45.在一种可能的实施方式中,可以在定位到设备的pci配置空间内的pciexpresscapabilitystructure链表后,将目标页槽号更新至以表头为offset0h,偏移量为14h的slotnumber寄存器中。46.步骤s27:重新启动操作系统,并进入正常的系统运行状态。47.可以理解的是,在上述将各设备所对应的页槽号分配至各设备中后,则完成了利用基本输入输出系统对于设备更替的相关配置,此时则由操作系统继续运行,并进入正常的系统运行状态。48.图3为本技术提供的一种页槽号动态分配方法的过程示意图,图中展示了当外接设备更换时,则触发smi中断,然后通过bios向硬件获取新的slotnumber,并将slotnumber写入设备的slotnumber寄存器中,将更新后的各种参数信息写入acpitable的过程,然后最后os(即operatingsystem,操作系统)便可以向acpitable获取到更新后的slotnumber。49.本实施例通过当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值,基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备,确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号,利用基本输入输出系统遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器,将所述目标页槽号更新至所述页槽号寄存器,重新启动操作系统,并进入正常的系统运行状态。这样一来,通过实时对设备插拔状态进行监测,当利用系统管理中断机制,并使用基本输入输出系统进行槽位信息的确定,进而基于所述槽位信息对当前与服务器主板进行连接的各设备进行页槽号的分配与配置,最后利用重新启动操作系统,并利用操作系统进入正常的系统运行状态。本方法在无需关机的情况下,实现设备热插拔时的配置切换,使系统运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,为系统运行提供了更稳定的运行环境。50.参见图4所示,本技术实施例公开了一种页槽号动态分配装置,具体可以包括:系统管理中断模块11,用于当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值;页槽号确定模块12,用于基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号;页槽号更新模块13,用于将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器;系统运行模块14,用于重新启动操作系统,并进入正常的系统运行状态。51.本技术提出当获取到用于表征预设引脚的电平发生变化的变化信息,则触发系统管理中断,然后利用基本输入输出系统获取通用输入输出值,接着基于所述通用输入输出值确定通过预设主板接口与所述服务器进行连接的各设备所对应的槽位信息,并基于所述槽位信息确定所述各设备所各自对应的页槽号,然后将所述各设备所对应的页槽号分别更新至所述各设备中的预设页槽号寄存器,最后重新启动操作系统,并进入正常的系统运行状态。这样一来,本技术通过添加系统管理中断机制,在无需关机的情况下,动态获取并分配设备的页槽号,实现设备热插拔时的配置切换,使系统运行更具有容错性,也减少了在发生意外的情况下带来的不必要重启的情况,为系统运行提供了更稳定的运行环境。52.在一些具体实施例中,所述系统管理中断模块11,包括:标志位读取单元,用于读取预设标志位的标志位信息;触发中断单元,用于若所述标志位信息为表征预设引脚的电平发生变化的信息,则触发系统管理中断。53.在一些具体实施例中,所述页槽号更新模块13,包括:目标设备确定单元,用于确定通过预设主板接口与所述服务器进行连接的当前所有设备,并从所述当前所有设备中确定目标设备;目标页槽号确定单元,用于确定与所述目标设备所对应的页槽号,并将所述与所述目标设备所对应的页槽号确定为目标页槽号;第一目标页槽号更新单元,用于将所述目标页槽号更新至所述目标设备的预设寄存器中。54.在一些具体实施例中,所述页槽号更新模块13,包括:配置空间遍历单元,用于利用基本输入输出系统遍历所述目标设备中的配置空间,并确定所述配置空间中根网桥所对应的预设链表中的页槽号寄存器;第二目标页槽号更新单元,用于将所述目标页槽号更新至所述页槽号寄存器。55.在一些具体实施例中,所述页槽号动态分配方法,还包括:参数更新单元,用于利用基本输入输出系统确定系统相关参数,并将所述系统相关参数更新至硬件配置数据中;所述系统相关参数为系统正常运行时所需的参数。56.在一些具体实施例中,所述页槽号动态分配方法,还包括:目标命令获取单元,用于通过预设命令获取接口获取目标命令;页槽号查询单元,用于利用操作系统通过所述目标命令从所述硬件配置数据中查询各设备所对应的所述页槽号。57.在一些具体实施例中,所述页槽号动态分配方法,还包括:代码获取单元,用于通过预设代码获取接口获取基于系统管理中断机制创建的代码片段;代码应用单元,用于在监测到预设引脚的电平发生变化时通过所述代码片段触发系统管理中断。58.进一步的,本技术实施例还公开了一种电子设备,图5是根据示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本技术的使用范围的任何限制。59.图5为本技术实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、显示屏24、输入输出接口25、通信接口26和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的页槽号动态分配方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。60.本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口26能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本技术技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。61.另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。62.其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是windowsserver、netware、unix、linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的页槽号动态分配方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。63.进一步的,本技术还公开了一种计算机可读存储介质,这里所说的计算机可读存储介质包括随机存取存储器(randomaccessmemory,ram)、内存、只读存储器(read-onlymemory,rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、磁碟或者光盘或
技术领域
:内所公知的任意其他形式的存储介质。其中,所述计算机程序被处理器执行时实现前述公开的页槽号动态分配方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。64.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。65.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或
技术领域
:内所公知的任意其它形式的存储介质中。66.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。67.以上对本发明所提供的页槽号动态分配方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献