CN105874442B - 计算机系统和计算机系统中端点设备访问的方法 - Google Patents

计算机系统和计算机系统中端点设备访问的方法 Download PDF

Info

Publication number
CN105874442B
CN105874442B CN201580003596.3A CN201580003596A CN105874442B CN 105874442 B CN105874442 B CN 105874442B CN 201580003596 A CN201580003596 A CN 201580003596A CN 105874442 B CN105874442 B CN 105874442B
Authority
CN
China
Prior art keywords
endpoint
endpoint device
subsystem
equipment
proxy equipment
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
CN201580003596.3A
Other languages
English (en)
Other versions
CN105874442A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710448822.XA priority Critical patent/CN107436850B/zh
Publication of CN105874442A publication Critical patent/CN105874442A/zh
Application granted granted Critical
Publication of CN105874442B publication Critical patent/CN105874442B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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/4403Processor initialisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供一种对计算机系统中端点设备进行访问的方法和计算机系统,现有技术在对计算机设备中端点设备进行管理时,需要依赖操作系统,不利于维护的问题。本发明实施例通过上述计算机系统中端点设备进行访问的方法和计算机系统,端点代理设备建立端点设备在所述计算子系统中的第一地址与在所述管理子系统的第二地址之间的对应关系,在接收到管理控制器对端点设备第一访问请求时,根据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并发送给所述端点设备。实现了管理控制器对端点设备访问请求的发送到所述端点设备,且不需要操作依赖于操作系统,提高了对端点设备进行管理时的可维护性。

Description

