CN115967618A - 一种多项目的bmc传感器配置管理方法及装置 - Google Patents
一种多项目的bmc传感器配置管理方法及装置 Download PDFInfo
- Publication number
- CN115967618A CN115967618A CN202211388662.1A CN202211388662A CN115967618A CN 115967618 A CN115967618 A CN 115967618A CN 202211388662 A CN202211388662 A CN 202211388662A CN 115967618 A CN115967618 A CN 115967618A
- Authority
- CN
- China
- Prior art keywords
- configuration
- information
- file
- sensor
- hardware information
- 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.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012986 modification Methods 0.000 abstract description 7
- 230000004048 modification Effects 0.000 abstract description 7
- 230000006978 adaptation Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 239000000523 sample Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种多项目的BMC传感器配置管理方法及装置,属于服务器管理技术领域。所述方法包括:在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个镜像文件中,配置文件包括传感器属性配置信息、配置信息指示字段,配置信息指示字段的参数包括用于区分设备的第一硬件信息;对于每个配置文件,获取配置信息指示字段的第一硬件信息,以及获取设备的第二硬件信息;在第一硬件信息和第二硬件信息匹配的情况下,获取传感器属性配置信息进行加载。该方法解决了不同项目进行传感器适配时,由于存在相同的配置,人为逐个进行配置检索和修改,操作较为复杂、效率低下且准确性不高的问题。
Description
技术领域
本申请涉及服务器管理技术领域,具体涉及一种多项目的BMC传感器配置管理方法及装置。
背景技术
基板管理控制器(Baseboard Management Controller,BMC)是一种服务处理器,能够借助传感器获得服务器、计算机或其他硬件设备的物理状态。
相关技术中,操作人员在对基板管理控制器进行传感器适配的时候,需要根据不同机器型号、不同项目,重新人工进行配置检索和配置修改。
由于进行传感器适配时,不同机器型号、不同项目可能存在相同的配置,人为逐个进行配置检索和修改,操作较为复杂、效率低下且准确性不高。
发明内容
本申请实施例的目的是提供一种多项目的BMC传感器配置管理方法及装置,能够解决在进行传感器适配时,不同机器型号、不同项目可能存在相同的配置,人为逐个进行配置检索和修改,操作较为复杂、效率低下且准确性不高的问题。
第一方面,本申请实施例提供了一种多项目的BMC传感器配置管理方法,该方法包括:
在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;
对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;
在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。
第二方面,本申请实施例提供了一种多项目的BMC传感器配置管理装置,该装置包括:
遍历模块,用于在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;
获取模块,用于对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;
加载模块,用于在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
在本申请实施例中,包括,在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件,其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息,对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息,在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。本方法设备通过检索配置信息指示字段获得匹配的配置文件,然后再加载匹配的配置文件,不用人为逐个进行配置检索和修改,操作较为简单、效率更高且准确性高。
附图说明
图1是本申请实施例提供的一种多项目的BMC传感器配置管理方法步骤流程图;
图2是本申请实施例提供的一种多项目的BMC传感器配置管理装置的框图;
图3是本申请实施例提供的一种电子设备;
图4是本申请实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是至少两个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的多项目的BMC传感器配置管理方法进行详细地说明。
下面先介绍一下本公开实施例涉及到的术语:
BMC(Baseboard Management Controller,基板管理控制器):基板管理控制器是一种服务处理器,能够借助传感器监视服务器,计算机或其他硬件设备的物理状态。基板管理控制器是智能平台管理接口的一部分,它嵌入在要监视的设备或计算机的主电路板或主板中,可帮助远程监视大量服务器或设备,可以在机器未开机的状态下,对机器进行固件升级、查看机器设备、等一些操作。
FRU(Field Replace Unit,现场可更换单元):现场可更换单元可以是用在计算机、服务器等设备上的一些可更换的部件,通常可以直接快速更换,例如:主机板、电源供应器、风扇等。用户可以通过读取FRU得到该元件的厂商、产品编号等信息。在服务器主板上,通常会有存储器存放主机板的FRU的信息,可以通过BMC去读取。
DBUS(Desktop Bus,数据总线):数据总线是一个低延迟,低开销,高可用性的进程间通信机制,由freedesktop.org项目提供,使用GPL许可证(General Public License,GNU通用公共许可协议)发行。DBUS最主要的用途是在Linux桌面环境为进程提供通信的主要概念为总线,注册后的进程可通过总线接收或传递消息,进程也可注册后等待内核事件响应,例如等待网络状态的转变或者计算机发出关机指令。DBUS已被大多数Linux发行版所采用,开发者可使用DBUS实现各种复杂的进程间通信任务。
配置文件:配置文件是一种计算机文件,可以为一些计算机程序配置参数和初始设置,即对不同对象进行不同配置的文件。配置文件本质上是包含成功操作程序所需信息的文件,信息以特定方式构成,是用户可配置的,通常存储在纯文本文件中。
JSON(JavaScript Object Notation,脚本对象表示法):JSON是一种轻量级的数据交换格式。它基于欧洲计算机协会制定的规范,采用完全独立于编程语言的文本格式来存储和表示数据。JSON具有简洁和清晰的层次结构,是一种理想的数据交换语言,易于阅读、编写、机器解析和生成。
镜像文件:镜像文件其实是将特定的一系列文件按照一定的格式制作成单一的文件,以方便用户下载和使用,例如一个测试版的操作系统、游戏等。可以把许多文件生成一个镜像文件。常见的镜像文件格式有ISO、BIN、IMG、TAO、DAO、CIF、FCD。
参照图1,图1示出了本申请实施例提供的一种多项目的BMC传感器配置管理方法步骤流程图,如图1所示,具体包括以下步骤:
步骤101,在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息。
设备上电即设备通电,设备通电以后BMC即可进行运行,采集服务器等电子设备上各种传感器信息,同时提供给上层运维网管软件。类型相同的传感器的配置文件会被编译到同一个镜像文件中,因此需要从镜像文件读取各配置文件。举例来说,配置文件1、配置文件2及配置文件3都是3v3的ADC类型传感器,则三个配置文件会被编译在同一个镜像文件中。本申请实施例中的设备可以是服务器、电脑、平板电脑等可以进行BMC配置管理的电子设备。
传感器属性配置信息可以包含有传感器名称(SensorName)、i2c总线(Inter-Integrated Circuit集成电路互连,Bus)、挂载的i2c地址(Addr)、节点索引(Index)、传感器类型(SensorType)、传感器属性信息(Properties)、严重高告警值(CRITHI)、严重低告警值(CRITLO)、高告警值(WARNHI)、低告警值(WARNLO)、缩放系数(ScaleFactor)等,本申请实施例对此并不进行具体限定。
配置信息指示字段是提前加入配置文件的字段,用作标识信息。设备可以根据配置信息指示字段判断需要进行配置的项目,找到需要进行配置的项目以后再解析配置文件的其他信息,如传感器属性配置信息等,这样可以提高多项目配置效率,减少人工遍历配置文件的失误。
第一硬件信息要用于区分项目,或者说用来区分不同机器或元件,所以要求固定不变,不能被轻易修改,并且能公开读取到的。因此,第一硬件信息可以是BMC主板的FRU数据信息,比如该元件的厂商、产品编号等信息。在本申请实施例中,可以是主板产品名称(BOARD_PRODUCT_NAME)。通过比对第一硬件信息与设备硬件信息可以确定该项目是否需要进行配置。
步骤102,对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息。
在本申请实施例中,第二硬件信息为设备自身或项目的硬件信息。当第一硬件信息与第二硬件信息的数据匹配,即第一硬件信息与第二硬件信息一致,说明该设备或项目一致,则继续对所述项目进行配置。因此,需要先根据该配置信息指示字段获取第一硬件信息与第二硬件信息。
步骤103,在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。
当第一硬件信息和第二硬件信息匹配,也就是第一硬件信息和第二硬件信息一致,项目与配置文件类型匹配,可以对传感器属性配置信息进行加载。将配置文件中的传感器属性配置信息中的传感器属性信息(Properties)加载到设备内存中进行缓存,根据该传感器属性信息(Properties)更新配置,将更新后的传感器属性信息(Properties)更新到数据总线,完成传感器属性配置信息的加载,便于项目或设备运行。
可选的,所述配置信息指示字段包括:数据字段及类型字段;所述数据字段用于查找所述第二硬件信息,所述类型字段用于确定查找所述第二硬件信息的方式。
在本申请实施例中,数据字段可以是命名为“ProbeData”的一个字段,ProbeData是字符串格式的字段,包含有区分不同项目的数据或者查找该数据的路径,可以用来区分不同项目。ProbeData包含的信息通常是固定不变的,不能被轻易修改的,可以公开读取到的,例如:BMC主板的FRU信息就是不会轻易改变的公开的硬件信息。
类型字段可以是命名为“ProbeType”的一个字段,ProbeType内容为整型数据,表述解读ProbeData路径信息的方式,也就是查找所述第二硬件信息的方式。在本申请实施例中,类型字段可以为1、2,当ProbeType为1时,说明ProbeData字段中保存的是DBUS接口和DBUS上的FRU的数据信息;当ProbeType为2时,说明ProbeData数据中保存的是文件路径名和DBUS上的FRU的数据信息。在本申请实施例中,还可以根据ProbeData路径信息的不同表达方式,设置不同的ProbeType数值。
本申请实施例提供的一种配置文件示例如下:
可见,该配置文件中传感器名称为"SYS_3V3"、i2c总线值为0、挂载的i2c地址值为0、节点索引值为1、传感器类型为ADC(analog to digital converter,模拟数字转换器)、传感器属性信息包含有严重高告警值、严重低告警值、高告警值、低告警值、缩放系数为1。该配置文件的ProbeType值为2,ProbeData中保存的是文件路径名“/etc/fru/baseboard.bin”和DBUS上的FRU的数据信息'BOARD_PRODUCT_NAME':'BMC_DEF'。
可选的,所述配置文件为JSON格式文件,所述配置信息指示字段的参数中包括预设的字符,所述预设的字符用于标记第二硬件信息的位置;
JSON格式文件用名称/值的格式记录数据,本申请实施例中的配置信息指示字段中的“ProbeType”、“ProbeData”即JSON格式中的名称;配置信息指示字段中的参数即JSON格式中的值。设备很容易访问和获取JSON格式的文件数据,设备可以通过点号表示法获取数据,也可以通过括号等符号获取数据。
举例来说,如下是本申请实施例提供的一种配置信息指示字段示例:
可见,对于JSON文件格式的配置信息指示字段,若要解读配置信息指示字段的数据字段,可以在设备查找到数据字段"ProbeData"位置后,从"ProbeData"字段的值的第一个位置开始,直到在字段的值检索到左括号“(”后,然后将左括号“(”位置之前的所有值,也就是文件数据"xyz.openbmc_project.FruDevice"读取出来。
预设的字符是数据字段上保存的第二硬件信息的位置,,可以是用于查找区分项目的数据的路径或接口。具体地,可以是ProbeData字段中保存的DBUS接口或者文件路径名。以下是本申请实施例提供的另一种配置文件示例:
可见,该配置文件中传感器名称为"CPU_3V3"、i2c总线值为0、挂载的i2c地址值为0、节点索引值为1、传感器类型为ADC(analog to digital converter,模拟数字转换器)、传感器属性信息包含有严重高告警值、严重低告警值、高告警值、低告警值、缩放系数为0.4,该配置文件的ProbeType值为1,配置信息指示字段的参数中包括预设的字符即ProbeData中保存的DBUS接口“xyz.openbmc_project.FruDevice”,通过该DBUS接口可以获得该设备或项目的硬件信息。
所述步骤102,包括:
子步骤1021,在所述类型字段符合第一条件的情况下,,通过所述预设的字符中的数据总线接口信息获取所述第二硬件信息。
在本申请实施例中,类型字段符合第一条件也就是ProbeType的值为1的情况,配置信息指示字段的参数中的预设的字符为保存第二硬件信息的数据总线接口信息。通过数据总线接口信息可以从DBUS上获取该接口下的第二硬件信息。
子步骤1022,在所述类型字段符合第二条件的情况下,,通过所述预设的字符中的路径信息获取所述第二硬件信息。
在本申请实施例中,类型字段符合第二条件也就是ProbeType的值为2的情况,配置信息指示字段的参数中的预设的字符为保存第二硬件信息的文件的路径信息。通过文件的路径信息可以上获取该文件路径下的文件内的第二硬件信息。
可选的,所述步骤102之前,还包括:
步骤104,查找所述配置信息指示字段是否存在,不存在就舍弃该配置。
该配置信息指示字段为提前加入配置文件的字段,可以是工作人员或用户选择的所有需要进行配置的文件。配置信息指示字段不存在,意味着该配置文件不是需要配置的文件,舍弃该配置。
可选的,所述步骤103,包括:
子步骤1031,获取所述传感器属性配置信息中的i2c总线、i2c地址及节点索引。
子步骤1032,根据所述i2c总线、i2c地址及节点索引,,查找驱动节点。
驱动节点是设备创建的一种特殊文件,设备的所有通信都通过驱动节点实现。驱动节点记录了硬件设备的位置和信息,比如某个设备对应连接某个接口的某个ID。在Linux中,所有设备都以文件的形式存放在/dev目录下,都是通过文件的方式进行访问,驱动节点是Linux内核对设备的抽象,可以让用户与内核进行硬件的沟通,读写设备以及其他的操作。
本申请实施例对通过i2c总线、i2c地址及节点索引查找驱动节点的方法不作具体限制。
子步骤1033,存在所述驱动节点的情况下,继续进行加载。
子步骤1034,不存在所述驱动节点的情况下,舍弃该配置。
不存在所述驱动节点的情况可能包含两种可能,一是该设备的硬件信息和配置文件的硬件信息一致,但是该设备并不具备这个传感器;二是该设备的硬件信息和配置文件的设备信息一致,设备也具有这个传感器,需要加载该配置文件,但是底层驱动没有抛出节点。当设备不具备该传感器,则无需加载该配置,所以舍弃该配置。当底层驱动没有抛出节点,没有驱动节点则设备也无法加载该配置,需要研发人员解决该问题。本申请实施例对此不作限制。
可选的,步骤103之后,还包括:
步骤105,在第一目录下生成第一文件。
本申请实施例在传感器配置完成后会在第一目录生成第一文件,第一文件的生成代表当前传感器配置已经加载,不需要再重新检索和匹配配置文件。具体地,可以是在sensors_configs目录下生成probe_file.json文件。第一文件内容包括有项目或设备的数据总线接口信息、路径信息及驱动节点。
所述步骤101,包括:
子步骤1011,在未检索到所述第一文件的情况下,确定传感器配置未加载。
由于第一文件的生成代表当前传感器配置已经加载,所以设备再次启动时会先检索第一目录下是否有第一文件,也就是看该传感器配置是否已经加载。如果第一目录下有第一文件,说明该配置已经加载;如果第一目录下没有第一文件,说明该配置还未加载。
具体地,在本申请实施例中,检索sensors_configs目录下是否存在probe_file.json文件,如果存在就不用遍历该目录下的json配置文件,直接读取该probe_file.json文件中保存的信息,然后从probe_file.json文件中包含的驱动节点获取数据并计算,更新DBUS数据。如果不存在,则可以确定传感器配置未加载。
可选的,所述步骤105,包括:
子步骤1051,根据所述数据总线接口信息、项目信息及驱动节点,生成所述第一文件。
JSON文件格式简便易读,用名称/值的格式记录数据,将获得的总线接口信息、项目信息及驱动节点的相关信息作为值生成相应的第一文件。本申请实施例提供的一种第一文件示例如下:
可见,该第一文件包括总线接口信息、项目信息及驱动节点,其中,DBUS接口interface为“xyz.openbmc_project.ADCSensor”;设备的项目信息object为“xyz/openbmc_project/sensor/3V3”;读取传感器数据的驱动节点路径path为“/sys/bus/class/hwmon/hwmon13/in1_input”。
如下是本申请实施例提供的一种配置文件:
该配置文件的配置管理流程如下,详细实现步骤为:
1)设备上电后,先检索sensors_configs目录,获取probe_file.json文件;如果没有probe_file.json文件,则将目录下的json配置文件遍历。
2)将probe_file.json文件信息全部读取到设备缓存。
3)查找ProbeData字段是否存在,不存在就舍弃该配置。
4)查找ProbeType字段是否存在,不存在就舍弃该配置。
5)查找到ProbeData字段位置后,检索“(”位置,将"xyz.openbmc_project.FruDevice"读取出来,从DBUS上查找"xyz.openbmc_project.FruDevice"接口下的"BOARD_PRODUCT_NAME"数据是否为"BMC",两者一致则保留该配置。
6)根据“Bus”“Addr”“Index”三部分数据检索读取传感器数据的驱动节点,驱动节点不存在就舍弃此配置。
7)此时保留的配置信息就是当前项目的配置,根据传感器类型创建DBUS接口(xyz.openbmc_project.ADCSensor)。
8)根据SensorName数据在上一步创建的DBUS接口上添加项目object(xyz/openbmc_project/sensor/3V3)。
9)将Properties数据解析,缓存在内存中。
10)根据第7步的路径,读取传感器驱动的原始数据(假设数据为10000),根据缩放系数计算当前ADC sensor实际数据:10000/1000*0.333。也就是3.33V。
11)将传感器的阈值和当前值数据更新到DBUS上。
12)在sensors_configs目录下生成probe_file.json文件。
针对多项目的传感器配置方法,举例来说,如下是三个配置文件,配置文件1、配置文件2及配置文件3:
配置文件1:
配置文件2:
配置文件3:
可见,配置文件1、配置文件2及配置文件3都属于3v3的ADC类型传感器,三个配置文件会被编译在同一个镜像文件中。所以,针对这三个配置文件的多项目配置,实现步骤为:首先,设备一上电后,设备会在DBUS上创建xyz.openbmc_project.FruDevice接口,并保存FRU信息,可以是主板产品名称BOARD_PRODUCT_NAME数据为BMC_DEF,设备二上电后同样操作,其中主板产品名称BOARD_PRODUCT_NAME数据为BMC_HK,设备三上电后同样操作,其中BOARD_PRODUCT_NAME数据为BMC_hooker;然后设备通过DBUS的库函数查找xyz.openbmc_project.FruDevice接口下的主板产品名称BOARD_PRODUCT_NAME数据,保存数据缓存到内存中;将设备一查找得到的BOARD_PRODUCT_NAME数据和通过DBUS的库函数查找的数据对比,配置文件1不匹配不加载,配置文件2不匹配不加载,配置文件3匹配,则加载配置文件3。
设备二、设备三的处理过程与设备一的上述处理过程类似。针对更多项目、更多不同类型的配置文件管理方法也与上面的处理过程一致。
综上,本申请实施例提供的一种多项目的BMC传感器配置管理方法,包括,在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。该方法解决了不同机器型号、不同项目进行传感器适配时,由于存在相同的配置,人为逐个进行配置检索和修改,操作较为复杂、效率低下且准确性不高的问题。
本申请实施例提供的多项目的BMC传感器配置管理方法,执行主体可以为多项目的BMC传感器配置管理装置。本申请实施例中以多项目的BMC传感器配置管理装置执行多项目的BMC传感器配置管理方法为例,说明本申请实施例提供的多项目的BMC传感器配置管理装置。
参照图2,图2是本申请实施例提供的一种多项目的BMC传感器配置管理装置的框图,如图2所示,该多项目的BMC传感器配置管理装置包括:
遍历模块201,用于在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;
获取模块202,用于对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;
加载模块203,用于在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。
综上,本申请实施例提供的一种多项目的BMC传感器配置管理装置,包括,遍历模块,用于在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;获取模块,用于对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;加载模块,用于在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。该装置可以解决不同机器型号、不同项目进行传感器适配时,由于存在相同的配置,人为逐个进行配置检索和修改,操作较为复杂、效率低下且准确性不高的问题
本申请实施例中的多项目的BMC传感器配置管理装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digitalassistant,PDA)等,还可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的多项目的BMC传感器配置管理装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的多项目的BMC传感器配置管理装置能够实现图1的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,如图3所示,本申请实施例还提供一种电子设备M00,包括处理器M01和存储器M02,存储器M02上存储有可在所述处理器M01上运行的程序或指令,该程序或指令被处理器M01执行时实现上述消息发送方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
图4为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、以及处理器110等部件。
本领域技术人员可以理解,电子设备100还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图4中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
应理解的是,本申请实施例中,输入单元104可以包括图形处理器(GraphicsProcessing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元106可包括显示面板1061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板1061。用户输入单元107包括触控面板1071以及其他输入设备1072中的至少一种。触控面板1071,也称为触摸屏。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器109可以包括易失性存储器或非易失性存储器,或者,存储器x09可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器109包括但不限于这些和任意其它适合类型的存储器。
处理器110可包括一个或至少两个处理单元;可选的,处理器110集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述多项目的BMC传感器配置管理方法实施例的各个过程,且能达到相同的技术效果,,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (10)
1.一种多项目的BMC传感器配置管理方法,其特征在于,所述方法包括:
在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;
对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;
在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。
2.根据权利要求1所述的方法,其特征在于,所述配置信息指示字段包括:数据字段及类型字段;所述数据字段用于查找所述第二硬件信息,所述类型字段用于确定查找所述第二硬件信息的方式。
3.根据权利要求1所述的方法,其特征在于,所述配置文件为JSON格式文件,所述配置信息指示字段的参数中包括预设的字符,所述预设的字符用于标记第二硬件信息的位置;
所述获取所述第二硬件信息,包括:
在所述类型字段符合第一条件的情况下,通过所述预设的字符中的数据总线接口信息获取所述第二硬件信息;
在所述类型字段符合第二条件的情况下,通过所述预设的字符中的路径信息获取所述第二硬件信息。
4.根据权利要求1所述的方法,其特征在于,所述获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息之前,还包括:
查找所述配置信息指示字段是否存在,不存在就舍弃该配置。
5.根据权利要求1所述的方法,其特征在于,所述在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载,包括:
获取所述传感器属性配置信息中的i2c总线、i2c地址及节点索引;
根据所述i2c总线、i2c地址及节点索引,查找驱动节点;
存在所述驱动节点的情况下,继续进行加载;
不存在所述驱动节点的情况下,舍弃该配置。
6.根据权利要求1所述的方法,其特征在于,在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载之后,还包括:
在第一目录下生成第一文件;
所述确定传感器配置未加载,包括:
在未检索到所述第一文件的情况下,确定传感器配置未加载。
7.根据权利要求6所述的方法,其特征在于,所述在第一目录下生成第一文件,包括:
根据所述数据总线接口信息、项目信息及驱动节点,生成所述第一文件。
8.一种多项目的BMC传感器配置管理装置,其特征在于,所述装置包括:
遍历模块,用于在设备上电后,若确定传感器配置未加载,则从镜像文件读取各配置文件;其中,各配置文件被编译到同一个所述镜像文件中,所述配置文件包括传感器属性配置信息、配置信息指示字段,所述配置信息指示字段的参数包括用于区分设备的第一硬件信息;
获取模块,用于对于每个配置文件,获取所述配置信息指示字段的第一硬件信息,以及获取所述设备的第二硬件信息;
加载模块,用于在所述第一硬件信息和所述第二硬件信息匹配的情况下,获取所述传感器属性配置信息进行加载。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现权利要求1至7中任一项所述的多项目的BMC传感器配置管理方法。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现权利要求1至7中任一项所述的多项目的BMC传感器配置管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211388662.1A CN115967618B (zh) | 2022-11-07 | 一种多项目的bmc传感器配置管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211388662.1A CN115967618B (zh) | 2022-11-07 | 一种多项目的bmc传感器配置管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115967618A true CN115967618A (zh) | 2023-04-14 |
CN115967618B CN115967618B (zh) | 2024-10-22 |
Family
ID=
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116820432A (zh) * | 2023-08-30 | 2023-09-29 | 中国人民解放军国防科技大学 | 一种bmc固件自动适配主板传感器的方法及系统 |
CN117148801A (zh) * | 2023-10-27 | 2023-12-01 | 浙江禾川科技股份有限公司 | 一种控制器适配方法、装置、电子设备及介质 |
CN117331377A (zh) * | 2023-12-01 | 2024-01-02 | 珠海格力电器股份有限公司 | 一种配置方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9298371B1 (en) * | 2014-12-22 | 2016-03-29 | American Megatrends, Inc. | System and method of reducing write cycles and increasing longevity of non-volatile memory in baseboard management controller (BMC) |
CN105703938A (zh) * | 2014-11-28 | 2016-06-22 | 华为技术有限公司 | 设备配置方法、配置装置及管理设备 |
CN111181787A (zh) * | 2019-12-30 | 2020-05-19 | 浪潮电子信息产业股份有限公司 | 一种bmc参数配置方法、装置、设备、介质 |
CN111290802A (zh) * | 2020-02-13 | 2020-06-16 | 苏州浪潮智能科技有限公司 | Bmc内部设备的信息解析方法、装置及可读存储介质 |
CN112486578A (zh) * | 2020-11-13 | 2021-03-12 | 苏州浪潮智能科技有限公司 | 一种bmc动态加载传感器的方法、系统、终端及存储介质 |
CN113872796A (zh) * | 2021-08-26 | 2021-12-31 | 浪潮电子信息产业股份有限公司 | 服务器及其节点设备信息获取方法、装置、设备、介质 |
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105703938A (zh) * | 2014-11-28 | 2016-06-22 | 华为技术有限公司 | 设备配置方法、配置装置及管理设备 |
US9298371B1 (en) * | 2014-12-22 | 2016-03-29 | American Megatrends, Inc. | System and method of reducing write cycles and increasing longevity of non-volatile memory in baseboard management controller (BMC) |
CN111181787A (zh) * | 2019-12-30 | 2020-05-19 | 浪潮电子信息产业股份有限公司 | 一种bmc参数配置方法、装置、设备、介质 |
CN111290802A (zh) * | 2020-02-13 | 2020-06-16 | 苏州浪潮智能科技有限公司 | Bmc内部设备的信息解析方法、装置及可读存储介质 |
CN112486578A (zh) * | 2020-11-13 | 2021-03-12 | 苏州浪潮智能科技有限公司 | 一种bmc动态加载传感器的方法、系统、终端及存储介质 |
CN113872796A (zh) * | 2021-08-26 | 2021-12-31 | 浪潮电子信息产业股份有限公司 | 服务器及其节点设备信息获取方法、装置、设备、介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116820432A (zh) * | 2023-08-30 | 2023-09-29 | 中国人民解放军国防科技大学 | 一种bmc固件自动适配主板传感器的方法及系统 |
CN116820432B (zh) * | 2023-08-30 | 2023-11-21 | 中国人民解放军国防科技大学 | 一种bmc固件自动适配主板传感器的方法及系统 |
CN117148801A (zh) * | 2023-10-27 | 2023-12-01 | 浙江禾川科技股份有限公司 | 一种控制器适配方法、装置、电子设备及介质 |
CN117148801B (zh) * | 2023-10-27 | 2024-02-02 | 浙江禾川科技股份有限公司 | 一种控制器适配方法、装置、电子设备及介质 |
CN117331377A (zh) * | 2023-12-01 | 2024-01-02 | 珠海格力电器股份有限公司 | 一种配置方法、装置、电子设备及存储介质 |
CN117331377B (zh) * | 2023-12-01 | 2024-03-08 | 珠海格力电器股份有限公司 | 一种配置方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20130067449A1 (en) | Application packages using block maps | |
CN104137062B (zh) | 将代码动态注入到运行中的进程 | |
CN110196795B (zh) | 检测移动终端应用运行状态的方法及相关装置 | |
CN109683967B (zh) | 固件支持方法、装置、移动终端及可读存储介质 | |
CN111651318A (zh) | 基于prometheus的接口监控方法、装置、计算机设备及存储介质 | |
CN111008106B (zh) | 一种服务器监控管理方法、装置及电子设备和存储介质 | |
CN104267872A (zh) | 应用程序app信息的展现方法、装置和移动终端 | |
CN114461691A (zh) | 状态机的控制方法、装置、电子设备及存储介质 | |
CN110119386A (zh) | 数据处理方法、数据处理装置、介质和计算设备 | |
CN113408260A (zh) | 一种项目工程生成方法、装置、计算机设备及存储介质 | |
US11099837B2 (en) | Providing build avoidance without requiring local source code | |
CN111966382A (zh) | 机器学习模型的在线部署方法、装置及相关设备 | |
CN111796851A (zh) | 客户端基础库更新方法、装置、电子设备和存储介质 | |
CN108268274B (zh) | 应用管理方法、装置、存储介质及电子设备 | |
CN118192965A (zh) | 页面组件处理方法、装置、计算机设备、存储介质和产品 | |
CN110471700A (zh) | 图形处理方法、装置、存储介质及电子设备 | |
US20120222023A1 (en) | Automatic runtime dependency lookup | |
US20240168730A1 (en) | Systems and methods for remotebuild action-merging | |
CN115967618B (zh) | 一种多项目的bmc传感器配置管理方法及装置 | |
CN115967618A (zh) | 一种多项目的bmc传感器配置管理方法及装置 | |
US20120144398A1 (en) | Delayed expansion of values in context | |
US11119761B2 (en) | Identifying implicit dependencies between code artifacts | |
JP7381290B2 (ja) | 計算機システム及びデータの管理方法 | |
CN117235023B (zh) | 一种远程仓库缓存管理方法、装置、设备及存储介质 | |
US20240168786A1 (en) | Systems and methods for a remotebuild storage volume |
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 |