一种PCIE设备的管理方法、管理系统及相关装置与流程

文档序号:19015650发布日期:2019-11-01 19:43阅读:236来源:国知局
本申请涉及服务器领域,特别涉及一种pcie设备的管理方法、管理系统及相关装置。
背景技术
::随着it行业的发展,服务器已经越来越多样性了,可以兼容多个io模块(即pcie模块组)。当存在多个io模块的时候,从cpu同一个信号接出来的pcie插槽,丝印可能会不同。例如从cpu0接出来的pcie插槽在io1模块上丝印pcie0,但是在io2模块上印是pcie1。此时就无法准确的发送pcie设备的丝印信息。技术实现要素:本申请的目的是提供一种pcie设备的管理方法、管理系统、一种计算机可读存储介质和一种服务器,解决了现有服务器对于pcie设备的信息管理不足的问题。为解决上述技术问题,本申请提供一种pcie设备的管理方法,具体技术方案如下:在检测到io模块时,为所述io模块中的每个pcie设备分配唯一端口号;其中,所述唯一端口号属于所述io模块对应的插槽号区间;根据所述唯一端口号在映射表中查询每个所述pcie设备对应的插槽丝印信息;其中,所述映射表为包含插槽丝印信息和所述唯一端口号映射关系的映射表;将各个所述pcie设备对应的插槽丝印信息发送至bmc,以便所述bmc根据所述插槽丝印信息对pcie设备进行管理。其中,还包括:根据所述io模块的插槽丝印信息和唯一端口号建立所述映射表。其中,为所述io模块中的每个pcie设备分配唯一端口号时,还包括:利用gpio区分不同的io模块。其中,还包括:将所述映射表存于服务器bios。本申请还提供一种pcie设备的管理系统,包括:分配模块,用于在检测到io模块时,为所述io模块中的每个pcie设备分配唯一端口号;其中,所述唯一端口号属于所述io模块对应的插槽号区间;查询模块,用于根据所述唯一端口号在映射表中查询每个所述pcie设备对应的插槽丝印信息;其中,所述映射表为包含插槽丝印信息和所述唯一端口号映射关系的映射表;发送模块,用于将各个所述pcie设备对应的插槽丝印信息发送至bmc,以便所述bmc根据所述插槽丝印信息对pcie设备进行管理。其中,还包括:映射表建立模块,用于根据所述io模块的插槽丝印信息和唯一端口号建立所述映射表。其中,所述管理系统还包括:区分模块,用于利用gpio区分不同的io模块。其中,所述管理系统还包括:存储模块,用于将所述映射表存于服务器bios。本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的管理方法的步骤。本申请还提供一种服务器,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的管理方法的步骤。本申请所提供的一种pcie设备的管理方法,包括:在检测到io模块时,为所述io模块中的每个pcie设备分配唯一端口号;其中,所述唯一端口号属于所述io模块对应的插槽号区间;根据所述唯一端口号在映射表中查询每个所述pcie设备对应的插槽丝印信息;其中,所述映射表为包含插槽丝印信息和所述唯一端口号映射关系的映射表;将各个所述pcie设备对应的插槽丝印信息发送至bmc,以便所述bmc根据所述插槽丝印信息对pcie设备进行管理。本申请通过为每个io模块中的每个pcie设备分配唯一端口号,进而为每个io模块划分了不同的端口号区间,并且唯一端口号作为pcie设备以及pcie设备对应的pcie插槽的唯一标识,使得每个pcie插槽的丝印信息唯一,避免出现同一个信号接出来的pcie插槽丝印信息却不同的情况,可以准确获取pcie插槽的丝印信息,便于服务器根据每个唯一的丝印信息对pcie设备进行查看和管理。本申请还提供一种pcie设备的管理系统、一种计算机可读存储介质和一种服务器,具有上述有益效果,此处不再赘述。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例所提供的一种pcie设备的管理方法的流程图;图2为本申请实施例所提供的一种pcie设备的管理系统结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。请参考图1,图1为本申请实施例所提供的一种pcie设备的管理方法的流程图,该管理方法包括:s101:在检测到io模块时,为io模块中的每个pcie设备分配唯一端口号;其中,唯一端口号属于io模块对应的插槽号区间;每个io模块都有相应的插槽号区间。这里的插槽号区间指的是slot号区间。不同种类的io模块对应的插槽号区间通常是不同的。举例而言,io1模块可以包括三个插槽,其插槽号区间为1-10;io2模块包括2个插槽,其插槽号区间为11-20。可以看出,插槽号区间中包含的插槽号数量要通常大于io模块实际包含的插槽数量。严格来说,槽号区间中包含的插槽号数量不得小于io模块实际包含的插槽数量。在此对于不同io模块对应的插槽号区间长度以及起始的唯一端口号不作限定,均可以由本领域技术人员作相应的设定。io模块的每个插槽均可以连接一个pcie设备,因此每个io模块可以对应多个pcie设备,其对应的pcie设备的数量与io模块的插槽数量相关。本步骤需要为每个pcie设备分配相应的唯一端口号,换句话说,要使接入到服务器的每个pcie设备均存在唯一端口号。当然,不同的pcie设备可以对应不同的io模块。因此,每个pcie设备的唯一端口号应属于其插槽所属io模块对应的插槽号区间中的一个。沿引上例,当存在pcie设备pcie1接入io1模块下的第一个插槽时,由于io1模块的插槽号区间为1-10,则pcie1对应的唯一端口号应为1-10中的某一个;当存在pcie设备pcie2接入io2模块下的第一个插槽时,由于io2模块的插槽号区间为11-20,则pcie1对应的唯一端口号应为11-20中的某一个。通常,为便于管理,可以依次按插槽号区间顺序分配唯一端口号。沿引上例,若按插槽号区间顺序分配唯一端口号,则pcie1的唯一端口号为1,pcie2的唯一端口号为11。依次,若还存在pcie设备pcie3接入io1模块下的第二个插槽(上文提及假设io1模块存三个插槽)时,pcie3的唯一端口号为12。事实上,不同的io模块对应的插槽数量不同,其对应的插槽号区间也不同,因此,在为io模块中的每个pcie设备分配唯一端口号之间,通常还需要区分不同的io模块。在此对于如何区分io模块不作限定,例如可以通过gpio区分io模块。不同io模块的gpio总数量不同,gpio类型不同,以及不同用途的gpio数量也可能不同,因此可以根据gpio区分不同种类的io模块。s102:根据唯一端口号在映射表中查询每个pcie设备对应的插槽丝印信息;其中,映射表为包含插槽丝印信息和唯一端口号映射关系的映射表;本步骤旨在根据唯一端口号在映射表中查询对应的插槽丝印信息。该映射表包括插槽号区间与插槽丝印信息之间的映射关系。插槽号区间上文已经说明,插槽丝印信息指的是bios发送给bmc的pcie设备接入时的资产信息,通常指的是具体接入到服务器io模块和该io模块的插槽的该pcie设备名称等。简单而言,对服务器而言,在pcie设备接入后,服务器需要确定被占用的插槽对应的是哪一个pcie设备,而该pcie设备名称即为插槽丝印信息。当然,在此基础上,插槽丝印信息还可以包括其他pcie资产信息,即更详细的pcie设备信息,例如pcie设备的用途、io输出时高电平和低电平的输出参数等等,这些信息都有利于服务器对外围设备(即本实施例中的pcie设备)的监控管理,便于用户查看服务器的pcie配置信息。本步骤需要根据唯一端口号在映射表中查询插槽丝印信息,也即是说,默认在本步骤之前存在“根据所述io模块的插槽丝印信息和唯一端口号建立所述映射表”这一步骤。在此对于映射表的具体形式不作限定,例如可以以table表的形式存在。具体的,沿引上例,若io1模块的三个插槽分别对应pcie1、pcie3、pcie4,io2模块的两个插槽分别对应pcie2、pcie5,则此时,对应的映射表可以为{1:pcie1(io1),2:pcie3(io1),3:pcie4(io1),11:pcie2(io2),12:pcie5(io2)},即包括唯一端口号、pcie设备名称也即插槽丝印信息和对应的io模块名称。这里的pcie1-pcie5仅用于区分不同的pcie设备,并方便表示出映射表中的内容组成部分,实际上针对于每个io模块,例如io1模块,其编号通常按阿拉伯数字或者其他数字顺序进行。特别需要说明的是,在当下服务器的实际应用中,根据实际应用需求的不同,使用不同的io模块,也即是说,每台服务器通常只使用一种io模块,然而不同的服务器所采用的io模块可能不尽相同。因此对于每一台服务器而言,io模块的pcie设备标号均是从pcie0起计数,即io1模块的三个插槽分别连接pcie0、pcie1、pcie2,io2模块的两个插槽分别连接pcie0、pcie1,则此时对应的映射表为{1:pcie0(io1),2:pcie1(io1),3:pcie2(io1),11:pcie0(io2),12:pcie1(io2)}。由此可见,映射表中覆盖的io模块种类应包括服务器使用的io模块种类,当然在此对于io模块的种类不作限定,具体应由本领域技术人员对映射表中的io模块及相应的唯一端口号进行设定。无论以何种形式表现io模块的插槽连接的pcie设备,以及何种形式的映射表,均可以根据唯一端口号在映射表中查询插槽丝印信息。当然,容易理解的是,建立完映射表后,还需要保存该映射表。在此对于将映射表存于哪些存储空间不作限定,例如,可以存储至服务器的bios。需要注意的是,由于pcie等外围设备的信息需要上传至服务器的bmc,因此映射表通常位于服务器的底层存储设备,在此不一一举例限定。s103:将各个所述pcie设备对应的插槽丝印信息发送至bmc,以便所述bmc根据所述插槽丝印信息对pcie设备进行管理。本步骤旨在将s102中获取到的pcie设备对应的插槽丝印信息发送至服务器的bmc,服务器在接收插槽丝印信息后,可以获知服务器的pcie配置信息,便于对pcie设备的监控管理。本申请实施例提供了一种pcie设备的管理方法,通过为不同的io模块划分了不同的插槽号区间,再为每个io模块中的每个pcie设备分配唯一端口号,并且唯一端口号作为pcie设备以及pcie设备对应的pcie插槽的唯一标识,使得每个pcie插槽的丝印信息唯一,避免出现同一个信号接出来的pcie插槽丝印信息却不同的情况,可以准确获取pcie插槽的丝印信息,便于服务器根据每个唯一的丝印信息对pcie设备进行查看和管理。下面对本申请实施例提供的一种pcie设备的管理系统进行介绍,下文描述的管理系统与上文描述的一种pcie设备的管理方法可相互对应参照。参见图2,图2为本申请实施例所提供的一种pcie设备的管理系统结构示意图,该管理系统可以包括:分配模块100,用于在检测到io模块时,为所述io模块中的每个pcie设备分配唯一端口号;其中,所述唯一端口号属于所述io模块对应的插槽号区间;查询模块200,用于根据所述唯一端口号在映射表中查询每个所述pcie设备对应的插槽丝印信息;其中,所述映射表为包含插槽丝印信息和所述唯一端口号映射关系的映射表;发送模块300,用于将各个所述pcie设备对应的插槽丝印信息发送至bmc,以便所述bmc根据所述插槽丝印信息对pcie设备进行管理。基于上述实施例,作为优选的实施例,所述管理系统还包括:映射表建立模块,用于根据所述io模块的插槽丝印信息和唯一端口号建立所述映射表。基于上述实施例,作为优选的实施例,所述管理系统还可以包括:区分模块,用于利用gpio区分不同的io模块。基于上述实施例,作为优选的实施例,所述管理系统还可以包括:存储模块,用于将所述映射表存于服务器bios。本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的一种pcie设备的管理方法的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。本申请还提供了一种服务器,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的一种pcie设备的管理方法的步骤。当然所述服务器还可以包括各种网络接口,电源等组件。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1