计算机系统和计算机系统中端点设备访问的方法
技术领域
本发明涉及信息技术领域,特别涉及对计算机系统中端点设备访问的方法和计算机系统。
背景技术
数据中心通常用以太网技术构建局域网,用FC(Fibre Channel,光纤通道技术)技术构建SAN(Storage Area Network and SAN Protocols,存储区域网络及其协议),计算机设备以太网卡用以接入局域网,光纤通道主机总线适配器HBA(Host Bus Adapter,主机总线适配器)用以接入SAN。多种类型的接口卡和网络设备削弱了业务灵活性,增加了数据中心网络管理复杂性、增加了设备成本和电力等方面的开销。FCoE(Fibre Channel overEthernet,以太网光纤通道)实现了以太网帧承载FC帧,使得FC SAN和以太网局域网可共享同一个单一的、集成的网络基础设施,解决了不同类型网络共存所带来的问题,实现了网络基础设施整合、精简的目标。
计算机设备中,网卡、RAID(Redundant Arrays of Independent Disks,冗余磁盘阵列)卡、SSD(Solid State Drives,固态硬盘)卡和GPU(Graphics Processing Unit,图形处理器)卡等PCIE(Peripheral Component Interconnect express,快捷外围部件互连标准)端点设备。
现有技术中计算机设备的管理子系统通过与运行在操作系统上的多个管理软件模块通信来实现对各PCIE端点设备的配置管理,各管理软件模块分别对应管理各个PCIE端点设备。对多个不同种类的PCIE端点设备的配置管理, 需部署多个管理软件模块,导致部署复杂且不易于后续升级维护。
发明内容
本发明实施例提供一种对计算机系统中端点设备进行访问的方法和计算机系统,以实现不依赖操作系统对端点设备的配置管理。
本发明实施例的第一方面,提供了一种计算机系统,包括计算子系统和管理子系统,所述计算子系统包括中央处理器,所述管理子系统包括管理控制器,所述中央处理器用于连接端点设备;
所述计算机系统还包括端点代理设备,所述端点代理设备的第一端口通过快捷外围部件互连标准PCIE链路连接所述计算子系统中的所述中央处理器,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器连接;
所述中央处理器,用于分配所述端点设备在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备,所述端点设备在所述计算子系统中的设备信息至少包括所述端点设备在所述计算子系统中的第一地址信息;
所述管理控制器,用于在确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息后,根据所述端点设备在所述计算子系统中的第一地址分配所述端点设备在所述管理子系统中的第二地址,并将所述端点设备在所述管理子系统中的第二地址写入所述端点代理设备;
所述端点代理设备,用于在被写入所述第二地址之后,建立所述端点设备在所述计算子系统中的第一地址与所述端点设备在所述管理子系统中的第二地址之间的对应关系;
所述管理控制器还用于发送第一访问请求,所述第一访问请求携带所述端点设备在所述管理子系统中的第二地址;
所述端点代理设备还用于通过所述第二端口与所述管理控制器的连接接收所述管理控制器发送的所述第一访问请求,根据所述对应关系生成携带所述 端点设备在所述计算子系统中的第一地址的第二访问请求,并通过所述第一端口连接的所述PCIE链路将所述第二访问请求发送给所述端点设备。
结合本发明实施例的第一方面,在本发明实施例的第一方面的第一种可能的实现方式中,
所述中央处理器具体用于在所述计算子系统初始化过程中,根据基本输入输出系统BIOS的指令扫描到所述端点设备和所述端点代理设备,分别为所述端点设备和所述端点代理设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备。
结合本发明实施例的第一方面的第一种可能的实现方式,在本发明实施例的第一方面的第二种可能的实现方式中,所述中央处理器具体用于根据分配的所述端点代理设备的在所述计算子系统中的设备信息,通过所述第一端口连接的所述PCIE链路向所述端点代理设备写入所述端点设备在所述计算子系统中的设备信息。
结合本发明实施例的第一方面的第一种可能的实现方式,在本发明实施例的第一方面的第三种可能的实现方式中,所述管理控制器与所述中央处理器通过南桥芯片连接;
所述中央处理器具体用于通过所述南桥芯片将所述端点设备在所述计算子系统中的设备信息通知到所述管理控制器;
所述管理控制器还用于将获取到的所述端点设备在所述计算子系统中的设备信息通过所述第二端口的连接写入所述端点代理设备。
结合本发明实施例的第一方面的第一种、第二中和第三种可能的实现方式,在本发明实施例的第一方面的第四种可能的实现方式中,
所述端点代理设备还用于在被写入所述端点设备在所述计算子系统中的设备信息后,向所述管理控制器发送通知消息;
所述管理控制器具体用于接收所述端点代理设备发送的所述通知消息,根据所述通知消息确定所述端点代理设备中被写入所述端点设备在所述计算子 系统中的设备信息。
结合本发明实施例的第一方面的第一种、第二中和第三种可能的实现方式,在本发明实施例的第一方面的第五种可能的实现方式中,
所述管理控制器具体用于周期性地向所述端点代理设备发送查询消息,接收所述端点代理设备发送的所述查询消息的响应消息,根据所述查询消息的响应消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
结合本发明实施例的第一方面的第一种至第五种可能的实现方式,在本发明实施例的第一方面的第六种可能的实现方式中,
所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过内部集成电路I2C连接;
所述管理控制器还用于为所述端点代理设备分配I2C号;
所述管理控制器具体用于根据所述端点代理设备的I2C号,将所述第一访问请求发送到所述端点代理设备。
结合本发明实施例的第一方面的第一种至第五种可能的实现方式,在本发明实施例的第一方面的第七种可能的实现方式中,
所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过PCIE链路连接;
所述管理控制器还用于分配所述端点代理设备在所述管理子系统中的第二地址,所述端点代理设备在所述管理子系统中的第二地址的范围包含所述端点设备在所述管理子系统中的第二地址的范围;
所述管理控制器具体用于根据所述端点设备在所述管理子系统中的第二地址,将所述第一访问请求发送到所述端点代理设备。
结合本发明实施例的第一方面的第一种至第七种可能的实现方式,在本发明实施例的第一方面的第八种可能的实现方式中,
所述计算子系统还包括PCIE交换设备,所述端点设备通过所述PCIE交换 设备连接到所述中央处理器;
所述端点代理设备的第一端口通过PCIE链路连接所述PCIE交换设备以连接到所述中央处理器。
结合本发明实施例的第一方面的第一种至第八种可能的实现方式,在本发明实施例的第一方面的第九种可能的实现方式中,
所述端点代理设备位于所述计算子系统中;或,
所述端点代理设备位于所述管理子系统的管理控制器中。
结合本发明实施例的第一方面的第一种至第九种可能的实现方式,在本发明实施例的第一方面的第十种可能的实现方式中,
所述端点设备在所述计算子系统中的设备信息包括下述信息中的至少一项:
所述端点设备的输入输出I/O地址信息,所述端点设备的内存Memory地址信息,所述端点设备的总线/设备/功能B/D/F号,或所述端点设备的设备类型信息。
本发明实施例的第二方面,提供了一种对计算机系统中端点设备进行访问的方法,所述方法应用于所述计算机系统,所述计算机系统包括计算子系统和管理子系统,所述计算子系统包括中央处理器,所述管理子系统包括管理控制器,所述中央处理器用于连接端点设备;所述方法包括:
所述中央处理器为所述端点设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述计算子系统中的端点代理设备中,所述端点设备在所述计算子系统中的设备信息至少包括所述端点设备在所述计算子系统中的第一地址信息;
所述管理控制器在确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息后,根据所述端点设备在所述计算子系统中的第一地址分配所述端点设备在所述管理子系统中的第二地址,并将所述端点设备在所述管理子系统中的第二地址写入所述端点代理设备;
所述端点代理设备在被写入所述第二地址之后,建立所述端点设备在所述计算子系统中的第一地址与所述端点设备在所述管理子系统中的第二地址之间的对应关系;所述端点代理设备的第一端口通过快捷外围部件互连标准PCIE链路连接所述计算子系统中的所述中央处理器,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器连接;
所述管理控制器发送第一访问请求,所述第一访问请求携带所述端点设备在所述管理子系统中的第二地址;
所述端点代理设备通过所述第二端口与所述管理控制器的连接接收所述管理控制器发送的所述第一访问请求,根据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并通过所述第一端口连接的所述PCIE链路将所述第二访问请求发送给所述端点设备。
结合本发明实施例的第二方面,在本发明实施例的第二方面的第一种可能的实现方式中,所述方法还包括:
所述中央处理器在所述计算子系统初始化过程中,根据基本输入输出系统BIOS的指令扫描到所述端点设备和所述端点代理设备,分别为所述端点设备和所述端点代理设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备。
结合本发明实施例的第二方面的第一种可能的实现方式,在本发明实施例的第二方面的第二种可能的实现方式中,
所述中央处理器根据分配的所述端点代理设备的在所述计算子系统中的设备信息,通过所述第一端口连接的所述PCIE链路向所述端点代理设备写入所述端点设备在所述计算子系统中的设备信息。
结合本发明实施例的第二方面的第一种可能的实现方式,在本发明实施例的第二方面的第三种可能的实现方式中,所述管理控制器与所述中央处理器通过南桥芯片连接,所述方法还包括:
所述中央处理器通过所述南桥芯片将所述端点设备在所述计算子系统中 的设备信息通知到所述管理控制器;
所述管理控制器将获取到的所述端点设备在所述计算子系统中的设备信息通过所述第二端口的连接写入所述端点代理设备。
结合本发明实施例的第二方面的第一种、第二中和第三种可能的实现方式,在本发明实施例的第二方面的第四种可能的实现方式中,
所述方法还包括:
所述端点代理设备在被写入所述端点设备在所述计算子系统中的设备信息后,向所述管理控制器发送通知消息;
所述管理控制器接收所述端点代理设备发送的所述通知消息,根据所述通知消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
结合本发明实施例的第二方面的第一种、第二中和第三种可能的实现方式,在本发明实施例的第二方面的第五种可能的实现方式中,
所述方法还包括:
所述管理控制器周期性地向所述端点代理设备发送查询消息,接收所述端点代理设备发送的所述查询消息的响应消息,根据所述查询消息的响应消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
结合本发明实施例的第二方面的第一种至第五种可能的实现方式,在本发明实施例的第二方面的第六种可能的实现方式中,
所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过内部集成电路I2C连接,所述方法还包括:
所述管理控制器为所述端点代理设备分配I2C号;
所述管理控制器根据所述端点代理设备的I2C号,将所述第一访问请求发送到所述端点代理设备。
结合本发明实施例的第二方面的第一种至第五种可能的实现方式,在本发明实施例的第二方面的第七种可能的实现方式中,
所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过PCIE链路连接,所述方法还包括:
所述管理控制器分配所述端点代理设备在所述管理子系统中的第二地址,所述端点代理设备在所述管理子系统中的第二地址的范围包含所述端点设备在所述管理子系统中的第二地址的范围;
所述管理控制器根据所述端点设备在所述管理子系统中的第二地址,将所述第一访问请求发送到所述端点代理设备。
结合本发明实施例的第二方面的第一种至第七种可能的实现方式,在本发明实施例的第二方面的第八种可能的实现方式中,
所述计算子系统还包括PCIE交换设备,所述端点设备通过所述PCIE交换设备连接到所述中央处理器;
所述端点代理设备的第一端口通过PCIE链路连接所述PCIE交换设备以连接到所述中央处理器。
结合本发明实施例的第二方面的第一种至第八种可能的实现方式,在本发明实施例的第二方面的第九种可能的实现方式中,
所述端点代理设备位于所述计算子系统中;或,
所述端点代理设备位于所述管理子系统的管理控制器中。
结合本发明实施例的第二方面的第一种至第九种可能的实现方式,在本发明实施例的第二方面的第十种可能的实现方式中,
所述端点设备在所述计算子系统中的设备信息包括下述信息中的至少一项:
所述端点设备的输入输出I/O地址信息,所述端点设备的内存Memory地址信息,所述端点设备的总线/设备/功能B/D/F号,或所述端点设备的设备类型信息。
通过上述计算机系统中端点设备进行访问的方法和计算机系统,端点代理设备建立端点设备在所述计算子系统中的第一地址与在所述管理子系统的第二地址之间的对应关系,在接收到管理控制器对端点设备第一访问请求时,根 据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并发送给所述端点设备。实现了管理控制器对端点设备访问请求的发送到所述端点设备,且不需要操作依赖于操作系统,不需要对不同的端点设备进行不同的管理配置,提高了对端点设备进行管理时的可维护性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中一种计算机设备的基本结构示意图;
图2为本发明实施例提供的一种计算机设备200的结构示意图;
图3为本发明实施例提供的另一种计算机设备200的结构示意图;
图4为本发明实施例中端点代理设备2014的结构示意图;
图5为本发明实施例中端点代理设备2014的另一种实现方式结构示意图;
图6为本发明实施例中端点代理设备2014的进一步实现方式结构示意图;
图7为本发明实施例一种计算机系统300的结构示意图;
图8为本发明实施例一种计算机系统300的另一种实现方式结构示意图;
图9为本发明实施例对计算机系统中端点设备进行访问的方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
参考图1,图1为现有技术中一种计算机设备的基本结构示意图。如图1所 示,计算机设备100包含管理子系统102和计算子系统101。计算子系统101包含一个或者多个计算CPU1011,多个计算CPU通过CPU总线或者互联芯片进行连接,每一个计算CPU都可以访问系统所有的设备。同时,计算子系统的CPU与为操作系统提供存储空间的内存1012(MEMORY)连接。计算子系统的CPU1011直接或使用PCIE链路通过PCIE交换模块1013连接一个或者多个PCIE端点设备,以扩展计算子系统的功能。例如,网卡作为端点设备1015提供以太网络接入能力,RAID卡作为端点设备1016提供存储冗余功能,GPU卡作为端点设备1017提供图形化输出能力,不同的计算机设备也可以根据需要设计由用户来选择扩展终端设备种类。计算子系统的CPU通过南桥芯片1018或者直接连接的磁盘1019(图1以通过南桥芯片1018连接磁盘1019为例),所述磁盘1019一般作为系统存储设备。计算子系统上电后,计算子系统的CPU,例如主用CPU1011,会运行固定的BIOS(basic input/output system,基本输入输出系统)程序,由BIOS完成计算子系统硬件的初始化、PCIE的端点设备发现和配置、加载操作系统等。在操作系统启动后,计算子系统由加载的操作系统进行控制。
本发明实施例中,所述计算机设备100包括各种具有计算或存储功能的计算机设备,可以包括各种服务器,例如刀片服务器、机架服务器等等,也可以包括使用各种操作系统的服务器,例如使用Windows或Linux操作系统的服务器等等。
管理控制器MCPU1021是管理子系统的执行部件,通过各种传感器收集计算机设备100各个部件的运行信息和故障信息,以及对计算机设备100中的端点设备进行配置管理,例如配置或管理RAID卡的级别,配置或管理网卡的MAC地址,配置或管理PF(PhysicalFuction,物理功能)等。MCPU1021连接计算子系统的南桥芯片1018或者直连计算CPU1011,实现KVM功能,或者实现计算子系统101和管理子系统102之间的通信。
计算机设备100上电后,首先是管理子系统102先上电,在管理子系统102上电并完成初始化后,管理子系统102控制计算子系统101上电,计算子系统101 完成上电、硬件检测和启动操作系统后,计算机设备100开始运行。
BIOS程序是储存在计算机设备上的程序,在计算机设备的计算子系统上电后运行,由计算机设备的CPU调取BIOS程序来运行。BIOS在运行后主要完成三部分的功能,分别是:
一、在计算机设备的计算子系统上电后对硬件部分的检测,也叫做POST(Power OnSelf Test,加电自检),功能是检查计算机设备是否良好,通常完整的POST自检将包括对CPU,基本内存,扩展内存,主板,CMOS存储器,串并口,显示卡,软硬盘子系统及键盘等进行测试,一旦在自检中发现问题,系统将给出提示信息或鸣笛警告。自检中如发现有错误,将按两种情况处理:对于严重故障(致命性故障)则停机,此时由于各种初始化操作还没完成,不能给出任何提示或信号;对于非严重故障则给出提示或声音报警信号,等待用户处理;
二、初始化,包括创建中断向量、设置寄存器、对一些外部设备,例如PCIE的端点设备,进行初始化和检测等;在扫描和初始化PCIE端点设备的过程中,通常是采用深度优先算法,发现计算机设备中所有PCIE端点设备,并为每个PCIE端点设备分配B/D/F(Bus/Device/Function,总线/设备/功能)号、I/O地址空间和Memory地址空间;
三、引导程序,即引导和启动操作系统。BIOS先从软盘或硬盘的开始扇区读取引导记录,如果没有找到,则会在显示器上显示没有引导设备,如果找到引导记录会把电脑的控制权转给引导记录,由引导记录把操作系统载入计算机设备,在计算机设备启动完成后,BIOS程序运行完成,计算子系统的控制权交由引导记录载入的操作系统,运行操作系统的程序。
现有技术中,在对PCIE端点设备配置管理时,计算机设备的管理子系统通过与运行在操作系统上的多个管理软件模块通信来实现对各PCIE端点设备的配置管理,各管理软件模块分别对应管理各个PCIE端点设备。对多个不同种类的PCIE端点设备的配置管理,需部署多个管理软件模块,且各管理软件 模块本身需由各PCIE设备厂商提供或由服务器厂商针对各PCIE设备开发(以适配不同的操作系统类型),导致部署复杂且不易于后续升级维护。
本发明实施例提供一种技术方案,对上述计算机设备100进行改进,解决现有技术中对端点设备管理时需要依赖操作系统才能实现的问题,以提高计算机设备的管理子系统在对PCIE端点设备进行管理时的可维护性。
如图2所示,图2为本发明实施例提供的一种计算机设备200的结构示意图。计算机设备200包括计算子系统201和管理子系统202,计算子系统201包括中央处理器2011、内存2012、PCIE交换模块2013、端点设备2015、端点设备2016、端点设备2017、南桥芯片2018等;管理子系统202包括管理控制器2021和内存2022。
本发明实施例在计算机设备200中新增一个端点代理设备2014,例如一个PCIE端点代理设备。该端点代理设备2014可以是一个芯片,也可以是处理器的一部分,或独立的端点设备(例如设备卡)等等。该端点代理设备2014分别与管理控制器2021和PCIE交换模块2013相连。
其中,所述端点代理设备2014可以通过PCIE链路通过计算子系统201中的PCIE交换模块与CPU2011相连,也可以与CPU2011直接相连,或者直接与南桥芯片2018相连。例如,端点代理设备2014的第一端口(PCIE端口)通过PCIE链路与CPU2011相连,或端点代理设备2014的第一端口(PCIE端口)通过PCIE链路通过PCIE交换模块与CPU2011相连。图2以端点代理设备2014通过PCIE交换模块与CPU2011相连为例进行说明。
所述端点代理设备2014通过标准总线或者私有总线(例如PCIE总线等)与管理子系统202的管理控制器2021相连。例如,端点代理设备2014的第二端口(PCIE端口)通过PCIE链路与与管理子系统202的管理控制器2021相连,或端点代理设备2014的第二端口(I2C端口)通过I2C链路与管理子系统202的管理控制器2021相连。管理控制器2021通过端点代理设备2014间接访问计算子系统201中的端点设备,例如端点设备2015等,实现带外配置(包括但 不限于配置RAID卡的级别,网卡的MAC地址,PF类型等)、监控系统所有端点设备的运行状态(包括但不限于监控RAID卡下的硬盘健康状态,网卡链路状态,统计计数器等),从而能够达到在计算子系统201的CPU上通过管理工具带内管理端点设备的效果,但同时又不依赖计算机设备的操作系统,减少了对外部的依赖性,不需要对不同的端点设备进行不同的管理配置,且不需要各管理软件模块由各PCIE设备厂商提供或由服务器厂商针对各PCIE设备开发,提升了计算机设备的可维护性。
需要说明的是,上述第一端口和第二端口在图中未示出,应理解,第一端口和第二端口是端点代理设备的端口,其具体实现可以有多种的实现方式,包括但不限于通过具体的硬件接口,或通过具备通信功能的软件接口来实现,本发明实施例不限定接口的具体实现方式。
可选的,本发明实施例中的端点代理设备2014,和计算机设备中端点设备(例如端点设备2015)一样,遵循PCIE标准进行通信。
以图2所示的示例为例,中央处理器2011通过BIOS芯片中的BIOS程序在计算子系统201启动阶段能发现端点代理设备2014,以及端点设备2015、端点设备2016和端点设备2017,并根据每个端点设备的要求进行配置,以及对输入/输出资源、内存资源分配等。对于端点设备2015、端点设备2016和端点设备2017,中央处理器2011通过BIOS程序进行初始化,采用深度优先算法,发现端点设备2015、端点设备2016和端点设备2017,并为每个端点设备分配B/D/F号、I/O地址空间或Memory地址空间等。其中,所述I/O地址空间可以为本发明实施例中端点设备(例如端点设备2015)在所述计算子系统201中的第一地址信息;或者,所述Memory地址空间也可以为本发明实施例中端点设备(例如端点设备2015)在所述计算子系统201中的第一地址信息。
中央处理器2011通过BIOS程序在对端点代理设备2014初始化,也是采用采用深度优先算法,为端点代理设备2014分配B/D/F号、I/O和Memory空间等。同时,中央处理器2011通过BIOS程序能够识别出端点代理设备2014 的类型,即识别出端点代理设备2014是代理设备,使得CPU2011能够将端点设备(例如端点设备2015、端点设备2016、端点设备2017)的设备信息写入识别出的端点代理设备。根据PCIE标准的定义,每个PCIE的端点设备必须支持64个字节的配置空间,例如范围为0x00-0x3f,
其中,在08H的Class Code字段定义了EP设备的类型,假设Class Code代码为“1111”的为代理设备类型,Class Code代码不是“1111”的端点设备(例如端点设备2015)。中央处理器2011通过BIOS程序读取该Class Code字段,就能够识别每个PCIE端点设备的类型,包括能够识别出端点代理设备2014为代理设备的类型,。
中央处理器2011通过BIOS程序完成计算机设备200中计算子系统201所有的端点设备初始化后,将计算子系统201中除端点代理设备2014之外的端点设备(例如端点设备2015、端点设备2016和端点设备2017等)的设备信息写入所述端点代理设备2014中。具体的,可以是所述中央处理器2011通过端点代理设备上的第一端口,以及所述第一端口连接的PCIE链路将端点设备(例如端点设备2015、端点设备2016和端点设备2017等)的设备信息写入所述端点代理设备2014中。写入端点代理设备2014中的其它端点设备的设备信息包括但不限于:每个端点设备的B/D/F号、I/O地址空间、Memory地址空间或设备类型等。例如可以是写入端点设备2015的B/D/F号和I/O地址空间,也可以是写入端点设备2016的B/D/F号和memory地址空间,或者是可以是写入端点设备2015的B/D/F号,I/O地址和memory地址空间。
端点代理设备2014保存中央处理器2011通过BIOS程序写入的端点设备的设备信息,并通过中断的方式通知管理子系统202中的管理控制器2021,管理控制器2021根据端点代理设备2014的通知,确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
具体的,可以是端点代理设备2014在被写入端点设备(例如端点设备2015)在所述计算子系统201中的设备信息后,向所述管理控制器2021发送通知消息, 所述管理控制器2021接收所述端点代理设备2014发送的所述通知消息,根据所述通知消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
管理子系统202中的管理控制器2021也可以通过查询的方式获取端点代理设备2014中被写入端点设备的设备信息。例如,所述管理控制器2021周期性地向所述端点代理设备2014发送查询消息,在所述端点代理设备2014被写入端点设备的设备信息时,接收所述端点代理设备2014发送的所述查询消息的响应消息,所述响应消息包含所述端点代理设备2014中写入的端点设备的设备信息,所述管理控制器2021根据所述查询消息的响应消息确定所述端点代理设备2014中被写入所述端点设备在所述计算子系统中的设备信息。
在本发明实施例的一种实现方式中,所述端点代理设备2014通过第一端口与PCIE交换模块2013相连。具体的,所述端点代理设备2014的第一端口可以通过PCIE链路连接所述PCIE交换模块2013,并通过所述交换模块2013与所述中央处理器2011相连。
作为可选的实现方式,本发明实施例中,所述端点代理设备2014通过第二端口与管理控制器2021相连。具体的,所述端点代理设备2014的第二端口(I2C端口)通过I2C(Inter-Integrated Circuit)链路与所述管理控制器2021相连;或所述端点代理设备2014的第二端口(PCIE端口)通过PCIE链路,与所述管理控制器2021相连。当所述端点代理设备2014的第二端口与所述管理控制器2021通过I2C链路连接时,所述管理控制器2021为所述端点代理设备2014分配I2C号,并根据所述端点代理设备2014的I2C号,将对端点设备(例如端点设备2015)的访问请求发送到所述端点代理设备。当所述端点代理设备2014的第二端口与所述管理控制器2021通过PCIE链路连接时,所述管理控制器2021分配所述端点代理设备2014在所述管理子系统202中的第二地址,所述端点代理设备2014在所述管理子系统202中的第二地址的范围包含端点设 备(包括端点设备2015、端点设备2016、端点设备2017)在所述管理子系统中202中的地址范围。所述管理控制器2021根据所述端点代理设备2014在所述管理子系统中的第二地址,将对端点设备(例如端点设备2015)的访问请求发送到所述端点代理设备。
作为一种可选的实现方式,中央处理器2011通过BIOS程序完成计算机设备200中计算子系统201所有的端点设备后,可以将计算子系统201中除端点代理设备2014之外的端点设备的设备信息,中央处理器2011通过南桥芯片2018写入管理子系统202中的管理控制器2021中,然后由管理控制器2021通过所述管理控制器2021的第二端口将所述端点设备在计算子系统201中的设备信息写入端点代理设备2014中。
管理子系统202中的管理控制器2021获取计算子系统201中除所述端点代理设备2014之外的所有端点设备的设备信息后,为每个端点设备分配管理子系统的地址空间(包括输入/输出I/O地址空间,或内存memory地址空间)。具体的,可以是管理控制器2021根据所述端点设备(例如端点设备2015)在所述计算子系统201中的第一地址分配所述端点设备(例如端点设备2015)在所述管理子系统202中的第二地址,该第二地址可以是I/O地址空间或memory地址空间。管理控制器2021根据所述端点设备(例如端点设备2015)在所述计算子系统201中的第一地址分配所述端点设备(例如端点设备2015)在所述管理子系统202中的第二地址后,将所述端点设备(例如端点设备2015)在所述管理子系统202中的第二地址写入所述端点代理设备2014中。端点代理设备2014建立每个端点设备(例如端点设备2015)在管理子系统202的地址空间,例如所述第二地址,与每个端点设备(例如端点设备2015)在计算子系统202的地址空间,例如所述第一地址,之间的对应关系。这种对应关系可以如表1所示:
表1
表1中,管理控制器2021为端点设备2015分配的管理I/O地址空间A11~A12与端点设备2015的物理I/O地址空间C11~C12大小相同且对应,管理控制器2021为端点设备2015分配的管理memory地址空间B11~B12与端点设备2015的物理memory地址空间D11~D12大小相同且对应。管理控制器2021为其它端点设备分配的管理地址空间,与端点设备2015分配的管理地址空间类同,不再赘述。
管理控制器2021能够根据分配的所述地址空间,通过所述端点代理设备2014访问端点设备,例如访问端点设备2015、端点设备2016和端点设备2017等,实现对端点设备的配置或管理。
所述端点代理设备2014接收管理控制器2021发送的对端点设备(例如端点设备2015)的第一访问请求,该第一访问请求携带为端点设备(例如端点设备2015)在所述管理子系统202中分配的地址空间,例如所述第二地址。所述端点代理设备2014根据保存的地址空间的对应关系(例如所述端点设备2015的第一地址与第二地址之间的对应关系),转换为端点设备在计算子系统的物理地址空间,例如所述第一地址,生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并通过PCIE交换模块2013将所述第二访问请求转发给端点设备(例如端点设备2015)。例如,管理控制器2021要访问端点设备2015的memory空间,则基于对端点设备2015分配的memory地址(D11~D12),发送访问请求到端点代理设备2014。端点代理设备2014接收到管理控制器2021发送的访问请求,基于保存的memory空间对应关系,转换为端点设备2015的物理memory空间(B11~B12),并基于该端点设备2015的物理memory空间,将管理控制器2021的访问请求通过PCIE交换模块2013发送给端点设备2015。
作为一种可选的实现方式,如图3所示,所述端点代理设备2014也可以位于所述管理控制器2021中,所述管理控制器2021与端点代理设备2014直接交互,实现设备信息和管理命令的转发。
具体的,如图4所示,所述端点代理设备2014包括地址管理单元20141和控制单元20142。其中,地址管理单元20141用于存储中央处理器2011通过BIOS程序写入的端点设备的信息,例如每个端点设备的B/D/F号、物理I/O地址空间和物理Memory地址空间,设备类型等;并且还存储管理控制器2021写入的为每个端点设备分配的地址空间的信息,建立每个端点设备的物理I/O地址空间与管理控制器2021分配的I/O地址空间的对应关系,以及每个端点设备的物理memory地址空间与管理控制器2021分配的memory地址空间的对应关系。
控制单元20142用于接收管理控制器2021的访问请求,根据访问请求中携带的I/O地址信息或memory地址信息,从所述地址管理单元20141中获取对应的端点设备的物理I/O地址或对应的物理memory地址,基于获取的具体的物理I/O地址或对应的物理memory地址,将管理控制器2021的访问请求发送给相应的端点设备。具体的,控制单元20142在获取到具体的物理I/O地址或对应的物理memory地址后,通过构造TLP报文,通过PCIE链路发送给PCIE交换模块2013,并通过PCIE交换模块2013将构造的TLP报文发送给对应的端点设备。
为进一步说明本发明实施例中端点代理设备的实现方式,如图5所示,所述端点代理设备2014还包括转发单元20143(即PCIE Core),用于接收中央处理器2011通过BIOS程序的初始化、基地址空间配置,资源分配请求等,并为所述控制单元20142提供标准的PCIE传输层服务。在实现端点代理设备2014在转发管理控制器2021的访问请求时,所述转发单元20143具体用于接收所述控制单元20142生成的TLP报文,并发送给PCIE交换模块2013。并且,在端点设备返回TLP报文时,接收PCIE交换模块2013转发的TLP报文,发送给 所述控制单元20142。
参考图6,图6为端点代理设备2014中转发单元20143具体实现结构示意图。转发单元20143包括物理层(Physical Layer)、数据链路层(Data Link Layer)和传输层(Transport Layer),以及配置单元(包括但不限于I/O或Memory的配置等)。转发单元20143通过物理层、数据链路层和传输层实现控制单元20142发送的报文的转发,以及将PCIE交换模块2013转发的TLP报文发送给所述控制单元20142。
参考图7,图7为本发明实施例一种计算机系统300的结构示意图。计算机系统300包括计算子系统301和管理子系统302,所述计算子系统301包括中央处理器3011,所述管理子系统302包括管理控制器3021,所述中央处理器3011连接端点设备(包括端点设备3015、端点设备3016和/或端点设备3017)以及端点代理设备3014;
所述计算子系统301还包括端点代理设备3014,所述端点代理设备3014的第一端口(图中未示出)通过PCIE链路连接所述计算子系统301中的所述中央处理器3011,所述端点代理设备3014的第二端口(图中未示出)与所述管理子系统302中的所述管理控制器3021连接;
所述中央处理器3011,用于分配所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息,并将所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息写入所述端点代理设备3014,所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息至少包括所述端点设备(例如端点设备3015)在所述计算子系统301中的第一地址信息;
所述管理控制器3021,用于在确定所述端点代理设备3014中被写入所述端点设备(例如端点设备3015)在所述计算子系统中的设备信息后,根据所述端点设备(例如端点设备3015)在所述计算子系统301中的第一地址分配所述端点设备(例如端点设备3015)在所述管理子系统302中的第二地址,并将所述端点设备(例如端点设备3015)在所述管理子系统302中的第二地址写入所述 端点代理设备3014;
所述端点代理设备3014,用于在被写入所述第二地址之后,建立所述端点设备(例如端点设备3015)在所述计算子系统301中的第一地址与所述端点设备(例如端点设备3015)在所述管理子系统302中的第二地址之间的对应关系;
所述管理控制器3021还用于发送第一访问请求,所述第一访问请求携带所述端点设备(例如端点设备3015)在所述管理子系统302中的的第二地址;
所述端点代理设备3014还用于通过所述第二端口与所述管理控制器3021的连接接收所述管理控制器3021发送的所述第一访问请求,根据所述对应关系生成携带所述端点设备(例如端点设备3015)在所述计算子系统301中的第一地址的第二访问请求,并通过所述第一端口连接的所述PCIE链路将所述第二访问请求发送给所述端点设备(例如端点设备3015)。
上述计算机系统中,端点代理设备3014建立端点设备(例如端点设备3015)在所述计算子系统301中的第一地址与在所述管理子系统302中的第二地址之间的对应关系,在接收到管理控制器3021对端点设备(例如端点设备3015)第一访问请求时,根据所述对应关系生成携带所述端点设备(例如端点设备3015)在所述计算子系统301中的第一地址的第二访问请求,并发送给所述端点设备(例如端点设备3015)。实现了管理控制器3021对端点设备访问请求的发送到所述端点设备,且不需要操作依赖于操作系统,不需要对不同的端点设备进行不同的管理配置,提高了对端点设备进行管理时的可维护性。
在具体实现中,作为一种较优的实现方式,所述中央处理器3011可以在所述计算子系统301初始化过程中,根据基本输入输出系统BIOS的指令扫描到所述端点设备(例如端点设备3015)和所述端点代理设备3014,分别为所述端点设备(例如端点设备3015)和所述端点代理设备3014分配在所述计算子系统301中的设备信息,并将所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息写入所述端点代理设备3014。其中,所述端点设备在所述计算子系统中的设备信息可以是下述信息中的至少一项:所述端点设备的输入输出 I/O地址信息,所述端点设备的内存Memory地址信息,所述端点设备的总线/设备/功能B/D/F号,或所述端点设备的设备类型信息。相应的,所述第一地址可以是所述端点设备的输入输出I/O地址信息,也可以是所述端点设备的内存Memory地址信息。
可选的,所述中央处理器3011可以根据分配的所述端点代理设备3014的在所述计算子系统301中的设备信息,通过所述第一端口连接的所述PCIE链路向所述端点代理设备3014写入所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息。
在具体实现中,如图8所示,所述管理控制器3021还可以通过南桥芯片3018与所述中央处理器3011连接。相应的,所述中央处理器3011具体用于通过所述南桥芯片3018将所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息通知到所述管理控制器3021;所述管理控制器3021将获取到的所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息写入所述端点代理设备3014。具体的,可以是通过所述端点代理设备3014的第二端口的连接将所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息写入所述端点代理设备3014。
当所述端点代理设备3014被写入所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息后,可以通过两种方式通知管理控制器3021。
一种是所述端点代理设备3014向所述管理控制器3021发送通知消息,管理控制器3021接收所述端点代理设备3014发送的所述通知消息,根据所述通知消息确定所述端点代理设备3014中被写入所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息。
另一种是管理控制器3021周期性地向所述端点代理设备3014发送查询消息,接收所述端点代理设备3014发送的所述查询消息的响应消息,根据所述查询消息的响应消息确定所述端点代理设备3014中被写入所述端点设备(例如端点设备3015)在所述计算子系统301中的设备信息。
本发明实施例中,作为一种可选的实现方式,所述端点代理设备3014的第二端口与所述管理子系统302中的所述管理控制器3021可以通过内部集成电路I2C连接。当所述端点代理设备3014的第二端口与所述管理控制器3021通过I2C连接时,所述管理控制器3021为所述端点代理设备3014分配I2C号并根据分配的I2C号,将所述第一访问请求发送到所述端点代理设备3014。
所述端点代理设备3014的第二端口与所述管理子系统302中的所述管理控制器3021也可以通过PCIE链路连接。当所述端点代理设备3014的第二端口与所述管理控制器3021通过PCIE链路连接时,所述管理控制器3021分配所述端点代理设备3014在所述管理子系统302中的第二地址,所述第二地址的范围包含所述端点设备(例如端点设备3015)在所述管理子系统302中的第二地址的范围,所述管理控制器3021根据所述端点设备(例如端点设备3015)在所述管理子系统302中的第二地址,将所述第一访问请求发送到所述端点代理设备3014。
需要说明的是,上述第一地址还可以是所述端点设备(例如端点设备3015)在计算子系统301中的地址空间,例如上述表1所述的物理I/O地址空间或物理Memory地址空间。所述第二地址可以是与所述第一地址对应的地址空间,如表1中的管理地址空间类似。在管理控制器3021访问端点设备(例如端点设备3015)的地址时,通常是访问端点设备的一段地址空间,本发明实施例从简化角度,表述为第一地址或第二地址,实际实现中,第一第一可以是一段地址空间,第二地址也可以是一段地址空间。
可选的,如图8所示,所述计算子系统301还可以包括PCIE交换设备3013,所述端点设备(例如端点设备3015)通过所述PCIE交换设备连接到所述中央处理器3011,相应的,所述端点代理设备3014的第一端口通过PCIE链路连接所述PCIE交换设备以连接到所述中央处理器3011。其中,所述PCIE交换设备3013可以是图3中的PCIE交换模块2013,即可以通过硬件或软件实现,本发明实施例不限定具体的实现方式。
可选的,本发明实施例中,所述端点代理设备3014可以位于所述计算子系 统301中,也可以位于所述管理子系统302的管理控制器3021中。
上述图7或图8所示的实施例的具体实现方式,还可以参照图2至图6所示的实施例的实现方式实现,不再赘述。
参考图9,图9为本发明实施例一种对计算机系统中端点设备进行访问的方法流程示意图。其中,包括计算子系统和管理子系统,所述计算子系统包括中央处理器,所述管理子系统包括管理控制器,所述中央处理器用于连接端点设备;所述方法包括:
步骤900:所述中央处理器为所述端点设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述计算子系统中的端点代理设备中,所述端点设备在所述计算子系统中的设备信息至少包括所述端点设备在所述计算子系统中的第一地址信息;
步骤902:所述管理控制器在确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息后,根据所述端点设备在所述计算子系统中的第一地址分配所述端点设备在所述管理子系统中的第二地址,并将所述端点设备在所述管理子系统中的第二地址写入所述端点代理设备;
步骤904:所述端点代理设备在被写入所述第二地址之后,建立所述端点设备在所述计算子系统中的第一地址与所述端点设备在所述管理子系统中的第二地址之间的对应关系;所述端点代理设备的第一端口通过PCIE链路连接所述计算子系统中的所述中央处理器,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器连接;
步骤906:所述管理控制器发送第一访问请求,所述第一访问请求携带所述端点设备在所述管理子系统中的的第二地址;
步骤908:所述端点代理设备通过所述第二端口与所述管理控制器的连接接收所述管理控制器发送的所述第一访问请求,根据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并通过所述第一端口连接的所述PCIE链路将所述第二访问请求发送给所述端点设备。
上述方法实施例中,端点代理设备建立端点设备在所述计算子系统中的第一地址与在所述管理子系统中的第二地址之间的对应关系,在接收到管理控制器对端点设备第一访问请求时,根据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并发送给所述端点设备。实现了管理控制器对端点设备访问请求的发送到所述端点设备,且不需要操作依赖于操作系统,不需要对不同的端点设备进行不同的管理配置,提高了对端点设备进行管理时的可维护性。
在具体实现时,所述方法还可以包括:
所述中央处理器在所述计算子系统初始化过程中,根据基本输入输出系统BIOS的指令扫描到所述端点设备和所述端点代理设备,分别为所述端点设备和所述端点代理设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备。其中,所述端点设备在所述计算子系统中的设备信息可以是下述信息中的至少一项:所述端点设备的输入输出I/O地址信息,所述端点设备的内存Memory地址信息,所述端点设备的总线/设备/功能B/D/F号,或所述端点设备的设备类型信息。相应的,所述第一地址可以是所述端点设备的输入输出I/O地址信息,也可以是所述端点设备的内存Memory地址信息。
可选的,所述中央处理器根据分配的所述端点代理设备的在所述计算子系统中的设备信息,通过所述第一端口连接的所述PCIE链路向所述端点代理设备写入所述端点设备在所述计算子系统中的设备信息。或者,所述管理控制器与所述中央处理器通过南桥芯片连接,所述中央处理器通过所述南桥芯片将所述端点设备在所述计算子系统中的设备信息通知到所述管理控制器,所述管理控制器将获取到的所述端点设备在所述计算子系统中的设备信息通过所述第二端口的连接写入所述端点代理设备。
当所述端点代理设备被写入所述端点设备在所述计算子系统中的设备信息后,可以通过两种方式通知管理控制器。
一种是所述端点代理设备在被写入所述端点设备在所述计算子系统中的设备信息后,向所述管理控制器发送通知消息,所述管理控制器接收所述端点代理设备发送的所述通知消息,根据所述通知消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
另一种是所述管理控制器周期性地向所述端点代理设备发送查询消息,接收所述端点代理设备发送的所述查询消息的响应消息,根据所述查询消息的响应消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
作为一种可选的实现方式,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过内部集成电路I2C连接,所述方法还包括:
所述管理控制器为所述端点代理设备分配I2C号;
所述管理控制器根据所述端点代理设备的I2C号,将所述第一访问请求发送到所述端点代理设备。
或者,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过PCIE链路连接,所述方法还包括:
所述管理控制器分配所述端点代理设备在所述管理子系统中的第二地址,所述端点代理设备在所述管理子系统中的第二地址的范围包含所述端点设备在所述管理子系统中的第二地址的范围,所述管理控制器根据所述端点设备在所述管理子系统中的第二地址,将所述第一访问请求发送到所述端点代理设备。
需要说明的是,上述第一地址还可以是所述端点设备在计算子系统301中的地址空间,例如上述表1所述的物理I/O地址空间或物理Memory地址空间。所述第二地址可以是与所述第一地址对应的地址空间,如表1中的管理地址空间类似。在管理控制器访问端点设备的地址时,通常是访问端点设备的一段地址空间,本发明实施例从简化角度,表述为第一地址或第二地址,实际实现中,第一第一可以是一段地址空间,第二地址也可以是一段地址空间。
可选的,所述计算子系统还包括PCIE交换设备,所述端点设备通过所述PCIE交换设备连接到所述中央处理器,所述端点代理设备的第一端口通过PCIE链路连接所述PCIE交换设备以连接到所述中央处理器。其中,所述PCIE交换设备3013可以是图3中的PCIE交换模块2013,即可以通过硬件或软件实现,本发明实施例不限定具体的实现方式。
可选的,所述端点代理设备位于所述计算子系统中或位于所述管理子系统的管理控制器中。
上述方法实施例的具体实现方式,还可以参照图2至图6所示的实施例的实现方式实现,不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (22)

1.一种计算机系统,其特征在于,包括计算子系统和管理子系统,所述计算子系统包括中央处理器,所述管理子系统包括管理控制器,所述中央处理器用于连接端点设备;
所述计算机系统还包括端点代理设备,所述端点代理设备的第一端口通过快捷外围部件互连标准PCIE链路连接所述计算子系统中的所述中央处理器,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器连接;
所述中央处理器,用于分配所述端点设备在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备,所述端点设备在所述计算子系统中的设备信息至少包括所述端点设备在所述计算子系统中的第一地址信息;
所述管理控制器,用于在确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息后,根据所述端点设备在所述计算子系统中的第一地址分配所述端点设备在所述管理子系统中的第二地址,并将所述端点设备在所述管理子系统中的第二地址写入所述端点代理设备;
所述端点代理设备,用于在被写入所述第二地址之后,建立所述端点设备在所述计算子系统中的第一地址与所述端点设备在所述管理子系统中的第二地址之间的对应关系;
所述管理控制器还用于发送第一访问请求,所述第一访问请求携带所述端点设备在所述管理子系统中的第二地址;
所述端点代理设备还用于通过所述第二端口与所述管理控制器的连接接收所述管理控制器发送的所述第一访问请求,根据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并通过所述第一端口连接的所述PCIE链路将所述第二访问请求发送给所述端点设备。
2.根据权利要求1所述的计算机系统,其特征在于,
所述中央处理器具体用于在所述计算子系统初始化过程中,根据基本输入输出系统BIOS的指令扫描到所述端点设备和所述端点代理设备,分别为所述端点设备和所述端点代理设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备。
3.根据权利要求2所述的计算机系统,其特征在于,所述中央处理器具体用于根据分配的所述端点代理设备的在所述计算子系统中的设备信息,通过所述第一端口连接的所述PCIE链路向所述端点代理设备写入所述端点设备在所述计算子系统中的设备信息。
4.根据权利要求2所述的计算机系统,其特征在于,所述管理控制器与所述中央处理器通过南桥芯片连接;
所述中央处理器具体用于通过所述南桥芯片将所述端点设备在所述计算子系统中的设备信息通知到所述管理控制器;
所述管理控制器还用于将获取到的所述端点设备在所述计算子系统中的设备信息通过所述第二端口的连接写入所述端点代理设备。
5.根据权利要求2-4任一项所述的计算机系统,其特征在于,
所述端点代理设备还用于在被写入所述端点设备在所述计算子系统中的设备信息后,向所述管理控制器发送通知消息;
所述管理控制器具体用于接收所述端点代理设备发送的所述通知消息,根据所述通知消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
6.根据权利要求2-4任一项所述的计算机系统,其特征在于,
所述管理控制器具体用于周期性地向所述端点代理设备发送查询消息,接收所述端点代理设备发送的所述查询消息的响应消息,根据所述查询消息的响应消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
7.根据权利要求2-4任一项所述的计算机系统,其特征在于,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过内部集成电路I2C连接;
所述管理控制器还用于为所述端点代理设备分配I2C号;
所述管理控制器具体用于根据所述端点代理设备的I2C号,将所述第一访问请求发送到所述端点代理设备。
8.根据权利要求2-4任一项所述的计算机系统,其特征在于,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过PCIE链路连接;
所述管理控制器还用于分配所述端点代理设备在所述管理子系统中的第二地址,所述端点代理设备在所述管理子系统中的第二地址的范围包含所述端点设备在所述管理子系统中的第二地址的范围;
所述管理控制器具体用于根据所述端点设备在所述管理子系统中的第二地址,将所述第一访问请求发送到所述端点代理设备。
9.根据权利要求2-4任一项所述的计算机系统,其特征在于,所述计算子系统还包括PCIE交换设备,所述端点设备通过所述PCIE交换设备连接到所述中央处理器;
所述端点代理设备的第一端口通过PCIE链路连接所述PCIE交换设备以连接到所述中央处理器。
10.根据权利要求2-4任一所述的计算机系统,其特征在于:
所述端点代理设备位于所述计算子系统中;或,
所述端点代理设备位于所述管理子系统的管理控制器中。
11.根据权利要求2-4任一所述的计算机系统,其特征在于:
所述端点设备在所述计算子系统中的设备信息包括下述信息中的至少一项:
所述端点设备的输入输出I/O地址信息,所述端点设备的内存Memory地址信息,所述端点设备的总线/设备/功能B/D/F号,或所述端点设备的设备类型信息。
12.一种对计算机系统中端点设备进行访问的方法,其特征在于,所述方法应用于所述计算机系统,所述计算机系统包括计算子系统和管理子系统,所述计算子系统包括中央处理器,所述管理子系统包括管理控制器,所述中央处理器用于连接端点设备;所述方法包括:
所述中央处理器为所述端点设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述计算子系统中的端点代理设备中,所述端点设备在所述计算子系统中的设备信息至少包括所述端点设备在所述计算子系统中的第一地址信息;
所述管理控制器在确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息后,根据所述端点设备在所述计算子系统中的第一地址分配所述端点设备在所述管理子系统中的第二地址,并将所述端点设备在所述管理子系统中的第二地址写入所述端点代理设备;
所述端点代理设备在被写入所述第二地址之后,建立所述端点设备在所述计算子系统中的第一地址与所述端点设备在所述管理子系统中的第二地址之间的对应关系;所述端点代理设备的第一端口通过快捷外围部件互连标准PCIE链路连接所述计算子系统中的所述中央处理器,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器连接;
所述管理控制器发送第一访问请求,所述第一访问请求携带所述端点设备在所述管理子系统中的第二地址;
所述端点代理设备通过所述第二端口与所述管理控制器的连接接收所述管理控制器发送的所述第一访问请求,根据所述对应关系生成携带所述端点设备在所述计算子系统中的第一地址的第二访问请求,并通过所述第一端口连接的所述PCIE链路将所述第二访问请求发送给所述端点设备。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
所述中央处理器在所述计算子系统初始化过程中,根据基本输入输出系统BIOS的指令扫描到所述端点设备和所述端点代理设备,分别为所述端点设备和所述端点代理设备分配在所述计算子系统中的设备信息,并将所述端点设备在所述计算子系统中的设备信息写入所述端点代理设备。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
所述中央处理器根据分配的所述端点代理设备的在所述计算子系统中的设备信息,通过所述第一端口连接的所述PCIE链路向所述端点代理设备写入所述端点设备在所述计算子系统中的设备信息。
15.根据权利要求13所述的方法,其特征在于,所述管理控制器与所述中央处理器通过南桥芯片连接,所述方法还包括:
所述中央处理器通过所述南桥芯片将所述端点设备在所述计算子系统中的设备信息通知到所述管理控制器;
所述管理控制器将获取到的所述端点设备在所述计算子系统中的设备信息通过所述第二端口的连接写入所述端点代理设备。
16.根据权利要求13-15任一项所述的方法,其特征在于,所述方法还包括:
所述端点代理设备在被写入所述端点设备在所述计算子系统中的设备信息后,向所述管理控制器发送通知消息;
所述管理控制器接收所述端点代理设备发送的所述通知消息,根据所述通知消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
17.根据权利要求13-15任一项所述的方法,其特征在于,所述方法还包括:
所述管理控制器周期性地向所述端点代理设备发送查询消息,接收所述端点代理设备发送的所述查询消息的响应消息,根据所述查询消息的响应消息确定所述端点代理设备中被写入所述端点设备在所述计算子系统中的设备信息。
18.根据权利要求13-15任一项所述的方法,其特征在于,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过内部集成电路I2C连接,所述方法还包括:
所述管理控制器为所述端点代理设备分配I2C号;
所述管理控制器根据所述端点代理设备的I2C号,将所述第一访问请求发送到所述端点代理设备。
19.根据权利要求13-15任一项所述的方法,其特征在于,所述端点代理设备的第二端口与所述管理子系统中的所述管理控制器通过PCIE链路连接,所述方法还包括:
所述管理控制器分配所述端点代理设备在所述管理子系统中的第二地址,所述端点代理设备在所述管理子系统中的第二地址的范围包含所述端点设备在所述管理子系统中的第二地址的范围;
所述管理控制器根据所述端点设备在所述管理子系统中的第二地址,将所述第一访问请求发送到所述端点代理设备。
20.根据权利要求13-15任一项所述的方法,其特征在于,所述计算子系统还包括PCIE交换设备,所述端点设备通过所述PCIE交换设备连接到所述中央处理器;
所述端点代理设备的第一端口通过PCIE链路连接所述PCIE交换设备以连接到所述中央处理器。
21.根据权利要求13-15任一所述的方法,其特征在于:
所述端点代理设备位于所述计算子系统中;或,
所述端点代理设备位于所述管理子系统的管理控制器中。
22.根据权利要求13-15任一所述的方法,其特征在于:
所述端点设备在所述计算子系统中的设备信息包括下述信息中的至少一项:
所述端点设备的输入输出I/O地址信息,所述端点设备的内存Memory地址信息,所述端点设备的总线/设备/功能B/D/F号,或所述端点设备的设备类型信息。
CN201580003596.3A 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法 Active CN105874442B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710448822.XA CN107436850B (zh) 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/090144 WO2017049433A1 (zh) 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710448822.XA Division CN107436850B (zh) 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法

Publications (2)

Publication Number Publication Date
CN105874442A CN105874442A (zh) 2016-08-17
CN105874442B true CN105874442B (zh) 2017-07-14

Family

ID=56624302

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710448822.XA Active CN107436850B (zh) 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法
CN201580003596.3A Active CN105874442B (zh) 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710448822.XA Active CN107436850B (zh) 2015-09-21 2015-09-21 计算机系统和计算机系统中端点设备访问的方法

Country Status (5)

Country Link
US (1) US10083141B2 (zh)
EP (1) EP3220713B1 (zh)
CN (2) CN107436850B (zh)
ES (1) ES2726302T3 (zh)
WO (1) WO2017049433A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107436850A (zh) * 2015-09-21 2017-12-05 华为技术有限公司 计算机系统和计算机系统中端点设备访问的方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10474606B2 (en) * 2017-02-17 2019-11-12 Hewlett Packard Enterprise Development Lp Management controller including virtual USB host controller
CN107483226B (zh) * 2017-07-04 2022-02-22 联想(北京)有限公司 一种信息处理方法及电子设备
CN109710411B (zh) * 2018-12-28 2020-09-22 深圳忆联信息系统有限公司 Tlp字段资源管理方法、装置、计算机设备及存储介质
CN110955517B (zh) * 2019-09-03 2021-08-20 华为技术有限公司 报文转发的方法、计算机设备和中间设备
US11314673B2 (en) * 2019-12-27 2022-04-26 Texas Instruments Incorporated Configurable multi-function PCIe endpoint controller in an SoC
CN113407469B (zh) * 2021-06-10 2023-04-07 浙江华创视讯科技有限公司 一种参数配置方法及装置、存储介质及电子装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6662242B2 (en) * 2001-04-17 2003-12-09 International Business Machines Corporation Method for PCI IO using PCI device memory mapping in a logically partitioned system
KR20040034612A (ko) * 2001-06-08 2004-04-28 포스패스 인코포레이티드 무선 장치들과의 양방향 개시 데이터 통신을 위한 방법 및시스템
US20060155862A1 (en) 2005-01-06 2006-07-13 Hari Kathi Data traffic load balancing based on application layer messages
US7920549B2 (en) * 2005-07-20 2011-04-05 Verizon Business Global Llc Method and system for providing secure media gateways to support interdomain traversal
US8737575B1 (en) * 2005-09-27 2014-05-27 At&T Intellectual Property Ii, L.P. Method and apparatus for transparently recording media communications between endpoint devices
US20080046628A1 (en) * 2006-08-21 2008-02-21 Mikal Hunsaker Multi-bus type management messaging method and apparatus
US7970916B2 (en) * 2007-07-25 2011-06-28 Cisco Technology, Inc. Register clustering in a sip-based network
US7934033B2 (en) * 2008-03-25 2011-04-26 Aprius, Inc. PCI-express function proxy
US8332711B2 (en) * 2009-06-08 2012-12-11 Clearwire Ip Holdings Llc Systems and methods of information transmission
US8385333B2 (en) * 2009-06-30 2013-02-26 Intel Corporation Mechanism for clock synchronization
US8521915B2 (en) * 2009-08-18 2013-08-27 Fusion-Io, Inc. Communicating between host computers and peripheral resources in an input/output (I/O) virtualization system
JP2011048452A (ja) 2009-08-25 2011-03-10 Nec Corp エンドポイント代理アクセス装置、共有システム、代理アクセス方法および代理アクセスプログラム
US8930609B2 (en) * 2010-08-18 2015-01-06 Intel Corporation Method, apparatus, and system for manageability and secure routing and endpoint access
US8521941B2 (en) * 2010-12-28 2013-08-27 Plx Technology, Inc. Multi-root sharing of single-root input/output virtualization
US8891552B2 (en) * 2011-11-08 2014-11-18 Cisco Technology, Inc. Managed access to mobile endpoints
EP2696591B1 (en) * 2012-08-09 2019-04-10 Samsung Electronics Co., Ltd Video calling using a remote camera device to stream video to a local endpoint host acting as a proxy
WO2014075255A1 (zh) * 2012-11-15 2014-05-22 华为技术有限公司 一种基于PCIE Switch通信的方法、装置及系统
EP2811413B1 (en) * 2013-05-02 2016-10-19 Huawei Technologies Co., Ltd. Computer system, access method and apparatus for peripheral component interconnect express endpoint device
US10684973B2 (en) * 2013-08-30 2020-06-16 Intel Corporation NUMA node peripheral switch
ES2656464T3 (es) * 2013-09-11 2018-02-27 Huawei Technologies Co., Ltd. Procedimiento, sistema informático y aparato de procesamiento de fallo
EP4089544B1 (en) * 2013-12-31 2024-01-31 Huawei Technologies Co., Ltd. Method and apparatus for extending pcie domain
GB2528061B (en) * 2014-07-08 2021-04-21 Advanced Risc Mach Ltd Translating between memory transactions of first type and memory transactions of a second type
US9864701B1 (en) * 2015-03-10 2018-01-09 Amazon Technologies, Inc. Resource mapping for an input/output device
WO2017049433A1 (zh) * 2015-09-21 2017-03-30 华为技术有限公司 计算机系统和计算机系统中端点设备访问的方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107436850A (zh) * 2015-09-21 2017-12-05 华为技术有限公司 计算机系统和计算机系统中端点设备访问的方法

Also Published As

Publication number Publication date
WO2017049433A1 (zh) 2017-03-30
ES2726302T3 (es) 2019-10-03
US10083141B2 (en) 2018-09-25
CN105874442A (zh) 2016-08-17
US20180225246A1 (en) 2018-08-09
EP3220713A1 (en) 2017-09-20
CN107436850B (zh) 2022-04-29
EP3220713B1 (en) 2019-03-20
EP3220713A4 (en) 2018-02-07
CN107436850A (zh) 2017-12-05

Similar Documents

Publication Publication Date Title
CN105874442B (zh) 计算机系统和计算机系统中端点设备访问的方法
CN107278299B (zh) 经由可重配置的虚拟交换机实现次级总线功能性的方法、装置和系统
EP3661141B1 (en) Switching device, peripheral component interconnect express system, and method for initializing peripheral component interconnect express system
US7395367B2 (en) Method using a master node to control I/O fabric configuration in a multi-host environment
US7574540B2 (en) Managing management controller communications
CN107818021A (zh) 使用bmc作为代理nvmeof发现控制器向主机提供nvm子系统的方法
CN101009532B (zh) 用于对出错消息进行路由的方法和设备
US8732285B2 (en) Upgradeable persistent virtual storage
CN103107960B (zh) 通过开关卡减少交换结构中交换故障的影响的方法和系统
US10331520B2 (en) Raid hot spare disk drive using inter-storage controller communication
US4862350A (en) Architecture for a distributive microprocessing system
US10846159B2 (en) System and method for managing, resetting and diagnosing failures of a device management bus
US20070168498A1 (en) Out-of-band characterization of server utilization via remote access card virtual media for auto-enterprise scaling
US9367510B2 (en) Backplane controller for handling two SES sidebands using one SMBUS controller and handler controls blinking of LEDs of drives installed on backplane
US7734839B1 (en) Method and integrated circuit for providing enclosure management services utilizing multiple interfaces and protocols
US10783109B2 (en) Device management messaging protocol proxy
US20200412557A1 (en) Modular system (switch boards and mid-plane) for supporting 50g or 100g ethernet speeds of fpga+ssd
CN108572843A (zh) 基于单个微控制器的多个计算节点管理
CN104050118A (zh) 提供对设备功能的访问的装置、系统和方法
US10261699B2 (en) Systems and methods for hardware-based RAID acceleration
CN104247353B (zh) 针对一体化机架中存储服务虚拟化的方法和系统
US10558453B1 (en) System and method to achieve shared drive firmware version consistency via ESRT update
CN103858105B (zh) 连接方法
US8352661B1 (en) Data storage systems having seamless software upgrades
US11307871B2 (en) Systems and methods for monitoring and validating server configurations

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant